]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
6 weeks agoRemove the untested and undocumented "scrub" utility program. It was written
drh [Sat, 30 May 2026 10:15:58 +0000 (10:15 +0000)] 
Remove the untested and undocumented "scrub" utility program.  It was written
in 2016, but made obsolete by the VACUUM INTO command in 2019.

FossilOrigin-Name: 20c458172e0b09f7ada7f8cb8be95450c3988e620cbf6f174470bf8e78dcfbf0

6 weeks agoBe sure to do floating-point to text conversions in JSON to the full
drh [Fri, 29 May 2026 23:17:09 +0000 (23:17 +0000)] 
Be sure to do floating-point to text conversions in JSON to the full
17-digits.

FossilOrigin-Name: 9498dade8754909d6fadc8cdff44dafc7770d53a1984ba27a00317ecd7e2f3dd

6 weeks agoFix potential integer overflow in btree overflow page cache computation.
drh [Thu, 28 May 2026 10:18:42 +0000 (10:18 +0000)] 
Fix potential integer overflow in btree overflow page cache computation.

FossilOrigin-Name: 093e23814e35f0cd0a4bded29b79ddecd7835626d9fe627bfbf4eb138403277f

7 weeks agoFix a potential 1-byte overread in sqlite3changeset_invert() when
drh [Tue, 26 May 2026 15:09:07 +0000 (15:09 +0000)] 
Fix a potential 1-byte overread in sqlite3changeset_invert() when
processing a corrupt buffer.

FossilOrigin-Name: 69554ec4e8354e8573071bc423e2dbd0059058388481be3e76fcb7c0fc1ff467

7 weeks agoFix a 32-bit integer overflow in sqlite3changegroup_change_blob() that
drh [Tue, 26 May 2026 14:23:36 +0000 (14:23 +0000)] 
Fix a 32-bit integer overflow in sqlite3changegroup_change_blob() that
could lead to a buffer overwrite.

FossilOrigin-Name: f2a8ae2251561f2255c2974914293647cf304c6db79de9da957755fccaf8a8b6

7 weeks agoFix QRF so that it works sensibly with "--wrap 1"
drh [Tue, 26 May 2026 13:57:36 +0000 (13:57 +0000)] 
Fix QRF so that it works sensibly with "--wrap 1"

FossilOrigin-Name: 90eb6c22687449441824c7da5741a31e78bb78098c170382b230e851d03212c0

7 weeks agoStrength the defense against malicious command-line arguments in the
drh [Tue, 26 May 2026 11:46:58 +0000 (11:46 +0000)] 
Strength the defense against malicious command-line arguments in the
sqlite3_rsync utility program.

FossilOrigin-Name: a8d18783fb2dbe9683bb6f3b57ebb3cc3ccf1e5afdd5e14786abf1e4e240f51a

7 weeks agoFix HTML ">" quoting in QRF.
drh [Mon, 25 May 2026 23:47:05 +0000 (23:47 +0000)] 
Fix HTML ">" quoting in QRF.

FossilOrigin-Name: f6b35a9b5fc38245414f1bea9bc3c81b57f774711e77ab32fb91c984370ed5e9

7 weeks agoEnhance the defenses against malformed JSONB in the jsonbPayloadSize()
drh [Mon, 25 May 2026 18:53:35 +0000 (18:53 +0000)] 
Enhance the defenses against malformed JSONB in the jsonbPayloadSize()
routine.

FossilOrigin-Name: 73dfb252f86807464642037df6ec7353b5b52d8c447837c7c4a6540ec622f29d

7 weeks agoFix a potential 1 byte overwrite that could occur when processing
drh [Mon, 25 May 2026 18:50:36 +0000 (18:50 +0000)] 
Fix a potential 1 byte overwrite that could occur when processing
a carefully crafted super-journal file.

FossilOrigin-Name: f654fa5ac938bb61d917fc33298052f5bd7a6e5e33b0539ac15cbd45bec023d3

