@cpp.js/package-sqlite3 1.0.0-beta.24 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +1 -1
  3. package/cppjs.build.js +2 -1
  4. package/dist/prebuilt/Android-arm64-v8a/include/sqlite3.h +45 -8
  5. package/dist/prebuilt/Android-arm64-v8a/lib/libsqlite3.so +0 -0
  6. package/dist/prebuilt/Android-arm64-v8a/lib/pkgconfig/sqlite3.pc +2 -2
  7. package/dist/prebuilt/Android-x86_64/include/sqlite3.h +13620 -0
  8. package/dist/prebuilt/Android-x86_64/include/sqlite3ext.h +719 -0
  9. package/dist/prebuilt/Android-x86_64/lib/libsqlite3.la +41 -0
  10. package/dist/prebuilt/Android-x86_64/lib/libsqlite3.so +0 -0
  11. package/dist/prebuilt/Android-x86_64/lib/pkgconfig/sqlite3.pc +13 -0
  12. package/dist/prebuilt/Android-x86_64/share/man/man1/sqlite3.1 +161 -0
  13. package/dist/prebuilt/Emscripten-x86_64/include/sqlite3.h +45 -8
  14. package/dist/prebuilt/Emscripten-x86_64/lib/libsqlite3.a +0 -0
  15. package/dist/prebuilt/Emscripten-x86_64/lib/pkgconfig/sqlite3.pc +2 -2
  16. package/dist/prebuilt/iOS-iphoneos/include/sqlite3.h +45 -8
  17. package/dist/prebuilt/iOS-iphoneos/lib/libsqlite3.a +0 -0
  18. package/dist/prebuilt/iOS-iphoneos/lib/pkgconfig/sqlite3.pc +2 -2
  19. package/dist/prebuilt/iOS-iphonesimulator/include/sqlite3.h +45 -8
  20. package/dist/prebuilt/iOS-iphonesimulator/lib/libsqlite3.a +0 -0
  21. package/dist/prebuilt/iOS-iphonesimulator/lib/pkgconfig/sqlite3.pc +2 -2
  22. package/package.json +4 -4
  23. package/sqlite3.xcframework/ios-arm64_arm64e/Headers/sqlite3.h +45 -8
  24. package/sqlite3.xcframework/ios-arm64_arm64e/libsqlite3.a +0 -0
  25. package/sqlite3.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/sqlite3.h +45 -8
  26. package/sqlite3.xcframework/ios-arm64_arm64e_x86_64-simulator/libsqlite3.a +0 -0
