]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
4 days agoUse sqlite3MPrintf() instead of sqlite3_mprintf() internally in alter.c, alter-table-constraints
drh [Thu, 20 Nov 2025 11:06:58 +0000 (11:06 +0000)] 
Use sqlite3MPrintf() instead of sqlite3_mprintf() internally in alter.c,
for improved OOM reporting.

FossilOrigin-Name: 57555d75daa2ee8345f8329749841a322b3e57679e5c4899ef749c8bc814812d

5 days agoAdditional checks for OOM conditions.
drh [Thu, 20 Nov 2025 02:03:57 +0000 (02:03 +0000)] 
Additional checks for OOM conditions.

FossilOrigin-Name: 8fafd4988bf1fa1aa799c2834dd31bebdd52e7ae8e68c0197ccb497eb9b1e5f6

5 days agoMark an unreachable branch with NEVER().
drh [Thu, 20 Nov 2025 00:56:28 +0000 (00:56 +0000)] 
Mark an unreachable branch with NEVER().

FossilOrigin-Name: df2259a32fd65986eafceb2c551e6e1661927f1f5b18dbb97c59d9627279eea0

5 days agoCall sqlite3OomFault() rather than setting db->mallocFailed directly.
drh [Wed, 19 Nov 2025 23:11:56 +0000 (23:11 +0000)] 
Call sqlite3OomFault() rather than setting db->mallocFailed directly.

FossilOrigin-Name: 4fd5dfa215f14b20ddfc55904acbcc9bc9fd2123bb06fff72ef76efa17304566

5 days agoImproved comments in code. Omit unneeded wrapper functions.
drh [Wed, 19 Nov 2025 15:25:18 +0000 (15:25 +0000)] 
Improved comments in code.  Omit unneeded wrapper functions.

FossilOrigin-Name: 3485c7c81bee8e98ea6b403438bcdb2b6fa058afeafea150ce1c859345e1529b

5 days agoStrip unterminated "--" comments from the end of constraints added using ALTER TABLE...
dan [Wed, 19 Nov 2025 11:31:59 +0000 (11:31 +0000)] 
Strip unterminated "--" comments from the end of constraints added using ALTER TABLE ADD CONSTRAINT or ADD NOT NULL.

FossilOrigin-Name: c73ab47b0250c01f1ffa6e506793769744ebeb8ca7edbb78de9a08db2037d6de

5 days agoClarification to the header comment on dropConstraintFunc(). No changes
drh [Wed, 19 Nov 2025 11:28:48 +0000 (11:28 +0000)] 
Clarification to the header comment on dropConstraintFunc().  No changes
to code.

FossilOrigin-Name: 4bd53fbb20d78de7bbff1154e7ee1321b93b0ede435e150ad4ee992a4108ad5a

5 days agoTrivial simplification to the ALTER TABLE ADD CONSTRAINT code.
drh [Wed, 19 Nov 2025 10:26:49 +0000 (10:26 +0000)] 
Trivial simplification to the ALTER TABLE ADD CONSTRAINT code.

FossilOrigin-Name: 383965b3ba701d3627e0bbd09ad04d0ce00d4721497d82e241dc7cffa745b1d9

6 days agoMerge the latest trunk changes into the alter-table-constraints branch.
drh [Tue, 18 Nov 2025 19:36:45 +0000 (19:36 +0000)] 
Merge the latest trunk changes into the alter-table-constraints branch.

FossilOrigin-Name: 31d7aeeaef20ac42c3c395dbaf7a8225ac718256a4cbeb7c198d1c7361766b1b

6 days agoDo not attempt to make the generated file "shell.c" read-only. This turns
drh [Tue, 18 Nov 2025 19:11:21 +0000 (19:11 +0000)] 
Do not attempt to make the generated file "shell.c" read-only.  This turns
out to be annoying in general, and especially annoying on macs.

FossilOrigin-Name: 6ab18d036a3e412ee01806a40f69aca2b77283bd5336df27597cc19d32e6e6f2

6 days agoNew subcomponent, the Query Result Formatter (QRF), that formats query
drh [Tue, 18 Nov 2025 17:49:48 +0000 (17:49 +0000)] 
New subcomponent, the Query Result Formatter (QRF), that formats query
results for display to humans on a fixed-width font terminal.  Rework the
CLI to make use of the QRF.  Renovate the .mode command of the CLI.  Also
incorporate the QRF into the TCL interface as the "format" method.

FossilOrigin-Name: 7e460ffa5aae884807db9e7c8214d6d822d5d38ea406fe3b3eac04ac16f158fa

6 days agoAdd support for SQLITE_LIMIT_PARSER_DEPTH to limit the size of the stack
drh [Tue, 18 Nov 2025 17:27:46 +0000 (17:27 +0000)] 
Add support for SQLITE_LIMIT_PARSER_DEPTH to limit the size of the stack
used by the parser.  This can help prevent deeply nested parse trees that
then cause problems on machines with smaller CPU stacks.  Modify the
%realloc and %free directives of Lemon and add the new %stack_size_limit
directive in support of this capability.

FossilOrigin-Name: 52ba0c731d004409353a55ce8ca5a514ce486a077a2be82db5b8fea7619848d5