7 weeks agoFix a potential buffer overwrite that could occur when in fts5 when handling corrupt...
drh [Mon, 25 May 2026 17:23:58 +0000 (17:23 +0000)] 
Fix a potential buffer overwrite that could occur when in fts5 when handling corrupt records.

FossilOrigin-Name: 02733fc4bc27df64b50ca5027ac94fc643146efb24bb4fdbcc70c45e1c58c919

7 weeks agoFix the VFSes so that there is no 32-bit integer overflow in the
drh [Thu, 21 May 2026 15:27:55 +0000 (15:27 +0000)] 
Fix the VFSes so that there is no 32-bit integer overflow in the
xShmMap method if the WAL file size exceeds about 25 terabytes, or
if the header is corrupted to make SQLite think that the WAL file size
is that big.

FossilOrigin-Name: 39a72dbe53c94be6784fa042cf093151eff43d67086449a4da975416adde120a

7 weeks agoLimit the length of inputs to the spellfix1_editdist() extension
drh [Thu, 21 May 2026 13:39:43 +0000 (13:39 +0000)] 
Limit the length of inputs to the spellfix1_editdist() extension
function (not part of the standard SQLite build and rarely used)
to 99999 characters, to avoid any possibility of integer overflow.

FossilOrigin-Name: e56ac902fa4f1219d3affbe3ac9f822406a58486e456f0200a5d0f47fa4e5b43

7 weeks agoA join constraint is not an equivalence unless both operands have the
drh [Thu, 21 May 2026 13:06:04 +0000 (13:06 +0000)] 
A join constraint is not an equivalence unless both operands have the
same collation.

FossilOrigin-Name: 4247f48eec004c311cb046b1e97fbd44bc35d4b09e33c2b930dd3e1baabdb813

7 weeks agoFix a bug causing the session module to dereference a NULL pointer when applying...
drh [Wed, 20 May 2026 15:29:37 +0000 (15:29 +0000)] 
Fix a bug causing the session module to dereference a NULL pointer when applying a corrupt changeset.

FossilOrigin-Name: c813d9b777bedd58005b53d38fa3c235ca56bd57b76424cf9238c01a977a4b3d

7 weeks agoCheck-in [0d01c90bd7779192] was incomplete in that it did not remove
drh [Wed, 20 May 2026 11:59:36 +0000 (11:59 +0000)] 
Check-in [0d01c90bd7779192] was incomplete in that it did not remove
the incorrect assert() statement.  Fixed here.

FossilOrigin-Name: 2e9bb51ae951c421f7e5ed8e55fd6dca8b7d4b8543fd3ba3a9e9f017592c028b

7 weeks agoAvoid returning an SQLITE_SCHEMA error from within sqlite3session_diff() if the schem...
drh [Wed, 20 May 2026 11:56:17 +0000 (11:56 +0000)] 
Avoid returning an SQLITE_SCHEMA error from within sqlite3session_diff() if the schema has been recently modified.

FossilOrigin-Name: 15fb7ffe4be49d5242c47bef1b3cad5c923cd7f500896058db4dd257bc7b3924

7 weeks agoIncrease the patch level to 3.53.2
drh [Wed, 20 May 2026 10:04:04 +0000 (10:04 +0000)] 
Increase the patch level to 3.53.2

FossilOrigin-Name: 076d214410fc8aba38c7ada60a985adc6773e51a13add19cbd07a91375b483fd

7 weeks agoFix a potential buffer overread in fts5 that could occur when handling
drh [Wed, 20 May 2026 10:01:25 +0000 (10:01 +0000)] 
Fix a potential buffer overread in fts5 that could occur when handling
corrupt records.  Improved detection of corrupt fts5 records.

FossilOrigin-Name: fad98805b7d73abf0cf17919397ac50757a2b888354fcf42b72640a12f32926c

