]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
5 months agoAdd two new sqlite3_db_config() options that enable the ATTACH command enable-attach
drh [Wed, 22 Jan 2025 19:37:47 +0000 (19:37 +0000)] 
Add two new sqlite3_db_config() options that enable the ATTACH command
to create new database files and to open databases read/write.  Both
default to on for backwards compatibility.

FossilOrigin-Name: fe0c58d00b491d1af7c0894f5c32542954aeea2e6510853b3bcbf13ac0bf5ce0

5 months agoAdd the -q/--quiet option to test/speedtest.tcl. Automatically enable
drh [Wed, 22 Jan 2025 17:18:53 +0000 (17:18 +0000)] 
Add the -q/--quiet option to test/speedtest.tcl.  Automatically enable
-DSQLITE_OMIT_LOAD_EXTENSION and -DSQLITE_THREADSAFE=0 so that no extra
libraries are required.

FossilOrigin-Name: c20d21b473d8a45267262c5df1d7b102eccce8e4cfbe1e467ea66c474aea0af5

5 months agoFix date/time computations to deal with the sub-millisecond rounding
drh [Tue, 21 Jan 2025 17:37:58 +0000 (17:37 +0000)] 
Fix date/time computations to deal with the sub-millisecond rounding
problem identified in [forum:/forumpost/766a2c9231|forum post 766a2c9231].

FossilOrigin-Name: afb0a5923a6db4045fab5226198aab970d746d4866294ebba943c6986e97ecde

5 months agoPerformance improvements to the (debug-use only) Mem.pScopyFrom logic, resulting
drh [Tue, 21 Jan 2025 16:30:55 +0000 (16:30 +0000)] 
Performance improvements to the (debug-use only) Mem.pScopyFrom logic, resulting
in about 8x faster performance under -DSQLITE_DEBUG for the query in from
[forum:/forumpost/0025389d0860af82|forum post 0025389d0860af82].  This change
only affects builds that use -DSQLITE_DEBUG.

FossilOrigin-Name: 7fb1ae25d1572dd7709a0f850c148a5f745a524f01ea231e29a1ebc37c173fb9

5 months agoThe FuncDev.nArg field values -3 and -4 now have special meansing of 1 or more
drh [Tue, 21 Jan 2025 15:12:00 +0000 (15:12 +0000)] 
The FuncDev.nArg field values -3 and -4 now have special meansing of 1 or more
or 2 or more arguments, respectively.  This saves space in the built-in
function table, resulting in slightly faster performance and a reduced binary
size.

FossilOrigin-Name: 753fd747f24c5e9a019eb00b8a4f66e65c6733ba10a7adbd1b55786867c32ca6

5 months agoHave fts5 better handle OOM errors from sqlite3_blob_close().
dan [Tue, 21 Jan 2025 14:34:59 +0000 (14:34 +0000)] 
Have fts5 better handle OOM errors from sqlite3_blob_close().

FossilOrigin-Name: f418350f3f83147bc5817a885be6e39ff9ff5722742a88d17600729c53c65010

5 months agoUse Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length
drh [Tue, 21 Jan 2025 11:10:16 +0000 (11:10 +0000)] 
Use Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length
string in the TCL interface, since that is much more efficient.

FossilOrigin-Name: a8d9dcfd23fbfcd887e451382836c1e88215984cc01e00be11387dbf4ab26fd8

5 months agoRemove an assert() in the unix file locking logic that is not true
drh [Mon, 20 Jan 2025 19:19:31 +0000 (19:19 +0000)] 
Remove an assert() in the unix file locking logic that is not true
if alternative VFS "unix-excl" is used for a read-only connection.

FossilOrigin-Name: bd5dc92368e41231a07bb59dd3db8942e238129ec7a3c8d785459d9b62bfcba3

5 months agoFix an assert() that could fail if a virtual table called sqlite3_step() from within...
dan [Mon, 20 Jan 2025 18:26:58 +0000 (18:26 +0000)] 
Fix an assert() that could fail if a virtual table called sqlite3_step() from within the xSync() method while committing a "PRAGMA defer_foreign_keys=1" transaction.

FossilOrigin-Name: 39bdbb3f6dd1d30d180526d35c11f789f5e9d45b99ead72fd4a3b136afab66b1

5 months agoconfigure script: remove an overzealous is-a-file check in the tclsh search which...
stephan [Mon, 20 Jan 2025 16:14:09 +0000 (16:14 +0000)] 
configure script: remove an overzealous is-a-file check in the tclsh search which fails to account for implicit .exe extensions on Windows builds. Reported in [forum:c27403ef974df9f1|forum post c27403ef974df9f1]. (Same change as [89306d1a4905] but to a different file, as that content was moved since the 3.48 release.)

FossilOrigin-Name: 239a3d1573f4cb720308018280b2add54034e69e38fe7060a7238875eee4f1c9

5 months agoAdd an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner
drh [Sun, 19 Jan 2025 19:14:21 +0000 (19:14 +0000)] 
Add an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner
heuristics that are designed to help with star queries.

FossilOrigin-Name: fec4ff185a2f3f1bee8f27432206276636cf27365d2d41cd7282f8c0425f2e96