6 days agoModify the "%realloc" and "%free" commands in Lemon so that the functions parser-stack-size
drh [Tue, 18 Nov 2025 15:40:02 +0000 (15:40 +0000)] 
Modify the "%realloc" and "%free" commands in Lemon so that the functions
they specify take an extra parameter at the end, the %extra_context pointer.
This allows the implementation to distinguish between OOM errors and
failures to increase the stack size because of the stack size limit.

FossilOrigin-Name: 9862c945d9a8531f9bef123aee9ed1fd3f64542250a57beb3a150227bc3c1a12

6 days agoLower the default stack size for the parse to 50.
drh [Tue, 18 Nov 2025 15:20:22 +0000 (15:20 +0000)] 
Lower the default stack size for the parse to 50.

FossilOrigin-Name: 41fe19ab054acda912bc32dd6f9c6412416ab1af6cf55515e96c89fb55b46424

6 days agoAdd the SQLITE_LIMIT_PARSER_DEPTH value for sqlite3_limit(). This isn't
drh [Tue, 18 Nov 2025 14:48:33 +0000 (14:48 +0000)] 
Add the SQLITE_LIMIT_PARSER_DEPTH value for sqlite3_limit().  This isn't
something that many applications will need, but it is useful for testing.

FossilOrigin-Name: 8f0b07f36159225c476f756f8f9b35c75783bc8bed43b578f4d1055fa800ecc9

6 days agoYet another attempt at controlling the parser stack size.
drh [Tue, 18 Nov 2025 13:03:08 +0000 (13:03 +0000)] 
Yet another attempt at controlling the parser stack size.

FossilOrigin-Name: cb19986dc6bc483df21e082e54a14cb6d7540b1734259e6d326d676908ac0172

6 days agoFix incorrect "#line" generation in Lemon.
drh [Tue, 18 Nov 2025 10:38:41 +0000 (10:38 +0000)] 
Fix incorrect "#line" generation in Lemon.

FossilOrigin-Name: 5c0214df2c0a7470ac2edca0c483a3edd3c39ef0739688ab9a06e23882200360

7 days agoAdd api.oo1=0 flag to ext/wasm/GNUmakefile to strip out the sqlite3.oo1 pieces from...
stephan [Mon, 17 Nov 2025 23:55:41 +0000 (23:55 +0000)] 
Add api.oo1=0 flag to ext/wasm/GNUmakefile to strip out the sqlite3.oo1 pieces from the build. Part of the ongoing response to [forum:4b7d45433731d2e0|forum post 4b7d45433731d2e0].

FossilOrigin-Name: ea48567ac54e4949a8b68977a58a5de7946e074ae8737133071d02f40ac97f34

7 days agoIf SQL is entered as additional command-line arguments to CLI, that counts qrf
drh [Mon, 17 Nov 2025 19:46:04 +0000 (19:46 +0000)] 
If SQL is entered as additional command-line arguments to CLI, that counts
the same as getting input from a pipe or file for the purpose of determining
the default format mode.

FossilOrigin-Name: 3d55ec15a9e4dc8af4bf1e2884eaa2c809995fb1529633f73287dc7a54153629

7 days agoFix a harmless compiler warning.
drh [Mon, 17 Nov 2025 19:19:58 +0000 (19:19 +0000)] 
Fix a harmless compiler warning.

FossilOrigin-Name: 6621737cc05cbf8ff5f576775a8a3c64f666b56d42939968ebb55d72a835646b

7 days agoThe -textjsonb option is on by default in the standard non-batch mode of
drh [Mon, 17 Nov 2025 18:51:55 +0000 (18:51 +0000)] 
The -textjsonb option is on by default in the standard non-batch mode of
the CLI.  New fast screening test for JSONB.

FossilOrigin-Name: fd09f934d64ec07fd56f1b80ab05dafb28b605d5802ff5758eea17d8ad24e3cc

7 days agoCLI comes up in legacy "list" mode if neither stdin or stdout are a tty, or
drh [Mon, 17 Nov 2025 16:44:13 +0000 (16:44 +0000)] 
CLI comes up in legacy "list" mode if neither stdin or stdout are a tty, or
if "--compat 20251114" or earlier is specified, or if "--batch" is used.
New modes "batch" and "tty" select either legacy "list" mode or the newer
"qbox" mode with limits.
Make CVS output compatible with legacy.  Break out ".import" into a separate
subroutine in anticipation of forthcoming improvements.  General code
cleanup.

FossilOrigin-Name: f6bfcea9a01493af182e9aa0d35df6f81bf9e36220df79139afa287fa43d9aa3

8 days agoFix test cases impacted by the use of ~/.sqliterc
drh [Mon, 17 Nov 2025 00:15:14 +0000 (00:15 +0000)] 
Fix test cases impacted by the use of ~/.sqliterc

FossilOrigin-Name: 8fc05faef91186429c6c710991fd736b1df9a9af946c29d207db2518d6436b38

8 days agoFix a bug in ".show". Adjust test cases for the new default mode.
drh [Sun, 16 Nov 2025 23:06:45 +0000 (23:06 +0000)] 
Fix a bug in ".show".  Adjust test cases for the new default mode.

FossilOrigin-Name: 2aebd7bfecaaf1f75b52b05a0d3009fc0dc61289ae666d24cb4e3ddfaf251645