7 weeks agoSilently ignore nested porter tokenizers in FTS5. Having nested porter
drh [Wed, 20 May 2026 09:36:42 +0000 (09:36 +0000)] 
Silently ignore nested porter tokenizers in FTS5.  Having nested porter
tokenizers is pointless, but it does use stack space unnecessarily.

FossilOrigin-Name: 8207ca671e1253135e5e36cd123fdcfb4d1f0fcf939d2c94238425fafd38c75a

8 weeks agoPrevent integer overflow in the ICU extension.
drh [Tue, 19 May 2026 18:59:39 +0000 (18:59 +0000)] 
Prevent integer overflow in the ICU extension.

FossilOrigin-Name: 42ef6f3f4fbe9fce3312259855df53d89e002adb0cf798c4aad074a8b7e988d5

8 weeks agoFix an assertion fault that can occur in RTree given a carefully
drh [Tue, 19 May 2026 18:47:37 +0000 (18:47 +0000)] 
Fix an assertion fault that can occur in RTree given a carefully
corrupted database.

FossilOrigin-Name: 0d01c90bd7779192f0541dfc43624f70241c45accf06ad43666310ec50e486d6

8 weeks agoEarly detection of attempts to overwrite an in-use cache page due
drh [Tue, 19 May 2026 15:24:00 +0000 (15:24 +0000)] 
Early detection of attempts to overwrite an in-use cache page due
to database corruption.

FossilOrigin-Name: c37b0d93bf750ddad0b271c5f133320f754e5af73c0b68a3d19f9276e196d667

8 weeks agoLimit the size of input strings to the (disused) spellfix extension
drh [Tue, 19 May 2026 10:33:53 +0000 (10:33 +0000)] 
Limit the size of input strings to the (disused) spellfix extension
to avoid excessive runtime and integer overflows.

FossilOrigin-Name: 2a8951b548a9408df300d238a9fea313268a30c322f0efc0b233bdd3e71a7f9d

8 weeks agoFix a NULL pointer dereference in the obscure (and unused) prefixes
drh [Tue, 19 May 2026 10:30:29 +0000 (10:30 +0000)] 
Fix a NULL pointer dereference in the obscure (and unused) prefixes
extension, which I had forgotten even existed.

FossilOrigin-Name: 24b8ecd17f70f222c40aa91382515a7d0d0b82c882498ae0714818d672806e7f

8 weeks agoFix an off-by-one error in matchinfo('b') for FTS3 when there are a large
drh [Mon, 18 May 2026 23:42:58 +0000 (23:42 +0000)] 
Fix an off-by-one error in matchinfo('b') for FTS3 when there are a large
number of columns.

FossilOrigin-Name: 9bf2f4ca8f3d0cce2ac0bf3742a04a83460d309bd8864bd414946d35106014a9

8 weeks agoLimit the NEAR span in FTS3 to 1 billion, to avoid integer overflow.
drh [Mon, 18 May 2026 20:46:08 +0000 (20:46 +0000)] 
Limit the NEAR span in FTS3 to 1 billion, to avoid integer overflow.

FossilOrigin-Name: 99ea33f48d2e3b0df6561c63814750bd848577df83eae9132e9ea0d009925838

8 weeks agoPrevent integer overflow due to database corruption in.
drh [Mon, 18 May 2026 20:30:31 +0000 (20:30 +0000)] 
Prevent integer overflow due to database corruption in.
fts3auxNextMethod().

FossilOrigin-Name: aebf56a78d57b06079063fd008d56d1b4637c25de8cd5e5883ed8f8f63d42cca

8 weeks agoWhen a subquery is an argument to an SQLITE_SUBTYPE function, then set
drh [Mon, 18 May 2026 19:46:38 +0000 (19:46 +0000)] 
When a subquery is an argument to an SQLITE_SUBTYPE function, then set
the EP_SubtArg flag on the result-set expressions of that subquery.