5 months agoFurther refactoring of auto.def to simplify creation of variant builds like the autoc...
stephan [Sun, 19 Jan 2025 18:32:45 +0000 (18:32 +0000)] 
Further refactoring of auto.def to simplify creation of variant builds like the autoconf bundle.

FossilOrigin-Name: f806c563a29240c709508316846fbe0cb3ed61b68a6c1d9544eb699e30141d8d

5 months agoMinor internal refactoring of auto.def to support the pending autoconf subdir port...
stephan [Sun, 19 Jan 2025 16:26:25 +0000 (16:26 +0000)] 
Minor internal refactoring of auto.def to support the pending autoconf subdir port to autosetup. No functional changes.

FossilOrigin-Name: 01ff37584708f3f79c62c1b5ed8cceab721cf8348a69a65f0559b1ef8845e85b

5 months agoMove some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in...
stephan [Sun, 19 Jan 2025 14:53:45 +0000 (14:53 +0000)] 
Move some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in the pending migration of the autoconf bundle to autosetup. This is just reorg, no functional changes.

FossilOrigin-Name: 2f1e94994f3595baad4045ab05ffee0668059c23ab37a39c25b83c62bfbaea28

5 months agoEnable automatic query-time indexes for WITHOUT ROWID tables.
drh [Sat, 18 Jan 2025 23:44:06 +0000 (23:44 +0000)] 
Enable automatic query-time indexes for WITHOUT ROWID tables.

FossilOrigin-Name: 8534af5b94be9f5b1f02453e1c3b6b3f78a698af91595bdbbfdea00676510116

5 months agoAdd a simple test case (many more are coming soon to TH3). Fix an obsolete without-rowid-autoidx
drh [Sat, 18 Jan 2025 21:19:02 +0000 (21:19 +0000)] 
Add a simple test case (many more are coming soon to TH3).  Fix an obsolete
assert().

FossilOrigin-Name: aa829a131a3431791083cf60d9cf00e7b3c0fafdd39a23e761b629a2287ab875

5 months agoAdd support for automatic query-time indexes on WITHOUT ROWID tables.
drh [Sat, 18 Jan 2025 21:00:19 +0000 (21:00 +0000)] 
Add support for automatic query-time indexes on WITHOUT ROWID tables.

FossilOrigin-Name: 89c4cbd9529081941d7283a401c4a8d71b241f4577ebf6d3eb2ebe5a1cf92f2e

5 months agoWhen cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion...
stephan [Sat, 18 Jan 2025 16:05:38 +0000 (16:05 +0000)] 
When cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion prompted by [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].

FossilOrigin-Name: 4309da2ca5cb99ea81f3034ae3c5809187c0131d21f9f9469ea0d69c941f393e

5 months agoWhen running make install, avoid the -s (strip) flag when cross-compiling, as it...
stephan [Sat, 18 Jan 2025 13:51:01 +0000 (13:51 +0000)] 
When running make install, avoid the -s (strip) flag when cross-compiling, as it only works for the build platform. Reported in [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].

FossilOrigin-Name: 230e49c10e3aa6fe9c487a1e026016a8bf97f7e736e7477d5976d987da5e83cf

5 months agoFor the purpose of the query planner heuristic added by [38db9b5c83], a query
drh [Fri, 17 Jan 2025 23:49:40 +0000 (23:49 +0000)] 
For the purpose of the query planner heuristic added by [38db9b5c83], a query
should only count as a star query if the fact tables are connected to the
dimension table by an INNER JOIN.  If a LEFT JOIN is used, then the fact
tables are constrained to be in inner loops anyhow and so the heuristic does
not make any sense.  But it does interfere with AUTOMATIC index creation, which
causes the performance regression reported by
[forum:/forumpost/d87570a145599033|forum post d87570a1455].

FossilOrigin-Name: 0852c57ee2768224af79910e6f26e70a4962651dae0f8b45cbfc847e6707d7bb

5 months agoEnhance a comment on a test case to add recent context.
drh [Fri, 17 Jan 2025 17:09:42 +0000 (17:09 +0000)] 
Enhance a comment on a test case to add recent context.

FossilOrigin-Name: c2647d1bd16fd46dd03953afee6cad44ce14fa2c36713c487b678d63660bc072

5 months agoTypo fix in speedtest.md.
stephan [Fri, 17 Jan 2025 15:56:16 +0000 (15:56 +0000)] 
Typo fix in speedtest.md.

FossilOrigin-Name: 36027cf340fe2e351c63129d069f9bced090c4a028ffd78d5b8c0f418ad9f230

5 months agoImprovements to the speedtest.tcl script. Add documentation on how to use the
drh [Fri, 17 Jan 2025 15:39:48 +0000 (15:39 +0000)] 
Improvements to the speedtest.tcl script.  Add documentation on how to use the
script.

FossilOrigin-Name: eb3853d08141bf941193e8ecaf991191bb7fb46287818708a84018520eb1835e

5 months agoAdd the test/speedtest.tcl script to simplify performance and size testing.
drh [Fri, 17 Jan 2025 12:32:01 +0000 (12:32 +0000)] 
Add the test/speedtest.tcl script to simplify performance and size testing.

FossilOrigin-Name: ad7b38672656d0336a73bb789ec83f6939fbdae81e21be68e0313006826dc294