8 days agoDefault .mode is now qbox with limits. New --compat YYYYMMDD command-line
drh [Sun, 16 Nov 2025 17:27:21 +0000 (17:27 +0000)] 
Default .mode is now qbox with limits.  New --compat YYYYMMDD command-line
option, and new -DCOMPATIBILITY_DATE=YYYYMMDD compile-time options can
override.  Command ".mode YYYYMMDD" sets the mode to the default for the
date given.

FossilOrigin-Name: 52e022375961ad9460412e40e100219ee59055eb0ab309cbfc2ab19f61929a45

8 days agoFix a long-standing bug in .schema when the argument contains a ".".
drh [Sun, 16 Nov 2025 10:49:51 +0000 (10:49 +0000)] 
Fix a long-standing bug in .schema when the argument contains a ".".

FossilOrigin-Name: 404576214fc20161cdcb031d57696d6068506309c8faecd3e4424e5ced28046b

9 days agoFix a problem with the new command-line parsing in the CLI.
drh [Sun, 16 Nov 2025 02:32:06 +0000 (02:32 +0000)] 
Fix a problem with the new command-line parsing in the CLI.

FossilOrigin-Name: 3e02804c387c89afde59eef8e464c6011e083e158873e4f8ab1f17bcc12b7c28

9 days agoImproved --safe mode defenses. Fix a test case error.
drh [Sun, 16 Nov 2025 01:34:01 +0000 (01:34 +0000)] 
Improved --safe mode defenses.  Fix a test case error.

FossilOrigin-Name: eacc9db80de8baa878ebdc3a054538c8998db9a2e46720c0d8b109d62a0cac29

9 days agoImproved error detection in the argument to .mode --widths.
drh [Sun, 16 Nov 2025 01:03:53 +0000 (01:03 +0000)] 
Improved error detection in the argument to .mode --widths.

FossilOrigin-Name: 4d774ee495e38282b8701988fe514344ee0e81285692c8d1adc1ee7e22960ad9

9 days agoFix formatting problem in .schema and .fullschema
drh [Sun, 16 Nov 2025 00:56:24 +0000 (00:56 +0000)] 
Fix formatting problem in .schema and .fullschema

FossilOrigin-Name: 4035fb15ff36d139ed4c839fdebb0278e6cf9a2f00298e1a548a8f8317ba14b2

9 days agoHelp text improvements in the CLI.
drh [Sat, 15 Nov 2025 20:10:32 +0000 (20:10 +0000)] 
Help text improvements in the CLI.

FossilOrigin-Name: dcaabd97d5064dd70fb386a2eef55f4301bba4b54915ed6a91d736abe7a04ae8

9 days agoRemove an unused struct.
stephan [Sat, 15 Nov 2025 16:06:03 +0000 (16:06 +0000)] 
Remove an unused struct.

FossilOrigin-Name: 93dd0e62b74a0d99803f680f23953e9fa2429074505ba402ca5ed4610ddef8fb

9 days agoBug fix to the --lineline option in the CLI. Other minor CLI tweaks.
drh [Sat, 15 Nov 2025 15:30:55 +0000 (15:30 +0000)] 
Bug fix to the --lineline option in the CLI.  Other minor CLI tweaks.

FossilOrigin-Name: 40f81a9f9f6ea29144174fbd487f83d150a1be8f35e7496bfc1cfc6a556b6312

9 days agoJNI: when validing the eTextRep argument in sqlite3_create_function(), only validate...
stephan [Sat, 15 Nov 2025 15:30:45 +0000 (15:30 +0000)] 
JNI: when validing the eTextRep argument in sqlite3_create_function(), only validate the lower four bits (the high bits are for other flags). Add flags to test functions to ensure this case is triggered.

FossilOrigin-Name: aab640be7bc5829fe16d2582b13f942b7debb271c150ca2471561de6b2d70dc7

9 days agoColumnar modes respond to nScreenWidth.
drh [Sat, 15 Nov 2025 15:18:41 +0000 (15:18 +0000)] 
Columnar modes respond to nScreenWidth.

FossilOrigin-Name: 60d26ebb4d91cc885b6b938ef2fc2864ebbf5a18d2e456521ee2f4aa3b22eddf

9 days agoReplace the JNI binding's internal use of sqlite3ErrorWithMsg() with sqlite3_set_errm...
stephan [Sat, 15 Nov 2025 15:09:04 +0000 (15:09 +0000)] 
Replace the JNI binding's internal use of sqlite3ErrorWithMsg() with sqlite3_set_errmsg() and have it handle OOM in a way consistent with the rest of the JNI bindings.

FossilOrigin-Name: 0899a9eb3af727f310372f3441573ab506ffec31dca4774e850b2b59a4001ee0

9 days agoRandom JS build cleanups and parallel build mkdir race fixes. Reinstate the recently...
stephan [Sat, 15 Nov 2025 13:30:13 +0000 (13:30 +0000)] 
Random JS build cleanups and parallel build mkdir race fixes. Reinstate the recently-removed [a65bd978cbc646ec] after finding a reformulation which works on Emscripten 4.0.19 (and saves about 85kb on the JS deliverables).

FossilOrigin-Name: acb1525a49463de67716638626406ccde9a282907d0de218ab88bf474ba830ee