FossilOrigin-Name: d496e9320393d3c249a30499bd5c7278c9282a77416b5bbef3da175714d9284c

8 weeks agoFix the window-function variant of the json_group_object() function so
drh [Mon, 18 May 2026 17:58:30 +0000 (17:58 +0000)] 
Fix the window-function variant of the json_group_object() function so
that it correctly handles NULL entries.

FossilOrigin-Name: d29d9512a72972778c374524a3cd5d52a1377bf7fb7ff34028135146d75909b8

8 weeks agoDo not attempt the OR-optimization on conjuncts that contain COLLATE
drh [Mon, 18 May 2026 14:32:45 +0000 (14:32 +0000)] 
Do not attempt the OR-optimization on conjuncts that contain COLLATE
operators.

FossilOrigin-Name: 4c105d79010939bdb8cb0461c3926f80815d4f0213bc0206be76015218cb8125

8 weeks agoCorrection to the bugfix at [212c68249cc0e890] so that it works
drh [Mon, 18 May 2026 12:12:06 +0000 (12:12 +0000)] 
Correction to the bugfix at [212c68249cc0e890] so that it works
for 2nd and subsequent terms of a row value.

FossilOrigin-Name: 49c9b80e52642b94f1fa0b50ecd33a96b98a8c28d1175ac2c490d22e8c1433ce

8 weeks agoWhen two tables are joined by USING, the affinity and collating sequence of
drh [Sat, 16 May 2026 20:29:03 +0000 (20:29 +0000)] 
When two tables are joined by USING, the affinity and collating sequence of
the join column will be the same as one or the other of the columns in the
two tables (which are hopefully the same).

FossilOrigin-Name: 8096d548eb035afc94653303000cff2f63a4c996c1dd9bf6114c4299376088fc

8 weeks agoFix false-negatives in the sqlite3ExprCanReturnSubtype() routine having
drh [Sat, 16 May 2026 17:34:27 +0000 (17:34 +0000)] 
Fix false-negatives in the sqlite3ExprCanReturnSubtype() routine having
to do with CASE, CAST, and COLLATE expressions and the "+" no-op operator.

FossilOrigin-Name: 8eb07e92cfecb6f369206f71b42edad81d7eced0ca5576a13fd754eb7db16e55

8 weeks agoHave window functions sum(), total() and avg() correctly handle the obscure case...
drh [Sat, 16 May 2026 17:09:12 +0000 (17:09 +0000)] 
Have window functions sum(), total() and avg() correctly handle the obscure case where integer overflow occurs as part of the same step that adds the first real value to the running total. Fix for forum post [forum:ec538b04ce | ec538b04ce].

FossilOrigin-Name: eb95d18aee8ffb9a2550aadbecccaf43c0a5778973386da1196a46f645e04286

8 weeks agoHave the sqlite_dbpage module correctly handle constraints of the form "WHERE pgno...
drh [Sat, 16 May 2026 16:08:03 +0000 (16:08 +0000)] 
Have the sqlite_dbpage module correctly handle constraints of the form "WHERE pgno=$pgno" when $pgno is an integer that cannot be represented as a signed, 32-bit value.

FossilOrigin-Name: b6ce57f807297966f305d257e616f1c88a2f25c29f622249194b19d6fa014580

2 months agoPrevent internal-use-only SQL functions from being used inside of a CHECK
drh [Mon, 11 May 2026 14:47:45 +0000 (14:47 +0000)] 
Prevent internal-use-only SQL functions from being used inside of a CHECK
constraint added using ALTER TABLE ADD CONSTRAINT.

FossilOrigin-Name: 6cb565fe20049a48619fa3c7995de30fd9e284cfacd1652465e1f9083daf2669

2 months agoFix potential buffer overwrite that could occur in fts5 when processing corrupt records.
drh [Mon, 11 May 2026 12:00:19 +0000 (12:00 +0000)] 
Fix potential buffer overwrite that could occur in fts5 when processing corrupt records.

