]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
7 weeks agoAdd the \B escape for CLI prompts. Change the default prompts to cli-prompt-redo
drh [Fri, 10 Apr 2026 20:06:34 +0000 (20:06 +0000)] 
Add the \B escape for CLI prompts.  Change the default prompts to
use \f, \H, and \B.

FossilOrigin-Name: 354325b6f396bda38bbb82e7d38aa50d3d6441e1ebb9b578aed8e0bcf62f9911

7 weeks agoThe \H escape on a prompt string fills in with the characters needed
drh [Fri, 10 Apr 2026 19:33:15 +0000 (19:33 +0000)] 
The \H escape on a prompt string fills in with the characters needed
to make the input "complete".  Add the shell_expand_prompt() SQL function
for testing purposes.

FossilOrigin-Name: 6aafb76c74b73aafef74250dae9c8cbe73226c0efb606e8f80ea761b3293cf9d

7 weeks agoMerge trunk fixes and enhancements into the cli-prompt-redo branch
drh [Fri, 10 Apr 2026 18:53:13 +0000 (18:53 +0000)] 
Merge trunk fixes and enhancements into the cli-prompt-redo branch

FossilOrigin-Name: f3354ebf51e684ef680986bef9b606f63786c254f1c8774bcaf7a7f3d0d37056

7 weeks agoImprove defenses in QRF against trying to run the same prepared statement
drh [Fri, 10 Apr 2026 18:14:33 +0000 (18:14 +0000)] 
Improve defenses in QRF against trying to run the same prepared statement
twice, concurrently.

FossilOrigin-Name: 6ab6f622be3e1ad93166d139b5fccf9628c86d1c14c6dfb4464cb8cf52c94785

7 weeks agoAPI doc correction for sqlite3_js_retry_busy(). No code changes.
stephan [Fri, 10 Apr 2026 17:55:31 +0000 (17:55 +0000)] 
API doc correction for sqlite3_js_retry_busy(). No code changes.

FossilOrigin-Name: 749c537812b907164b7e7ad1fddc1aee8106c59875d2686fe83d602cd0e07611

7 weeks agoUse sqlite3_malloc() for memory allocation inside of sqlite3_str_vappendf(),
drh [Fri, 10 Apr 2026 17:11:16 +0000 (17:11 +0000)] 
Use sqlite3_malloc() for memory allocation inside of sqlite3_str_vappendf(),
since it invokes sqlite3_initialize(), whereas sqlite3DbMallocRaw() does
not.

FossilOrigin-Name: a2f84c56316ea746c134aa6e5a2b46021f67c6642161beae8122f73daeddda92

7 weeks agoFix the printf() optimization added at [ccb6b6c4ac21742d] so that
drh [Fri, 10 Apr 2026 15:55:08 +0000 (15:55 +0000)] 
Fix the printf() optimization added at [ccb6b6c4ac21742d] so that
sqlite3_snprintf() does not incorrectly truncate floating-point
conversions that are close to filling the buffer, as reported in
[forum:/forumpost/2026-04-10T13:48:12z|forum post 2026-04-10T13:48:12z].

FossilOrigin-Name: a50521a16068e555aa08ee25726b081bb4cd33e3ea388b82dcbaa691c2576284

7 weeks agoPrototype sqlite3_incomplete() - a variant of sqlite3_complete() that returns
drh [Fri, 10 Apr 2026 13:43:48 +0000 (13:43 +0000)] 
Prototype sqlite3_incomplete() - a variant of sqlite3_complete() that returns
additional information about what is needed to complete the statement.

FossilOrigin-Name: a698fbfb8bb256ee0d9802c01562c11492ca2800a45360b268ac6cf397a7fad7

7 weeks agoAttempt to work around a bug in legacy Microsoft compilers.
drh [Fri, 10 Apr 2026 10:48:04 +0000 (10:48 +0000)] 
Attempt to work around a bug in legacy Microsoft compilers.
[forum:/forumpost/2026-04-10T06:33:11z|Forum post 2026-04-10T06:33:11z].

FossilOrigin-Name: 661e1413625f55c37e2cd4d785074576d355e125231bbc1dd0a511a2b02c8e3b

7 weeks agoChange a variable name to try to quash a compiler warning reported
drh [Fri, 10 Apr 2026 10:27:04 +0000 (10:27 +0000)] 
Change a variable name to try to quash a compiler warning reported
by [forum:/forumpost/2026-04-10T09:33:27z|forum post 2026-04-10T09:33:27z].
This is just a guess, as we have no way of reproducing the warning,
and hence no way of knowing if it fixes the problem.

FossilOrigin-Name: e065c019d29d4e82a21a89984b86c1811c2b1bdd4663c792857cf89ea2cd91c3