9 days agoColumnar formats respond to --screenwidth restrictions by removing
drh [Sat, 15 Nov 2025 12:09:13 +0000 (12:09 +0000)] 
Columnar formats respond to --screenwidth restrictions by removing
cell padding.

FossilOrigin-Name: cbe233ca131118692fd4a84d8fcf0dfca926fa935f66cfb718c235d54084de3d

9 days agoReorder initialization of sqlite3ApiBootstrap()'s bownstrapped config object so that...
stephan [Sat, 15 Nov 2025 11:53:30 +0000 (11:53 +0000)] 
Reorder initialization of sqlite3ApiBootstrap()'s bownstrapped config object so that it's possible to inject the wasm memory and exports via that, to simplify plugging-in of sqlite3-api.js in other builds. Previously the build-provided wasm exports/memory overrode any which a client might want to use.

FossilOrigin-Name: 2bd0addb6068cd2b34f6151a824c578e2253f541a8c55b578219b09c42afd82b

9 days agoGeneric internal JS cleanups towards improving portability of sqlite3-api.js to other...
stephan [Sat, 15 Nov 2025 11:30:45 +0000 (11:30 +0000)] 
Generic internal JS cleanups towards improving portability of sqlite3-api.js to other build systems.

FossilOrigin-Name: 5bc37e5c2fcd83fd0bc40234144072363f1cbf7d811a15b74a0991e397a35eb8

9 days agoData structure improvements on columnar layout. Prep work for getting
drh [Sat, 15 Nov 2025 11:28:23 +0000 (11:28 +0000)] 
Data structure improvements on columnar layout.  Prep work for getting
columnar layouts to respond to nScreenWidth.

FossilOrigin-Name: 777eeb2ed2708faf42559387bd582b9345a794798a0327e4fcd75e37948eac60

9 days agoMove sqlite3-api-cleanup.js into post-js-footer.js to remove the final direct Emscrip...
stephan [Sat, 15 Nov 2025 09:19:03 +0000 (09:19 +0000)] 
Move sqlite3-api-cleanup.js into post-js-footer.js to remove the final direct Emscripten dependency from the intermediary build product sqlite3-api.js (the whole library, waiting to be bootstrapped). This is partly in response to [forum:4b7d45433731d2e0|forum post 4b7d45433731d2e0], which demonstrates a potential use case for a standalone sqlite3-api.js. This is a build/doc change, not a functional one.

FossilOrigin-Name: 2fcbd8e17d8f1dd7e9d45168805dba718777e46803d9375a4212296d3d0cd89c

9 days agoAPI doc typo fix.
stephan [Sat, 15 Nov 2025 08:05:12 +0000 (08:05 +0000)] 
API doc typo fix.

FossilOrigin-Name: c1e9791fbf9e4c2ca6f9f031ea2c26d8b4bfb4d54850a53853f2b2d9620792ef

10 days agoImprove columnar layout in QRF so that it correctly deals with control
drh [Sat, 15 Nov 2025 00:23:09 +0000 (00:23 +0000)] 
Improve columnar layout in QRF so that it correctly deals with control
characters, and especially tabs.

FossilOrigin-Name: 0650e2b83170b44c1ba944259a96d41e1a14a57004d4f1f80dc5640ae837a81e

10 days agoMake use of the new sqlite3_str_free() interface in the CLI.
drh [Fri, 14 Nov 2025 21:49:27 +0000 (21:49 +0000)] 
Make use of the new sqlite3_str_free() interface in the CLI.

FossilOrigin-Name: 2e07bc29ab1ca66049337f2cfbefcd57bdcd691a381b309fb8a5db6e72e56d03

10 days agoEnforce the --charlimit constraint in QRF.
drh [Fri, 14 Nov 2025 21:40:20 +0000 (21:40 +0000)] 
Enforce the --charlimit constraint in QRF.

FossilOrigin-Name: c25f8fdedd8d68e3551a445e24e1c60e105e18f9cf8f1badcbb77a58974f3381

10 days agoMerge the latest trunk enhancements into the qrf branch.
drh [Fri, 14 Nov 2025 20:11:15 +0000 (20:11 +0000)] 
Merge the latest trunk enhancements into the qrf branch.

FossilOrigin-Name: 9ee892b4f97c91208a658f09add00a567406e913edb022a2fd53333ea01c2b26

10 days agoNew interfaces sqlite3_str_truncate() and sqlite3_str_free(). Version number
drh [Fri, 14 Nov 2025 20:09:01 +0000 (20:09 +0000)] 
New interfaces sqlite3_str_truncate() and sqlite3_str_free().  Version number
increases to 3.52.0.

FossilOrigin-Name: fa85534ed927851dc37a4943e83259bff4509f141449226ffb506f9acc7b2cc5

10 days agoFix harmless display bug in previous check-in. Add the -noinit command-line
drh [Fri, 14 Nov 2025 19:04:23 +0000 (19:04 +0000)] 
Fix harmless display bug in previous check-in.  Add the -noinit command-line
option to bypass reading the ~/.sqliterc file.

FossilOrigin-Name: 229650a01dcd9cc4b39526d661106e9c3eb2f90ca7fbed8adc6e6fe85ef3fdaa

10 days agoAdd the --tag and --list options to the ".mode" command.
drh [Fri, 14 Nov 2025 18:41:21 +0000 (18:41 +0000)] 
Add the --tag and --list options to the ".mode" command.

