]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
5 hours agoIdea for a new API that simply retrieves the current authorizer settings. get-authorizer
drh [Sat, 2 May 2026 18:09:18 +0000 (18:09 +0000)] 
Idea for a new API that simply retrieves the current authorizer settings.
This might be useful, for example, in a subroutine that wants to run
SQL with temporary changes to the authorizer, but restore the application
settings before returning.

FossilOrigin-Name: 4302c052777f60b42b01503965fe06280ae9278ad06a21c4b6d8c65d3c1ef94b

5 hours agoMinor optimization to the authorizer.
drh [Sat, 2 May 2026 17:30:33 +0000 (17:30 +0000)] 
Minor optimization to the authorizer.

FossilOrigin-Name: 625f78a630bbf897f945065f1b85a92fe26e426302c8f6edc4d26a817ff62358

7 hours agoFix harmless compiler warnings.
drh [Sat, 2 May 2026 15:58:28 +0000 (15:58 +0000)] 
Fix harmless compiler warnings.

FossilOrigin-Name: a0d0b5aff51088699e5ad0a726c350d10744b1779acd9ee54232659fb4c352a4

11 hours agoClose database connections in a timely manner to fix test script problems
drh [Sat, 2 May 2026 11:47:22 +0000 (11:47 +0000)] 
Close database connections in a timely manner to fix test script problems
on Windows.

FossilOrigin-Name: 068a53865a17d4c2b4ce227fc08a2c019d1dbf31d833842ec08ab5665a3565a3

29 hours agoFix an SQLITE_MISUSE memory error in check-ini [1f940357f7bb160b].
drh [Fri, 1 May 2026 17:42:15 +0000 (17:42 +0000)] 
Fix an SQLITE_MISUSE memory error in check-ini [1f940357f7bb160b].

FossilOrigin-Name: fc64113e8f9aee0161e682db7c244a7849f2db86551a557b276deb1785941476

31 hours agoHarden the recovery extension against SQL injections coming from the
drh [Fri, 1 May 2026 16:06:21 +0000 (16:06 +0000)] 
Harden the recovery extension against SQL injections coming from the
sqlite_schema table of the database being recovered.

FossilOrigin-Name: 9190f1b9b8889e4d80c370db36b916744d5779de0ec51da0369bbe74adb7b931

31 hours agoCheck-in [1786fcd5b4ee6cd9] works great and generates correct code, but it
drh [Fri, 1 May 2026 16:03:51 +0000 (16:03 +0000)] 
Check-in [1786fcd5b4ee6cd9] works great and generates correct code, but it
upset UBSAN.  This check-in fixes the UBSAN complaint.

FossilOrigin-Name: 7cd76847e8c9b683e39c1063a343288f11b4aa5e9302394fe0c4244d361ee4f1

2 days agoThe value for /f and other filename substitutions in SQLITE_PS1 is now
drh [Thu, 30 Apr 2026 18:23:58 +0000 (18:23 +0000)] 
The value for /f and other filename substitutions in SQLITE_PS1 is now
"memory" if open on an in-memory database.

FossilOrigin-Name: 4aac1057eeaf6c29a4893e9c080497c780b0963e810c501532d79eba1b457f27