5 months agoFix a potential one-byte buffer overrun when reading from the Windows
drh [Fri, 17 Jan 2025 10:39:04 +0000 (10:39 +0000)] 
Fix a potential one-byte buffer overrun when reading from the Windows
console in the CLI. [forum:/forumpost/95e17b8f5c|Forum post 95e17b8f5c].

FossilOrigin-Name: 4d96759694c91301410f53a3f737a049c33e8b259b0954ff659714aff8b21ae8

5 months agospeedtest1: further improvements to the "json" testset.
drh [Thu, 16 Jan 2025 20:46:08 +0000 (20:46 +0000)] 
speedtest1: further improvements to the "json" testset.

FossilOrigin-Name: c4750f7cf7e2188623de8b12e01acf3e3d7dc7b5ea87ac449571eb36f97d842a

5 months agospeedtest1: Improvements to the "json" testset. Better balance in "mix1".
drh [Thu, 16 Jan 2025 20:08:59 +0000 (20:08 +0000)] 
speedtest1:  Improvements to the "json" testset.  Better balance in "mix1".

FossilOrigin-Name: 2cc73c5e08f1a16fe8accf0af6af061e42d27635883d09234516fd470e99bc0a

5 months agoRevamp the "json" testset in speedtest1.
drh [Thu, 16 Jan 2025 17:19:06 +0000 (17:19 +0000)] 
Revamp the "json" testset in speedtest1.

FossilOrigin-Name: d33508836bc88314a205bfa9d80f3ebe695163cf0c46d500ad674535975408fb

5 months agoAdd the "json" test case to speedtest1 and include it in "mix1".
drh [Thu, 16 Jan 2025 14:37:48 +0000 (14:37 +0000)] 
Add the "json" test case to speedtest1 and include it in "mix1".

FossilOrigin-Name: 2db3a3ee37a9d2fe9b94d16d35c24846c37abe73b89cde4dd763e01a2bfaa8b7

5 months agoSpeedtest1 enhancements: (1) Add the ability to scale performance of
drh [Thu, 16 Jan 2025 14:06:29 +0000 (14:06 +0000)] 
Speedtest1 enhancements:  (1) Add the ability to scale performance of
tests sets using "/NNN" after the testset name, even for testsets in a
comma-separated list.  (2) Add the "mix1" macro testset.

FossilOrigin-Name: 85667b3a572bc9afd8c862a0b2c5f47f76ca80d6e61302ca7d7c1b326d3dd578

5 months agowasm: after generating the .js/.mjs file, strip out all of the generated pieces which...
stephan [Thu, 16 Jan 2025 13:10:06 +0000 (13:10 +0000)] 
wasm: after generating the .js/.mjs file, strip out all of the generated pieces which create Emscripten call() bindings for the sqlite3 APIs, as we don't use those binding, so both the setup time and the memory they use installing WASM proxy bindings is wasted. This eliminates some 200 superfluous/unused bindings from the init process.

FossilOrigin-Name: 020d2c7528be6f11a5b2b849d7b2f04e47abe2b0842520ff60eb7defb3768e1c

5 months agoWhen generating the autoconf snapshot, replaces the Libs.private line from sqlite3...
stephan [Thu, 16 Jan 2025 12:15:51 +0000 (12:15 +0000)] 
When generating the autoconf snapshot, replaces the Libs.private line from sqlite3.pc.in with one compatible with the legacy build, as reported in [forum:e40b9b424a|forum post e40b9b424a].

FossilOrigin-Name: fe47154799bfefb12eb1209d9ada64ecac38bee1b7c3558d175215a2beba991d

5 months agoReplace use of Emscripten's Module.postRun() with a custom callback so that we get...
stephan [Thu, 16 Jan 2025 09:27:40 +0000 (09:27 +0000)] 
Replace use of Emscripten's Module.postRun() with a custom callback so that we get consistent library init timing with both Emscripten 3.1.x and 4.0.x. Details and discussion are in [https://github.com/emscripten-core/emscripten/issues/23420|Emscripten ticket #23420].

FossilOrigin-Name: 4863a70ac61ff6f868429f16f0141484ea98f973fde1a9aff879252d0f1dbb6b