FossilOrigin-Name: 9daf98c2f449688b7463b71dfa926cb4ae96d8c7ee34946df2172bb37f7c5616

10 days agoIf SQLITE_EXPERIMENTAL_PRAGMA_20251114 is defined at build-time, send an experimental...
dan [Fri, 14 Nov 2025 17:27:20 +0000 (17:27 +0000)] 
If SQLITE_EXPERIMENTAL_PRAGMA_20251114 is defined at build-time, send an experimental pragma file-control to the VFS if a call to take a SHARED lock is to be immediately followed by one to take a RESERVED.

FossilOrigin-Name: e2b3f1a9480a9be3e06c2d79abcf39f399b5adf2ca882841b3b3fa199c239dd8

10 days agoSlight restructure of the previous checkin.
stephan [Fri, 14 Nov 2025 17:23:24 +0000 (17:23 +0000)] 
Slight restructure of the previous checkin.

FossilOrigin-Name: 8ff98747c072c8c333b1b37cf4ec9344e84f081bd4e6d3b5e75f37b1e1ce9e84

10 days agoAdd the --once option to the .mode command. Improvements to help text.
drh [Fri, 14 Nov 2025 17:11:06 +0000 (17:11 +0000)] 
Add the --once option to the .mode command.  Improvements to help text.

FossilOrigin-Name: 253980122a35f787423aaeedbec12ec94b31768f245fe1c1fcc7e08911855c60

10 days agoIn sqlite3-api-cleanup.js, if no Emscripten module is detected then simply return...
stephan [Fri, 14 Nov 2025 16:56:51 +0000 (16:56 +0000)] 
In sqlite3-api-cleanup.js, if no Emscripten module is detected then simply return, rather than throw. This should enable the generated sqliet3-api.js (normally an intermediary file) to be used as-is, with the caveat that the caller has to bootstrap the library themselves.

FossilOrigin-Name: d64c9cd4c7a1ffe04de6c75126563d7bbb24266e13d41406f6d55720b8199037

10 days agoRemove a harmless duplicated makefile var assignment from mkwasmbuilds.c.
stephan [Fri, 14 Nov 2025 15:03:55 +0000 (15:03 +0000)] 
Remove a harmless duplicated makefile var assignment from mkwasmbuilds.c.

FossilOrigin-Name: 4b4a6fbe20d51689e0abc65beed078bbb9418383e69eb8ec13f0657e2cf13bfd

10 days agoFix harmless compiler warnings. Incorporate "USAGE:" comments on dot-command
drh [Fri, 14 Nov 2025 14:59:43 +0000 (14:59 +0000)] 
Fix harmless compiler warnings.  Incorporate "USAGE:" comments on dot-command
implementations into the CLI ".help" command output.

FossilOrigin-Name: 046bfab4a01e8a7cc58d1bdf0756c90ba354562d79e5453c08202daf648e76a6

10 days agoFix a makefile ordering bug which caused certain builds to fail unless others had...
stephan [Fri, 14 Nov 2025 14:42:00 +0000 (14:42 +0000)] 
Fix a makefile ordering bug which caused certain builds to fail unless others had already been built. Remove the superfluous sqlite3-node.wasm from the final deliverables dir (sqlite3-node.mjs uses sqlite3.wasm instead).

FossilOrigin-Name: fd70088284946b9d4315781b3f68133cc0abd4244247f2fce04044feab8a97c0

10 days agoFix various bugs and compiler warnings. All tests now passing on linux, mac,
drh [Fri, 14 Nov 2025 13:07:45 +0000 (13:07 +0000)] 
Fix various bugs and compiler warnings.  All tests now passing on linux, mac,
and windows.  More testing needed, though.

FossilOrigin-Name: 2220cb70c2f1ee30dcdf917a20feacdfcb3789433d0645fea626fd4c5cf0d099

10 days agoMerge compiler-warning fix from trunk into the qrf branch.
drh [Fri, 14 Nov 2025 11:06:27 +0000 (11:06 +0000)] 
Merge compiler-warning fix from trunk into the qrf branch.

FossilOrigin-Name: 6ffab43ca32230975e79d91080dfa2e80a4c21deef31ab86455581af18a399cd

10 days agoFix a harmless compiler warning in testing code.
drh [Fri, 14 Nov 2025 11:02:49 +0000 (11:02 +0000)] 
Fix a harmless compiler warning in testing code.

FossilOrigin-Name: 5252a2e629e1adb61169d32ca6458c6decd1ec562f358bb9d0b448a2f0243c56

10 days agoFix a memory error in the .schema command.
drh [Fri, 14 Nov 2025 10:42:29 +0000 (10:42 +0000)] 
Fix a memory error in the .schema command.

FossilOrigin-Name: 3300ed34b5a3598c46cdc4bdf1e9e81818a5029585ae917424f64c11c718bfa8

11 days agoSuppress a harmless compiler warning.
drh [Fri, 14 Nov 2025 03:26:48 +0000 (03:26 +0000)] 
Suppress a harmless compiler warning.

FossilOrigin-Name: 89cf1de7b6abff567c70d52a415eea6deb52fc13c3008c1266a77b61e3711217