FossilOrigin-Name: 061febcf41ca4872a0f407951e1507209daca7895122b909a7806c60b6e200c4

2 months agoIn sqlite-config.tcl remove a reference to the platform name apple when checking...
stephan [Sat, 9 May 2026 15:07:27 +0000 (15:07 +0000)] 
In sqlite-config.tcl remove a reference to the platform name apple when checking for Mac platforms, relying on a check for darwin instead, analog to [b5c6cb13cff53f]. Resolves how DLL names are formulated on some systems.

FossilOrigin-Name: 640f2016ab06125ebc9756344f28093750defbedc6fad2894b0d02a12b585149

2 months agoFix upward propagation of expression properties into row-value expressions.
drh [Sat, 9 May 2026 13:57:11 +0000 (13:57 +0000)] 
Fix upward propagation of expression properties into row-value expressions.

FossilOrigin-Name: 5e639b7f15c1de773a83eccfeea67122616a62105299af41dd7c2df2ea74102c

2 months agoFix a corner-case floating-point rounding problem in the generate_series()
drh [Sat, 9 May 2026 12:08:59 +0000 (12:08 +0000)] 
Fix a corner-case floating-point rounding problem in the generate_series()
virtual table.

FossilOrigin-Name: 931119281252ba73693770ac301010a84eb9c2b06247b17e3252271163341ab0

2 months agoVersion 3.53.1 version-3.53.1
drh [Tue, 5 May 2026 10:34:17 +0000 (10:34 +0000)] 
Version 3.53.1

FossilOrigin-Name: c88b22011a54b4f6fbd149e9f8e4de77658ce58143a1af0e3785e4e6475127e9

2 months agoFix a predicate which causes a false error in the OPFS SAHPool tests when building...
stephan [Tue, 5 May 2026 08:12:37 +0000 (08:12 +0000)] 
Fix a predicate which causes a false error in the OPFS SAHPool tests when building with SEE.

FossilOrigin-Name: 1d2f770713f9d75d0de923515f4cee8ff83e95826d77f049b7bb1fbfad042248

2 months agoWhen using the OR-optimization on a loop created by exists-to-join,
drh [Mon, 4 May 2026 18:30:02 +0000 (18:30 +0000)] 
When using the OR-optimization on a loop created by exists-to-join,
do the early-exit logic for the whole loop, not for each individual
OR branch.

FossilOrigin-Name: b827cdcb371d07cd4ffba4d3c7b404bece43fcc808db528b94a66bf77b6aab4f

2 months agoFix a harmless compiler warning.
drh [Sat, 2 May 2026 13:18:40 +0000 (13:18 +0000)] 
Fix a harmless compiler warning.

FossilOrigin-Name: 9957c3b907d66ed1b8afa3b71ba0ad23b2de3ec486e6232b58166fd3a410705a

2 months agoHarden the recovery extension against SQL injections coming from the
drh [Fri, 1 May 2026 13:56:19 +0000 (13:56 +0000)] 
Harden the recovery extension against SQL injections coming from the
sqlite_schema table of the database being recovered.

FossilOrigin-Name: 555401fe048a51ecaed3ef672723b6ef8e1340c7028c11a17731abbc399bc078

2 months agoFix a crash that could occur if sqlite3_deserialize() was used to overwrite a databas...
drh [Mon, 27 Apr 2026 12:28:23 +0000 (12:28 +0000)] 
Fix a crash that could occur if sqlite3_deserialize() was used to overwrite a database with an open transaction on it. Bug introduced by [fc42d31d6fca21ab] on 2018-03-07 and first released in version 3.23.0. This is not a vulnerability as an attacker that can exploit this already has the ability to execute arbitrary code. Forum post [forum:39134ba029 | 39134ba029].

FossilOrigin-Name: b7b0745d6def6b141c900884cd97f10f3afedcbfb4bd9ce2409ee2380a8602dd