2 days agoRemove lots of code used to support legacy Windows version (WindowsXP and
drh [Thu, 30 Apr 2026 16:52:56 +0000 (16:52 +0000)] 
Remove lots of code used to support legacy Windows version (WindowsXP and
before).  Use Slim Reader/Writer Locks on Windows for non-recursive mutexes,
since SRWLs are now available on all supported Windows platforms.

FossilOrigin-Name: 6f7a5ff22db10f889596239aae5f6a1130cbdfe72612ceee68cbeb3b86e40227

2 days agoFix a harmless compiler warning in src/mutex_w32.c.
drh [Thu, 30 Apr 2026 15:41:01 +0000 (15:41 +0000)] 
Fix a harmless compiler warning in src/mutex_w32.c.

FossilOrigin-Name: 8de796ca459f2c996937fe1107838b217572636110c8c09e358343385bf17a1b

2 days agoFix the memdb1.test test module so that it runs correctly on Windows.
drh [Thu, 30 Apr 2026 15:33:44 +0000 (15:33 +0000)] 
Fix the memdb1.test test module so that it runs correctly on Windows.

FossilOrigin-Name: 9012f8ea7454bbb792b4361ed74d778e02b98ef44a443f9a23a27a4222fda747

2 days agoChange the CLI warning that appears in the header about opening a
drh [Thu, 30 Apr 2026 15:19:09 +0000 (15:19 +0000)] 
Change the CLI warning that appears in the header about opening a
in-memory database, to be more readable.

FossilOrigin-Name: cc64cafdfe0b0965fabaf9d561d9a108c20a3643f71b36e6a6c51fc8f30b82cb

2 days agoAdd the /m escape to the CLI prompt string. Use it to show "memory"
drh [Thu, 30 Apr 2026 15:07:25 +0000 (15:07 +0000)] 
Add the /m escape to the CLI prompt string.  Use it to show "memory"
in italic for the default prompt for in-memory databases.

FossilOrigin-Name: 1e3c95393044279997833145cb610b98926fb0c8f53ae4fb35e9fcc6c1ded1a2

3 days agoFix a crash that could occur if the destination database of a backup is
dan [Wed, 29 Apr 2026 19:14:54 +0000 (19:14 +0000)] 
Fix a crash that could occur if the destination database of a backup is
replaced using sqlite3_deserialize() between the call to sqlite3_backup_init()
and the first call to sqlite3_backup_step(). Forum post [forum:15d82885e2 | 15d82885e2].

FossilOrigin-Name: 1f940357f7bb160b583ac5b08ff4e32a9fef353255d032c5a18bcb04416c0f0b

3 days agoReduce the number of system calls in the os_win.c thunk from 81 down omit-legacy-windows
drh [Wed, 29 Apr 2026 16:09:47 +0000 (16:09 +0000)] 
Reduce the number of system calls in the os_win.c thunk from 81 down
to 58, as well as other simplifications.

FossilOrigin-Name: c49521739c961ed5e38424bf26b2e34d8017a85122622ceac5af7398233fe343

3 days agoFurther simplifications to the interface to the Windows family of OSes.
drh [Wed, 29 Apr 2026 15:03:01 +0000 (15:03 +0000)] 
Further simplifications to the interface to the Windows family of OSes.
An incremental check-in.

FossilOrigin-Name: f2aa6b66d2a1b5bb2dc8a44788a061a549a846244354df19b44398839578461e

3 days agoSimplify the Windows interface by removing support for various WindowsXP
drh [Wed, 29 Apr 2026 14:02:23 +0000 (14:02 +0000)] 
Simplify the Windows interface by removing support for various WindowsXP
and WindowsCE.  This is a work-in-progress.  More to follow.

FossilOrigin-Name: 4dbc4d19c4f3b58d0bedd766cfba65d9624903a5ab0a340eb83ddeec058607ea

4 days agoUpdates and simplifications to the mutex implementation on Windows. Uses win-mutex-revamp
drh [Tue, 28 Apr 2026 20:01:03 +0000 (20:01 +0000)] 
Updates and simplifications to the mutex implementation on Windows.  Uses
Slim Reader/Writer Locks for performance, for non-reentrant mutexes.
Requires WindowsVista or later.

FossilOrigin-Name: a75aa5400f94531b8ffd00be4580b0578d8d81ba9681fd06b1d9d96a6180994c

4 days agoAttempt to align instances of the sqlite3_mutex object at 128-byte boundaries
drh [Tue, 28 Apr 2026 15:12:40 +0000 (15:12 +0000)] 
Attempt to align instances of the sqlite3_mutex object at 128-byte boundaries
to prevent false-sharing in multi-core machines. See the discussion at and
around [forum:/forumpost/2026-03-25T23:15:03Z|forum post 2026-03-25T23:15:03Z].

FossilOrigin-Name: 1786fcd5b4ee6cd9b4780f3687dfaec5b90ef0476e0da266a94e069b98e70514

4 days agoFix comment typo
drh [Tue, 28 Apr 2026 12:49:10 +0000 (12:49 +0000)] 
Fix comment typo

FossilOrigin-Name: d64a1dbe0fb2d9286806d833a3146b21d5bf1636a650d5a64cf163c7f2356e98

5 days agoImproved detection of when the alternative windows-compatible main() is
drh [Mon, 27 Apr 2026 14:01:23 +0000 (14:01 +0000)] 
Improved detection of when the alternative windows-compatible main() is
needed in the sqldiff.exe utility.

FossilOrigin-Name: e25b849a603cb08ab888641ff324e9aa129391c4792de86a62c55e9caf84c16e

5 days agoRelax arbitrary length restrictions on some error messages in the CLI.
drh [Mon, 27 Apr 2026 12:43:09 +0000 (12:43 +0000)] 
Relax arbitrary length restrictions on some error messages in the CLI.

FossilOrigin-Name: 52f5531ded8e0d3da3dc4d5c9b3d14573041b9446e2c45b5093c958b6c74e0de

5 days agoIncrease a stack-local buffer size to resolve a test regression introduced in [ff084a...
stephan [Mon, 27 Apr 2026 12:05:56 +0000 (12:05 +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: 286fc22c7ca882b0b09de2f1b2a7e0b382af6c498f2f8ad237fe064feaa70d7f

5 days agoFix a crash that could occur if sqlite3_deserialize() was used to overwrite a databas...
dan [Mon, 27 Apr 2026 11:32:43 +0000 (11:32 +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: 77662cce9aa452ba5820e5f1a864a802763bd83b937cdb16e7025219eff7bd08

5 days agoRefactor the uint128 type check to consolidate duplicated rules.
stephan [Mon, 27 Apr 2026 06:48:07 +0000 (06:48 +0000)] 
Refactor the uint128 type check to consolidate duplicated rules.

FossilOrigin-Name: 362ef7bc00eea180fb3458bd8887021aed54e321901483edc00ad6b23a33d8e5

5 days agoFeature detection fix for uint128 on RISCV 32-bit, reported in [forum:f8d1417ce8eb2f2...
stephan [Mon, 27 Apr 2026 05:55:38 +0000 (05:55 +0000)] 
Feature detection fix for uint128 on RISCV 32-bit, reported in [forum:f8d1417ce8eb2f22|forum post 2026-04-26T11:41:01Z] and validated by the OP.

FossilOrigin-Name: c4a2c20839ef75534d71d928a03ad276bdc488b0baa76c1505f48dc1ff0bcdd1

6 days agoImprovements to temp-file cleanup on close in the CLI.
drh [Sun, 26 Apr 2026 18:35:26 +0000 (18:35 +0000)] 
Improvements to temp-file cleanup on close in the CLI.

FossilOrigin-Name: 048c969c34eaaf8c203b996e999a7dbc94c47b4959719af9e6625052520f7135

7 days agoIn the CLI, eliminate the 2-second delay before getting the prompt back
drh [Sat, 25 Apr 2026 16:17:23 +0000 (16:17 +0000)] 
In the CLI, eliminate the 2-second delay before getting the prompt back
after running a ".www" or ".excel".  Instead, remember the name of the
temporary file that is to be deleted and delete it later.

FossilOrigin-Name: 4e9ee211ca661fe8978b7f676f33ef962ff5c8177bc7c5ad42b19a2fa4482d90

7 days agoSimplify the modePush()/modePop() implementation in the CLI.
drh [Sat, 25 Apr 2026 15:05:46 +0000 (15:05 +0000)] 
Simplify the modePush()/modePop() implementation in the CLI.

FossilOrigin-Name: 92cad2cd7284d3a969b713336865007da2b0b2a8eef367d4185802174cbd027a

7 days agoDo not run expridx2.test as part of the "journaltest" permutation, as it requires...
dan [Sat, 25 Apr 2026 14:32:05 +0000 (14:32 +0000)] 
Do not run expridx2.test as part of the "journaltest" permutation, as it requires wal mode.

FossilOrigin-Name: 11cfbae735669776c967522294b1606af90b4bd5379e2e1ed722520887b57757

7 days agoFix a single-byte OOB read that could occur in the session module when concatenating...
dan [Sat, 25 Apr 2026 14:00:29 +0000 (14:00 +0000)] 
Fix a single-byte OOB read that could occur in the session module when concatenating patchsets.

FossilOrigin-Name: 60d7cd625a6160ba1bc60fd00fab2e91e0deff42034c6864107c19330b35ea7a

7 days agoMinor code simplification in the CLI.
drh [Sat, 25 Apr 2026 10:45:17 +0000 (10:45 +0000)] 
Minor code simplification in the CLI.

FossilOrigin-Name: 59795c71e5745e8a27dc596b9f1fc8f137df58a6ec8d8d0dab2b31cf8562796d

7 days agoFix a problem in the CLI in which the ".www" command followed by
drh [Sat, 25 Apr 2026 00:29:40 +0000 (00:29 +0000)] 
Fix a problem in the CLI in which the ".www" command followed by
".dbstat" does not restore the mode to its original setting afterwards.

FossilOrigin-Name: 4a5cac1d00e1fa287ab8ce3437c0152a9f362d72bdb9976889c93f6368b3fd66

8 days agoFix test cases due to recent CLI default prompt changes. Make sure ANSI
drh [Fri, 24 Apr 2026 20:27:42 +0000 (20:27 +0000)] 
Fix test cases due to recent CLI default prompt changes.  Make sure ANSI
escape codes are recognized on Windows terminals.

FossilOrigin-Name: 22b791e404f0895b0f343b2ce0e169a7ada8578e46a39a9f4bd3a31f81c9853c

8 days agoImprovements to the default prompt for the CLI.
drh [Fri, 24 Apr 2026 09:21:25 +0000 (09:21 +0000)] 
Improvements to the default prompt for the CLI.

FossilOrigin-Name: 9ab0bb487f78ba5a51cd3b4efcee23b11096e90ebf3add4da18aea657e8de0b6

9 days agoImproved default prompt in the CLI.
drh [Thu, 23 Apr 2026 22:15:18 +0000 (22:15 +0000)] 
Improved default prompt in the CLI.

FossilOrigin-Name: 78193b60346dba304485241dd65f0eb6e971714397b76191b3bf7a5fdb44916b

9 days agoFix harmless compiler warnings. Enhance the CLI prompt mechanism to make
drh [Thu, 23 Apr 2026 20:13:14 +0000 (20:13 +0000)] 
Fix harmless compiler warnings.  Enhance the CLI prompt mechanism to make
it more easily reusable by other projects, and to add the /h, /H, and /u
escape sequences.

FossilOrigin-Name: 354ce4f5e2a86b621b2058a6372495a5919cf3dc88ce1ed3637642f720c48002

9 days agoFix a bug in [dbc1d6f0a3452607] that disrupts the display when running
drh [Thu, 23 Apr 2026 20:06:16 +0000 (20:06 +0000)] 
Fix a bug in [dbc1d6f0a3452607] that disrupts the display when running
on a Windows console (not redirecting to a file).

FossilOrigin-Name: 75b5df2b0046827e985712b5725488b59667e2cfd171cde9f1194f2917165205

9 days agoImprovements to the #define mechanism in the CLI that allows other programs
drh [Thu, 23 Apr 2026 16:40:34 +0000 (16:40 +0000)] 
Improvements to the #define mechanism in the CLI that allows other programs
that incorporate the shell.c source file to customize some of the
prompt expansions.

FossilOrigin-Name: e5f8840d11c1863cfc5c0b4a3d16c9ec9ab6ca6ecb7ff1a3a9a237715eed5d30

9 days agoHave testrunner.tcl return a non-zero exit status if one or more tests have failed.
dan [Thu, 23 Apr 2026 15:54:00 +0000 (15:54 +0000)] 
Have testrunner.tcl return a non-zero exit status if one or more tests have failed.

FossilOrigin-Name: 50ddc36d32540b6d98990b5c9a465beb5b68cc31ae3f0ed162f6fe07e7c74e2d

9 days agoNew CLI prompt escape sequences: /r, /A, /v, /V, and /D../D.
drh [Thu, 23 Apr 2026 15:05:46 +0000 (15:05 +0000)] 
New CLI prompt escape sequences:  /r, /A, /v, /V, and /D../D.

FossilOrigin-Name: e7c7acd1a4e5cb0f8e68f119352480c1aa9dd3c2b289c92f88e9e697a2e440e0

9 days agoFix harmless compiler warning.
drh [Thu, 23 Apr 2026 14:49:21 +0000 (14:49 +0000)] 
Fix harmless compiler warning.

FossilOrigin-Name: 706373dcbe43752cf21604f278f96fb3015a36089ad64f069bb3a64bc526d137

9 days agoCLI shell: handle the special case of .prompt "" to not incorrectly report that as...
stephan [Thu, 23 Apr 2026 14:05:36 +0000 (14:05 +0000)] 
CLI shell: handle the special case of .prompt "" to not incorrectly report that as an OOM. Reported [https://fossil-scm.org/forum/forumpost/ca277be73a|in the Fossil SCM forum].

FossilOrigin-Name: 3fa0500b964869c45f7b49717680b791049f7cd8c47a06a337dd22351d2002f9

10 days agoWhen updating indexes on expressions, omit the update if the new indexed values are...
dan [Wed, 22 Apr 2026 19:38:04 +0000 (19:38 +0000)] 
When updating indexes on expressions, omit the update if the new indexed values are the same as the old.

FossilOrigin-Name: f0fc4e5ec334da3a1db8b0334e23d1911874c96675690da94210b2afb45f7307

10 days agoAdd OOM test for the new code on this branch. index-detect-noop
dan [Wed, 22 Apr 2026 19:25:12 +0000 (19:25 +0000)] 
Add OOM test for the new code on this branch.

FossilOrigin-Name: 685be705a2a69e79de0d581e5bbe9d942133817342121786a551d95d59a4af6c

10 days agoMark branches that are believed to be unreachable.
drh [Wed, 22 Apr 2026 19:12:48 +0000 (19:12 +0000)] 
Mark branches that are believed to be unreachable.

FossilOrigin-Name: 18ed9736fbbea762e04b8ad156e83e577e60c5234a5e233540ad8664fe3b379c

10 days agoInstead of adding a branch to OP_IdxInsert, use an extra OP_IfNull when updating...
dan [Wed, 22 Apr 2026 18:19:24 +0000 (18:19 +0000)] 
Instead of adding a branch to OP_IdxInsert, use an extra OP_IfNull when updating indexes on expressions.

FossilOrigin-Name: 5112f96cb1428693614b91bcca78326fccf7289e395a920339676ceeba871e3f

10 days agoEnable the optimization on this branch for indexes on expressions only.
dan [Wed, 22 Apr 2026 17:50:50 +0000 (17:50 +0000)] 
Enable the optimization on this branch for indexes on expressions only.

FossilOrigin-Name: 3576b6930436b3149c5033476f70518e9b4adeaeec2538a68b7dc599eb854c47

10 days agoFix P3/P5 confusion in the comment above OP_IdxDelete.
dan [Wed, 22 Apr 2026 17:31:19 +0000 (17:31 +0000)] 
Fix P3/P5 confusion in the comment above OP_IdxDelete.

FossilOrigin-Name: 0fb6ca8e22f355838a02223dd24b34c0669a6cc0b7ac80931c721db72cf5c1c8

10 days agoDetect and omit cases where an index key is being replaced with an identical key.
dan [Wed, 22 Apr 2026 16:58:36 +0000 (16:58 +0000)] 
Detect and omit cases where an index key is being replaced with an identical key.

FossilOrigin-Name: 7a01caf0d0864a462eb81b7643dcf89048f4ae56a29d762f0cfc38066218504f

10 days agoFix a integer type bug in the previous check-in.
drh [Wed, 22 Apr 2026 13:41:20 +0000 (13:41 +0000)] 
Fix a integer type bug in the previous check-in.

FossilOrigin-Name: 5e1b5ff1c170e94956bf77bd38afcad6369cb9f9333864711212af045281ad0e

10 days agoQRF and the CLI preserve zero bytes when outputing unformatted BLOB values.
drh [Wed, 22 Apr 2026 12:22:32 +0000 (12:22 +0000)] 
QRF and the CLI preserve zero bytes when outputing unformatted BLOB values.

FossilOrigin-Name: dbc1d6f0a3452607e4e92155df0fdb1c5ea4ea5ad1654664f86383faf6c105ef

11 days agoFix harmless compiler warning in QRF.
drh [Tue, 21 Apr 2026 22:19:38 +0000 (22:19 +0000)] 
Fix harmless compiler warning in QRF.

FossilOrigin-Name: dcfb505ac7762f7a3102e1c3853a83dca1d1ef436cc8981949b63c7d7992cc5b

11 days agoDisable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/077c02...
dan [Tue, 21 Apr 2026 20:40:22 +0000 (20:40 +0000)] 
Disable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/077c02e8ed | forum post 77c02e8ed].

FossilOrigin-Name: d0d95a39bc211034071746395ee6dbcfbea9d573d27480655391ba9698f7e214

11 days agoFix the BETWEEN operator so that it propagates the EP_Subquery,
drh [Tue, 21 Apr 2026 20:28:38 +0000 (20:28 +0000)] 
Fix the BETWEEN operator so that it propagates the EP_Subquery,
EP_Collate, and EP_HasFunc flags in the expression tree, as it ought.
Fix for the problem reported at
[forum:/forumpost/2026-04-21T19:10:55Z|forum post 2026-04-21T19:10:55Z]
and probably a bunch of other problems too.  This has been incorrect
for a long time.

FossilOrigin-Name: 2d1d2947b28f5dcbf4c66b594e176038c4e71e61948a88db565c1cb1212657ce

11 days agoCorrectly dequote the constraint name passed to ALTER TABLE DROP CONSTRAINT. This...
dan [Tue, 21 Apr 2026 18:07:04 +0000 (18:07 +0000)] 
Correctly dequote the constraint name passed to ALTER TABLE DROP CONSTRAINT. This improves upon the partial fix in [7f5afb12f4]. Forum post [forum:/forumpost/a746b08b87 | a746b08b87].

FossilOrigin-Name: 9387238cb0bb2651c64ecb229072df039577d71fd91546a2f0c94ca9755bf25d

11 days agoDisable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/077c02... disable-nested-exist-opt
dan [Tue, 21 Apr 2026 16:40:08 +0000 (16:40 +0000)] 
Disable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/077c02e8ed | forum post 77c02e8ed].

FossilOrigin-Name: 64f0d9eb63a351de12bb9643f1f6390a89f6d95dc81c07f1dc409ee31bae6f83

11 days agoFix an off-by-one buffer size calculation in the decimal.c extension.
drh [Tue, 21 Apr 2026 16:07:15 +0000 (16:07 +0000)] 
Fix an off-by-one buffer size calculation in the decimal.c extension.

FossilOrigin-Name: 24df42104d5fd1cf974f2bf539fa7515808e21e68d64899c39f5fcf3bee49a48

11 days agoDo not unnecessarily delay opening the database file in the CLI.
drh [Tue, 21 Apr 2026 14:39:23 +0000 (14:39 +0000)] 
Do not unnecessarily delay opening the database file in the CLI.

FossilOrigin-Name: ab6ee76c1266b753d0749c63890f40db875536ceb4dd3252cc7a3386e386a0c1

11 days agoFix another bug in [/info/e33da6d5dc964db8|EXISTS-to-JOIN] - this one
drh [Tue, 21 Apr 2026 12:59:43 +0000 (12:59 +0000)] 
Fix another bug in [/info/e33da6d5dc964db8|EXISTS-to-JOIN] - this one
having to do with an OFFSET clause of a LIMIT.  Reported by
[forum:/forumpost/2026-04-21T10:57:09Z|forum post 2026-04-21T10:57:09Z].

FossilOrigin-Name: 1dd3c6a5e50ac3f617683678223e42f48636c17e58905506c5c74cc4bf05845c

11 days agoReformulate how the OPFS async proxy Worker is loaded for the bundler-friendly builds...
stephan [Tue, 21 Apr 2026 10:19:38 +0000 (10:19 +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: ec877a30f5c5db30b9154745140744c5cc80d89673d79e50901d7377599cf2b4

12 days agoFix the fileio extension for Windows builds so that it does not depend on
drh [Mon, 20 Apr 2026 10:28:19 +0000 (10:28 +0000)] 
Fix the fileio extension for Windows builds so that it does not depend on
the sqlite3_win32_utf8_to_unicode() and sqlite3_win32_unicode_to_utf()
routines that are found in the SQLite core.
[forum:/forumpost/2026-04-20T02:02:56Z|Forum post 2026-04-20T02:02:56Z].

FossilOrigin-Name: fe0414a9a3caf6af67f53a5f3534efd5d4bf4978ebce1c591ef62d6961e55701

2 weeks agoFix a harmless compiler warning in test/speedtest1.c.
drh [Sat, 18 Apr 2026 21:51:32 +0000 (21:51 +0000)] 
Fix a harmless compiler warning in test/speedtest1.c.

FossilOrigin-Name: 13f0fd1daaf787bff6eded4a01c2cf47c79e52cf8812bb344995e28c015a4ed1

2 weeks agoPerformance improvement in the substr() and length() SQL functions.
drh [Sat, 18 Apr 2026 12:31:53 +0000 (12:31 +0000)] 
Performance improvement in the substr() and length() SQL functions.
Caution: The new code may give different results for malformed UTF8.
I do not consider that to be a problem by the GI/GO principle.

FossilOrigin-Name: 6124d27a33f4562f40777c2c6318d61709f7b481f23f9ade45064d8ad0700752

2 weeks agoFix a test case that started failing due to a change in the help text
drh [Fri, 17 Apr 2026 19:12:27 +0000 (19:12 +0000)] 
Fix a test case that started failing due to a change in the help text
for the ".prompt" command of the CLI.

FossilOrigin-Name: bfe9df1bf4660ce6bdfd11a4f06d32694c93750c7bc0a6432459d9f1089eace4

2 weeks agoUpdate interrupt2.test to avoid using Tcl_GetCommandInfo() from within calls to Tcl_D...
dan [Fri, 17 Apr 2026 15:09:50 +0000 (15:09 +0000)] 
Update interrupt2.test to avoid using Tcl_GetCommandInfo() from within calls to Tcl_DeleteCommand().

FossilOrigin-Name: 1979aa0902a43f20d4e396c5f9b9a49aaf0094d8520bf53ce058bb379a7720ab

2 weeks agoHelp-text and comment fixes in the CLI. Add the output-redir-test.txt
drh [Fri, 17 Apr 2026 11:41:33 +0000 (11:41 +0000)] 
Help-text and comment fixes in the CLI.  Add the output-redir-test.txt
testing script.

FossilOrigin-Name: ec58a133b4716d4f5a53c38853f8ecdb7a1275b931663ce07c8dc700d845e62e

2 weeks agoLess error-prone parsing of ".once" options. Fix for the problem reported
drh [Fri, 17 Apr 2026 01:50:40 +0000 (01:50 +0000)] 
Less error-prone parsing of ".once" options.  Fix for the problem reported
by [forum:/info/2026-04-17T01:26:56Z|forum post 2026-04-17T01:26:56Z].

FossilOrigin-Name: b235a8093734f457c2731af017c99027510d04e5cd1060f5559afbec5409a472

2 weeks agoFix testrunner.tcl so that it does not create directories with names
drh [Thu, 16 Apr 2026 19:50:52 +0000 (19:50 +0000)] 
Fix testrunner.tcl so that it does not create directories with names
ending in "sqlite3.o" or "sqlite3.lo".  Use "sqlite3obj" for those
directory names instead.  Otherwise "make clean" gets confused.

FossilOrigin-Name: a4bf9289c9cdb12b22bfb24e7e2b0243384e9edece12ae3fed14afbfe9b93260

2 weeks agoImproved comments explaining the logic, and improved diagnostic messages
drh [Thu, 16 Apr 2026 19:33:04 +0000 (19:33 +0000)] 
Improved comments explaining the logic, and improved diagnostic messages
when testrunner.tcl encounters trouble loading the sqlite3 extension.

FossilOrigin-Name: 8d820b0ccfccff94ed5b7297fa587ac27a74e990f233cfe229da7409ab2e3af8

2 weeks agoMinor updates to testrunner documentation.
drh [Thu, 16 Apr 2026 17:07:23 +0000 (17:07 +0000)] 
Minor updates to testrunner documentation.

FossilOrigin-Name: f8507bd5e221783175be2bb7b907c098e0970b1cbcb01817df7217005eab9ab4

2 weeks agoRun C-language tests in tests/c/ as part of release test.
dan [Thu, 16 Apr 2026 16:43:32 +0000 (16:43 +0000)] 
Run C-language tests in tests/c/ as part of release test.

FossilOrigin-Name: e6929022b71c6bff7aa9cfbdb8a5e80499ca856b8c06d4211c55311b48704a08

2 weeks agoThe sqlite3_str_new() interface never returns NULL, even after an OOM.
drh [Wed, 15 Apr 2026 14:41:25 +0000 (14:41 +0000)] 
The sqlite3_str_new() interface never returns NULL, even after an OOM.
Code that uses that interface should invoke sqlite3_str_errcode() to see
if an OOM has occurred.

FossilOrigin-Name: cb910047edc591102dd4ed0d57c863b366981b8aa1d3085d5f95b1fbbabf6c31

2 weeks agoBug fix in sqlite3_str_free(): Do not crash if called on an sqlite3_str
drh [Wed, 15 Apr 2026 14:17:58 +0000 (14:17 +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: 92d8ac0c4938e43b00111b43630ecfa91c30e5200ca03937a84f4b50bd1a13b3

2 weeks agoAdd support for the analyze() extension function to the fuzzcheck test
drh [Wed, 15 Apr 2026 13:05:43 +0000 (13:05 +0000)] 
Add support for the analyze() extension function to the fuzzcheck test
program.

FossilOrigin-Name: abd94554d24122f0e0c3b7b36e5846e8c7aa0dddbddd9aae35b3f6ae6ab283c0

2 weeks agoImprove the analyze() extension so that it returns a simple error message
drh [Wed, 15 Apr 2026 12:47:37 +0000 (12:47 +0000)] 
Improve the analyze() extension so that it returns a simple error message
as text (it does not throw an error) if the database is empty or is "temp"
or does not exist.

FossilOrigin-Name: 35379f60922f14d4f6d231ae627df066ad4e4510208bcc244505b9afb279f2fa

2 weeks agoFix harmless compiler warnings seen by MSVC in the previous check-in.
drh [Wed, 15 Apr 2026 12:35:23 +0000 (12:35 +0000)] 
Fix harmless compiler warnings seen by MSVC in the previous check-in.
Also add ext/misc/analyze.c to the makefile dependencies for the CLI.

FossilOrigin-Name: 5a0ee6e227042e41ac64869c75f961798b252458670c18662175fe5bfa8b87d3

2 weeks agoAdd the analyze() SQL function implemented the ext/misc/analyze.c extension
drh [Wed, 15 Apr 2026 12:20:11 +0000 (12:20 +0000)] 
Add the analyze() SQL function implemented the ext/misc/analyze.c extension
(but not part of the amalgamation).  Make that function available in the
CLI and add a new ".dbinfo" command to the CLI using that function.

FossilOrigin-Name: 4c4988e56df3c668b8891e2a55887a6618f5b84e9111e562b93059ddb9a662dc

2 weeks agoAdd a missing open_db() call in the new ".dbstat" command of the CLI. analyze-sql-func
drh [Wed, 15 Apr 2026 11:58:54 +0000 (11:58 +0000)] 
Add a missing open_db() call in the new ".dbstat" command of the CLI.

FossilOrigin-Name: a138e44a243466f8679e9652421f8c893a4a1bc0addc86736588d9aee51cf090

2 weeks agoAdd the .dbstat command to the CLI.
drh [Wed, 15 Apr 2026 11:41:50 +0000 (11:41 +0000)] 
Add the .dbstat command to the CLI.

FossilOrigin-Name: fdba76df2b3a5b4d56ba79f80fd8b16d5faebca1fb07a266262be2ea635e6f94

2 weeks agoOn platforms which support ./configure --with-icu-config, ensure that 'make tclextens...
stephan [Wed, 15 Apr 2026 11:40:13 +0000 (11:40 +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: 404fde8bacc3f05254a2fcdb1531a7f53125a7ad45dc6b68a5065c1d0c73b670

2 weeks agoAvoid a potentially undefined left-shift in the fts5 porter tokenizer.
dan [Wed, 15 Apr 2026 11:23:30 +0000 (11:23 +0000)] 
Avoid a potentially undefined left-shift in the fts5 porter tokenizer.

FossilOrigin-Name: 46a288e43e4c48fca6610bce6a2db418aaa3c8a1dcb115b7a0bfad2063355e58

2 weeks agoHandle the case where the name of the constraint in an "ALTER TABLE DROP CONSTRAINT...
dan [Wed, 15 Apr 2026 11:07:58 +0000 (11:07 +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: 7f5afb12f4a5d35cfe6b95f17d85ce85ce62159515bfe26fb9c67d3ce26b6d4a

2 weeks agoCompute the average fanout for b-trees of depth 2 or more.
drh [Wed, 15 Apr 2026 10:49:14 +0000 (10:49 +0000)] 
Compute the average fanout for b-trees of depth 2 or more.

FossilOrigin-Name: 2f8598bb09f32100f22dd1d9465f3fa0f7f8d81f5d67c34de9919708345f090b

2 weeks agoMinor doc typo fixes contributed by BrickViking.
stephan [Tue, 14 Apr 2026 23:53:38 +0000 (23:53 +0000)] 
Minor doc typo fixes contributed by BrickViking.

FossilOrigin-Name: c4660ce205919ce0d9262e7fd7879375a72ef65d9e5ac97f19caf5dc36e355aa

2 weeks agoCode simplifications. Return NULL is the specified SCHEMA does not exist.
drh [Tue, 14 Apr 2026 23:19:02 +0000 (23:19 +0000)] 
Code simplifications.  Return NULL is the specified SCHEMA does not exist.

FossilOrigin-Name: 953969c88149ea2f589942b98a0a96d907956319e5aa09e2d5a3ae76d3e7d70a

2 weeks agoHandle a special case of a corrupt changeset in sqlite3changegroup_add().
dan [Tue, 14 Apr 2026 20:18:54 +0000 (20:18 +0000)] 
Handle a special case of a corrupt changeset in sqlite3changegroup_add().

FossilOrigin-Name: eba625f917935437e3f366197df1c6717c7120ce0418a0cbac1d2024b2235091

2 weeks agoHave the session module detect some corrupt changesets earlier. corrupt-changeset_fix
dan [Tue, 14 Apr 2026 20:17:41 +0000 (20:17 +0000)] 
Have the session module detect some corrupt changesets earlier.

FossilOrigin-Name: 0de91ff0d798cff21289d893cc441b89fc37b051d5cdf611d92d3ae2bc41cdf2

2 weeks agoMerge trunk enhancements and fixes into the analyze-sql-func branch.
drh [Tue, 14 Apr 2026 20:17:03 +0000 (20:17 +0000)] 
Merge trunk enhancements and fixes into the analyze-sql-func branch.

FossilOrigin-Name: bb4a9beac87796b4186efce416bf03f840041bc588be6702c5a444d643df684e

2 weeks agoVarious minor tweaks and refinements to the analyze() function.
drh [Tue, 14 Apr 2026 20:07:29 +0000 (20:07 +0000)] 
Various minor tweaks and refinements to the analyze() function.

FossilOrigin-Name: 48d94e72eaec443011dd1f7a7264e5222c05bb515c84deaf20ed4195b74d45ff

2 weeks agoHandle a special case of a corrupt changeset in sqlite3changegroup_add().
dan [Tue, 14 Apr 2026 20:02:49 +0000 (20:02 +0000)] 
Handle a special case of a corrupt changeset in sqlite3changegroup_add().

FossilOrigin-Name: 49b3bac482c831f503c7f90c35959e7ea731950e991baba86b2ab95987d2539b

2 weeks agoImplementation of the analyze() SQL function is now mostly complete.
drh [Tue, 14 Apr 2026 19:36:33 +0000 (19:36 +0000)] 
Implementation of the analyze() SQL function is now mostly complete.

FossilOrigin-Name: 1ca0386ab2df0d88ed52941469d459114f483ecf6b7e4691bcc32e909636cb7d

2 weeks agoMuch, but not all, of the report generation is added. An incremental check-in.
drh [Tue, 14 Apr 2026 19:02:40 +0000 (19:02 +0000)] 
Much, but not all, of the report generation is added.  An incremental check-in.

FossilOrigin-Name: 289fefc3edfeecb06dc11897d3ff24763fd9e25db44e369eeec29b9ed3de5ccc

2 weeks agoEnsure c-tests use the locally built sqlite3.h file, not the system copy. c-tests
dan [Tue, 14 Apr 2026 18:12:09 +0000 (18:12 +0000)] 
Ensure c-tests use the locally built sqlite3.h file, not the system copy.

FossilOrigin-Name: 2d81ee65ffbed30fd98bdda96dc79c1929c73f806cea3c9e4c244b618980b202

2 weeks agoIn RBU vacuum commands, do as SQLite does and ignore any trailing SQL statements...
dan [Tue, 14 Apr 2026 18:08:30 +0000 (18:08 +0000)] 
In RBU vacuum commands, do as SQLite does and ignore any trailing SQL statements in the sql column of the sqlite_schema table.

FossilOrigin-Name: cf7dad1b105ab35cd7180efec735b7cbeaf42b8d53dfec5582b63cd121c3425c

2 weeks agoCheck-in [495e4851d4296b49] breaks the build for Windows. Fixed here.
drh [Tue, 14 Apr 2026 18:06:41 +0000 (18:06 +0000)] 
Check-in [495e4851d4296b49] breaks the build for Windows.  Fixed here.

FossilOrigin-Name: 5b004348c3ec15a02dd657b3619502b6f8ba1c6f46918108b3de9534622076a0

2 weeks agoFurther fixes and clarifications. Now ready to start generating the
drh [Tue, 14 Apr 2026 13:18:04 +0000 (13:18 +0000)] 
Further fixes and clarifications.  Now ready to start generating the
actual report.

FossilOrigin-Name: 037a0e586c4aa81a53aea164080e739f9d5b87197d04fdd68feb0ab5eb01020b

2 weeks agoFurther improvements to error messages and robustness.
drh [Tue, 14 Apr 2026 12:46:12 +0000 (12:46 +0000)] 
Further improvements to error messages and robustness.

FossilOrigin-Name: 45917c1124310fd77daca47865959d3261154f7b0c6771d3689e6d345a3fd153

2 weeks agoImproved error messages and robustness.
drh [Tue, 14 Apr 2026 12:23:11 +0000 (12:23 +0000)] 
Improved error messages and robustness.

FossilOrigin-Name: c09ed9eb914bde96cdc5157e29b6384ce488262a2dadc7321c44941a1d08a187

2 weeks agoInitial prototype implementation of a new run-time loadable SQL function
drh [Tue, 14 Apr 2026 11:25:22 +0000 (11:25 +0000)] 
Initial prototype implementation of a new run-time loadable SQL function
to do approximately the same work as sqlite3_analyze.

FossilOrigin-Name: 03934b5a6c88a97117a4743a68ee36d30bcbdcebcf11342d30ac42daf9f10874