11 days agoMerge all the latest trunk enhancements into the qrf branch.
drh [Fri, 14 Nov 2025 02:27:58 +0000 (02:27 +0000)] 
Merge all the latest trunk enhancements into the qrf branch.

FossilOrigin-Name: 97b06e58ed128a1d60b89437ddf0ad80df528b8dbfdb6a7637374fc1ab4ddb10

11 days agoImprovements to --titles handling in the .mode command. Fix shell1 test
drh [Fri, 14 Nov 2025 02:22:39 +0000 (02:22 +0000)] 
Improvements to --titles handling in the .mode command.  Fix shell1 test
cases having to do with quoting of NULL values in "tcl" mode.

FossilOrigin-Name: 0fef770bd654b8ba8011b0bb610128058e75e8444f86c51e7ea59a6f2625a3fc

11 days agoA better fix for the issue with RETURNING triggers on eponymous virtual tables and...
dan [Thu, 13 Nov 2025 20:37:09 +0000 (20:37 +0000)] 
A better fix for the issue with RETURNING triggers on eponymous virtual tables and SQLITE_SCHEMA errors first addressed by [45d820ca22].

FossilOrigin-Name: bf399992cb98e5d5f002a90b521328d5c2f113ebab8601653452d78222077bde

11 days agoAdd an OOM test case for the issue with dropping RETURNING triggers when the schema...
dan [Thu, 13 Nov 2025 18:02:22 +0000 (18:02 +0000)] 
Add an OOM test case for the issue with dropping RETURNING triggers when the schema is reset while preparing a statement that uses an eponymous vtab.

FossilOrigin-Name: dc569288dd63754269e14be7a9937c882531685a3e9caec25f86ec8c01eb9583

11 days agoAdd better test case for the issue with dropping RETURNING triggers when the schema...
dan [Thu, 13 Nov 2025 17:42:55 +0000 (17:42 +0000)] 
Add better test case for the issue with dropping RETURNING triggers when the schema is reset while preparing a statement.

FossilOrigin-Name: 6a9fdde109865b23888f099d066721404e8b853f3dacd55ce08c8bbda2491ec3

11 days agoGeneric makefile cleanups and doc updates.
stephan [Thu, 13 Nov 2025 17:37:40 +0000 (17:37 +0000)] 
Generic makefile cleanups and doc updates.

FossilOrigin-Name: e8b34b4178be621102dac165b716283055fad90b3edc2394f56a24f9f0149448

11 days agoInternal doc fix (renamed file).
stephan [Thu, 13 Nov 2025 16:38:45 +0000 (16:38 +0000)] 
Internal doc fix (renamed file).

FossilOrigin-Name: cb8fb01fe19ba3af536a662aed894b2b0eb2463c8d34c644c498234fd82122f3

11 days agoJS code reformatting and doc updates. No functional changes.
stephan [Thu, 13 Nov 2025 15:33:44 +0000 (15:33 +0000)] 
JS code reformatting and doc updates. No functional changes.

FossilOrigin-Name: c566c653e4f55afa0660e819ed5b1fd96cb9b24bc78c333adcd8825331a9dd26

11 days agoAdd the #include -raw flag to ext/wasm/c-pp-lite.c to support a pending feature.
stephan [Thu, 13 Nov 2025 14:47:41 +0000 (14:47 +0000)] 
Add the #include -raw flag to ext/wasm/c-pp-lite.c to support a pending feature.

FossilOrigin-Name: 42c30c314969c0f2573bbe36615683ac19a7ba4e30004c7080873459096caaf5

11 days agoGet --screenwidth auto working on linux and windows.
drh [Thu, 13 Nov 2025 11:52:34 +0000 (11:52 +0000)] 
Get --screenwidth auto working on linux and windows.

FossilOrigin-Name: 48a91f2067005f7f186484354be07384dd76bcfff8427c17579f6e32201e3742

11 days agoFix a problem in the EXISTS-to-JOIN optimization ([e33da6d5dc964db8]) so
drh [Thu, 13 Nov 2025 11:36:48 +0000 (11:36 +0000)] 
Fix a problem in the EXISTS-to-JOIN optimization ([e33da6d5dc964db8]) so
that it works with nested WHERE and EXISTS statements.
[forum:/forumpost/0704c3c41e49631b|Forum post 0704c3c41e4]

FossilOrigin-Name: d1e901eddc25175174d0706238ae0c33bfa5569e0c2ba4f1164b7a9600203442

11 days agomkwasmbuilds.c doc updates. Merge in the parts of [8611cf643b] which are not contentious.
stephan [Thu, 13 Nov 2025 09:03:48 +0000 (09:03 +0000)] 
mkwasmbuilds.c doc updates. Merge in the parts of [8611cf643b] which are not contentious.

FossilOrigin-Name: cb0f0e22241aae65938b4bc7a1b809088466a17cee80344f66ee889a76c422c1

11 days agoTeach c-pp to export its argv as a #define list so that we can embed it in the genera...
stephan [Thu, 13 Nov 2025 08:26:11 +0000 (08:26 +0000)] 
Teach c-pp to export its argv as a #define list so that we can embed it in the generates files.

FossilOrigin-Name: 42f95ea71e5e7e927685de3a6da2ede38abe7cabdd1fc71b9a14bebe9f54a65e