2 months agoFeature detection fix for uint128 on RISCV 32-bit.
drh [Mon, 27 Apr 2026 12:25:36 +0000 (12:25 +0000)] 
Feature detection fix for uint128 on RISCV 32-bit.

FossilOrigin-Name: e3f318bf52932460890333c6dcae352ab4b0c943d7be67734649eff1ff9fc9fc

2 months agoIncrease a stack-local buffer size to resolve a test regression introduced in [ff084a...
stephan [Mon, 27 Apr 2026 12:07:31 +0000 (12:07 +0000)] 
Increase a stack-local buffer size to resolve a test regression introduced in [ff084ae341eab5c], in which some tests fail a pattern match check if their absolute file names are too long. Resolves [forum:205f73db1b2806f5|forum post 205f73db1b2806f5].

FossilOrigin-Name: 4eeb1f74f61589f115810bd2a6876dcec9e674a2baf686f3b5b25678695aa797

2 months agoFix a single-byte OOB read that could occur in the session module when concatenating...
drh [Sat, 25 Apr 2026 15:04:21 +0000 (15:04 +0000)] 
Fix a single-byte OOB read that could occur in the session module when concatenating patchsets.

FossilOrigin-Name: 5150cf9a89aebfd7121b4742c8b359116f16d890e83b64105bb192d3d0f68971

2 months agoUpdate interrupt2.test to avoid using Tcl_GetCommandInfo() from within calls to Tcl_D...
dan [Thu, 23 Apr 2026 11:33:26 +0000 (11:33 +0000)] 
Update interrupt2.test to avoid using Tcl_GetCommandInfo() from within calls to Tcl_DeleteCommand().

FossilOrigin-Name: 00daafed79290b9bbf7a9359b656d8841745caf22c1c3cdcbacf05eebcfe300c

2 months agoVarious minor bug fixes cherrypicked from trunk.
drh [Tue, 21 Apr 2026 22:55:44 +0000 (22:55 +0000)] 
Various minor bug fixes cherrypicked from trunk.

FossilOrigin-Name: f1276db5dabe797dfeee2afbb9f3a3fe367b5f860a07af88963f16aa3986f7b9

2 months agoFix another bug in EXISTS-to-JOIN - this one
drh [Tue, 21 Apr 2026 13:06:15 +0000 (13:06 +0000)] 
Fix another bug in EXISTS-to-JOIN - this one
having to do with an OFFSET clause of a LIMIT.

FossilOrigin-Name: f91099ecee5413b3ab7261461e774436f5a9214101eea10d234135abe70bb444

2 months agoReformulate how the OPFS async proxy Worker is loaded for the bundler-friendly builds...
stephan [Tue, 21 Apr 2026 10:15:16 +0000 (10:15 +0000)] 
Reformulate how the OPFS async proxy Worker is loaded for the bundler-friendly builds to work around a bug in Vite in which it incompatibly rewrites the Worker's URL arguments. Addresses the discussion at [https://github.com/sqlite/sqlite-wasm/pull/159|npm package PR 159] and patch validated by Jure Rotar.

FossilOrigin-Name: 6215c9dd27ca446bf61d8ee7adcf455d35914853b19cb5f5feff5ce0f420e7b7

2 months agoOn platforms which support ./configure --with-icu-config, ensure that 'make tclextens...
stephan [Fri, 17 Apr 2026 04:59:42 +0000 (04:59 +0000)] 
On platforms which support ./configure --with-icu-config, ensure that 'make tclextension' includes the ICU pieces in the tcl extension. Intended to resolve [forum:92a88de4b88929fe|forum post 92a88de4b88929fe].

FossilOrigin-Name: a4f27adb97f2fb8bf44931d3a44f9d05f0485e743ad086177b8f9471ee9dfff5

2 months agoFix parsing of options to the .once command.
drh [Fri, 17 Apr 2026 01:55:29 +0000 (01:55 +0000)] 
Fix parsing of options to the .once command.

FossilOrigin-Name: fd21b079e9ded037f9ec65f04864684060b8b80d034dfc9b07e01b5a1f75d79a

2 months agoVersion number to 3.53.1
drh [Wed, 15 Apr 2026 19:09:34 +0000 (19:09 +0000)] 
Version number to 3.53.1

FossilOrigin-Name: b4c1cc5efcc1e538ed71ffd847030d80ab03fe6e6785f14fbad7f6079321d199

2 months agoHandle a special case of a corrupt changeset in sqlite3changegroup_add().
dan [Wed, 15 Apr 2026 17:13:42 +0000 (17:13 +0000)] 
Handle a special case of a corrupt changeset in sqlite3changegroup_add().

FossilOrigin-Name: dceee93ab38a623a6c94658583ad6e012e141d5a4eaa91b074de06e175cb4175

2 months agoHandle the case where the name of the constraint in an "ALTER TABLE DROP CONSTRAINT...
dan [Wed, 15 Apr 2026 16:22:59 +0000 (16:22 +0000)] 
Handle the case where the name of the constraint in an "ALTER TABLE DROP CONSTRAINT" command is quoted. [forum:8bfbaec404 | Forum post 8bfbaec404].

FossilOrigin-Name: 2d37af77a139cdcecb959b0821e5ed925f12789a759d0c94dce29d4b30b5750a

2 months agoBug fix in sqlite3_str_free(): Do not crash if called on an sqlite3_str
drh [Wed, 15 Apr 2026 14:22:35 +0000 (14:22 +0000)] 
Bug fix in sqlite3_str_free(): Do not crash if called on an sqlite3_str
object returned from sqlite3_str_new() following an OOM.

FossilOrigin-Name: b6b1d069cd5528b79ab0412137971fca1963a500f99e5c53ae57de1dd90066d2

3 months agoFix a typo which caused .headers to not show up in the shell's .help.
stephan [Sun, 12 Apr 2026 05:43:12 +0000 (05:43 +0000)] 
Fix a typo which caused .headers to not show up in the shell's .help.

FossilOrigin-Name: 9efc1b6497ac5a4d0aef8fa73cdb016160720b076183c3727edc3de438e094e6

3 months agoEnsure that sqlite3-opfs-async-proxy.js is copied into the fiddle target dirs.
stephan [Fri, 10 Apr 2026 23:33:31 +0000 (23:33 +0000)] 
Ensure that sqlite3-opfs-async-proxy.js is copied into the fiddle target dirs.

FossilOrigin-Name: d4e0e81afda425b23ac52f08ab9c3a2c136b8a963bd09ebcfb2f6f305b23e396

3 months agoAPI doc correction for sqlite3_js_retry_busy(). No code changes.
stephan [Fri, 10 Apr 2026 17:56:54 +0000 (17:56 +0000)] 
API doc correction for sqlite3_js_retry_busy(). No code changes.

FossilOrigin-Name: e2bfb67da9538527b2eb92d261c82d4d0854a36ac55989373f07e3b854678694

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

FossilOrigin-Name: d959559d1fc34381861085ed8ac97b7ce72a4a83c6f846a6abd1e4552db081b4

3 months agoFix the printf() optimization added on 2026-03-29 so that
drh [Fri, 10 Apr 2026 16:06:09 +0000 (16:06 +0000)] 
Fix the printf() optimization added on 2026-03-29 so that
sqlite3_snprintf() does not incorrectly truncate floating-point
conversions.

FossilOrigin-Name: 7c6883ecd3b284f38bfa93b03653fb48eaa42f223ae7ab12e1ad03082f3db44b

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

FossilOrigin-Name: 5306da4231efcaf1bd7afa3cdcfcb87edf70958e3dd2edaed765a0d844e3be03

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 months 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

3 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

3 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

3 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

3 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

3 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

3 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