SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

379 check-ins using file src/build.c version 189e4517

2024-03-19
10:46
Fix a problem involving infinities int the Kahan-Babushka-Neumaier summation algorithm. (check-in: 0984e5cd user: drh tags: branch-3.44)
2024-03-08
14:16
Silently ignore redundant ON CONFLICT clauses in an UPSERT. (check-in: e546d8c6 user: drh tags: branch-3.44)
2024-01-23
16:21
In os_unix.c and os_win.c, do not allow xFetch() to return a pointer to a page buffer that is right at the end of the mapped region - if the database is corrupted in a specific way such a page buffer might be overread by several bytes. (check-in: 198a1daa user: drh tags: branch-3.44)
2023-12-22
15:42
Update #ifdef checks in pager.c and util.c to account for [0462a2612d1fc1d0] to resolve the build problem reported in forum post 9819032aac. (check-in: 7374c234 user: stephan tags: branch-3.44)
2023-12-19
13:00
When unable to resolve an identifier, change the Expr node into TK_NULL rather than TK_COLUMN, to prevent any downstream misuse of the non-existent column. (check-in: 8f770d14 user: drh tags: branch-3.44)
2023-12-13
16:50
Avoid invoking sqlite3ExprColUsage() on an unresolve column reference. (check-in: 6e0e2ee7 user: drh tags: branch-3.44)
2023-12-12
17:55
Worker1 Promiser API: when multiple db connections are active then use the requested connection instead of always the first-opened connection. Bug reported in forum post 894c330e7f23b177. (check-in: 3874e5a3 user: stephan tags: branch-3.44)
2023-12-11
13:48
Different fix for the fts5 COMMIT-following-OOM problem first fixed by [fba3129d]. This one does not cause problems if an fts5 table is renamed and then dropped within the same transaction. (check-in: 67da596d user: dan tags: branch-3.44)
2023-12-05
19:24
Use extra assert() statement to silence harmless static analyzer warnings. (Closed-Leaf check-in: 174c2b2e user: drh tags: jsonb)
18:36
Further tests for the new code on this branch. (check-in: 59d008b6 user: dan tags: fts5-token-data)
18:28
Miscellaneous comment cleanup and typo fixes. (check-in: 59446dc0 user: drh tags: jsonb)
12:52
Use strspn() to accelerate whitespace bypass in the JSON parser. (check-in: 843197df user: drh tags: jsonb)
12:22
Small performance gain by unwinding the string literal delimiter search loop in the JSON parser by one more level. (check-in: 4c587fea user: drh tags: jsonb)
12:20
Clean up the JSONB performance test script. (check-in: 90530107 user: drh tags: jsonb)
01:44
Use an assert() to fix a harmless static analyzer warning. (check-in: a249ca65 user: drh tags: jsonb)
00:17
Fix OOM and corrupt JSONB handling in json_patch(). (check-in: 1910feb0 user: drh tags: jsonb)
2023-12-04
23:12
Rename the internal routine jsonMergePatchBlob() to just jsonMergePatch(). (check-in: ebf667b6 user: drh tags: jsonb)
19:48
Add further tests for xInstToken(). (check-in: 8582707f user: dan tags: fts5-token-data)
19:32
Fixes to error handling in json_array_length(). (check-in: aa85df2d user: drh tags: jsonb)
19:14
Do not make the input JSONB editable in json_remove() if there are no PATH argument. (check-in: 66594544 user: drh tags: jsonb)
18:53
Fix errors in rendering JSON5 escape sequences embedded in JSONB. (check-in: f1a51ae3 user: drh tags: jsonb)
18:45
Fixes for xInstToken() with tokendata=0 tables. And with prefix queries. (check-in: 78fbb715 user: dan tags: fts5-token-data)
17:58
Fix memory leak in new code on this branch. (check-in: ebc160b9 user: dan tags: fts5-token-data)
17:45
Fix a problem with the xInstCount() API and "ORDER BY rank" queries. (check-in: 317a5056 user: dan tags: fts5-token-data)
17:40
Continuing simplifications and code cleanup. (check-in: ddf92b50 user: drh tags: jsonb)
17:05
Fix bug in xInstToken() causing the wrong token to be returned. (check-in: da78d07e user: dan tags: fts5-token-data)
16:01
Remove reachable ALWAYS and NEVER macros. (check-in: f601de3e user: drh tags: jsonb)
15:22
Two new NEVER macros. (check-in: 52632c92 user: drh tags: jsonb)
15:08
Add tests for using tokendata=1 and contentless_delete=1 together. (check-in: a2506b8c user: dan tags: fts5-token-data)
13:12
Repair issues and inefficiencies found during testing. (check-in: ae973cb1 user: drh tags: jsonb)
01:14
Better pre-scan size estimations for objects in the JSON parser resulting in fewer reallocations and memmove operations. (check-in: 526b27f9 user: drh tags: jsonb)
00:31
Back off on the use of strlen() for situations where sqlite3_value_bytes() will work as well, for performance. (check-in: 79fb54fb user: drh tags: jsonb)
2023-12-03
23:38
Remove dead code. Improved reporting of errors in JSON inputs. (check-in: 2eaa738e user: drh tags: jsonb)
23:30
Avoid problems when the path argument to json_tree() contains embedded U+0000 characters. (check-in: 9f055091 user: drh tags: jsonb)
20:11
Ensure that OOM conditions in the generation of the "bad JSON path" error message result in an SQLITE_NOMEM error. (check-in: aa0e02b5 user: drh tags: jsonb)
19:59
Enable incorrect JSONB to be rendered into text without hitting an assertion for a bad whitespace escape in a string. (check-in: 4d6a9a21 user: drh tags: jsonb)
19:32
Partial hand-merge of shell.c.in (not buildable) (Leaf check-in: 62e90c9b user: larrybr tags: cli_extension_wip)
11:54
Do not let bad hexadecimal digits in malformed JSONB cause an assertion fault. (check-in: 8dec1ba1 user: drh tags: jsonb)
00:51
Minor code changes for consistency and to simplify testing. (check-in: df272bd8 user: drh tags: jsonb)
2023-12-02
21:39
Implement strict JSONB checking in the json_valid() function. (check-in: 0f26d388 user: drh tags: jsonb)
20:37
Fix harmless compiler warnings reported by MSVC. (check-in: 419652c0 user: drh tags: jsonb)
20:35
Fix various compiler warnings and other problems with the new code on this branch. (check-in: 3a623cfa user: dan tags: fts5-token-data)
20:25
Code and comment cleanup. Everything should work the same. (check-in: c640754d user: drh tags: jsonb)
18:17
Fix harmless compiler warnings. Refactor some identifier names for clearer presentation. (check-in: 7e394150 user: drh tags: jsonb)
18:14
When tokendata=1 queries require multiple segment-cursors, allow those cursors to share a single array of in-memory tombstone pages. (check-in: e0175d07 user: dan tags: fts5-token-data)
18:04
Take extra care to ensure that JSONB values that are in cache are actually owned by the JSON subsystem, and that ownership of such values is not handed back to the bytecode engine. (check-in: 13045340 user: drh tags: jsonb)
17:32
Ensure that tokendata=1 queries avoid loading large doclists for queries like "common AND uncommon", just as tokendata=0 queries do. (check-in: 7bda09ab user: dan tags: fts5-token-data)
16:11
Protect a memcpy() against OOM conditions. (check-in: 26144d1c user: drh tags: jsonb)
15:59
Do not allow a JsonParse object to be considered "editable" after an OOM. (check-in: c6bacf57 user: drh tags: jsonb)
15:06
Fix potential unsigned integer underflow in jsonAppendString(). (check-in: d2fba2cb user: drh tags: jsonb)
14:55
Minor fix to the header comment on jsonXlateTextToBlob(). (check-in: c3677ba4 user: drh tags: jsonb)
14:16
Performance optimization in jsonAppendString(). (check-in: fdf00e96 user: drh tags: jsonb)
13:36
Simplification and optimization of the JSON parser. (check-in: f5ec9485 user: drh tags: jsonb)
01:38
Unroll a loop in the parser for a performance increase. (check-in: a6dc29e4 user: drh tags: jsonb)
01:06
Fix harmless compiler warnings and enhance performance the parser. (check-in: 285633da user: drh tags: jsonb)
2023-12-01
22:01
Performance optimization in the JSON parser. (check-in: 68d191f4 user: drh tags: jsonb)
20:37
Remove old code for tokendata=1 queries. (check-in: b0a489e8 user: dan tags: fts5-token-data)
20:10
Merge latest trunk with this branch. (check-in: 82589674 user: dan tags: fts5-token-data)
20:09
Different approach to querying a tokendata=1 table. Saves cpu and memory. (check-in: c523f408 user: dan tags: fts5-token-data)
18:49
JSON cache is now more effective. (check-in: 443a3f3a user: drh tags: jsonb)
18:46
Fix up the JSON cache to work better. (Closed-Leaf check-in: 1fdbc395 user: drh tags: jsonb-cache)
13:28
Cache is working better, but does not preserve the hasJson5 flag. (check-in: a12add7a user: drh tags: jsonb-cache)
12:57
First attempt to get the JSON text-to-binary cache working. All test cases pass, but the cache seems not to help much. (check-in: 25ed295f user: drh tags: jsonb)
2023-11-30
23:36
Remove all trace of JsonNode from the JSON implementation. The JSONB format is used as the internal binary encoding for searching and editing. (check-in: 11ebb5f7 user: drh tags: jsonb)
20:57
Convert json_valid() over to using only JSONB as its internal format. (check-in: 7b5756fa user: drh tags: jsonb)
20:34
Add a basic batch-mode SQL runner for the SAH Pool VFS, for use in comparing it against WebSQL. Bring the WebSQL batch runner up to date, noting that it cannot run without addition of an "origin trial" activation key from Google because that's now the only way to enable WebSQL in Chrome (that part is not checked in because that key is private). Minor code-adjacent cleanups. (check-in: 883990e7 user: stephan tags: trunk)
19:29
Convert json_type() to use JSONB internally. (check-in: 83074835 user: drh tags: jsonb)
19:11
Convert json_insert(), json_replace(), and json_set() over to using only JSONB internally. (check-in: 4e2083e8 user: drh tags: jsonb)
19:06
Enhance json_set() and json_insert() so that they create missing substructure. (Closed-Leaf check-in: cc7a641a user: drh tags: jsonb-insert)
16:17
Simplification of the new JSON insert/set test cases. (check-in: 04c0d564 user: drh tags: jsonb-insert)
16:16
New JSON test cases showing insert or set with missing substructure. (check-in: 6802b645 user: drh tags: trunk)
12:04
New test cases for insert/set/replace with paths that indicate substructure that does not yet exist. (check-in: 146c717c user: drh tags: jsonb-insert)
10:00
Update some OPFS-related help text in WASM tests. Minor cleanups in speedtest1-worker.js. (check-in: 263f6d3a user: stephan tags: trunk)
00:52
Convert json_insert(), json_replace(), json_set() to use JSONB internally. Mostly working, but some corner cases are still not quite right. (check-in: 99c8f6bd user: drh tags: jsonb-insert)
2023-11-29
20:06
Convert the json_error_position() routine to use only JSONB internally. (check-in: e7a8ba35 user: drh tags: jsonb)
17:36
The json_patch() function now operates exclusively on JSONB. This patch also includes improvements to JSONB debug printing routines. (check-in: fee19d00 user: drh tags: jsonb)
16:22
Fix signed integer overflow in fts5. (check-in: 60e46c7e user: dan tags: fts5-token-data)
13:47
In the recovery extension, if a payload size is unreasonably large, it is probably corrupt, so truncate it. (check-in: 988c3179 user: drh tags: trunk)
12:18
Merge all the latest trunk enhancements into the jsonb branch. (check-in: 1a59fcab user: drh tags: jsonb)
02:53
Increase the patch level to 3.44.3. (check-in: bb4d35e2 user: drh tags: branch-3.44)
02:50
Reference count the Table passed into the OP_VCheck opcode. (check-in: 79e6496b user: drh tags: branch-3.44)
02:45
The assertion change at check-in [7946c79567b0ccd3] is insufficient to fix the problem of a Table object being deleted out from under the OP_VCheck opcode. We need to reference count the Table, which is accomplished here. (check-in: cad269d5 user: drh tags: trunk)
01:38
Convert the json_array_length() function to use JSONB instead of JsonNodes. (check-in: 5ab79073 user: drh tags: jsonb)
2023-11-28
23:26
Fix all known problems with JSONB json_extract(). (check-in: d5f48c57 user: drh tags: jsonb)
23:18
Do not set the J subtype when the output is JSONB. (Closed-Leaf check-in: 4f106b64 user: drh tags: jsonb-extract)
20:33
Preserve flexibility in the format of the RHS of -> and ->> operators found in legacy. (check-in: 6231ec43 user: drh tags: jsonb-extract)
20:25
Attempt to get json_extract() working with pure JSONB only, and without the use of JsonNode. Mostly working, but there are some differences from legacy in corner cases. (check-in: 8c324af1 user: drh tags: jsonb-extract)
19:43
Merge latest trunk updates into this branch. (check-in: 554fc13f user: dan tags: fts5-token-data)
18:16
The json_remove() function now uses only JSONB, never JsonNodes, internally. (check-in: b69786e7 user: drh tags: jsonb)
17:32
Update this branch with latest changes from trunk. (check-in: 7f1b61a3 user: dan tags: wal2)
17:12
In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() calls when opening a read-transaction. (check-in: 4c055b7a user: dan tags: trunk)
15:29
Handle an SQLITE_BUSY_TIMEOUT error if one occurs while attempting a shared lock on a read-lock slot. (Closed-Leaf check-in: 5fbf3906 user: dan tags: blocking-dms-lock)
13:38
Activate the ability of json_patch() to work on JSONB. (check-in: 11aba347 user: drh tags: jsonb)
13:35
All legacy tests are passing. (Closed-Leaf check-in: 2c436806 user: drh tags: jsonb-patch)
12:28
The json_patch() code for JSONB compiles and works sometimes, but there are still issues. Incremental check-in. (check-in: e0099464 user: drh tags: jsonb-patch)
00:27
More aggressive use of jsonBlobEdit(). Improvements to the MergePatch implementation sketch. (check-in: fbca9570 user: drh tags: jsonb)
2023-11-27
23:46
Add untested (#ifdefed-out) code for the MergePatch algorithm against JSONB. Add (and test) the jsonBlobEdit() routine that is needed by the new MergePatch. (check-in: 4d353387 user: drh tags: jsonb)
20:37
Have SQLITE_ENABLE_SETLK_TIMEOUT builds block when locking a read-lock slot. (check-in: f797baf4 user: dan tags: blocking-dms-lock)
19:22
In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() when opening a read-transaction. (check-in: a51ef399 user: dan tags: blocking-dms-lock)
17:13
Enhance the (SQLITE_DEBUG-only) json_parse() routine so that it shows a decoding of JSONB when given a BLOB argument. (check-in: af267868 user: drh tags: jsonb)
15:57
Give the json_valid() function an optional second argument that determines what is meant by "valid". (check-in: a4e19ad4 user: drh tags: jsonb)
15:08
Pickup stray oput?() calls that should have gone to stdout. Simplify console line reading, sacrificing speed (which does not matter then) for code size. (Leaf check-in: 8e20645c user: larrybr tags: console-io-lib)
12:36
Convert the json_tree() and json_each() virtual tables over to use JSONB has their internal representation. (check-in: ec18caa3 user: drh tags: jsonb)
12:30
All tests passing. (Closed-Leaf check-in: b5a5660c user: drh tags: jsonb-tree)
2023-11-26
00:56
Fix corner-case error conditions. (check-in: ec23d34a user: drh tags: jsonb-tree)
00:48
Same results as the legacy JsonNode implementation on a small set of test cases. (check-in: c3da4b07 user: drh tags: jsonb-tree)
2023-11-25
23:00
Remove unused elements from the json_tree() cursor. (check-in: 914a5011 user: drh tags: jsonb-tree)
20:59
Remove the vestigal JsonNode logic from json_tree() and json_each(). (check-in: 66c2ab9e user: drh tags: jsonb-tree)
19:28
Almost working. Path is still not exactly right when Root is defined on json_tree(). (check-in: 92258246 user: drh tags: jsonb-tree)
18:11
Generate the fullkey and path columns of json_tree(). (check-in: ffaa468a user: drh tags: jsonb-tree)
13:40
Handle the path argument to json_tree() and json_each(). (check-in: fded8884 user: drh tags: jsonb-tree)
2023-11-24
21:57
Continuing work on json_tree() against a JSONB. (check-in: 3df891cb user: drh tags: jsonb-tree)
20:14
Add the --buildonly and --dryrun options to testrunner.tcl. (check-in: a0c87ae9 user: dan tags: trunk)
18:44
Incremental progress toward getting json_each() and json_tree() to work directly off of a JSONB blob. (check-in: f8cab41b user: drh tags: jsonb-tree)
18:33
Allow a pattern to filter test scripts to be appended to testrunner.tcl "mdevtest", "sdevtest" and "release" commands. e.g. "tclsh test/testrunner.tcl sdevtest fts5%". (check-in: f8ea0b58 user: dan tags: trunk)
16:17
Get all CLI print calls which went to stdout in 3.44.0 to do so again. (check-in: d65d9579 user: larrybr tags: console-io-lib)
15:58
Get all CLI print calls which went to stdout in 3.44.0 to continue going to stdout. (check-in: e9951ede user: larrybr tags: trunk)
14:25
Fix jsonParseReset() to properly clear the JsonParse.aBlob element. (check-in: ab2644aa user: drh tags: jsonb)
14:03
Omit precompiled binaries from the source tree. (check-in: 7dbc2f49 user: drh tags: jsonb)
14:02
Omit precompiled binaries from the source tree. (check-in: 3a8a75bf user: drh tags: console-io-lib)
14:01
Omit the precompiled binary from the source tree. (check-in: 4ff103d2 user: drh tags: trunk)
13:41
Merge the latest trunk enhancements and fixes into the jsonb branch. (check-in: a838ebcb user: drh tags: jsonb)
13:30
CLI .output/.once to not redirect ".timer on" results. (check-in: 626c4353 user: larrybr tags: console-io-lib)
13:26
CLI .output/.once to not redirect ".timer on" results. (check-in: ce766ed5 user: larrybr tags: trunk)
12:38
Merge 3.44.2 changes into the wal2-3.44 sub-branch. (Leaf check-in: 0118e8c9 user: drh tags: wal2-3.44)
11:41
Version 3.44.2 (check-in: ebead0e7 user: drh tags: release, branch-3.44, version-3.44.2)
2023-11-23
12:12
Another assertion fault fix, similar to [a9443dbfbe25e588]. (check-in: f796da62 user: drh tags: branch-3.44)
11:59
Fix a incomplete assert() statement in sqlite3SubqueryColumnTypes(). (Closed-Leaf check-in: 844e05ed user: drh tags: mistake)
11:45
Fix harmless compiler warnings in debugging code. (check-in: db40272c user: drh tags: branch-3.44)
11:29
Fix an fts5 problem that could occur when mixing regular and secure delete operations on a single table. (check-in: 25fb5a54 user: drh tags: branch-3.44)
11:21
Increase the version number to 3.44.2. (check-in: 73d3cb79 user: drh tags: branch-3.44)
11:18
Fix an fts5 problem that could occur when mixing regular and secure delete operations on a single table. (check-in: 8eb3f400 user: dan tags: trunk)
07:10
Fix output redirect bug reported in the forum. (check-in: 60bdd5c3 user: larrybr tags: console-io-lib)
07:08
Fix output redirect bug reported in the forum. (check-in: ce542fee user: larrybr tags: trunk)
07:06
Fix output redirect bug reported in the forum. (check-in: 2ab256bc user: larrybr tags: branch-3.44)
2023-11-22
22:59
Minor doc fix in src/betreeInt.h, prompted by an email report. No code changes. (check-in: 30d49aae user: stephan tags: trunk)
21:24
For CLI build with unused function warnings on, #ifdef out a console I/O function, fPutbUtf8(). (check-in: da36f90d user: larrybr tags: trunk)
21:15
Add documentation for new fts5 auxiliary function APIs. (check-in: 9be8969e user: dan tags: fts5-token-data)
20:02
Defer building xInstToken() hash-table until it is to be used. (check-in: 9b005085 user: dan tags: fts5-token-data)
19:02
Fix tokendata=1 and xInstToken() APIs for detail=none and detail=column tables. (check-in: 37b271c1 user: dan tags: fts5-token-data)
17:13
Correct the URL for loading sqlite3-worker1-bundler-friendly.mjs from sqlite3-worker1-promiser-bundler-friendly.js, so that the promiser can be used in bundler-using environments. Problem reported via email. (check-in: b1128838 user: stephan tags: branch-3.44)
17:11
Correct the URL for loading sqlite3-worker1-bundler-friendly.mjs from sqlite3-worker1-promiser-bundler-friendly.js, so that the promiser can be used in bundler-using environments. Problem reported via email. (check-in: 753a7521 user: stephan tags: trunk)
15:34
Merge the 3.44.1 patches into a sub-branch of wal2. (check-in: 2672572c user: drh tags: wal2-3.44)
14:18
Version 3.44.1 (check-in: d295f48e user: drh tags: release, branch-3.44, version-3.44.1)
2023-11-21
22:36
Inserts invalid JSONB should return "malformed JSON", not a json path error. (check-in: 306ee66f user: drh tags: jsonb)
20:13
Direct editing of JSONB using json_insert() and json_set(). (check-in: fffb7a95 user: drh tags: jsonb)
19:05
Correct blob-to-text rendering in some corner cases. (check-in: 7822e0e5 user: drh tags: jsonb)
18:46
Pickup minor stylistic changes related to console I/O and, for Windows builds, get fact of UTF-16 translation into the sign-on banner. (a straight cherry-pick) (check-in: d7a59e79 user: larrybr tags: branch-3.44)
18:37
Pickup minor changes related to console I/O. (check-in: 24774e77 user: larrybr tags: console-io-lib)
18:26
Merge console I/O changes for Windows CLI. (check-in: 935a8a8e user: larrybr tags: trunk)
18:23
Fix the translation of JSON5 numeric values from BLOB into text. (check-in: 40c4fb44 user: drh tags: jsonb)
17:54
Merge all recent trunk fixes and enhancements into the jsonb branch. (check-in: 6d78d50e user: drh tags: jsonb)
17:51
Make edits directly to the JSONB BLOB when the input to json_replace() is a JSONB. (check-in: d69c6ace user: drh tags: jsonb)
15:55
Sync w/trunk as pre-merge-to-trunk sanity check. (check-in: 448d6a11 user: larrybr tags: console-io-lib)
12:02
Fix the trace3-4.4 test to be more rebust against timing quirks. (check-in: 8936daa0 user: drh tags: trunk)
2023-11-20
15:58
Back out an incorrect change to the sqlite3ExprCompareSkip() function from long ago. (check-in: 89658abb user: drh tags: branch-3.44)
15:54
Back out an incorrect change to the sqlite3ExprCompareSkip() function that was added way back on 2019-08-22 for [44578865fa7baf97|check-in 44578865fa7ba] and which was only today discovered to be incorrect by forum post 45ec3d9788. (check-in: f5b3eb0f user: drh tags: trunk)
13:59
Arrange to not compile unused console I/O function. (check-in: 184a0cd2 user: larrybr tags: branch-3.44)
13:12
Convert an assert in OP_VCheck into a branch that aborts the opcode, as this can happen on some very obscure conditions, as discovered by dbsqlfuzz. (check-in: 0d5f6871 user: drh tags: branch-3.44)
13:06
Convert an assert in OP_VCheck into a branch that aborts the opcode, as this can happen on some very obscure conditions, as discovered by dbsqlfuzz. Test case in TH3. (check-in: 7946c795 user: drh tags: trunk)
12:00
Cherry pick additional assert() fixes from trunk into the branch-3.44 branch. (check-in: 6d8a8b70 user: drh tags: branch-3.44)
11:50
Fix an assert() in fts5 that could be true following an OOM or IO error in contentless-delete mode. (check-in: 80a0bd7a user: drh tags: branch-3.44)
11:40
Fix an assert() in fts5 that could be true following an OOM or IO error in contentless-delete mode. (check-in: 3fe89238 user: dan tags: trunk)
00:21
Cherrypick shell1.test fix. (check-in: 91c888ed user: larrybr tags: trunk)
00:20
Cherrypick shell1.test fix. (check-in: 39e30c5f user: larrybr tags: console-io-lib)
2023-11-19
17:33
Fix test 5.0 in shell1.test for Windows. (A double-quote wrapped single-quote needs no further treatment to be recognized as a single single-quote.) (check-in: aaa73400 user: larrybr tags: branch-3.44)
2023-11-18
22:10
Merge changes to do Windows console I/O with UTF-16. (check-in: f782054e user: larrybr tags: branch-3.44)
20:24
Correct conditional compilation issue seen with MSVC in the Win32 mutex subsystem. (check-in: 6c069c5d user: drh tags: branch-3.44)
18:36
Correct conditional compilation issue seen with MSVC in the Win32 mutex subsystem. (check-in: 6f8f4bfe user: mistachkin tags: trunk)
17:20
When ENABLE_SETLK is defined, avoid ever blocking on the lock mutex in os_unix.c when requesting an exclusive lock. (check-in: eb36d475 user: dan tags: trunk)
12:06
Adjust an assert() in fts5WritePoslistData() so that it only applies if there have been no prior errors. dbsqlfuzz 25dca9b2568f67dc78a0e32ff280133fe71994bd. (check-in: 257cdbab user: drh tags: trunk)
11:23
Another assertion fault fix, similar to [a9443dbfbe25e588]. dbsqlfuzz 2d9af4e94aca188e0092900eec711401c5d51687. (check-in: 3afaeac5 user: drh tags: trunk)
2023-11-17
19:01
When SQLITE_ENABLE_SETLK_TIMEOUT is defined, use a separate mutex in os_unix.c for each shm locking slot. (check-in: 64691df9 user: dan tags: trunk)
17:55
Add the new "run-fuzzcheck" target on the autoconf unix makefile. Requires that FUZZDB be set to the name of the fuzz-data database file. (check-in: 8fa3915d user: drh tags: trunk)
17:25
Add an assert() to prove the sqlite3_prepare() always either returns SQLITE_OK or else leaves *ppStmt set to NULL. See forum post 70bb8576c6c084c2. (check-in: feadd402 user: drh tags: trunk)
17:10
When SQLITE_ENABLE_SETLK_TIMEOUT is defined, use a separate mutex in os_unix.c for each shm locking slot. (Closed-Leaf check-in: 4098df96 user: dan tags: unix-setlk-timeout-mutexes)
17:03
Merge the latest trunk enhancements and fixes into the jsonb branch. (check-in: 162f0509 user: drh tags: jsonb)
12:22
Fix harmless compiler warnings in debugging code. (check-in: ce6a7562 user: drh tags: trunk)
11:58
Fix an incorrect assert() associated with ALTER TABLE where an unknown aggregate function contains an ORDER BY clause. dbsqlfuzz e0900262dadd5c78c2226ad6a435c7f0255be2cd. (check-in: a9443dbf user: drh tags: trunk)
2023-11-16
21:11
When querying a tokendata=1 fts5 table, do not use a prefix cursor for the case where the term has only one variant. (check-in: d711c96b user: dan tags: fts5-token-data)
20:50
Cherrypick changes to simplify and make more rational how console I/O package features are selected. (Leaf check-in: b20c9f17 user: larrybr tags: consio-3.44)
18:31
Simplify and make more rational how console I/O package features are selected. (Motivated by Fiddle and other command-line utilities to soon use the package.) No substantive code-execution changes. (check-in: 1cde0587 user: larrybr tags: console-io-lib)
2023-11-15
20:32
Both json_remove() jsonb_remove() work on pure JSONB as long as the input is JSONB. (check-in: 68d55173 user: drh tags: jsonb)
19:21
Some simple test cases for JSONB direct remove. (check-in: 8cb4d2cb user: drh tags: jsonb)
19:19
Changes so that if SQLITE_ENABLE_SETLK_TIMEOUT is defined as 2 instead of 1, all blocking locks are taken for a single millisecond and the default busy-handler invoked as normal. (check-in: 79e24ec3 user: dan tags: trunk)
18:55
jsonb_remove() now works without having to use a JsonNode parse, assuming that the input is JSONB. (check-in: 5207679e user: drh tags: jsonb)
18:47
The jsonb_remove() routine now appears to be working. (Closed-Leaf check-in: e76d4813 user: drh tags: jsonb-remove)
16:54
Get Fiddle build to succeed. (It runs, too, but not from changes here.) (check-in: 957ebaa2 user: larrybr tags: consio-3.44)
16:10
Work toward getting jsonb_remove() to work directly on JSONB blobs. (check-in: a79ff8e5 user: drh tags: jsonb-remove)
15:20
Changes to console I/O for Fiddle build, to always defer to C library (as before.) A WIP, pending testing with Fiddle build. (check-in: 45b8061e user: larrybr tags: consio-3.44)
14:09
Improvements to the description of sqlite3_errmsg() and sqlite3_errstr(). (check-in: fe5cc416 user: drh tags: trunk)
13:23
Merge all the latest enhancements and fixes from trunk into the jsonb branch. (check-in: ba91408f user: drh tags: jsonb)
11:45
Add implementation of xInstToken() API. (check-in: a34b26fe user: dan tags: fts5-token-data)
11:31
Fix an exception misuse in test-opfs-vfs.js. (check-in: 9264955e user: stephan tags: trunk)
08:59
JNI: add more wrapper1 Sqlite.Blob tests. (check-in: d63f6e1f user: stephan tags: trunk)
08:29
JNI: clear out the sqlite3_context native pointer after calling UDF callbacks which do not have an argv (as was already done for those which have an argv). Add related tests and code commentary. (check-in: 138f4054 user: stephan tags: trunk)
06:28
JNI doc updates. (check-in: 1b1f36a2 user: stephan tags: trunk)
06:10
JNI: add the @Experimental annotation and mark all java.nio.ByteBuffer-related methods with it. (check-in: 0f4b2231 user: stephan tags: trunk)
05:08
JNI test code cleanups. (check-in: 09142ac1 user: stephan tags: trunk)
04:55
JNI: add CONFIG_LOG and CONFIG_SQLLOG support to wrapper1. Code-adjacent cleanups. (check-in: 83c49b9e user: stephan tags: trunk)
03:02
JNI: apply an internal level of API indirection to avoid having to work with massively-mangled names for the various sqlite3_config() overloads. (check-in: 24f20663 user: stephan tags: trunk)
2023-11-14
16:53
Add NEVER() to a branch made unreachable by [6f9eed826f5b3d1c]. (check-in: 26dcaa34 user: drh tags: trunk)
14:59
JNI: reimplement Tester2.execSql() using the high-level API. (check-in: 3a69679e user: stephan tags: trunk)
14:50
Fix another obscure problem with nested aggregates. dbsqlfuzz 04408efc51. This might be a better fix than the one at [4a587c3492faa994]. (check-in: 6f9eed82 user: dan tags: trunk)
14:38
JNI: add Sqlite.Stmt.step(boolean) overload which returns the result code of sqlite3_step() unless passed true, in which case it throws for any result other than ROW or DONE. The intent is to simplify handling of LOCKED and BUSY errors. (check-in: f4f1cc20 user: stephan tags: trunk)
13:51
Extra PRAGMA vdbe_addoptrace output showing when OP_Column gets translated into OP_Copy due to using a coroutine instead of a cursor. (check-in: eba180e7 user: drh tags: trunk)
05:33
JNI: use ByteBuffer.limit() instead of ByteBuffer.capacity() when figuring out where the logical end of a ByteBuffer is, for reasons explained at length in new code comments. This is unfortunately slower but is the correct way to do it. (check-in: 51539419 user: stephan tags: trunk)
04:59
JNI: add sqlite3_blob_read_nio_buffer() and iron out the blob/ByteBuffer interface somewhat. (check-in: 7df317b4 user: stephan tags: trunk)
03:31
Cherry-pick some assert()s to cover misuse of *Put*() from 500+ shell.c callers. (check-in: c1a53c28 user: larrybr tags: consio-3.44)
03:24
Add a few asserts into *Put*() functions to catch calls that might cause an address fault. (check-in: 2341f9b6 user: larrybr tags: console-io-lib)
02:43
JNI: change sqlite3_prepare_multi()'s exception-handling semantics to be more C-like and, to support that, add the package-private sqlite3_jni_db_error() method to set the db error state from package-level Java code. (check-in: 46656b35 user: stephan tags: trunk)
01:33
JNI: add sqlite3_blob_write() overload which accepts a java.nio.ByteBuffer. Cleanups in adjacent code. (check-in: ca32af85 user: stephan tags: trunk)
2023-11-13
23:11
JNI: add sqlite3_column_nio_buffer() and sqlite3_value_nio_buffer() using an only-slightly roundabout approach to creating properly-sized ByteBuffer objects. (check-in: efbc82b2 user: stephan tags: trunk)
18:35
JNI: add sqlite3_result_nio_buffer() and tests. Discover that we cannot create sensible sqlite3_column_nio_buffer() or sqlite3_value_nio_buffer() counterparts because of ByteBuffer interface limitations. (check-in: 44b4df01 user: stephan tags: trunk)
17:45
Manual merge of branch-3.44 with 3 sources affected/created by console-io-lib changes. (check-in: 18ebcf11 user: larrybr tags: consio-3.44)
17:26
Mistaken creation by a Fossil expert-to-be-maybe. (Leaf check-in: 2e3e98a4 user: larrybr tags: mistake)
15:59
Cure many warnings from gcc, clang and CL.exe. (check-in: 29ea2a3a user: larrybr tags: console-io-lib)
14:58
JNI: add sqlite3_bind_nio_buffer() and initial tests for binding ByteBuffer objects as blobs on JVMs which have JNI support for nio buffers. (check-in: b10ce1ef user: stephan tags: trunk)
14:29
Add new fts5 API xQueryToken(). (check-in: 82856639 user: dan tags: fts5-token-data)
13:01
Fix var-intro after executable code departure from old C. (check-in: 08996f4f user: larrybr tags: console-io-lib)
12:53
Slight cleanup of length-limited strpbrk() replacement, and eliminate strpbrk() call. (check-in: 97e2c962 user: larrybr tags: console-io-lib)
12:05
Remove an incorrect ALWAYS() and NEVER(). (check-in: 94f62093 user: drh tags: branch-3.44)
05:24
Enhance console_io to permit emits limited in various ways, such as valid UTF-8, upto control chars, or with counted limits, all getting away from 0-termination as the sole limit. In CLI, use this capability to avoid certain emit-chars-singly procedures that were breaking up UTF-8 characters. This fixes broken json mode output (on Windows) and (maybe) C-literal-like emits. (check-in: 906c5c40 user: larrybr tags: console-io-lib)
2023-11-12
19:57
Add sqlite3_x86.exe unversioned binary. (check-in: a731cddd user: larrybr tags: console-io-lib)
03:58
Use setOutputStream() to designate implicit output for oput{z,f}() emit functions, and use them extensively. (check-in: 7850fb98 user: larrybr tags: console-io-lib)
00:43
Write BOM without fwrite(), using sputz() so that if it goes to the console, it is translated "properly". (check-in: 06ef96a8 user: larrybr tags: console-io-lib)
2023-11-11
22:53
Remove SHELL_LEGACY_CONSOLE_IO PP symbol and code it made active. (It is in the repo if ever needed/wanted, but it is just inferior or dead code now.) (check-in: 27c5bf65 user: larrybr tags: console-io-lib)
20:46
Complete shell transition to using {f,o,e}put{f,z}() emit functions. (check-in: 923c6b8b user: larrybr tags: console-io-lib)
14:50
JNI wrapper1: when checking for an out-of-bounds statement column index, perform the is-statement-finalized check before the range check so that the former exception trumps the latter. (check-in: 0832f9a8 user: stephan tags: trunk)
14:43
Do not cache a statement's column count in the JNI wrapper1 API because an ALTER TABLE via another statement may invalidate it, as reported in forum post 6d80efd58d4591c7. (check-in: a6ab88e9 user: stephan tags: trunk)
13:09
Fix malf with redirected input due to bad assumption that stdin is a console in the fgets() replacement. (check-in: 79d1f2c1 user: larrybr tags: console-io-lib)
06:20
Pervasive changes to console_io.{c,h} in support of simplifying ubiquitous emit ops in shell, and to get better control of console streams that might be opened only via .read or .output commands. Changes to shell to use {s,o,e}put{f,z}(...) calls for initial testing, but this check-in has few such conversions so that most will be in a separate check-in. Many renames to better follow recent coding convention. This code seems to be working, but has not been tested on difficult platforms or with multiple console hosts yet. So it is a WIP. (check-in: 14762a00 user: larrybr tags: console-io-lib)
2023-11-10
21:03
Fix another problem with mixed join types and the RIGHT JOIN strength-reduction optimization. (check-in: 8f01f8b2 user: drh tags: branch-3.44)
20:55
Fix another problem with mixed join types and the RIGHT JOIN strength-reduction optimization. Forum post befdab472d. (check-in: f1eae192 user: dan tags: trunk)
20:46
Additional debugging information on the tree-dump of the BETWEEN operator. (check-in: aca31e49 user: drh tags: trunk)
20:35
Remove an incorrect ALWAYS() that was inserted yesterday [1e039b6eb59c0001]. (check-in: 12885e29 user: drh tags: trunk)
18:59
Merge recent trunk enhancements and fixes into the jsonb branch. (check-in: 091a5f05 user: drh tags: jsonb)
17:49
Ensure 8-byte alignment of data structues in sqlite3_database_file_object(). This should have appeared on trunk originally and then be cherry-picked onto the branch. Oh well.... (check-in: ac39800b user: drh tags: trunk)
16:29
Remove a NEVER() from whereAddIndexedExpr() that is reachable if there is an unknown indexed function in the schema. (check-in: a976b720 user: drh tags: trunk)
15:20
Fix an obscure problem with the join-strength-reduction optimization that could occur when mixing LEFT and RIGHT joins in the same query. (check-in: dcf1c137 user: drh tags: branch-3.44)
15:03
Fix an obscure problem with the join-strength-reduction optimization that could occur when mixing LEFT and RIGHT joins in the same query. Forum post 7f74ce0bee and separately post d64f0abe723ac98e. The problem was introduced by check-in [d747afda5683ca5f]. (check-in: 530d10e9 user: dan tags: trunk)
15:01
Expose the missing SQLITE_SUBTYPE to wasm. (check-in: 7bebfe20 user: stephan tags: branch-3.44)
15:00
Expose the missing SQLITE_SUBTYPE to wasm. (check-in: ac9534b2 user: stephan tags: trunk)
15:00
Expose the missing SQLITE_SUBTYPE to JNI. (check-in: 0f92f4c9 user: stephan tags: trunk)
14:15
Expose SQLITE_RESULT_SUBTYPE to JNI. (check-in: 3bf75875 user: stephan tags: trunk)
2023-11-09
18:41
Ensure 8-byte alignment of data structues in sqlite3_database_file_object(). (check-in: 3cfcaafa user: drh tags: branch-3.44)
17:55
Expose SQLITE_RESULT_SUBTYPE to wasm. (check-in: fc039886 user: stephan tags: branch-3.44)
17:53
Expose SQLITE_RESULT_SUBTYPE to wasm. (check-in: 6d2fe984 user: stephan tags: trunk)
17:42
Add the SQLITE_RESULT_SUBTYPE flag for application-defined functions. Add the -DSQLITE_STRICT_SUBTYPE=1 compile-time option that raises an error if any function invokes sqlite3_result_subtype() without the SQLITE_RESULT_SUBTYPE flag. SQLITE_RESULT_SUBTYPE prevents an indexed value of that function from being used to replace an equivalent expression, since the indexed expression does not carry the subtype. (check-in: 65a9cfc4 user: drh tags: branch-3.44)
17:36
Add the SQLITE_RESULT_SUBTYPE flag for application-defined functions. Add the -DSQLITE_STRICT_SUBTYPE=1 compile-time option that raises an error if any function invokes sqlite3_result_subtype() without the SQLITE_RESULT_SUBTYPE flag. SQLITE_RESULT_SUBTYPE prevents an indexed value of that function from being used to replace an equivalent expression, since the indexed expression does not carry the subtype. Fix for the problem described at forum post 68d284c86b082c3e. (check-in: ba789a78 user: drh tags: trunk)
17:28
Fix compilation issue seen with MSVC. (check-in: 0dfe790d user: mistachkin tags: trunk)
17:26
Put an ALWAYS on an true branch. (Closed-Leaf check-in: 1e039b6e user: drh tags: func-rw-subtype)
16:52
Futher documentation refinements. (check-in: 311c2eba user: drh tags: func-rw-subtype)
15:01
Fixes: (1) In the ->> function, instead of setting a subtype and clearing it, do not set it in the first place, as doing the set would trigger an error under SQLITE_STRICT_SUBTYPE. (2) Allow the SQLITE_STRICT_SUBTYPE through the property filter on sqlite3_create_function(). (check-in: 6195468b user: drh tags: func-rw-subtype)
13:00
A .class file build dependencies fix in the JNI build. (check-in: 8cc32915 user: stephan tags: trunk)
12:58
Add the SQLITE_STRICT_SUBTYPE compile-time option. This change reveals that the current SQLITE_RESULT_SUBTYPE design does not work unless we tag the ->> operator with SQLITE_RESULT_SUBTYPE. But that will disable an important optimization. (check-in: e98a9a65 user: drh tags: func-rw-subtype)
12:48
Add some notes about the JNI pointer-passing approach and convert a couple of potential NullPointerExceptions into appropriate C result codes. Clarify that invocation of undefined behaviour from the Java API does not (due to the addition of defensive code) mean the same thing as it does in C (e.g. no NULL pointer dereferences). (check-in: 19c4778f user: stephan tags: trunk)
12:17
Do not replace expressions that return subtypes with values taken from an index. (check-in: a35d13db user: drh tags: func-rw-subtype)
12:08
Omit the new SQLITE_VALUE_SUBTYPE name. Stay with legacy SQLTIE_SUBTYPE. Add extra documentation to sqlite3_value_subtype() and sqlite3_result_subtype() indicating that the SQLITE_SUBTYPE and SQLITE_RESULT_SUBTYPE properties are required on functions that use those interfaces. (check-in: 563ad3be user: drh tags: func-rw-subtype)
12:01
Two more JNI build fixes for Windows/MinGW, reported in forum post 4f949edc312d2a75. (check-in: a3f9c390 user: stephan tags: trunk)
01:56
JSON5 bug fix: Escape double-quotes that occur inside of single-quoted strings. (check-in: 6cc57bb2 user: drh tags: branch-3.44)
01:54
JSON5 bug fix: Escape double-quotes that occur inside of single-quoted strings. Forum post ddcad3e884. (check-in: 1c98d46d user: drh tags: trunk)
2023-11-08
21:38
Make a distinction between functions that consume subtypes and functions that generate subtypes. (check-in: 48a92e3a user: drh tags: func-rw-subtype)
18:08
Do not cover expressions using an indexed expression if the indexed expression is a function that might set a subtype. (Closed-Leaf check-in: e908b26a user: drh tags: idx-expr-fix)
17:11
Merge recent trunk enhancements into the jsonb branch, and especially the finer-grain characterization of JSON function properties. (check-in: 72393b00 user: drh tags: jsonb)
16:37
More precise characterization of JSON functions. Indicate when functions might return JSON (subtype 'J') and when they make use of the function argument cache. (check-in: b2b62546 user: drh tags: trunk)
15:56
Have the shell tool emit a warning if the user attempts to use ".scanstats vm" in a non-SQLITE_ENABLE_BYTECODE_VTAB build. (check-in: 3978c084 user: dan tags: trunk)
15:51
Remove old files related to wapptest.tcl from test/ directory. (check-in: dd3e7b5b user: dan tags: trunk)
15:49
Avoid blocking as part of passive checkpoint operations, even if SQLITE_ENABLE_SETLK_TIMEOUT is defined. (check-in: e5ecc404 user: dan tags: trunk)
15:34
Remove an unused/invalid test from the wasm suite. (check-in: 916ae898 user: stephan tags: trunk)
14:55
Add declarations for new fts5 API functions. (check-in: b8a48cc1 user: dan tags: fts5-token-data)
12:56
JNI build fixes for platforms where the jint type is not the same as int, as reported in forum post 9089d2049a. (check-in: b32b0873 user: stephan tags: trunk)
00:45
Suppress harmless UBSAN warnings about memory overflow in OP_AddImm. The exact same machine code is generated by GCC. (check-in: b0594383 user: drh tags: trunk)
00:12
Changes a no-op call to freeP4() into an assert(). (check-in: 32a7b1bd user: drh tags: trunk)
2023-11-07
20:56
Add -DSQLITE_ENABLE_SETLK_TIMEOUT=1 to a release-test configuration. (check-in: cd3e38fb user: dan tags: trunk)
20:11
Fix an assert() that could fail within calls to sqlite3_snapshot_open() in SQLITE_ENABLE_SETLK_TIMEOUT builds. (check-in: 84634bc2 user: dan tags: trunk)
19:39
An attempt to work around compilation errors on MinGW reported in forum post 9089d2049a. (check-in: d5658a3e user: stephan tags: trunk)
19:30
Refactor MBCS/UTF-8 translation to avoid extra allocations, supporting non-formatted (faster) output. Some code cleanup. Wrap .system/.shell command exection with restoration of startup console mode and renewing mode setup. Changes to make legacy MBCS build work better (than legacy did, even with --no-utf8.) (check-in: d5e88fcd user: larrybr tags: console-io-lib)
19:15
Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata() routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. (check-in: 36259009 user: drh tags: branch-3.44)
19:03
Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata() routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. Fix for the problem in forum post a655ee159eca1ea5. (check-in: 796a23f9 user: drh tags: trunk)
19:02
Do not allow aggregate or window functions in UPDATE statements. (Leaf check-in: fce776cc user: dan tags: no-aggregates-in-update)
17:15
JNI: during static init record whether the current JVM supports JNI-level access to java.nio.ByteBuffer raw memory, and add sqlite3_jni_supports_nio() to query that. (check-in: fb8dbb77 user: stephan tags: trunk)
15:56
Add Sqlite.prepareMulti() to JNI wrapper1, for preparing multiple statements from a single input. (check-in: e4670d68 user: stephan tags: trunk)
13:44
Diverse minor cleanups in the JNI pieces. (check-in: 35233dd9 user: stephan tags: trunk)
13:22
Flesh out [7a63b5b65a79] to be able to build JNI with or without SQLITE_ENABLE_COLUMN_METADATA. (check-in: fcee41b3 user: stephan tags: trunk)
02:41
Get dependencies into make recipes. Get legacy console I/O (-DSHELL_LEGACY_CONSOLE_IO) working. Due to movement of MBCS/UTF-8 translation into traditional stream I/O simulacra, the input translation does not happen the same way. (It works the same, but fails differently and a bit better.) Added printf() and fputs() look-alikes, and made CLI use them. (check-in: 1721dc6a user: larrybr tags: console-io-lib)
2023-11-06
21:57
Add -DSQLITE_ENABLE_COLUMN_METADATA to the JNI build, as per forum post 9205518c0568fdf0. Add tests for the functions that flag enables so that the build will fail if that flag is missing. (check-in: 7a63b5b6 user: stephan tags: trunk)
19:16
Merge latest trunk into this branch. (check-in: 3a869cf1 user: dan tags: fts5-token-data)
19:08
Update the srctree-check.tcl script and child script so that they can be run on a read-only source tree and so that if any inconsistencies are found, the script returns a non-zero exit code and thus halts the build. (check-in: a0cc7e81 user: drh tags: branch-3.44)
19:01
Fix an fts5 problem where a transaction consisting of (a) a DELETE on rowid X, (b) a prefix query, and (c) an INSERT on rowid X, could corrupt the index. (check-in: 34af510a user: drh tags: branch-3.44)
18:40
Fix an fts5 problem where a transaction consisting of (a) a DELETE on rowid X, (b) a prefix query, and (c) an INSERT on rowid X, could corrupt the index. (check-in: c2058a04 user: dan tags: trunk)
16:32
Merge trunk changes into this branch. (check-in: ac557061 user: dan tags: fts5-token-data)
15:31
Move console_io lib to its own subdirectory, etc/consio . (check-in: 1d0583f2 user: larrybr tags: console-io-lib)
15:15
Some renaming, warnings cured, and more coding convention conformance. (check-in: 58815f0a user: larrybr tags: console-io-lib)
13:24
Add an fputs() equivalent to console I/O lib, and use in CLI. (check-in: d661f907 user: larrybr tags: console-io-lib)
03:09
Cause CLI to use console_io library. (check-in: bf66a7c1 user: larrybr tags: console-io-lib)
00:15
Make MSVC accept it, too. (Cannot use static const int as part of a constant expression?) (check-in: bb278d24 user: larrybr tags: console-io-lib)
2023-11-05
23:55
Make it buildable. Pull test program from testee. Zap stray fprintf(). (check-in: 2b850aca user: larrybr tags: console-io-lib)
19:42
Input working. No line-editor provisions yet. (WIP, but suitable for testing.) (check-in: e8568b1d user: larrybr tags: console-io-lib)
04:20
Add incremental blob I/O support to JNI wrapper1. (check-in: 7f1c76fe user: stephan tags: trunk)
03:37
JNI wrapper1 normalizeSql() now throws UnsupportedOperationException, instead of returning null, if built without SQLITE_ENABLE_NORMALIZE. Remove SQLITE_PREPARE_NORMALIZE from the JNI interface because it's a legacy no-op. (check-in: d081a126 user: stephan tags: trunk)
01:55
Add authorizer support to JNI wrapper1. (check-in: 773f9873 user: stephan tags: trunk)
01:39
Add progress-handler support to JNI wrapper1. Correct the return type of the extended_result_codes() JNI binding and expose it to wrapper1. (check-in: 6c0acfdc user: stephan tags: trunk)
01:21
Setup, takedown, mode set and output working. No input yet. (WIP) (check-in: dfea85be user: larrybr tags: console-io-lib)
01:14
Add update-hook support to JNI wrapper1. (check-in: 6c584cf2 user: stephan tags: trunk)
00:48
Add commit/rollback hook support to JNI wrapper1. (check-in: ff3d44fe user: stephan tags: trunk)
00:02
Add busy-handler support to JNI wrapper1. (check-in: dcf579ab user: stephan tags: trunk)
2023-11-04
23:37
Bind collation and collation-needed to JNI wrapper1 and correct the callback return type for collation-needed callbacks in the lower-level JNI binding. (check-in: 0f673140 user: stephan tags: trunk)
22:47
Wrap the sqlite3_backup API in the JNI wrapper1 API. (check-in: 3ee6cc29 user: stephan tags: trunk)
21:51
Reimplement auto-extensions in Java for use with the JNI wrapper1 API. (check-in: 14ed4c64 user: stephan tags: trunk)
21:44
Ensure that the YYYY-MM-DD input to date and time functions has been normalized prior to returning a result. Forum post 6bb476897e. (check-in: b692eb8c user: drh tags: trunk)
16:01
Expose context_db_handle() to the JNI wrapper1 API and clean up some related tests. (check-in: c23123af user: stephan tags: trunk)
13:37
Rework the JNI wrapper1 variants of status() and db_status() to be more Java-esque. (check-in: 40ad3920 user: stephan tags: trunk)
13:16
Bind the bool-flag sqlite3_db_config() variants to the JNI wrapper1 API. (check-in: b5cdcb92 user: stephan tags: trunk)
12:53
Bind the trace API to the JNI wrapper1 API and add a way to map the native-level db/stmt types to their high-level counterparts (required for translating callbacks such as tracers). (check-in: 702910e0 user: stephan tags: trunk)
02:22
Define interface between project command-line apps and a console I/O "library". (check-in: 64abef83 user: larrybr tags: console-io-lib)
2023-11-03
18:45
Back out the ALWAYS inserted late yesterday. The fuzzer discovered a counter-example. (check-in: 57063557 user: drh tags: trunk)
17:20
Fix a case where adjacent tokens are handled incorrectly by the fts5 snippet() function. (check-in: 8f5e9c19 user: dan tags: trunk)
13:00
Wrap more of the stmt API behind the JNI wrapper1 API. (check-in: 8fea23dc user: stephan tags: trunk)
12:09
Enhance the JSONB lookup routine with logic to apply edits. The new logic is currently unused and hence untested but does not create any regressions. (check-in: b1211027 user: drh tags: jsonb)
11:53
Bind the sqlite3_keyword_...() and sqlite3_compileoption_...() family of functions to the JNI wrapper1 API. (check-in: b2724241 user: stephan tags: trunk)
11:41
Update the tool/srctree-check.tcl script so that it verifies that autoconf has been run following edits to VERSION. (check-in: 52ab3deb user: drh tags: trunk)
11:35
Merge all the latest trunk fixes and enhancements into the jsonb branch. (check-in: b089bf46 user: drh tags: jsonb)
10:15
Update the version number to 3.45.0 to begin the next development cycle. (check-in: 15b618e9 user: drh tags: trunk)
2023-11-02
22:39
Mark a branch made always-true by the penultimate check-in with ALWAYS(). (check-in: 268b5984 user: drh tags: trunk)
22:11
In the previous check-in, use a u32 instead of an int, to make it easier to prove that the integer will never overflow. (check-in: 51002079 user: drh tags: trunk)
21:02
Fix a spurious "misuse of aggregate function" error that could occur when an aggregate function was used within the FROM clause of a sub-select of the select that owns the aggregate. e.g. "SELECT (SELECT x FROM (SELECT sum(t1.a) AS x)) FROM t1". Forum post c9970a37ed. (check-in: 4470f657 user: dan tags: trunk)
18:22
Add the "remove_diacritics" option to the fts5 trigram tokenizer. (check-in: 0d501724 user: dan tags: trunk)
18:10
Fix a problem with amalgamation builds on this branch. (Closed-Leaf check-in: 8f046c82 user: dan tags: fts5-trigram-diacritics)
18:08
Merge latest JNI pieces into trunk. (check-in: e8c97fae user: stephan tags: trunk)
17:31
Add the "remove_diacritics" option to the fts5 trigram tokenizer. (check-in: 83da8013 user: dan tags: fts5-trigram-diacritics)
13:10
One more tweak to tool/srctree-check.tcl so that a complete build can be accomplished from a read-only source tree. (check-in: cba9f060 user: drh tags: trunk)
12:05
Update the srctree-check.tcl script and child script so that they can be run on a read-only source tree and so that if any inconsistencies are found, the script returns a non-zero exit code and thus halts the build. (check-in: 58eb5440 user: drh tags: trunk)
11:14
Update the version number to 3.44.1 (check-in: 34f23c3d user: drh tags: branch-3.44)
11:08
CLI to compile with older MSVC compiler. (check-in: c8bf4f7a user: drh tags: branch-3.44)
11:04
CLI to compile with older MSVC compiler. (check-in: c89f75f8 user: larrybr tags: trunk)
2023-11-01
20:09
Remove some outdated JNI docs. (Closed-Leaf check-in: 52aef3d0 user: stephan tags: jni-post-3.44)
19:35
Update the windows build documentation to provide the exact command used to build the DLLs that appear on the download page. (check-in: 3524a891 user: drh tags: trunk)
14:33
Fix testrunner.tcl so that it accepts a relative path as an argument to the --zipvfs switch. (check-in: c1ed7ed0 user: dan tags: trunk)
14:12
Bring the jsonb branch up-to-date with version 3.44.0 changes. (check-in: a420a4f7 user: drh tags: jsonb)
12:41
Version 3.44.0 for the wal2 branch (check-in: 470152fd user: drh tags: wal2)
11:23
Version 3.44.0 (check-in: 17129ba1 user: drh tags: trunk, release, major-release, version-3.44.0)
2023-10-31
17:40
Fix harmless compiler warnings in test code. (check-in: d1895dd8 user: drh tags: trunk)
17:39
Fix a problem with SQLITE_ENABLE_FTS5 builds of the non-amalgamation testfixture.exe in Makefile.msc. (check-in: 544091cc user: dan tags: trunk)
2023-10-30
23:20
Remedy CLI non-UTF8 handling detection flaw noted in a forum post. (check-in: a4c7954b user: larrybr tags: trunk)
23:04
Remedy CLI non-UTF8 handling detection flaw noted in a forum post. (Leaf check-in: 2666b80d user: larrybr tags: win-utf8-io-split)
21:46
Merge the latest 3.44.0 changes into wal2 branch. (check-in: 4f65ae2d user: drh tags: wal2)
20:35
Update the autoconf/Makefile.msc so that it aligns with Makefile.msc. (check-in: c4f724de user: drh tags: trunk)
19:50
Dodge a nuisance warning from MSVC in CLI use of Prepared Statement Scan Status. (Yes, C rules are fine.) (check-in: 166c96d9 user: larrybr tags: trunk)
19:03
Add a cast to i64 for an integer in an sqlite3OsWrite() offset calculation. The cast is not strictly necessary, but it helps human readers see that the code is correct. (check-in: 7564ff1b user: drh tags: trunk)
18:48
Fix another comment typo. No code changes. (check-in: 3203256c user: drh tags: trunk)
18:17
Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds. (check-in: e41fde2f user: dan tags: trunk)
18:09
Make the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces available to run-time loaded extensions. (check-in: 8fc9aa0f user: drh tags: trunk)
18:07
Fix problems with previous commit on Makefile.msc. Also some win32-specific test failures in fts5misc.test. (Closed-Leaf check-in: 527f2237 user: dan tags: shell-build-changes)
17:56
Fix typo in a comment. No code changes. (check-in: 424ef955 user: drh tags: trunk)
17:13
Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds. (check-in: bf99ebba user: dan tags: shell-build-changes)
16:38
Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check. (check-in: 0058ea6a user: larrybr tags: trunk)
13:56
Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check. (check-in: f89d062f user: larrybr tags: win-utf8-io-split)
12:09
With SQLITE_ENABLE_BLOCK_ATOMIC_WRITE enabled, if a transaction is committing and there is a new freelist page at the end of the database file which would cause the database file size to grow, ensure that page is written and the file size grows before the block-atomic-write commits. Fix for the problem identified by forum post 3bd8d497b2 (check-in: c9fdd680 user: drh tags: trunk)
2023-10-29
20:05
For Windows CLI, institute a version check to determine default MBCS or UTF-8 translation on console I/O. (Default to UTF-8 where known possible.) (check-in: ddc6ead6 user: larrybr tags: trunk)
19:55
Simplify code slightly. Improve comments on added code and its use. (check-in: 046c8429 user: larrybr tags: win-utf8-io-split)
16:26
Properly close a handle. Use a putatively effective runtime test for UTF-8 console I/O capability. (This makes the version test useful mainly for avoiding a warning that UTF-8 console I/O could not be setup.) (check-in: dc91eb91 user: larrybr tags: win-utf8-io-split)
00:24
Condition default UTF-8 console I/O for Windows builds on OS version 10 or more. This is to accomodate an IsValidCodePage() API which may happily report CP_UTF8 as a valid code page when the stock console cannot, in fact, do UTF-8 I/O. (check-in: 6b9b2a88 user: larrybr tags: win-utf8-io-split)
2023-10-28
16:19
Limit the range of integer unix timestamps in date4.test, since some systems (RaspberryPI) cannot deal with timestamp values that exceed pow(2,31). (check-in: 76529066 user: drh tags: trunk)
11:53
Update documentation for sqlite3_errmsg() to try to make it clear that if the schema of a database contains table names or similar with invalid UTF, then the error message generated by SQLite might also contain invalid UTF. No changes to code. (check-in: 33ba13c7 user: drh tags: trunk)
11:40
Since SQLite considers NaN to be like NULL and NULL sorts before any integer, make sure the sqlite3IntFloatCompare() routine reports that the integer argument is larger if the floating-point argument is NaN. (check-in: de1cf31a user: drh tags: trunk)
03:56
Merge trunk into jni-post-3.44 branch. (check-in: 9670eb24 user: stephan tags: jni-post-3.44)
03:54
Remove the SQLITE_MAX_ALLOCATION_SIZE flag (set to 536mb) from the WASM build because it can unduly limit db exports via sqlite3_serialize(), as reported in forum post 75524f7342c1ba45. It now defaults to whatever sqlite3.c uses, which is currently just shy of 2gb. (check-in: f6e11379 user: stephan tags: trunk)
2023-10-27
21:44
Fix cosmetic flaw in SQLITE_TXN_* doc. (no code change) (check-in: 72d7c18f user: larrybr tags: trunk)
18:16
Disable two rtree test cases for Linux-i686. We do not have that platform available for testing. The test cases work on all other 64-bit and 32-bit platforms that we have at hand. So there is no way for us to debug this problem. Better to disable the test. forum post ffcbf789b5386573. (check-in: fed4d6e9 user: drh tags: trunk)
17:40
Add makefile targets for fuzzcheck-asan and fuzzcheck-ubsan. (check-in: 27fc1430 user: drh tags: trunk)
15:31
Fix to Makefile.in so that the "tool-zip" target can be run from outside the source tree. (check-in: cd118da9 user: dan tags: trunk)
13:59
Cleanup shell.c comments. Hide -utf8 option, as it is undocumented and accepted only for backward compatibility. No functional changes except for -help content. (check-in: 3a879955 user: larrybr tags: trunk)
10:49
Back out [2904fcbeebba9189], mostly. The page bitmap is needed even for a partial integrity_check in order to avoid an infinite loops while walking the database. (check-in: dd6e03b3 user: drh tags: trunk)
2023-10-26
18:41
In CLI for Windows builds, do MBCS/UTF-8 translation independently for input and output. (And cure an MSVC warning.) (check-in: 80f0b6f9 user: larrybr tags: trunk)
18:24
Handle utf8 mode restore better for redirected input or output. Move utf8 mode setup to before any invocation command processing. Sync w/trunk. (Leaf check-in: 59452e7c user: larrybr tags: win-utf8-io-split)
17:30
Enhance the "tool-zip" makefile target on Windows so that it uses more universally available commands to build the ZIP archive. Fix other minor issues with that makefile target at the same time. (check-in: d2f2f912 user: drh tags: trunk)
16:59
Further enhancements to make sure the correct returnning trigger is run when there are nested INSERT RETURNING statements. (check-in: d83405e8 user: drh tags: trunk)
16:05
Handle the case where a virtual table xBestIndex method called while coding a trigger fired by a top-level statement with a RETURNING clause prepares a statement that also contains a RETURNING clause. (check-in: ec6bffa3 user: dan tags: trunk)