11 days agoDoc typo fix reported in [forum:00e49e9aa1|forum post 00e49e9aa1].
stephan [Thu, 13 Nov 2025 07:07:28 +0000 (07:07 +0000)] 
Doc typo fix reported in [forum:00e49e9aa1|forum post 00e49e9aa1].

FossilOrigin-Name: 36cd33f634a45900f6e52ba07aa20242a5f2b29c7cbe19be968c52ffef34fcde

11 days agoMinor doc correction and a JS error message tweak.
stephan [Thu, 13 Nov 2025 06:49:12 +0000 (06:49 +0000)] 
Minor doc correction and a JS error message tweak.

FossilOrigin-Name: c4ae21c89e5fd40eefd4916df6c6a6c4e27075a434a9d47576d3fcfbc7720588

12 days agoImplement the --titles option to the .mode command.
drh [Wed, 12 Nov 2025 20:50:08 +0000 (20:50 +0000)] 
Implement the --titles option to the .mode command.

FossilOrigin-Name: cc25643ebc516db0799406797e9961a2af574875ae9639178b722dbc280c96ad

12 days agoMore details on the format of the QRF_STYLE_Json and QRF_STYLE_JOBject.
drh [Wed, 12 Nov 2025 19:03:05 +0000 (19:03 +0000)] 
More details on the format of the QRF_STYLE_Json and QRF_STYLE_JOBject.

FossilOrigin-Name: 2b22321df9c2f51e4b0ab9e4da859c58bb3f194ad69c22b9d32b35831740f9dd

12 days agoContinuing code cleanup. Various minor bug fixes. All legacy tests now
drh [Wed, 12 Nov 2025 18:54:09 +0000 (18:54 +0000)] 
Continuing code cleanup.  Various minor bug fixes.  All legacy tests now
pass.  All planned features for ".mode" are implemented, at least at the
interface level, though some features are still no-ops.

FossilOrigin-Name: e5a81711d0076b447e5bd3206bc04d755a6229b9f4926f42260fcd01ecf3e5a2

12 days agoClarify that 'pikchr' is not a typo.
stephan [Wed, 12 Nov 2025 17:25:17 +0000 (17:25 +0000)] 
Clarify that 'pikchr' is not a typo.

FossilOrigin-Name: d7bb2ee6ec23c266c887fb2aeb77b0b17cd8f1429564d341537f57c5478410e2

12 days agoAdd a new direct CLI testing script in test/modeA.clitest to demonstration
drh [Wed, 12 Nov 2025 13:46:11 +0000 (13:46 +0000)] 
Add a new direct CLI testing script in test/modeA.clitest to demonstration
that can be done.  Rig this this to be run by test/shellB.test during normal
testing.

FossilOrigin-Name: 3107ebb9e1602fe5bed644c6f69426bebf307772e581b17a8fa3e50bd522e566

12 days agoRename QRF_STYLE_JsonLine to QRF_STYLE_JObject. Add new convenience modes
drh [Wed, 12 Nov 2025 12:44:02 +0000 (12:44 +0000)] 
Rename QRF_STYLE_JsonLine to QRF_STYLE_JObject.  Add new convenience modes
to the CLI and generally refactor and improve the ".mode" command.  Some
tests are failing, mostly due to changes in error message output and similar.

FossilOrigin-Name: 4c8109682e3a224fd8e015e73a9c1c7b6d56ad747d7ca7bc387bb92e1c98f731

13 days agoMinor refactoring of some field names in the sqlite3_qrf_spec object, to try
drh [Tue, 11 Nov 2025 18:07:42 +0000 (18:07 +0000)] 
Minor refactoring of some field names in the sqlite3_qrf_spec object, to try
to make the names more intuitive, memorable, and succinct.

FossilOrigin-Name: 3450bc7eecb717abedbaeb56dc824e14eb35ed30322fe3dd3b4b1cbd5fd14c60

13 days agoMerge trunk with this branch.
dan [Tue, 11 Nov 2025 17:06:24 +0000 (17:06 +0000)] 
Merge trunk with this branch.

FossilOrigin-Name: d7d8d08f849b2caeef4f18244c4b594e4f66506ef00be47ab2dd4b53d3ab98e8

13 days agoMove the ".output" command into a separate subroutine. Enhance .output so
drh [Tue, 11 Nov 2025 14:08:50 +0000 (14:08 +0000)] 
Move the ".output" command into a separate subroutine.  Enhance .output so
that it is able to capture output in a sqlite3_str object, then compare that
captured output we patterns to accomplish tests.

FossilOrigin-Name: ddd167044753f5215624fc9ee0e3657836c528f23a6a3e262401fd1b64cdbb21

2 weeks agoFactor the code for ".mode" out of do_meta_command() and into its own
drh [Tue, 11 Nov 2025 00:44:25 +0000 (00:44 +0000)] 
Factor the code for ".mode" out of do_meta_command() and into its own
subroutine, to show how the new infrastructure makes this easy.  We need
to do the same for all the dot-commands.  At the same time, add the
-textjsonb option to .mode.

FossilOrigin-Name: b48aa054df488747a7db56faf1cd0da42e322edff60650b9187448e58eb12def

2 weeks agoBug fixes. All tests are now passing.
drh [Tue, 11 Nov 2025 00:21:26 +0000 (00:21 +0000)] 
Bug fixes.  All tests are now passing.