5 months agoWhen two indexes have the same cost, use the narrower one (the one with the
drh [Thu, 16 Jan 2025 01:47:03 +0000 (01:47 +0000)] 
When two indexes have the same cost, use the narrower one (the one with the
smaller average on-disk row width).

FossilOrigin-Name: 398559678f2b9a65b245ed73b4d512c4fccc69d42b5a6a1c1b7755a80b69d073

5 months agoCheck-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism
drh [Wed, 15 Jan 2025 21:13:38 +0000 (21:13 +0000)] 
Check-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism
for inhibiting direct-overflow-read.  This check-in fixes the problem.

FossilOrigin-Name: 113078d555eaf740666680562ebbb04f7d823b72e8b2d553627e54ab3d7bf653

5 months agoTeach tool/stripccomments.c that a backslash immediately preceeding a forward slash...
stephan [Wed, 15 Jan 2025 21:09:19 +0000 (21:09 +0000)] 
Teach tool/stripccomments.c that a backslash immediately preceeding a forward slash means that that forward slash cannot be the start of a comment. This is intended to allow JavaScript regular expressions containing \/* (like [https://github.com/emscripten-core/emscripten/issues/23412|the one introduced in emsdk 4.0.0]) to pass through properly. Re-enable comment-stripping in the JS dist builds.

FossilOrigin-Name: db21d6cc9d1c425deffc0e4e92173caf586e6ac66110c71a4930b21e3e7f84b9

5 months agoWork around [https://github.com/emscripten-core/emscripten/issues/23420|a behavior...
stephan [Wed, 15 Jan 2025 20:53:14 +0000 (20:53 +0000)] 
Work around [https://github.com/emscripten-core/emscripten/issues/23420|a behavior change in emsdk 4.0.0] which breaks the load/init timing of the wasm module.

FossilOrigin-Name: 00a750184bcf1a94bf4e7f1d5029a42671e87e2997ae97be07bd900d3702883d

5 months agoWhen choosing between two indexes with the same cost, pick the one with the consider-idx-width
drh [Wed, 15 Jan 2025 20:23:22 +0000 (20:23 +0000)] 
When choosing between two indexes with the same cost, pick the one with the
smaller predicted number of bytes per row.

FossilOrigin-Name: d4bd0d4214551f88f248698fefc821575b722ce5c194d0b3796f572e4704f641

5 months agoVariable names and conditional logic simplified in where.c. These
drh [Wed, 15 Jan 2025 19:30:10 +0000 (19:30 +0000)] 
Variable names and conditional logic simplified in where.c.  These
changes are cosmetic only and do not affect the resuling machine code.

FossilOrigin-Name: dbc2d6a244fdafd208239894dbdd8f139db6ca20dd8f1ed00d87028e0cb60570

5 months agoFix a typo in a wasm makefile var name, noting that this doesn't actually fix anythin...
stephan [Wed, 15 Jan 2025 15:27:02 +0000 (15:27 +0000)] 
Fix a typo in a wasm makefile var name, noting that this doesn't actually fix anything because the var in question is not used when building 'clean' or 'distclean'.

FossilOrigin-Name: 7cfc75a625095e41c3e952d4a209fdbb344df0d3dd9b0103e9e6a986dfe53c89

5 months agoDisable the C-style comment stripper in the JS dist build, as explained in [forum...
stephan [Wed, 15 Jan 2025 14:28:56 +0000 (14:28 +0000)] 
Disable the C-style comment stripper in the JS dist build, as explained in [forum:529c20d344|forum post 529c20d344].

FossilOrigin-Name: a9475e7614f8e44252abf273d0e0522c247df12624e40108ce98ad4aaf320f2d

5 months agoChange the version number to 3.49.0 to begin the next development
drh [Tue, 14 Jan 2025 20:47:23 +0000 (20:47 +0000)] 
Change the version number to 3.49.0 to begin the next development
cycle.  Any patches to 3.48.0 will go on a branch.

FossilOrigin-Name: 8165a3d3a40c5b43275fb4b1cdf57c44a57cd56c514bd2a550deac26a14795eb

5 months agoTrying to remove a warning from some compiler that I do not have access to.
drh [Tue, 14 Jan 2025 16:10:13 +0000 (16:10 +0000)] 
Trying to remove a warning from some compiler that I do not have access to.

FossilOrigin-Name: bc6de90c7049dd429a82d32b186a838f4a21aa7b8a83418eaf0416d19771b41e

5 months agoVersion 3.48.0 major-relase relase version-3.48.0
drh [Tue, 14 Jan 2025 11:05:00 +0000 (11:05 +0000)] 
Version 3.48.0

FossilOrigin-Name: d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010

5 months agoRemove a stray tab character from a comment.
drh [Mon, 13 Jan 2025 13:32:56 +0000 (13:32 +0000)] 
Remove a stray tab character from a comment.

FossilOrigin-Name: 315079b150b47e013e2cde4985bc39d24e0f6f6c6e60f9383fb8ea4ea897c67a

5 months agoGCC 13 has become more quite pedantic about the signature of functions matching the
drh [Mon, 13 Jan 2025 11:28:34 +0000 (11:28 +0000)] 
GCC 13 has become more quite pedantic about the signature of functions matching the
type of pointers through which the functions are called.  Make adjustments to
extension functions and test procedures to work around this.  No changes to the
core.

FossilOrigin-Name: ed83b79100b4345235aec990303c4526874f0c2f8701160c4639a80633ebaf70

5 months agoFix harmless "implicit fall through" warnings that suddenly appeared when
drh [Sat, 11 Jan 2025 16:28:41 +0000 (16:28 +0000)] 
Fix harmless "implicit fall through" warnings that suddenly appeared when
I upgraded to gcc-13.

FossilOrigin-Name: 3e2875dac27de1525d9c78f38ac5f1fc12fec7e1b43dbdf47798b128fae49084

5 months agoBetter job at suppressing harmless scan-build warnings. This time testing
drh [Sat, 11 Jan 2025 14:43:47 +0000 (14:43 +0000)] 
Better job at suppressing harmless scan-build warnings.  This time testing
and working.

FossilOrigin-Name: c847973947de67579fab78a65ecfc90bf59fd5db0b7fa7a9c1abb1fc92213d01

5 months agoFix harmless scan-build warnings.
drh [Sat, 11 Jan 2025 13:59:42 +0000 (13:59 +0000)] 
Fix harmless scan-build warnings.

FossilOrigin-Name: b93af6feb7c0c3af30a47810a7c0e77ce41c386fac164c64bb5871a6c153db7e

5 months agoFix an age-old bug in the lower-level wasm/js helper bits which was (A) caused remova...
stephan [Sat, 11 Jan 2025 09:02:55 +0000 (09:02 +0000)] 
Fix an age-old bug in the lower-level wasm/js helper bits which was (A) caused removal of customized WASM func/argument conversion to siltently fail and (B) triggered a warning in the closure toolchain. Reported in [jaccwabyt ticket c5c296e85a7c01360820|https://fossil.wanderinghorse.net/r/jaccwabyt/info/c5c296e85a7c01360820].

FossilOrigin-Name: 99917a5bb04b5ad6ace95baf86d91e6ce098f9d3001de1a29d3d0b0b817acdce

5 months agoUpdate the makefile so that it puts the amalgamation files in a subdirectory
drh [Thu, 9 Jan 2025 19:57:44 +0000 (19:57 +0000)] 
Update the makefile so that it puts the amalgamation files in a subdirectory
in the amalgamation-zip.
[forum:/forumpost/b8dd1941e1|Forum post b8dd1941e1].

FossilOrigin-Name: cef8e88bedf01dc47012ef1cb878b22117c9966e615edf5a69704486f9cfa56c

5 months agoWhen removing an fts5 in secure-delete mode, defer setting the table version to SECUR...
dan [Thu, 9 Jan 2025 14:10:25 +0000 (14:10 +0000)] 
When removing an fts5 in secure-delete mode, defer setting the table version to SECUREDELETE until flushing data to disk. This prevents problems that can occur if there is a rollback or statement rollback operation.

FossilOrigin-Name: c359e555ceafcaab2ae38074bc4f57cccdc5bc6080d17f82290c09b9e5dd80c2

5 months agoFix another assert() failure in fts5.
dan [Wed, 8 Jan 2025 20:43:03 +0000 (20:43 +0000)] 
Fix another assert() failure in fts5.

FossilOrigin-Name: 6da37893f5b5729ea5fd632e8d98789e867488a67501d4a4dad92f8e7cb6bda0

5 months agoFix a crash in fts5 that could occur if shadow tables are modified or removed.
dan [Wed, 8 Jan 2025 15:54:44 +0000 (15:54 +0000)] 
Fix a crash in fts5 that could occur if shadow tables are modified or removed.

FossilOrigin-Name: c0b691095ae72fc07530777ef6d23688fb4196ce2e0feff14fc3c597c572252d

5 months agoCross-link and otherwise improve the various how-to-compile documents.
drh [Wed, 8 Jan 2025 12:51:28 +0000 (12:51 +0000)] 
Cross-link and otherwise improve the various how-to-compile documents.
No code changes.

FossilOrigin-Name: 5e6ede92afae77ce6023f3b294dc565651631c7976d898d800988f1b3ff2e83f

5 months agoIn the doc/tcl-extension-testing.md document, provide enhanced explanation for
drh [Wed, 8 Jan 2025 12:25:33 +0000 (12:25 +0000)] 
In the doc/tcl-extension-testing.md document, provide enhanced explanation for
why the tcl library needs to be copied into the install directory.

FossilOrigin-Name: cff70c859fff37f886fd622b7335a73836ff8cf15e6cb7aabcff449a7e427fa8

5 months agoFurther refinement to the Tcl extension testing procedure.
drh [Tue, 7 Jan 2025 18:50:19 +0000 (18:50 +0000)] 
Further refinement to the Tcl extension testing procedure.

FossilOrigin-Name: 32b8b078d16b8931afa56e587cf840412c65b68da0bc6fd6280ac773295116cf

5 months agoImprovements to [14b38ae6ab86a314] so that the Tcl interface is better able
drh [Tue, 7 Jan 2025 16:36:47 +0000 (16:36 +0000)] 
Improvements to [14b38ae6ab86a314] so that the Tcl interface is better able
to work with boolean values in both Tcl86 and Tcl90.

FossilOrigin-Name: 4e85343d6107a46682b549667410c296d7f4d17e3ac04ded7357afcbbfbe3e6d

5 months agoFix a memory error in test logic introduced by [8704034254938662].
drh [Tue, 7 Jan 2025 15:39:57 +0000 (15:39 +0000)] 
Fix a memory error in test logic introduced by [8704034254938662].

FossilOrigin-Name: 8a56e98d257e280d308b9fdc26e17e202f00a70fb9a780e30924e87a189fc7f4

5 months agoTypo in the previous check-in.
drh [Tue, 7 Jan 2025 15:00:00 +0000 (15:00 +0000)] 
Typo in the previous check-in.

FossilOrigin-Name: 5872d7a0a7d4959562e1218bbba1115df8b292d980234273d0d38749edf19822

5 months agoEnhancements to the Tcl SQLite extension testing procedures so that they
drh [Tue, 7 Jan 2025 14:55:49 +0000 (14:55 +0000)] 
Enhancements to the Tcl SQLite extension testing procedures so that they
install a full-featured SQLite and so that Tcl is build statically so that
there is no need to worry with LD_LIBRARY_PATH.

FossilOrigin-Name: c8972e652ebe62a8583904b5bc1d96b2d598222c037a714c8ff114ca84b52c7a

5 months agoMake the TCL extension aware of the booleanString type within TCL.
drh [Tue, 7 Jan 2025 12:14:32 +0000 (12:14 +0000)] 
Make the TCL extension aware of the booleanString type within TCL.

FossilOrigin-Name: 14b38ae6ab86a314a63ca9513850b43fcc670864f94d03a2706eff469980da88

5 months agoFix a typo in the previous check-in.
drh [Tue, 7 Jan 2025 11:54:43 +0000 (11:54 +0000)] 
Fix a typo in the previous check-in.

FossilOrigin-Name: 7d41885e85b0e2ef28bac34d663af07c35b21ee3e8b14481d2371f623bce681d

5 months agoMinor fixes to tclsqlite.c to promote portability.
drh [Tue, 7 Jan 2025 00:17:54 +0000 (00:17 +0000)] 
Minor fixes to tclsqlite.c to promote portability.

FossilOrigin-Name: dd934f032fa6fc790a951006512e3ed76a5f2930858932918eafdbe3ceec4620

5 months agoEnhance the makefile to make it easier to build from a read-only source tree.
drh [Mon, 6 Jan 2025 23:33:45 +0000 (23:33 +0000)] 
Enhance the makefile to make it easier to build from a read-only source tree.

FossilOrigin-Name: f99a70eca2fd8a54be3a6629dabd62efc623488706eed5e5a1bd0be577ac1acb

5 months agoFix a problem with tool/mksqlite3h.tcl that prevents it from running out of
drh [Mon, 6 Jan 2025 21:36:16 +0000 (21:36 +0000)] 
Fix a problem with tool/mksqlite3h.tcl that prevents it from running out of
a read-only check-out.

FossilOrigin-Name: cb54f0063edd284996b225183b8e35d71ffcd3c0fb4f56a0e316181f1a186d46

5 months agoFix a minor problem with the sqlite3_get_table_printf() test interface.
drh [Mon, 6 Jan 2025 18:32:53 +0000 (18:32 +0000)] 
Fix a minor problem with the sqlite3_get_table_printf() test interface.
No core changes.

FossilOrigin-Name: a0df29c7a3eb4f558aba00598d827643830591def3101a4d5464543527b8d13c

5 months agoAdd test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPP...
dan [Mon, 6 Jan 2025 17:01:35 +0000 (17:01 +0000)] 
Add test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPPLY_FKNOACTION.

FossilOrigin-Name: b1cc53fa3fb2ac3abeadd3282d8751f4d533315754159f16ca7f7f300ccdd8c8

5 months agoFurther refactoring of the TCL extension test procedure document, for
drh [Sun, 5 Jan 2025 19:58:30 +0000 (19:58 +0000)] 
Further refactoring of the TCL extension test procedure document, for
improved clarity and usability.

FossilOrigin-Name: bcdaef434142973a0805117495e561b2dcd1ec1465cacc9b944a3707291afc0d

5 months agoRefactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0
drh [Sun, 5 Jan 2025 17:16:33 +0000 (17:16 +0000)] 
Refactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0
separately, to simplify the procedures and reduce cognative stress on the
tester.

FossilOrigin-Name: 5281536327d244ba9507548f7ed607e86e59b98a003e63f6da767471411c8ffc

5 months agoFix typo in the tcl-extension-testing.md document.
drh [Sun, 5 Jan 2025 11:40:15 +0000 (11:40 +0000)] 
Fix typo in the tcl-extension-testing.md document.

FossilOrigin-Name: 28150c615cb601dfc9e4f660627228d6a8a715d64c65f7bc77931c9daf8a0dd7

5 months agoImprovements to TCL extension test procedure description. Improvements to
drh [Sun, 5 Jan 2025 11:19:32 +0000 (11:19 +0000)] 
Improvements to TCL extension test procedure description.  Improvements to
the tclextension-list and tclextension-verify makefile targets to suppress
unnecessary output.

FossilOrigin-Name: 3e92fea09af13259d61afd2953fe5f3fc16e3cedfef09e350903aa5299b8e469

5 months agoImprovements to testing and validation of the SQLite TCL extension.
drh [Sat, 4 Jan 2025 20:50:21 +0000 (20:50 +0000)] 
Improvements to testing and validation of the SQLite TCL extension.

FossilOrigin-Name: 9d7597cad4a167aef7688e85513d8695e8d919e41f5cd44909aefee5ddf13345

5 months agoShow the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the
drh [Sat, 4 Jan 2025 20:13:54 +0000 (20:13 +0000)] 
Show the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the
output of "nmake tcl-env".

FossilOrigin-Name: 4270abc071ced9e7ec1fed3c387262cc1912e321e37e45e547a1088dbb022702

5 months agoAllow the 2nd argument to ".param set" to use previously bound parameters,
drh [Sat, 4 Jan 2025 19:50:44 +0000 (19:50 +0000)] 
Allow the 2nd argument to ".param set" to use previously bound parameters,
as suggested by [forum:/forumpost/823e1bd746|forum post 823e1bd746].

FossilOrigin-Name: 13a35ad792dc0afe1f7b60230aef392ae01e702972b963d732e332f21848f38b

6 months agoFix a problem in the sessions extension allowing changesets containing foreign key...
dan [Sat, 4 Jan 2025 16:30:05 +0000 (16:30 +0000)] 
Fix a problem in the sessions extension allowing changesets containing foreign key violations to be committed under some circumstances.

FossilOrigin-Name: e09a0c022903d88d5d6de34b2527565ef60c6bb049f2fb42f037e1520abf0f93

6 months agoAdd the document describing test procedures for the TCL extension build
drh [Sat, 4 Jan 2025 15:52:40 +0000 (15:52 +0000)] 
Add the document describing test procedures for the TCL extension build
process.  Update the Windows makefile so that it builds the TCL extensions
successfully with a default installation of Tcl8.6.

FossilOrigin-Name: 3263db9249444203b7a9a9f2b0be309c74944315dde7ed192366b709fff93f1b

6 months agoAdjust the Windows Makefile.msc so that it can build the tclextension with test-procedures
drh [Sat, 4 Jan 2025 15:51:30 +0000 (15:51 +0000)] 
Adjust the Windows Makefile.msc so that it can build the tclextension with
Tcl8.6 successfully.  Updates to the tcl-extension test procedure document.

FossilOrigin-Name: 0c2cdc632f26d6acac2d508def4ecfcc97462ebcddc20c84f8847e02e42b3a1d

6 months agoAdd new tcl-extension-testing.md document. The Windows side is not yet
drh [Sat, 4 Jan 2025 14:10:45 +0000 (14:10 +0000)] 
Add new tcl-extension-testing.md document.  The Windows side is not yet
working.

FossilOrigin-Name: 9dc805df1b1c26196ca53baa6b1b8c2f7e59e0150d02ead53228c77a63ad40f4

6 months agoAdd comment to the columnIsGoodIndexCandidate() routine to record the results
drh [Fri, 3 Jan 2025 11:51:50 +0000 (11:51 +0000)] 
Add comment to the columnIsGoodIndexCandidate() routine to record the results
of a failed experiment.  No changes to code.

FossilOrigin-Name: 9ee57a30a49d9813bf2669a5d8346f7e018e3fbf1792739951311a8d3a249d45

6 months agoAvoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro...
dan [Fri, 3 Jan 2025 11:22:01 +0000 (11:22 +0000)] 
Avoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro-optimization is not really necessary there.

FossilOrigin-Name: 1291b013a8c93e7001fe25783bc98d12f5f7c341d1f728e6852632e18a38af58

6 months agoImprove the treeview output for CteUse objects.
drh [Thu, 2 Jan 2025 21:23:25 +0000 (21:23 +0000)] 
Improve the treeview output for CteUse objects.

FossilOrigin-Name: 2b16d6947ca4a102ddab4d5ba3e340a75e1e5c28e45e874ee5ff52f9b5fb964f

6 months agoImprovements to the display of subqueries in the FROM clause for treeview
drh [Thu, 2 Jan 2025 18:43:29 +0000 (18:43 +0000)] 
Improvements to the display of subqueries in the FROM clause for treeview
output.  (Debug and analysis code only - does not affect production builds.)

FossilOrigin-Name: 4a2d65cdcdd3d21bb7d9ea0efb434484f1b8642c2bb6457db58bc2a5f4fc16e5

6 months agoClose database connections in test/dbpage.test, for Windows.
drh [Thu, 2 Jan 2025 17:56:11 +0000 (17:56 +0000)] 
Close database connections in test/dbpage.test, for Windows.

FossilOrigin-Name: 322d255ed89c1dee08745e89f3c2bcf495283fd87b7526e70d6525a6e96b0ecf

6 months agoFix recent test cases so that they work even when auto_vacuum defaults to on.
drh [Thu, 2 Jan 2025 15:39:54 +0000 (15:39 +0000)] 
Fix recent test cases so that they work even when auto_vacuum defaults to on.

FossilOrigin-Name: 41f6e46695b547dece4daf2f3714e29f231aa04774f57fbd31aeb0a4290c0e7d

6 months agoAdd a test case for ROLLBACK TO of database truncate operations made through the...
dan [Thu, 2 Jan 2025 15:27:15 +0000 (15:27 +0000)] 
Add a test case for ROLLBACK TO of database truncate operations made through the sqlite_dbpage vtab.

FossilOrigin-Name: eb335beb1eb9ebbea4cb793d24f65787d0d9d8539bc6b5971e4e4298fdfce0c2

6 months agoImprovements to the way that truncation is implemented in sqlite_dbpage().
drh [Thu, 2 Jan 2025 15:03:13 +0000 (15:03 +0000)] 
Improvements to the way that truncation is implemented in sqlite_dbpage().

FossilOrigin-Name: ac4bb2e4ecf0bdb0d8ac12b1ccb42d51af02f519a038cfc79faab5c216971056

6 months agoUpdate the build instructions for Windows to note that VS2015 or later is
drh [Thu, 2 Jan 2025 12:14:01 +0000 (12:14 +0000)] 
Update the build instructions for Windows to note that VS2015 or later is
required to avoid the need to install tclsh.exe.

FossilOrigin-Name: da0ef0567be55648413bcbf2e129f348776a908dbad2ac8582ee3e27ac459e3b

6 months agoFix the tool/omittest.tcl script, broken by [d8c0e0184226bdae].
drh [Wed, 1 Jan 2025 18:18:49 +0000 (18:18 +0000)] 
Fix the tool/omittest.tcl script, broken by [d8c0e0184226bdae].

FossilOrigin-Name: 4f6c36a61c2b27e204c00bd7467453098f756c7e596b7e62d47da8784fbd2026

6 months agoFix the vfstrace.c extension so that it supports xFetch and xUnfetch.
drh [Wed, 1 Jan 2025 12:24:01 +0000 (12:24 +0000)] 
Fix the vfstrace.c extension so that it supports xFetch and xUnfetch.

FossilOrigin-Name: c7132b7e62422378f0560dcf0837888db5aa70cded9d783ab389581aa43dc5c8

6 months agoAdd the convenience makefile target (unix-only) "src-archives" that builds
drh [Mon, 30 Dec 2024 21:23:53 +0000 (21:23 +0000)] 
Add the convenience makefile target (unix-only) "src-archives" that builds
the various tarballs and ZIP archives that go on the download page.  This is
intended to make it easier and less error prone to put up new "draft" download
pages for testing.

FossilOrigin-Name: 2b17bc49655c577029919c2d409de994b0d252f8efb5da1ba0913f2c96bee552

6 months agoNew assert() statements to show that the sqlite3_value.db field is initialized
drh [Mon, 30 Dec 2024 13:54:52 +0000 (13:54 +0000)] 
New assert() statements to show that the sqlite3_value.db field is initialized
for MemArrays.

FossilOrigin-Name: 7cd8ccf57d1ae0f597ec5004201395f61ef4750728f3c1b9c4dd52d28916a4f7

6 months agoAdd an extra assert() to releaseMemArray() just to prove that the
drh [Mon, 30 Dec 2024 12:29:18 +0000 (12:29 +0000)] 
Add an extra assert() to releaseMemArray() just to prove that the
sqlite3_value.db field is never NULL.

FossilOrigin-Name: b969ef1def5121c7ff54e3586528274f006ca994b308cf88ccaa9d4f56bf30df

6 months agoFour new assert() statements to help with static analysis.
drh [Sun, 29 Dec 2024 11:54:12 +0000 (11:54 +0000)] 
Four new assert() statements to help with static analysis.

FossilOrigin-Name: e7f7c9d22be8a17b9a4d8f954fcdd40591ba9da5fb674f1184f960bca5f3d30b

6 months agoShow ETC in fuzzcheck with the --spinner option when there is only one input
drh [Sat, 28 Dec 2024 13:04:31 +0000 (13:04 +0000)] 
Show ETC in fuzzcheck with the --spinner option when there is only one input
file.

FossilOrigin-Name: 809699aeaaa4bae67e7ddeae3d42c7133f7deadbb4eb869cfb7e99dd97bdea99

6 months agoFixes to the substr() SQL function so that it can handle ridiculously large
drh [Sat, 28 Dec 2024 12:32:01 +0000 (12:32 +0000)] 
Fixes to the substr() SQL function so that it can handle ridiculously large
numbers in its 2nd and 3rd arguments without signed integer overflows.

FossilOrigin-Name: c1de8f916ea617109a903c436c57d082756fbb2b933ba9ce6998b9b912b12dea

6 months agoIn the (debugging) rtreenode() function, do not override an error coming out
drh [Sun, 22 Dec 2024 21:17:27 +0000 (21:17 +0000)] 
In the (debugging) rtreenode() function, do not override an error coming out
of sqlite3_result_text().

FossilOrigin-Name: 286559dfb3ad01fcf34360991a108dbe6bf81e7919c461ada6c691ee8f43868f

6 months agoFix a test case in sqllimits1.test so that it works with the Apple
drh [Thu, 19 Dec 2024 20:29:36 +0000 (20:29 +0000)] 
Fix a test case in sqllimits1.test so that it works with the Apple
configuration which changes the default SQLITE_MAX_LENGTH.

FossilOrigin-Name: 536fff14acb3335ad00fb1165cfb2f97e7a31c36273b9b97ffdb4b572fe72c08

6 months agoCorrection to check-in [a9759fc78d6cb0df] - printf() parameters values must
drh [Thu, 19 Dec 2024 19:52:13 +0000 (19:52 +0000)] 
Correction to check-in [a9759fc78d6cb0df] - printf() parameters values must
be integers.

FossilOrigin-Name: 2db531d1911369ea932d3559abcc02389e5f9ad72b46b0801dfb6063855aee1b

6 months agoThe BTree mutex must be held when calling sqlite3BtreeLastPage(). This
drh [Thu, 19 Dec 2024 19:02:09 +0000 (19:02 +0000)] 
The BTree mutex must be held when calling sqlite3BtreeLastPage().  This
check-in fixes a bug introduced by [cf8b99e17872c054].

FossilOrigin-Name: e6c30ee52c5cdc193804cec63374d558b45e4d67fc6bde58771ca78485ca0acf