@@ -0,0 +1,41 @@
1
+ # libsqlite3.la - a libtool library file
2
+ # Generated by libtool (GNU libtool) 2.4.7 Debian-2.4.7-7build1
3
+ #
4
+ # Please DO NOT delete this file!
5
+ # It is necessary for linking the library.
6
+
7
+ # The name that we can dlopen(3).
8
+ dlname='libsqlite3.so'
9
+
10
+ # Names of this library.
11
+ library_names='libsqlite3.so'
12
+
13
+ # The name of the static archive.
14
+ old_library=''
15
+
16
+ # Linker flags that cannot go in dependency_libs.
17
+ inherited_linker_flags=''
18
+
19
+ # Libraries that this one depends upon.
20
+ dependency_libs=' -L/tmp/cppjs/live/packages/cppjs-package-zlib/dist/prebuilt/Android-x86_64/lib -lz -lm'
21
+
22
+ # Names of additional weak libraries provided by this library
23
+ weak_library_names=''
24
+
25
+ # Version information for libsqlite3.
26
+ current=8
27
+ age=8
28
+ revision=6
29
+
30
+ # Is this an already installed library?
31
+ installed=yes
32
+
33
+ # Should we warn about portability when linking against -modules?
34
+ shouldnotlink=no
35
+
36
+ # Files to dlopen/dlpreopen
37
+ dlopen=''
38
+ dlpreopen=''
39
+
40
+ # Directory that this library needs to be installed in:
41
+ libdir='/tmp/cppjs/live/packages/cppjs-package-sqlite3/.cppjs/build/Source-Release/prebuilt/Android-x86_64/lib'
@@ -0,0 +1,13 @@
1
+ # Package Information for pkg-config
2
+
3
+ prefix=/tmp/cppjs/live/packages/cppjs-package-sqlite3/.cppjs/build/Source-Release/prebuilt/Android-x86_64
4
+ exec_prefix=${prefix}
5
+ libdir=${exec_prefix}/lib
6
+ includedir=${prefix}/include
7
+
8
+ Name: SQLite
9
+ Description: SQL database engine
10
+ Version: 3.48.0
11
+ Libs: -L${libdir} -lsqlite3
12
+ Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_ICU@
13
+ Cflags: -I${includedir}
@@ -0,0 +1,161 @@
1
+ .\" Hey, EMACS: -*- nroff -*-
2
+ .\" First parameter, NAME, should be all caps
3
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
4
+ .\" other parameters are allowed: see man(7), man(1)
5
+ .TH SQLITE3 1 "Fri Aug 11 23:50:12 CET 2023"
6
+ .\" Please adjust this date whenever revising the manpage.
7
+ .\"
8
+ .\" Some roff macros, for reference:
9
+ .\" .nh disable hyphenation
10
+ .\" .hy enable hyphenation
11
+ .\" .ad l left justify
12
+ .\" .ad b justify to both left and right margins
13
+ .\" .nf disable filling
14
+ .\" .fi enable filling
15
+ .\" .br insert line break
16
+ .\" .sp <n> insert n+1 empty lines
17
+ .\" for manpage-specific macros, see man(7)
18
+ .SH NAME
19
+ .B sqlite3
20
+ \- A command line interface for SQLite version 3
21
+
22
+ .SH SYNOPSIS
23
+ .B sqlite3
24
+ .RI [ options ]
25
+ .RI [ databasefile ]
26
+ .RI [ SQL ]
27
+
28
+ .SH SUMMARY
29
+ .PP
30
+ .B sqlite3
31
+ is a terminal-based front-end to the SQLite library that can evaluate
32
+ queries interactively and display the results in multiple formats.
33
+ .B sqlite3
34
+ can also be used within shell scripts and other applications to provide
35
+ batch processing features.
36
+
37
+ .SH DESCRIPTION
38
+ To start a
39
+ .B sqlite3
40
+ interactive session, invoke the
41
+ .B sqlite3
42
+ command and optionally provide the name of a database file. If the
43
+ database file does not exist, it will be created. If the database file
44
+ does exist, it will be opened.
45
+
46
+ For example, to create a new database file named "mydata.db", create
47
+ a table named "memos" and insert a couple of records into that table:
48
+ .sp
49
+ $
50
+ .B sqlite3 mydata.db
51
+ .br
52
+ SQLite version 3.43.0 2023-08-11 17:45:23
53
+ .br
54
+ Enter ".help" for usage hints.
55
+ .br
56
+ sqlite>
57
+ .B create table memos(text, priority INTEGER);
58
+ .br
59
+ sqlite>
60
+ .B insert into memos values('deliver project description', 10);
61
+ .br
62
+ sqlite>
63
+ .B insert into memos values('lunch with Christine', 100);
64
+ .br
65
+ sqlite>
66
+ .B select * from memos;
67
+ .br
68
+ deliver project description|10
69
+ .br
70
+ lunch with Christine|100
71
+ .br
72
+ sqlite>
73
+ .sp
74
+
75
+ If no database name is supplied, the ATTACH sql command can be used
76
+ to attach to existing or create new database files. ATTACH can also
77
+ be used to attach to multiple databases within the same interactive
78
+ session. This is useful for migrating data between databases,
79
+ possibly changing the schema along the way.
80
+
81
+ Optionally, a SQL statement or set of SQL statements can be supplied as
82
+ a single argument. Multiple statements should be separated by
83
+ semi-colons.
84
+
85
+ For example:
86
+ .sp
87
+ $
88
+ .B sqlite3 -line mydata.db 'select * from memos where priority > 20;'
89
+ .br
90
+ text = lunch with Christine
91
+ .br
92
+ priority = 100
93
+ .br
94
+ .sp
95
+
96
+ .SS SQLITE META-COMMANDS
97
+ .PP
98
+ The interactive interpreter offers a set of meta-commands that can be
99
+ used to control the output format, examine the currently attached
100
+ database files, or perform administrative operations upon the
101
+ attached databases (such as rebuilding indices). Meta-commands are
102
+ always prefixed with a dot (.).
103
+
104
+ A list of available meta-commands can be viewed at any time by issuing
105
+ the '.help' command. For example:
106
+ .sp
107
+ sqlite>
108
+ .B .help
109
+ .nf
110
+ .tr %.
111
+ ...
112
+ .sp
113
+ .fi
114
+
115
+ The available commands differ by version and build options, so they
116
+ are not listed here. Please refer to your local copy for all available
117
+ options.
118
+
119
+
120
+ .SH INIT FILE
121
+ .B sqlite3
122
+ reads an initialization file to set the configuration of the
123
+ interactive environment. Throughout initialization, any previously
124
+ specified setting can be overridden. The sequence of initialization is
125
+ as follows:
126
+
127
+ o The default configuration is established as follows:
128
+
129
+ .sp
130
+ .nf
131
+ .cc |
132
+ mode = LIST
133
+ separator = "|"
134
+ main prompt = "sqlite> "
135
+ continue prompt = " ...> "
136
+ |cc .
137
+ .sp
138
+ .fi
139
+
140
+ o If the file
141
+ .B ${XDG_CONFIG_HOME}/sqlite3/sqliterc
142
+ or
143
+ .B ~/.sqliterc
144
+ exists, the first of those to be found is processed during startup.
145
+ It should generally only contain meta-commands.
146
+
147
+ o If the -init option is present, the specified file is processed.
148
+
149
+ o All other command line options are processed.
150
+
151
+ .SH SEE ALSO
152
+ https://sqlite.org/cli.html
153
+ .br
154
+ https://sqlite.org/fiddle (a WebAssembly build of the CLI app)
155
+ .br
156
+ The sqlite3-doc package.
157
+ .SH AUTHOR
158
+ This manual page was originally written by Andreas Rottmann
159
+ <rotty@debian.org>, for the Debian GNU/Linux system (but may be used
160
+ by others). It was subsequently revised by Bill Bumgarner <bbum@mac.com>,
161
+ Laszlo Boszormenyi <gcs@debian.hu>, and the sqlite3 developers.
@@ -146,9 +146,9 @@ extern "C" {
146
146
  ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
147
147
  ** [sqlite_version()] and [sqlite_source_id()].
148
148
  */
149
- #define SQLITE_VERSION "3.47.2"
150
- #define SQLITE_VERSION_NUMBER 3047002
151
- #define SQLITE_SOURCE_ID "2024-12-07 20:39:59 2aabe05e2e8cae4847a802ee2daddc1d7413d8fc560254d93ee3e72c14685b6c"
149
+ #define SQLITE_VERSION "3.48.0"
150
+ #define SQLITE_VERSION_NUMBER 3048000
151
+ #define SQLITE_SOURCE_ID "2025-01-14 11:05:00 d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010"
152
152
 
153
153
  /*
154
154
  ** CAPI3REF: Run-Time Library Version Numbers
@@ -1100,6 +1100,11 @@ struct sqlite3_io_methods {
1100
1100
  ** pointed to by the pArg argument. This capability is used during testing
1101
1101
  ** and only needs to be supported when SQLITE_TEST is defined.
1102
1102
  **
1103
+ ** <li>[[SQLITE_FCNTL_NULL_IO]]
1104
+ ** The [SQLITE_FCNTL_NULL_IO] opcode sets the low-level file descriptor
1105
+ ** or file handle for the [sqlite3_file] object such that it will no longer
1106
+ ** read or write to the database file.
1107
+ **
1103
1108
  ** <li>[[SQLITE_FCNTL_WAL_BLOCK]]
1104
1109
  ** The [SQLITE_FCNTL_WAL_BLOCK] is a signal to the VFS layer that it might
1105
1110
  ** be advantageous to block on the next WAL lock if the lock is not immediately
@@ -1253,6 +1258,7 @@ struct sqlite3_io_methods {
1253
1258
  #define SQLITE_FCNTL_EXTERNAL_READER 40
1254
1259
  #define SQLITE_FCNTL_CKSM_FILE 41
1255
1260
  #define SQLITE_FCNTL_RESET_CACHE 42
1261
+ #define SQLITE_FCNTL_NULL_IO 43
1256
1262
 
1257
1263
  /* deprecated names */
1258
1264
  #define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE
@@ -2631,10 +2637,14 @@ SQLITE_API void sqlite3_set_last_insert_rowid(sqlite3*,sqlite3_int64);
2631
2637
  ** deleted by the most recently completed INSERT, UPDATE or DELETE
2632
2638
  ** statement on the database connection specified by the only parameter.
2633
2639
  ** The two functions are identical except for the type of the return value
2634
- ** and that if the number of rows modified by the most recent INSERT, UPDATE
2640
+ ** and that if the number of rows modified by the most recent INSERT, UPDATE,
2635
2641
  ** or DELETE is greater than the maximum value supported by type "int", then
2636
2642
  ** the return value of sqlite3_changes() is undefined. ^Executing any other
2637
2643
  ** type of SQL statement does not modify the value returned by these functions.
2644
+ ** For the purposes of this interface, a CREATE TABLE AS SELECT statement
2645
+ ** does not count as an INSERT, UPDATE or DELETE statement and hence the rows
2646
+ ** added to the new table by the CREATE TABLE AS SELECT statement are not
2647
+ ** counted.
2638
2648
  **
2639
2649
  ** ^Only changes made directly by the INSERT, UPDATE or DELETE statement are
2640
2650
  ** considered - auxiliary changes caused by [CREATE TRIGGER | triggers],
@@ -4194,11 +4204,22 @@ SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
4194
4204
  ** <dd>The SQLITE_PREPARE_NO_VTAB flag causes the SQL compiler
4195
4205
  ** to return an error (error code SQLITE_ERROR) if the statement uses
4196
4206
  ** any virtual tables.
4207
+ **
4208
+ ** [[SQLITE_PREPARE_DONT_LOG]] <dt>SQLITE_PREPARE_DONT_LOG</dt>
4209
+ ** <dd>The SQLITE_PREPARE_DONT_LOG flag prevents SQL compiler
4210
+ ** errors from being sent to the error log defined by
4211
+ ** [SQLITE_CONFIG_LOG]. This can be used, for example, to do test
4212
+ ** compiles to see if some SQL syntax is well-formed, without generating
4213
+ ** messages on the global error log when it is not. If the test compile
4214
+ ** fails, the sqlite3_prepare_v3() call returns the same error indications
4215
+ ** with or without this flag; it just omits the call to [sqlite3_log()] that
4216
+ ** logs the error.
4197
4217
  ** </dl>
4198
4218
  */
4199
4219
  #define SQLITE_PREPARE_PERSISTENT 0x01
4200
4220
  #define SQLITE_PREPARE_NORMALIZE 0x02
4201
4221
  #define SQLITE_PREPARE_NO_VTAB 0x04
4222
+ #define SQLITE_PREPARE_DONT_LOG 0x10
4202
4223
 
4203
4224
  /*
4204
4225
  ** CAPI3REF: Compiling An SQL Statement
@@ -10889,7 +10910,7 @@ SQLITE_API int sqlite3_deserialize(
10889
10910
  #ifdef __cplusplus
10890
10911
  } /* End of the 'extern "C"' block */
10891
10912
  #endif
10892
- #endif /* SQLITE3_H */
10913
+ /* #endif for SQLITE3_H will be added by mksqlite3.tcl */
10893
10914
 
10894
10915
  /******** Begin file sqlite3rtree.h *********/
10895
10916
  /*
@@ -13140,14 +13161,29 @@ struct Fts5PhraseIter {
13140
13161
  ** value returned by xInstCount(), SQLITE_RANGE is returned. Otherwise,
13141
13162
  ** output variable (*ppToken) is set to point to a buffer containing the
13142
13163
  ** matching document token, and (*pnToken) to the size of that buffer in
13143
- ** bytes. This API is not available if the specified token matches a
13144
- ** prefix query term. In that case both output variables are always set
13145
- ** to 0.
13164
+ ** bytes.
13146
13165
  **
13147
13166
  ** The output text is not a copy of the document text that was tokenized.
13148
13167
  ** It is the output of the tokenizer module. For tokendata=1 tables, this
13149
13168
  ** includes any embedded 0x00 and trailing data.
13150
13169
  **
13170
+ ** This API may be slow in some cases if the token identified by parameters
13171
+ ** iIdx and iToken matched a prefix token in the query. In most cases, the
13172
+ ** first call to this API for each prefix token in the query is forced
13173
+ ** to scan the portion of the full-text index that matches the prefix
13174
+ ** token to collect the extra data required by this API. If the prefix
13175
+ ** token matches a large number of token instances in the document set,
13176
+ ** this may be a performance problem.
13177
+ **
13178
+ ** If the user knows in advance that a query may use this API for a
13179
+ ** prefix token, FTS5 may be configured to collect all required data as part
13180
+ ** of the initial querying of the full-text index, avoiding the second scan
13181
+ ** entirely. This also causes prefix queries that do not use this API to
13182
+ ** run more slowly and use more memory. FTS5 may be configured in this way
13183
+ ** either on a per-table basis using the [FTS5 insttoken | 'insttoken']
13184
+ ** option, or on a per-query basis using the
13185
+ ** [fts5_insttoken | fts5_insttoken()] user function.
13186
+ **
13151
13187
  ** This API can be quite slow if used with an FTS5 table created with the
13152
13188
  ** "detail=none" or "detail=column" option.
13153
13189
  **
@@ -13581,3 +13617,4 @@ struct fts5_api {
13581
13617
  #endif /* _FTS5_H */
13582
13618
 
13583
13619
  /******** End of fts5.h *********/
13620
+ #endif /* SQLITE3_H */
@@ -7,7 +7,7 @@ includedir=${prefix}/include
7
7
 
8
8
  Name: SQLite
9
9
  Description: SQL database engine
10
- Version: 3.47.2
10
+ Version: 3.48.0
11
11
  Libs: -L${libdir} -lsqlite3
12
- Libs.private: -lz
12
+ Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_ICU@
13
13
  Cflags: -I${includedir}
@@ -146,9 +146,9 @@ extern "C" {
146
146
  ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
147
147
  ** [sqlite_version()] and [sqlite_source_id()].
148
148
  */
149
- #define SQLITE_VERSION "3.47.2"
150
- #define SQLITE_VERSION_NUMBER 3047002
151
- #define SQLITE_SOURCE_ID "2024-12-07 20:39:59 2aabe05e2e8cae4847a802ee2daddc1d7413d8fc560254d93ee3e72c14685b6c"
149
+ #define SQLITE_VERSION "3.48.0"
150
+ #define SQLITE_VERSION_NUMBER 3048000
151
+ #define SQLITE_SOURCE_ID "2025-01-14 11:05:00 d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010"
152
152
 
153
153
  /*
154
154
  ** CAPI3REF: Run-Time Library Version Numbers
@@ -1100,6 +1100,11 @@ struct sqlite3_io_methods {
1100
1100
  ** pointed to by the pArg argument. This capability is used during testing
1101
1101
  ** and only needs to be supported when SQLITE_TEST is defined.
1102
1102
  **
1103
+ ** <li>[[SQLITE_FCNTL_NULL_IO]]
1104
+ ** The [SQLITE_FCNTL_NULL_IO] opcode sets the low-level file descriptor
1105
+ ** or file handle for the [sqlite3_file] object such that it will no longer
1106
+ ** read or write to the database file.
1107
+ **
1103
1108
  ** <li>[[SQLITE_FCNTL_WAL_BLOCK]]
1104
1109
  ** The [SQLITE_FCNTL_WAL_BLOCK] is a signal to the VFS layer that it might
1105
1110
  ** be advantageous to block on the next WAL lock if the lock is not immediately
@@ -1253,6 +1258,7 @@ struct sqlite3_io_methods {
1253
1258
  #define SQLITE_FCNTL_EXTERNAL_READER 40
1254
1259
  #define SQLITE_FCNTL_CKSM_FILE 41
1255
1260
  #define SQLITE_FCNTL_RESET_CACHE 42
1261
+ #define SQLITE_FCNTL_NULL_IO 43
1256
1262
 
1257
1263
  /* deprecated names */
1258
1264
  #define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE
@@ -2631,10 +2637,14 @@ SQLITE_API void sqlite3_set_last_insert_rowid(sqlite3*,sqlite3_int64);
2631
2637
  ** deleted by the most recently completed INSERT, UPDATE or DELETE
2632
2638
  ** statement on the database connection specified by the only parameter.
2633
2639
  ** The two functions are identical except for the type of the return value
2634
- ** and that if the number of rows modified by the most recent INSERT, UPDATE
2640
+ ** and that if the number of rows modified by the most recent INSERT, UPDATE,
2635
2641
  ** or DELETE is greater than the maximum value supported by type "int", then
2636
2642
  ** the return value of sqlite3_changes() is undefined. ^Executing any other
2637
2643
  ** type of SQL statement does not modify the value returned by these functions.
2644
+ ** For the purposes of this interface, a CREATE TABLE AS SELECT statement
2645
+ ** does not count as an INSERT, UPDATE or DELETE statement and hence the rows
2646
+ ** added to the new table by the CREATE TABLE AS SELECT statement are not
2647
+ ** counted.
2638
2648
  **
2639
2649
  ** ^Only changes made directly by the INSERT, UPDATE or DELETE statement are
2640
2650
  ** considered - auxiliary changes caused by [CREATE TRIGGER | triggers],
@@ -4194,11 +4204,22 @@ SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
4194
4204
  ** <dd>The SQLITE_PREPARE_NO_VTAB flag causes the SQL compiler
4195
4205
  ** to return an error (error code SQLITE_ERROR) if the statement uses
4196
4206
  ** any virtual tables.
4207
+ **
4208
+ ** [[SQLITE_PREPARE_DONT_LOG]] <dt>SQLITE_PREPARE_DONT_LOG</dt>
4209
+ ** <dd>The SQLITE_PREPARE_DONT_LOG flag prevents SQL compiler
4210
+ ** errors from being sent to the error log defined by
4211
+ ** [SQLITE_CONFIG_LOG]. This can be used, for example, to do test
4212
+ ** compiles to see if some SQL syntax is well-formed, without generating
4213
+ ** messages on the global error log when it is not. If the test compile
4214
+ ** fails, the sqlite3_prepare_v3() call returns the same error indications
4215
+ ** with or without this flag; it just omits the call to [sqlite3_log()] that
4216
+ ** logs the error.
4197
4217
  ** </dl>
4198
4218
  */
4199
4219
  #define SQLITE_PREPARE_PERSISTENT 0x01
4200
4220
  #define SQLITE_PREPARE_NORMALIZE 0x02
4201
4221
  #define SQLITE_PREPARE_NO_VTAB 0x04
4222
+ #define SQLITE_PREPARE_DONT_LOG 0x10
4202
4223
 
4203
4224
  /*
4204
4225
  ** CAPI3REF: Compiling An SQL Statement
@@ -10889,7 +10910,7 @@ SQLITE_API int sqlite3_deserialize(
10889
10910
  #ifdef __cplusplus
10890
10911
  } /* End of the 'extern "C"' block */
10891
10912
  #endif
10892
- #endif /* SQLITE3_H */
10913
+ /* #endif for SQLITE3_H will be added by mksqlite3.tcl */
10893
10914
 
10894
10915
  /******** Begin file sqlite3rtree.h *********/
10895
10916
  /*
@@ -13140,14 +13161,29 @@ struct Fts5PhraseIter {
13140
13161
  ** value returned by xInstCount(), SQLITE_RANGE is returned. Otherwise,
13141
13162
  ** output variable (*ppToken) is set to point to a buffer containing the
13142
13163
  ** matching document token, and (*pnToken) to the size of that buffer in
13143
- ** bytes. This API is not available if the specified token matches a
13144
- ** prefix query term. In that case both output variables are always set
13145
- ** to 0.
13164
+ ** bytes.
13146
13165
  **
13147
13166
  ** The output text is not a copy of the document text that was tokenized.
13148
13167
  ** It is the output of the tokenizer module. For tokendata=1 tables, this
13149
13168
  ** includes any embedded 0x00 and trailing data.
13150
13169
  **
13170
+ ** This API may be slow in some cases if the token identified by parameters
13171
+ ** iIdx and iToken matched a prefix token in the query. In most cases, the
13172
+ ** first call to this API for each prefix token in the query is forced
13173
+ ** to scan the portion of the full-text index that matches the prefix
13174
+ ** token to collect the extra data required by this API. If the prefix
13175
+ ** token matches a large number of token instances in the document set,
13176
+ ** this may be a performance problem.
13177
+ **
13178
+ ** If the user knows in advance that a query may use this API for a
13179
+ ** prefix token, FTS5 may be configured to collect all required data as part
13180
+ ** of the initial querying of the full-text index, avoiding the second scan
13181
+ ** entirely. This also causes prefix queries that do not use this API to
13182
+ ** run more slowly and use more memory. FTS5 may be configured in this way
13183
+ ** either on a per-table basis using the [FTS5 insttoken | 'insttoken']
13184
+ ** option, or on a per-query basis using the
13185
+ ** [fts5_insttoken | fts5_insttoken()] user function.
13186
+ **
13151
13187
  ** This API can be quite slow if used with an FTS5 table created with the
13152
13188
  ** "detail=none" or "detail=column" option.
13153
13189
  **
@@ -13581,3 +13617,4 @@ struct fts5_api {
13581
13617
  #endif /* _FTS5_H */
13582
13618
 
13583
13619
  /******** End of fts5.h *********/
13620
+ #endif /* SQLITE3_H */
@@ -7,7 +7,7 @@ includedir=${prefix}/include
7
7
 
8
8
  Name: SQLite
9
9
  Description: SQL database engine
10
- Version: 3.47.2
10
+ Version: 3.48.0
11
11
  Libs: -L${libdir} -lsqlite3
12
- Libs.private: -lz
12
+ Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_ICU@
13
13
  Cflags: -I${includedir}
@@ -146,9 +146,9 @@ extern "C" {
146
146
  ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
147
147
  ** [sqlite_version()] and [sqlite_source_id()].
148
148
  */
149
- #define SQLITE_VERSION "3.47.2"
150
- #define SQLITE_VERSION_NUMBER 3047002
151
- #define SQLITE_SOURCE_ID "2024-12-07 20:39:59 2aabe05e2e8cae4847a802ee2daddc1d7413d8fc560254d93ee3e72c14685b6c"
149
+ #define SQLITE_VERSION "3.48.0"
150
+ #define SQLITE_VERSION_NUMBER 3048000
151
+ #define SQLITE_SOURCE_ID "2025-01-14 11:05:00 d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010"
152
152
 
153
153
  /*
154
154
  ** CAPI3REF: Run-Time Library Version Numbers
@@ -1100,6 +1100,11 @@ struct sqlite3_io_methods {
1100
1100
  ** pointed to by the pArg argument. This capability is used during testing
1101
1101
  ** and only needs to be supported when SQLITE_TEST is defined.
1102
1102
  **
1103
+ ** <li>[[SQLITE_FCNTL_NULL_IO]]
1104
+ ** The [SQLITE_FCNTL_NULL_IO] opcode sets the low-level file descriptor
1105
+ ** or file handle for the [sqlite3_file] object such that it will no longer
1106
+ ** read or write to the database file.
1107
+ **
1103
1108
  ** <li>[[SQLITE_FCNTL_WAL_BLOCK]]
1104
1109
  ** The [SQLITE_FCNTL_WAL_BLOCK] is a signal to the VFS layer that it might
1105
1110
  ** be advantageous to block on the next WAL lock if the lock is not immediately
@@ -1253,6 +1258,7 @@ struct sqlite3_io_methods {
1253
1258
  #define SQLITE_FCNTL_EXTERNAL_READER 40
1254
1259
  #define SQLITE_FCNTL_CKSM_FILE 41
1255
1260
  #define SQLITE_FCNTL_RESET_CACHE 42
1261
+ #define SQLITE_FCNTL_NULL_IO 43
1256
1262
 
1257
1263
  /* deprecated names */
1258
1264
  #define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE
@@ -2631,10 +2637,14 @@ SQLITE_API void sqlite3_set_last_insert_rowid(sqlite3*,sqlite3_int64);
2631
2637
  ** deleted by the most recently completed INSERT, UPDATE or DELETE
2632
2638
  ** statement on the database connection specified by the only parameter.
2633
2639
  ** The two functions are identical except for the type of the return value
2634
- ** and that if the number of rows modified by the most recent INSERT, UPDATE
2640
+ ** and that if the number of rows modified by the most recent INSERT, UPDATE,
2635
2641
  ** or DELETE is greater than the maximum value supported by type "int", then
2636
2642
  ** the return value of sqlite3_changes() is undefined. ^Executing any other
2637
2643
  ** type of SQL statement does not modify the value returned by these functions.
2644
+ ** For the purposes of this interface, a CREATE TABLE AS SELECT statement
2645
+ ** does not count as an INSERT, UPDATE or DELETE statement and hence the rows
2646
+ ** added to the new table by the CREATE TABLE AS SELECT statement are not
2647
+ ** counted.
2638
2648
  **
2639
2649
  ** ^Only changes made directly by the INSERT, UPDATE or DELETE statement are
2640
2650
  ** considered - auxiliary changes caused by [CREATE TRIGGER | triggers],
@@ -4194,11 +4204,22 @@ SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
4194
4204
  ** <dd>The SQLITE_PREPARE_NO_VTAB flag causes the SQL compiler
4195
4205
  ** to return an error (error code SQLITE_ERROR) if the statement uses
4196
4206
  ** any virtual tables.
4207
+ **
4208
+ ** [[SQLITE_PREPARE_DONT_LOG]] <dt>SQLITE_PREPARE_DONT_LOG</dt>
4209
+ ** <dd>The SQLITE_PREPARE_DONT_LOG flag prevents SQL compiler
4210
+ ** errors from being sent to the error log defined by
4211
+ ** [SQLITE_CONFIG_LOG]. This can be used, for example, to do test
4212
+ ** compiles to see if some SQL syntax is well-formed, without generating
4213
+ ** messages on the global error log when it is not. If the test compile
4214
+ ** fails, the sqlite3_prepare_v3() call returns the same error indications
4215
+ ** with or without this flag; it just omits the call to [sqlite3_log()] that
4216
+ ** logs the error.
4197
4217
  ** </dl>
4198
4218
  */
4199
4219
  #define SQLITE_PREPARE_PERSISTENT 0x01
4200
4220
  #define SQLITE_PREPARE_NORMALIZE 0x02
4201
4221
  #define SQLITE_PREPARE_NO_VTAB 0x04
4222
+ #define SQLITE_PREPARE_DONT_LOG 0x10
4202
4223
 
4203
4224
  /*
4204
4225
  ** CAPI3REF: Compiling An SQL Statement
@@ -10889,7 +10910,7 @@ SQLITE_API int sqlite3_deserialize(
10889
10910
  #ifdef __cplusplus
10890
10911
  } /* End of the 'extern "C"' block */
10891
10912
  #endif
10892
- #endif /* SQLITE3_H */
10913
+ /* #endif for SQLITE3_H will be added by mksqlite3.tcl */
10893
10914
 
10894
10915
  /******** Begin file sqlite3rtree.h *********/
10895
10916
  /*
@@ -13140,14 +13161,29 @@ struct Fts5PhraseIter {
13140
13161
  ** value returned by xInstCount(), SQLITE_RANGE is returned. Otherwise,
13141
13162
  ** output variable (*ppToken) is set to point to a buffer containing the
13142
13163
  ** matching document token, and (*pnToken) to the size of that buffer in
13143
- ** bytes. This API is not available if the specified token matches a
13144
- ** prefix query term. In that case both output variables are always set
13145
- ** to 0.
13164
+ ** bytes.
13146
13165
  **
13147
13166
  ** The output text is not a copy of the document text that was tokenized.
13148
13167
  ** It is the output of the tokenizer module. For tokendata=1 tables, this
13149
13168
  ** includes any embedded 0x00 and trailing data.
13150
13169
  **
13170
+ ** This API may be slow in some cases if the token identified by parameters
13171
+ ** iIdx and iToken matched a prefix token in the query. In most cases, the
13172
+ ** first call to this API for each prefix token in the query is forced
13173
+ ** to scan the portion of the full-text index that matches the prefix
13174
+ ** token to collect the extra data required by this API. If the prefix
13175
+ ** token matches a large number of token instances in the document set,
13176
+ ** this may be a performance problem.
13177
+ **
13178
+ ** If the user knows in advance that a query may use this API for a
13179
+ ** prefix token, FTS5 may be configured to collect all required data as part
13180
+ ** of the initial querying of the full-text index, avoiding the second scan
13181
+ ** entirely. This also causes prefix queries that do not use this API to
13182
+ ** run more slowly and use more memory. FTS5 may be configured in this way
13183
+ ** either on a per-table basis using the [FTS5 insttoken | 'insttoken']
13184
+ ** option, or on a per-query basis using the
13185
+ ** [fts5_insttoken | fts5_insttoken()] user function.
13186
+ **
13151
13187
  ** This API can be quite slow if used with an FTS5 table created with the
13152
13188
  ** "detail=none" or "detail=column" option.
13153
13189
  **
@@ -13581,3 +13617,4 @@ struct fts5_api {
13581
13617
  #endif /* _FTS5_H */
13582
13618
 
13583
13619
  /******** End of fts5.h *********/
13620
+ #endif /* SQLITE3_H */
@@ -7,7 +7,7 @@ includedir=${prefix}/include
7
7
 
8
8
  Name: SQLite
9
9
  Description: SQL database engine
10
- Version: 3.47.2
10
+ Version: 3.48.0
11
11
  Libs: -L${libdir} -lsqlite3
12
- Libs.private: -lz
12
+ Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_ICU@
13
13
  Cflags: -I${includedir}
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@cpp.js/package-sqlite3",
3
- "version": "1.0.0-beta.24",
4
- "nativeVersion": "3.47.2",
3
+ "version": "1.0.0",
4
+ "nativeVersion": "3.48.0",
5
5
  "description": "This package provides the precompiled SQLite3 database engine, built using cpp.js, for easy integration into JavaScript, WebAssembly and React Native projects. It offers powerful database capabilities, ensuring high performance and cross-platform compatibility. Ideal for use in web and mobile applications.",
6
6
  "homepage": "https://github.com/bugra9/cpp.js/tree/main/packages/cppjs-package-sqlite3#readme",
7
7
  "repository": "https://github.com/bugra9/cpp.js.git",
8
8
  "license": "Public Domain",
9
9
  "type": "module",
10
10
  "dependencies": {
11
- "@cpp.js/package-zlib": "^1.0.0-beta.28"
11
+ "@cpp.js/package-zlib": "^1.0.0"
12
12
  },
13
13
  "devDependencies": {
14
- "cpp.js": "^1.0.0-beta.29"
14
+ "cpp.js": "^1.0.0"
15
15
  },
16
16
  "keywords": [
17
17
  "sqlite",