FossilOrigin-Name: a0fc99a3bdd12f9ac69511c1aea2bd9a3d5de593d44b4a732cfc8f48e0931c76

2 weeks agoRevamp the internal data structures that the CLI uses for tracking and
drh [Mon, 10 Nov 2025 23:40:40 +0000 (23:40 +0000)] 
Revamp the internal data structures that the CLI uses for tracking and
managing the display mode.  This is an incremental check-in.  The code
compiles and runs, but not all tests are passing.

FossilOrigin-Name: 8cc581e53c2ab15bd311e082048b7c57b03a754d25c0b4beead08a3362ac1c7a

2 weeks agoKeep explicit NULL values in QRF_STYLE_Json output.
drh [Mon, 10 Nov 2025 22:05:42 +0000 (22:05 +0000)] 
Keep explicit NULL values in QRF_STYLE_Json output.

FossilOrigin-Name: cb07f3d441b0b2a3ebdfaa9456891a9c8e33fa07b967532a9edfaf6ff3163cb0

2 weeks agoMerge all the latest trunk improvements into the qrf branch.
drh [Mon, 10 Nov 2025 20:11:36 +0000 (20:11 +0000)] 
Merge all the latest trunk improvements into the qrf branch.

FossilOrigin-Name: 1fc2298edc67cbaf1963ed858a36cab15f670c00779ace6b63bdd266b0dbaaf2

2 weeks agoImproved concurrency for "make devtest" by splitting fuzzdata1.db and
drh [Mon, 10 Nov 2025 20:01:39 +0000 (20:01 +0000)] 
Improved concurrency for "make devtest" by splitting fuzzdata1.db and
fuzzdata2.db into slices for asan and ubsan testing.

FossilOrigin-Name: 2c31176607f02a73cf2626cda2dd0711ae74bdf0b4520d4c84ff299c860e419e

2 weeks agoAvoid dropping RETURNING triggers when the schema is reset while preparing a statement.
dan [Mon, 10 Nov 2025 19:11:15 +0000 (19:11 +0000)] 
Avoid dropping RETURNING triggers when the schema is reset while preparing a statement.

FossilOrigin-Name: 45d820ca227eb1ade4dda498b0f94b2c5df4bab3fc5fcdd517ee125a43d16f4d

2 weeks agoImproved argument parsing and error message infrastructure for
drh [Mon, 10 Nov 2025 18:39:33 +0000 (18:39 +0000)] 
Improved argument parsing and error message infrastructure for
dot-commands in the CLI.

FossilOrigin-Name: 23d5d09db8eae33b250cb8c86b6e6790fc9d5a62ca16df77d8aa881405da66fa

2 weeks agoAvoid dropping RETURNING triggers when the schema is reset while preparing a statement. returning-fix
dan [Mon, 10 Nov 2025 17:37:59 +0000 (17:37 +0000)] 
Avoid dropping RETURNING triggers when the schema is reset while preparing a statement.

FossilOrigin-Name: e26bcef7522a6f6ee8d55fa30e7fe06419566cf4e8c2df0c33c92a4c89f58c05

2 weeks agoThe ".www" command is now handled by QRF. So at this point, QRF handles
drh [Mon, 10 Nov 2025 15:56:18 +0000 (15:56 +0000)] 
The ".www" command is now handled by QRF.  So at this point, QRF handles
all query result formatting in the CLI and the legacy formatter has been
removed from the code.

FossilOrigin-Name: 35d4c7151e63c3f105a11dddc853666ae19cfca190204847a42f2b2a5641e95d

2 weeks agoRewrite the ".schema" and ".fullschema" commands in the CLI so as to
drh [Mon, 10 Nov 2025 15:01:57 +0000 (15:01 +0000)] 
Rewrite the ".schema" and ".fullschema" commands in the CLI so as to
eliminate the need for MODE_Pretty and MODE_Semi.

FossilOrigin-Name: 0eb0410f725eed44973cf8712ab2d24c16fb5cbb249b5780f8fe5d41b2193d79

2 weeks agoAdd the bTextNull field to sqlite3_qrf_spec. Use QRF to implement "tcl"
drh [Mon, 10 Nov 2025 12:32:04 +0000 (12:32 +0000)] 
Add the bTextNull field to sqlite3_qrf_spec.  Use QRF to implement "tcl"
mode in the CLI.

FossilOrigin-Name: 2ba92320db3c16c3c91e29ea935ae92da546261f25846d242bd2dd27e0b7e032

2 weeks agoFix a missing va_end() call in the intckMprintf() function of the
drh [Mon, 10 Nov 2025 11:05:36 +0000 (11:05 +0000)] 
Fix a missing va_end() call in the intckMprintf() function of the
incremental integrity-check extension.

FossilOrigin-Name: 62ad2350e368dc337ba2d0fb6847d07c40a6f79520dd6414d22b5b54983b0b12

2 weeks agoA more compact fix for the problem first fixed by [5f5a736f88].
dan [Mon, 10 Nov 2025 11:00:41 +0000 (11:00 +0000)] 
A more compact fix for the problem first fixed by [5f5a736f88].

FossilOrigin-Name: 7a644178c8d289ca18631844b2d73b32fddc72afcc80906633dd38c14eba2ca9