7 weeks agoCorrect shell result code propagation regression introduced in [ff084ae341eab5c4...
stephan [Fri, 10 Apr 2026 08:36:55 +0000 (08:36 +0000)] 
Correct shell result code propagation regression introduced in [ff084ae341eab5c4] and reported in [forum:6fa3247e9724844c|forum post 6fa3247e9724844c].

FossilOrigin-Name: a76682a3b1d6c5e8ca16caf8afbe545c9ae39849fe21ba68d4cddae683a409b5

7 weeks agoImprovements to the way \x works so that it can be used to change
drh [Fri, 10 Apr 2026 00:55:40 +0000 (00:55 +0000)] 
Improvements to the way \x works so that it can be used to change
the prompt color.  This really messes with linenoise, though.

FossilOrigin-Name: bbee56f970ade40734c8a278f46d8a268b305fe349c3739c977fa9141d2c3b6a

7 weeks agoA prototype of code that shows how to expand backslash escapes in the
drh [Thu, 9 Apr 2026 23:37:48 +0000 (23:37 +0000)] 
A prototype of code that shows how to expand backslash escapes in the
CLI prompt.

FossilOrigin-Name: 9cf28959671920b4909521bb1db6f0cbbc85448fbf3594c43b4000505b4e055b

7 weeks agoStore the prompts as part of the ShellState object, not as global variables.
drh [Thu, 9 Apr 2026 22:14:58 +0000 (22:14 +0000)] 
Store the prompts as part of the ShellState object, not as global variables.

FossilOrigin-Name: 39f6c5a8a7d91e03f89b13496e333b9500977a2cbcc0c27ba14dfb87dc81e678

7 weeks agoStrip out the legacy dynamic prompt generation. It will go back in as I
drh [Thu, 9 Apr 2026 20:21:25 +0000 (20:21 +0000)] 
Strip out the legacy dynamic prompt generation.  It will go back in as I
add the user-defined prompt escapes.

FossilOrigin-Name: ab08b7a8ef518f96a549a41fe8ff11776abe5e83153c5f8d5d58694ecc476389

7 weeks agoClean-ups in prompt generation in the CLI.
drh [Thu, 9 Apr 2026 18:51:09 +0000 (18:51 +0000)] 
Clean-ups in prompt generation in the CLI.

FossilOrigin-Name: e2c9d4c6b731ea9afbb9cb22f86a3db3670ca67968f15891dc46ae1fc9ba34dc

7 weeks agoUse O_TMPFILE (on systems that support it) to security create a temporary
drh [Thu, 9 Apr 2026 16:16:39 +0000 (16:16 +0000)] 
Use O_TMPFILE (on systems that support it) to security create a temporary
file that is inaccessible to any other process.

FossilOrigin-Name: 4609ba34b8b4a6df4cd28e39d19f96e59580db0e838f1aa605cc00ea003c2a85

7 weeks agoUpdates to testrunner.tcl: Shorten the prefix on created subdirectories from
drh [Thu, 9 Apr 2026 16:08:29 +0000 (16:08 +0000)] 
Updates to testrunner.tcl:  Shorten the prefix on created subdirectories from
"testrunner_bld_" to just "testrun_".  Do not append ".exe" to the names of
created subdirectories.  Add the "clean" command to recursively remove all
subdirectories and files created by a test run.

FossilOrigin-Name: 450c7edf1247024db4b66f38bf9561c5c6b0c4175c4df8de17019aea6cbde5cf

7 weeks agoVersion number to 3.54.0 to begin the next development cycle.
drh [Thu, 9 Apr 2026 16:03:56 +0000 (16:03 +0000)] 
Version number to 3.54.0 to begin the next development cycle.

FossilOrigin-Name: 4c2a5c9bb40c63bb9d0f633f78d132bdd69b9d755d4e6d5e3cb534e63b383a4e

7 weeks agoMake use of O_TMPFILE for more secure temporary file creation, when that o_tmpfile
drh [Thu, 9 Apr 2026 14:12:09 +0000 (14:12 +0000)] 
Make use of O_TMPFILE for more secure temporary file creation, when that
option is available.

FossilOrigin-Name: 094fc6da0768ea0ec4b4d3dc020cd6025aab341550d6cea6be7487ac570f9171

7 weeks agoMerge the 3.53.0 release changes into the cli-prompt branch
drh [Thu, 9 Apr 2026 13:21:09 +0000 (13:21 +0000)] 
Merge the 3.53.0 release changes into the cli-prompt branch

FossilOrigin-Name: 8fd48b9fe47d47b3eca31d187f1d98174c257daea220ae7be18e4c82764d9d5c

7 weeks agoVersion 3.53.0 major-release version-3.53.0
drh [Thu, 9 Apr 2026 11:41:38 +0000 (11:41 +0000)] 
Version 3.53.0

FossilOrigin-Name: 4525003a53a7fc63ca75c59b22c79608659ca12f0131f52c18637f829977f20b

7 weeks agoFix some buffer overreads that might occur in the session module when handling corrup...
dan [Thu, 9 Apr 2026 10:39:32 +0000 (10:39 +0000)] 
Fix some buffer overreads that might occur in the session module when handling corrupt changesets.

FossilOrigin-Name: cda5dd9bcbef2135bb9855139a11d0e22a092f9498d82eb18e7d4401264b6eb8

7 weeks agoWhen generating make.sh for testrunner, correctly quote the value of any options...
dan [Thu, 9 Apr 2026 06:38:31 +0000 (06:38 +0000)] 
When generating make.sh for testrunner, correctly quote the value of any options passed via environment variable OPTS.

FossilOrigin-Name: 0837933b49f5fc5590f2052808bc305aceccafbf5db65aae250c594ce48d4d32

7 weeks agoFix some buffer overreads that might occur in the session module when handling corrup... session-fixes
dan [Thu, 9 Apr 2026 05:33:19 +0000 (05:33 +0000)] 
Fix some buffer overreads that might occur in the session module when handling corrupt changesets.

FossilOrigin-Name: 8fcf92e15d87487703afc1129f3a89a8d4d72cb30d30a1a9151a5596473069bd

7 weeks agoFix a buffer overflow bug in a recent check-in, reported by unsolicted
drh [Wed, 8 Apr 2026 17:00:33 +0000 (17:00 +0000)] 
Fix a buffer overflow bug in a recent check-in, reported by unsolicted
email from OpenAI/Codex.

FossilOrigin-Name: be891a137af15897691250324e4d3d9c96f0c5fb414bca27d0c3bfdd3012a8a2

7 weeks agoFix a few doc typos and inconsistencies. No code changes.
stephan [Tue, 7 Apr 2026 15:54:35 +0000 (15:54 +0000)] 
Fix a few doc typos and inconsistencies. No code changes.

FossilOrigin-Name: 025abd4cf409fb9938e116289f23dc5bcd6d14feb46066221e691b146ee9b354

7 weeks agoFix incorrect datatype on the auto_ext_leak_tester() function in the CLI.
drh [Tue, 7 Apr 2026 12:51:52 +0000 (12:51 +0000)] 
Fix incorrect datatype on the auto_ext_leak_tester() function in the CLI.

FossilOrigin-Name: 4a36454904e1c5e7d25406713ab0125f11df66eabe0d378edcb837ef8dedc981

7 weeks agoFix redundant typedef in qrf.c when that file is amalgamated into
drh [Tue, 7 Apr 2026 11:31:41 +0000 (11:31 +0000)] 
Fix redundant typedef in qrf.c when that file is amalgamated into
tclsqlite3.c.

FossilOrigin-Name: b8f0c71b48953cb6d5a8b3d33d004a31b63c59d59d455f285bf8fa91c3b07129

7 weeks agoReplace a doc reference to a renamed file, as reported by [forum:5d9d70c618|forum...
stephan [Tue, 7 Apr 2026 09:15:21 +0000 (09:15 +0000)] 
Replace a doc reference to a renamed file, as reported by [forum:5d9d70c618|forum post 5d9d70c618]. No code changes.

FossilOrigin-Name: c8121593fa455cd43b3878f8b65ebac47c07dab4b8ce081aa34b14fc9440afbc

7 weeks agoAdd a dummy auto-extension to the shell in SQLITE_DEBUG builds to validate that ...
stephan [Mon, 6 Apr 2026 22:00:20 +0000 (22:00 +0000)] 
Add a dummy auto-extension to the shell in SQLITE_DEBUG builds to validate that [9d56df17b4ab49] does the right thing.

FossilOrigin-Name: 164af3703b8fb5d88612edcceeaae0ae5a230c34c7a0f2ac9b650f5a742b2787

7 weeks agoAdd a call to sqlite3_reset_auto_extension() near the end of shell.c.in:main() to...
stephan [Mon, 6 Apr 2026 20:24:02 +0000 (20:24 +0000)] 
Add a call to sqlite3_reset_auto_extension() near the end of shell.c.in:main() to squelch a leak message when SQLITE_EXTRA_INIT adds auto-extensions, as reported in [forum:310cb231b07c80d1|forum post 310cb231b07c80d1].

FossilOrigin-Name: c4dd7e8b36deced3ee9cc6b5f87d8b3cc9a752cad8d62c9b711c7b58db11834b

7 weeks agoAppease static analyzers by masking the index to the
drh [Sat, 4 Apr 2026 14:43:37 +0000 (14:43 +0000)] 
Appease static analyzers by masking the index to the
WalHashLoc.aPgno array to make it easy to prove that there
is never OOB read or write.

FossilOrigin-Name: 9d56df17b4ab4940f7bc24488a9df118f6172fcfbf3e5cb95bdcbd2db2a07911

7 weeks agoAdd some comments to the OPFS async proxy about potential future experimentation...
stephan [Sat, 4 Apr 2026 08:07:25 +0000 (08:07 +0000)] 
Add some comments to the OPFS async proxy about potential future experimentation. No code changes.

FossilOrigin-Name: 9c14ee74305a5db3be95dbd9ae8d1db0abf39b323001be4e2f02b7226e6ca0d3

8 weeks agoEnhance testrunner.tcl so that a PATTERN argument that begins with "~" is
drh [Fri, 3 Apr 2026 19:48:01 +0000 (19:48 +0000)] 
Enhance testrunner.tcl so that a PATTERN argument that begins with "~" is
an "anti-pattern".  Only run tests that match one or more patterns if there
are any patterns *and* do not match any anti-pattern.

FossilOrigin-Name: c313d91bb67b56be2db46194c3baa5a72b469595de3b2abe249612838dc175e4

8 weeks agoconfigure script: replace two 'file normalize' calls with file-normalize (a tcl/jimsh...
stephan [Fri, 3 Apr 2026 13:54:48 +0000 (13:54 +0000)] 
configure script: replace two 'file normalize' calls with file-normalize (a tcl/jimsh compatibility issue) to fix --with-linenoise. Problem reported in [forum:ce688d13793bd78f|forum post ce688d13793bd78f].

FossilOrigin-Name: 2be1c5a3e47f1276b9f0a4771f2d5fb0bc1ccb907c855caa04d757b4145533f5

8 weeks agoFix Tcl9 compatibility issues in test_session.c.
drh [Fri, 3 Apr 2026 11:48:00 +0000 (11:48 +0000)] 
Fix Tcl9 compatibility issues in test_session.c.

FossilOrigin-Name: 1387b5819085146cafb0e8740410faaa48bfb5aefc78ff763aaa8e85744d48b3

8 weeks agoMinor patch to test/json/json-speed-check.sh. That script is not maintained,
drh [Thu, 2 Apr 2026 16:21:47 +0000 (16:21 +0000)] 
Minor patch to test/json/json-speed-check.sh.  That script is not maintained,
but this fix at least gets it working for now.

FossilOrigin-Name: 9d92e371ca375776d251fe446f17a437823cc96e48a5c45f42cb0768d0a47f65

8 weeks agoImprovements to the syntax hints in the continuation prompt of the CLI
drh [Thu, 2 Apr 2026 11:43:04 +0000 (11:43 +0000)] 
Improvements to the syntax hints in the continuation prompt of the CLI

FossilOrigin-Name: 5c544f169680804c9652b8f9fc843a4bac052706be6bac205baf13a8c83fc840

8 weeks agoFix a potential 4-byte overread in the sessions module when processing a corrupt...
dan [Wed, 1 Apr 2026 17:43:22 +0000 (17:43 +0000)] 
Fix a potential 4-byte overread in the sessions module when processing a corrupt changeset.

FossilOrigin-Name: c1c7e024c34da8eb0258ce552f3f81921280ccf0f1fea59374f381c0c7b43b74

8 weeks agoAlways use sqlite3_malloc64() in extensions, where possible.
drh [Wed, 1 Apr 2026 16:56:48 +0000 (16:56 +0000)] 
Always use sqlite3_malloc64() in extensions, where possible.

FossilOrigin-Name: 6194f3b5314ef98b5d73060450de8e3497272494b47e6f96992453418894ded1

8 weeks agoFix a problem in the sessions module allowing a NULL pointer to be passed to memcpy().
dan [Wed, 1 Apr 2026 16:11:47 +0000 (16:11 +0000)] 
Fix a problem in the sessions module allowing a NULL pointer to be passed to memcpy().

FossilOrigin-Name: 91ead3c62dd7b1db3fdfd318e3c35a42fb33e8fa2e347b682eecbff2f4e8677b

8 weeks agoMinor improvements to the documentation on how to compile for Unix.
drh [Wed, 1 Apr 2026 11:54:20 +0000 (11:54 +0000)] 
Minor improvements to the documentation on how to compile for Unix.
No changes to code.

FossilOrigin-Name: 7bc1d0c4572f126cfe68fa51fe992d2bd46b1e57c04721991bd5fad36dd795c5

8 weeks agoDoc cleanups in opfs-wl. No code changes.
stephan [Wed, 1 Apr 2026 11:39:13 +0000 (11:39 +0000)] 
Doc cleanups in opfs-wl. No code changes.

FossilOrigin-Name: 009b576dcd5fccaaa52459dbfaa1b2a6fcf6d372e4b8d63553dfa88aab9a759c

8 weeks agoAdd appropriate headers to ext/session/sqlite3session.h so that the
drh [Tue, 31 Mar 2026 18:49:23 +0000 (18:49 +0000)] 
Add appropriate headers to ext/session/sqlite3session.h so that the
documentation generator will pick up the API documentation for the
new one-at-a-time changegroup APIs.

FossilOrigin-Name: da514f10b7804fd0affaf0fd4b8089012288ba99c165ef4ab78ab28edd331211

8 weeks agoAdd an API to the sessions module to add changes one at a time to an sqlite3_changegr...
dan [Tue, 31 Mar 2026 10:59:13 +0000 (10:59 +0000)] 
Add an API to the sessions module to add changes one at a time to an sqlite3_changegroup object.

FossilOrigin-Name: cf1122ea6409bcbd341b67ae45147abb8d5cd491ae95491c801d0621181da40b

8 weeks agoUpdate this branch with changes from trunk. changegroup-change-api
dan [Tue, 31 Mar 2026 10:52:00 +0000 (10:52 +0000)] 
Update this branch with changes from trunk.

FossilOrigin-Name: 716e62e3d1d6ff96f6e4906175818439103e9534e89bec4a86776265a04954b9

8 weeks agoTurn an incorrect assert() into a testcase(). Fix over-length code lines
drh [Tue, 31 Mar 2026 10:32:23 +0000 (10:32 +0000)] 
Turn an incorrect assert() into a testcase().  Fix over-length code lines
in the sqlite.h.in source file.  Fix the documentation on OOM conditions
in the sqlite3_value_text() family of APIs.

FossilOrigin-Name: 934582706109d2ebda26952c7c95f7a5095fa47ec837570a66c991866f7d08cf

8 weeks agoMove some build docs around for clarity. Move the TARGET_DEBUG flags from the end...
stephan [Mon, 30 Mar 2026 15:44:20 +0000 (15:44 +0000)] 
Move some build docs around for clarity. Move the TARGET_DEBUG flags from the end of T.cc to the beginning so that -Ox flags can be passed to make for specific binaries without having to reconfigure.

FossilOrigin-Name: 240294653ceb202b847699e9691140db4fe623a03d86fa3cf7495f8831576331

8 weeks agoRemove an unused variable in sqlite3Reindex(). Minor enhancements to the
drh [Mon, 30 Mar 2026 10:00:48 +0000 (10:00 +0000)] 
Remove an unused variable in sqlite3Reindex().  Minor enhancements to the
header comment on sqlite3AtoF().

FossilOrigin-Name: fbba900728d444f6a0b428197ebb41fe039b235e18caa2243c9f8f04fce42595

2 months agoEnhance the printf() formatter to write floating point conversions directly
drh [Sun, 29 Mar 2026 23:37:16 +0000 (23:37 +0000)] 
Enhance the printf() formatter to write floating point conversions directly
into the output buffer, rather than staging into an intermediate buffer.

FossilOrigin-Name: ccb6b6c4ac21742dbfc435cf3a2a0dc887075b3e0877aea7ed8eace08b7b5571

2 months agoFix harmless compiler warnings about unused variable assignments. direct-printf
drh [Sun, 29 Mar 2026 22:41:12 +0000 (22:41 +0000)] 
Fix harmless compiler warnings about unused variable assignments.

FossilOrigin-Name: afe7e9fd1c476c7cdcefab0adf0191a8dc3283811f72a685fff3eb6539b72dcc

2 months agoMerge trunk performance enhancements and fixes into the direct-printf branch.
drh [Sun, 29 Mar 2026 19:23:47 +0000 (19:23 +0000)] 
Merge trunk performance enhancements and fixes into the direct-printf branch.

FossilOrigin-Name: 9fa9cd11f8f5f7591168870c6e41121221b58a4a3094e708e3fa5bab1502f190

2 months agoAvoid using unsigned 64-bit integer division on platforms that do not support
drh [Sun, 29 Mar 2026 19:06:36 +0000 (19:06 +0000)] 
Avoid using unsigned 64-bit integer division on platforms that do not support
it in hardware.

FossilOrigin-Name: 2197677491dfc5ec87b57bbf807776875248a250f80ce9a5ce94ae385bb1d2bc

2 months agoThe _umulh() intrinsic function is not available on 32-bit windows. So don't
drh [Sun, 29 Mar 2026 10:32:25 +0000 (10:32 +0000)] 
The _umulh() intrinsic function is not available on 32-bit windows.  So don't
use it there.

FossilOrigin-Name: e75f30c7e66e725a2f3f46c7d4d69a2ff925e2de9a86c3a6ec38897545b43a58

2 months agoIn sqlite3_str_vappendf(), write floating-point renderings directly into
drh [Sat, 28 Mar 2026 20:24:47 +0000 (20:24 +0000)] 
In sqlite3_str_vappendf(), write floating-point renderings directly into
the output buffer, saving a memcpy().

FossilOrigin-Name: e4e040e7aaaf5bfccbf0414fee3d08c5fdc24e03d1118dce92d2dd16c614ce63

2 months agoRemove a harmless unused variable from the fp-speed-2.c benchmark.
drh [Sat, 28 Mar 2026 14:21:53 +0000 (14:21 +0000)] 
Remove a harmless unused variable from the fp-speed-2.c benchmark.

FossilOrigin-Name: ff9008e7615d877e6cc852c60097777006b274971646d368eaa56b99a7acf6c7

2 months agoEnhancements to the fp-speed-N.c programs, suggested by Andreas Kupries.
drh [Sat, 28 Mar 2026 14:17:53 +0000 (14:17 +0000)] 
Enhancements to the fp-speed-N.c programs, suggested by Andreas Kupries.

FossilOrigin-Name: 7d81ff4c509d4039ef9e2f1066284ec560131422db0cbffa7e1826d71bb8f8e1

2 months agoReduce the compiled size of the quote() SQL function.
drh [Sat, 28 Mar 2026 13:59:34 +0000 (13:59 +0000)] 
Reduce the compiled size of the quote() SQL function.

FossilOrigin-Name: 9ea980a35628f7d0741ab6c65840ab9dab8abb576c6c60109147336452f9637a

2 months agoTurn an sqlite3VMPrintf() into an sqlite3DbStrDup().
drh [Sat, 28 Mar 2026 13:30:47 +0000 (13:30 +0000)] 
Turn an sqlite3VMPrintf() into an sqlite3DbStrDup().

FossilOrigin-Name: 75e8703664ae94244284819d9021877a5fc33a268fb86f3e70de20875a766d80

2 months agoFix up the floating-point speed tests so that they only need to be run once
drh [Fri, 27 Mar 2026 20:18:06 +0000 (20:18 +0000)] 
Fix up the floating-point speed tests so that they only need to be run once
to get a performance comparision.  Provide the fp-speed-test makefile target
to build and run them both.

FossilOrigin-Name: 09e0e78a8265c2e2bc36fef1fa88bd5bf414f9b776966c1c91a4ed4b7866331d

2 months agoAdd a comment to test/fptest01.sql to remind us that failures in that
drh [Fri, 27 Mar 2026 19:25:25 +0000 (19:25 +0000)] 
Add a comment to test/fptest01.sql to remind us that failures in that
script might not be the fault of SQLite.

FossilOrigin-Name: 65efcb0a2ed49fa2fd747b5f034d976ed3cb4a01a185bcada70bf8a5208f3841

2 months agoNew test cases for text→float conversions.
drh [Fri, 27 Mar 2026 18:58:50 +0000 (18:58 +0000)] 
New test cases for text→float conversions.

FossilOrigin-Name: bbf2d648376a965605d5c641a889ab7ef365bc53788d984c054468e9889deee6

2 months agoEnable the use of intrinsic high-precision multiplies on Windows ARM.
drh [Fri, 27 Mar 2026 16:09:10 +0000 (16:09 +0000)] 
Enable the use of intrinsic high-precision multiplies on Windows ARM.
Make the SQLITE_DISABLE_INTRINSIC option effective on high-precision
multiple subroutines, for testing purposes.

FossilOrigin-Name: efb6212de4ca998546329b06b43122f0fffa3759e4615ca3357ef9fa13606d44

2 months agoChange the print resolution the fp-speed-1.c test to 17 digits.
drh [Fri, 27 Mar 2026 14:54:01 +0000 (14:54 +0000)] 
Change the print resolution the fp-speed-1.c test to 17 digits.

FossilOrigin-Name: c687b32a956315ddf4336df42deb4037c37d51b536b8a24c5cef4c5a0bc4c79b

2 months agoUpdate fp-speed-1.c and fp-speed-2.c to include its own timers, so that it
drh [Fri, 27 Mar 2026 14:19:01 +0000 (14:19 +0000)] 
Update fp-speed-1.c and fp-speed-2.c to include its own timers, so that it
works on platforms that lack the "time" command.

FossilOrigin-Name: 9b083070de2d782fe1db62652af8f3cd48abe16b55b974f3927b738e3d914887

2 months agoAdd the fp-speed-2.c performance test program.
drh [Fri, 27 Mar 2026 14:03:41 +0000 (14:03 +0000)] 
Add the fp-speed-2.c performance test program.

FossilOrigin-Name: b788256f1980531e7abb15c5fbcdd40ae166f091aea28f449c0407105ddf1aa4

2 months agoAdd a comment showing reserved file-control numbers to sqlite3.h
drh [Fri, 27 Mar 2026 11:46:11 +0000 (11:46 +0000)] 
Add a comment showing reserved file-control numbers to sqlite3.h

FossilOrigin-Name: cd472d7c85f3fda54bba5166eae72b5f9b86861c4a1160583e8ee902ba992255

2 months agoAdd SQLITE_STRICT_SUBTYPE to PRAGMA compile_options, an omission reported in [forum...
stephan [Thu, 26 Mar 2026 19:11:57 +0000 (19:11 +0000)] 
Add SQLITE_STRICT_SUBTYPE to PRAGMA compile_options, an omission reported in [forum:3906a71526|forum post 3906a71526].

FossilOrigin-Name: c5af6a10245b6b847d30002806c1577b020c36ab27f7b1cf202ade136aa4779c

2 months agoEnhance the return value from sqlite3AtoF() so that it reports if the input
drh [Thu, 26 Mar 2026 18:19:47 +0000 (18:19 +0000)] 
Enhance the return value from sqlite3AtoF() so that it reports if the input
includes more than 19.25 significant digits.

FossilOrigin-Name: 1721c8da769816ca16104cd636299d84f682fc004938a50056b76b269e49e915

2 months agoRevamp the return code from sqlite3AtoF() for additional information and
drh [Thu, 26 Mar 2026 16:33:03 +0000 (16:33 +0000)] 
Revamp the return code from sqlite3AtoF() for additional information and
for small speed improvement and size reduction.

FossilOrigin-Name: f10a431eade20ecd4c4d501fc534e2dae6ab2fe67302ea7bb3cd6eba127848fc

2 months agoImprovements to the sqlite3AtoF() interface. Add a test-control for
drh [Thu, 26 Mar 2026 14:19:34 +0000 (14:19 +0000)] 
Improvements to the sqlite3AtoF() interface.  Add a test-control for
direct testing of sqlite3AtoF().

FossilOrigin-Name: 97ee48b6ef65fb55633196282c9e75b3b0a3b81ba9755f63493a38e3f1a5610c

2 months agoBack out the sqlite3_atof() API, for now.
drh [Thu, 26 Mar 2026 12:09:37 +0000 (12:09 +0000)] 
Back out the sqlite3_atof() API, for now.

FossilOrigin-Name: 7568d264be3988df195401158d8d07105b8e9e018eccf98ac948219bee9388ac

2 months agoFix an off-by-one error that cause a loop to (harmlessly) run more times
drh [Wed, 25 Mar 2026 21:23:23 +0000 (21:23 +0000)] 
Fix an off-by-one error that cause a loop to (harmlessly) run more times
than necessary.  Performance optimization, not a bug fix.

FossilOrigin-Name: 58f4e058f1cbb798b8a48208c6310fd10ca9cd1fc7c550f3ed283cf38ae45c2f

2 months agoPerformance optimization when zero-padding in printf().
drh [Wed, 25 Mar 2026 21:05:18 +0000 (21:05 +0000)] 
Performance optimization when zero-padding in printf().

FossilOrigin-Name: dbd81abdc6633124e72999321db6fc8640851fa5eb063e6317a4c3e57b48dbaa

2 months agoSmall size reduction and performance increase in sqlite3Atoi64().
drh [Wed, 25 Mar 2026 19:36:16 +0000 (19:36 +0000)] 
Small size reduction and performance increase in sqlite3Atoi64().

FossilOrigin-Name: c818165fd709b813ab07788662bf69205ece2dcea41346609b3439950f900057

2 months agoSignification optimizations to layout of text for floating point
drh [Wed, 25 Mar 2026 17:59:22 +0000 (17:59 +0000)] 
Signification optimizations to layout of text for floating point
conversions in sqlite3_str_vappendf().

FossilOrigin-Name: 6a74df6d6ecfda8e0ff72ca0f4167190e989973ad124412892f7d36f1666ccfc

2 months agoHandle the case where the compile-time default page-size is greater than 8192 bytes.
dan [Wed, 25 Mar 2026 11:19:38 +0000 (11:19 +0000)] 
Handle the case where the compile-time default page-size is greater than 8192 bytes.

FossilOrigin-Name: 3aea251f238277c68d7a80a4fa643bb0f80b274cef77ef32c4eb833cfaf46740

2 months agoPrevent overly long JSON paths from using too much stack space.
drh [Tue, 24 Mar 2026 19:26:05 +0000 (19:26 +0000)] 
Prevent overly long JSON paths from using too much stack space.

FossilOrigin-Name: 82a0794814bbc095235f8158a4129a5d83f6af1b0c27cb56449ea32feb44faf5

2 months agoLimit JSONB recursion depth in the json_patch() function.
drh [Tue, 24 Mar 2026 12:39:05 +0000 (12:39 +0000)] 
Limit JSONB recursion depth in the json_patch() function.

FossilOrigin-Name: f8659b700c0088abe19ce65fec032c1005a1f750566488f4578256d41558770c

2 months agoImproved error messages for JSONB nested too deep.
drh [Tue, 24 Mar 2026 11:54:55 +0000 (11:54 +0000)] 
Improved error messages for JSONB nested too deep.

FossilOrigin-Name: 82036fafa175e798fd32b3dc4ad043fc2bbe2bb2af17781f12dcb4d23a233865

2 months agoRemove a stale reference to the long-removed SQLITE_MUTEX_APPDEF, as pointed out...
stephan [Tue, 24 Mar 2026 11:33:22 +0000 (11:33 +0000)] 
Remove a stale reference to the long-removed SQLITE_MUTEX_APPDEF, as pointed out in [forum:348453389b|forum post 348453389b].

FossilOrigin-Name: cb8e55b59113d0102c50db0a43b1b59d531cdcb12a7cce4c4c9a428c7c6e1adf

2 months agoMinor simplification to JSON path error reporting.
drh [Tue, 24 Mar 2026 11:25:44 +0000 (11:25 +0000)] 
Minor simplification to JSON path error reporting.

FossilOrigin-Name: 1cd30c4827e382861cf12af48579eedc9685b9612dedb6a2844f20355b910e7e

2 months agoRecognize artifical JSONB blobs with deep recursion as being ill-formed.
drh [Tue, 24 Mar 2026 00:31:28 +0000 (00:31 +0000)] 
Recognize artifical JSONB blobs with deep recursion as being ill-formed.

FossilOrigin-Name: adac4ed1f13a9a1c4a34c8f59438eac68867981748629ca3957055ad9f940299

2 months agoMove datatype and structure definitions up near the top in the CLI source code,
drh [Mon, 23 Mar 2026 21:03:34 +0000 (21:03 +0000)] 
Move datatype and structure definitions up near the top in the CLI source code,
to facilitate future changes.  No changes to the actual logic (yet).

FossilOrigin-Name: 6b3d84d34d1a84eb8ddff08cd85d9dff6e71099e7a4b2c19db8774d942d3a040

2 months agoRequire a button click to start the OPFS concurrency tester, rather than simply launc...
stephan [Mon, 23 Mar 2026 13:17:13 +0000 (13:17 +0000)] 
Require a button click to start the OPFS concurrency tester, rather than simply launching all N workers immediately on page load.

FossilOrigin-Name: 3342d6786e07d3d8dd4b1f2291edea9f8354d384ff21242cc513c218ce6f1630

2 months agoUse sqlite3_atof() instead of atof() in the CLI. Dogfooding.
drh [Mon, 23 Mar 2026 13:00:56 +0000 (13:00 +0000)] 
Use sqlite3_atof() instead of atof() in the CLI.  Dogfooding.

FossilOrigin-Name: 276c350313a1ac2ebc70c1e8e50ed4baecd4be4d4c93ba04cf5e0078da18700e

2 months agoMove the definition of the new sqlite3_atof() function in sqlite3.h so
drh [Mon, 23 Mar 2026 12:25:52 +0000 (12:25 +0000)] 
Move the definition of the new sqlite3_atof() function in sqlite3.h so
that it is adjacent to sqlite3_mprintf().

FossilOrigin-Name: 1553a60506fa29b5f00535ae0f7aeb8cc94ebe84015386b3248fd8491108fc60

2 months agoAdd the sqlite3_atof() interface.
drh [Mon, 23 Mar 2026 10:58:29 +0000 (10:58 +0000)] 
Add the sqlite3_atof() interface.

FossilOrigin-Name: 52f76c59f27152dd62069bd833e2409d57d0cd36ccaa568b2ec4ec823e98cb44

2 months agoProposed new API routine: sqlite3_atof(). atof
drh [Sun, 22 Mar 2026 20:52:23 +0000 (20:52 +0000)] 
Proposed new API routine: sqlite3_atof().

FossilOrigin-Name: db370f0f628895279a1c1db79ba7428cb4e31b56cafc191859c2f1a5a924435b

2 months agoPerformance enhancements and improved documentation for sqlite3AtoF().
drh [Sun, 22 Mar 2026 18:26:43 +0000 (18:26 +0000)] 
Performance enhancements and improved documentation for sqlite3AtoF().

FossilOrigin-Name: 62f011509600ab8cda28888ebd32e5faa4e865702755bc32dee7a12bf2f4425d

2 months agoAdditional performance improvements in sqlite3AtoF(). Also update the optimize-atof
drh [Sun, 22 Mar 2026 17:50:48 +0000 (17:50 +0000)] 
Additional performance improvements in sqlite3AtoF().  Also update the
header comments.

FossilOrigin-Name: 8c3a1b450d6d5778004b9fb0e92b4f3f90d3e06ff87276370d01a45b7d607d23

2 months agoFurther simplification and performance improvement
drh [Sun, 22 Mar 2026 02:51:18 +0000 (02:51 +0000)] 
Further simplification and performance improvement

FossilOrigin-Name: 6c3dc2430adef061b458b6d9159628bb8debfd4d63876d5d5e7493afb799d97f

2 months agoPerformance improvements in the floating-point number parser.
drh [Sun, 22 Mar 2026 02:26:38 +0000 (02:26 +0000)] 
Performance improvements in the floating-point number parser.

FossilOrigin-Name: aea648f3668219a2539160eb68c77ddd06aa8eac235c1326fe7b1547288b11ee

2 months agoBecause version 3.52.0 was withdrawn, that means QRF has never been
drh [Sat, 21 Mar 2026 19:49:38 +0000 (19:49 +0000)] 
Because version 3.52.0 was withdrawn, that means QRF has never been
officially released.  Hence the new nMultiInsert field of the spec
can be moved out of the extensions area and into the main part of the
spec, and the version number can drop back from 2 to 1.

FossilOrigin-Name: cf19982241afb17e3db4148b8257f6737141935a291c340ab085c42ed946af1a

2 months agoTry to fix harmless compiler warnings from legacy C compilers in the CLI.
drh [Sat, 21 Mar 2026 13:21:41 +0000 (13:21 +0000)] 
Try to fix harmless compiler warnings from legacy C compilers in the CLI.

FossilOrigin-Name: 8e1d0c4eac303cd0834449f4792605c0ed983db1f360af42300f0048dadbbef8

2 months agoAdd support for REINDEX EXPRESSIONS
drh [Sat, 21 Mar 2026 13:05:54 +0000 (13:05 +0000)] 
Add support for REINDEX EXPRESSIONS

FossilOrigin-Name: d56954146ce5eccd63b65242abe2e6556dbceda39a58eab39f5884884afea337

2 months agoUndo "indices"→"indexes" changes in comments, to avoid diff clutter. reindex-expressions
drh [Sat, 21 Mar 2026 12:55:57 +0000 (12:55 +0000)] 
Undo "indices"→"indexes" changes in comments, to avoid diff clutter.
Fix a couple of unreachable branches.

FossilOrigin-Name: 0042ff9afd00eca0a837e9bbe57540ff2810fcd58b4f7e3f4e3b83aad5699757

2 months agoFix harmless compiler warnings in the csv.c.
drh [Fri, 20 Mar 2026 20:35:21 +0000 (20:35 +0000)] 
Fix harmless compiler warnings in the csv.c.

FossilOrigin-Name: 6ac701f89e2ac8dfd18d041eb8c36a0c2b9fedc5618d3a95be794aecce5c59cf

2 months agoIf the argument to REINDEX is EXPRESSIONS (with no schema prefix) then it
drh [Fri, 20 Mar 2026 19:30:58 +0000 (19:30 +0000)] 
If the argument to REINDEX is EXPRESSIONS (with no schema prefix) then it
updates both expression indexes, and any indexes named "expressions" or
all indexes of any tables name "expressions".

FossilOrigin-Name: 72650dc152279a6da1937f377b1e16b79f4cd664841e12222dc5459838408d22