]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
7 days agoEnable the SQLITE_EXPERIMENTAL_PRAGMA_20251114 in the WASM builds for the sake of...
stephan [Thu, 20 Nov 2025 12:12:55 +0000 (12:12 +0000)] 
Enable the SQLITE_EXPERIMENTAL_PRAGMA_20251114 in the WASM builds for the sake of VFS experimentors. The links in the comments describe what that does.

FossilOrigin-Name: aaa55a3ebf8e725443030be5f31ac7fc0766c1f3c771ce69852f31e7e6f165b9

8 days agoFix three harmless declaration-after-statement warnings in the new CLI code.
drh [Wed, 19 Nov 2025 19:37:28 +0000 (19:37 +0000)] 
Fix three harmless declaration-after-statement warnings in the new CLI code.

FossilOrigin-Name: b65b29656c835db22557733f4dcfe906bf21a7a3c36266cbbc7e3277f029b901

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

10 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

10 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

10 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

10 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

10 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

12 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

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

FossilOrigin-Name: 93dd0e62b74a0d99803f680f23953e9fa2429074505ba402ca5ed4610ddef8fb

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

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

FossilOrigin-Name: c1e9791fbf9e4c2ca6f9f031ea2c26d8b4bfb4d54850a53853f2b2d9620792ef

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks 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

2 weeks agoHave sqlite3_set_errmsg() return SQLITE_MISUSE if a NULL db handle is passed to it...
dan [Mon, 10 Nov 2025 10:47:29 +0000 (10:47 +0000)] 
Have sqlite3_set_errmsg() return SQLITE_MISUSE if a NULL db handle is passed to it, as documented.

FossilOrigin-Name: 5f5a736f88bc9bc6c9c83d2cbfd74c0b5357d7417d9993d34a78f0b7317ff796

2 weeks agoMerge all the latest trunk fixes, and especially the fix for the ".www"
drh [Mon, 10 Nov 2025 10:46:55 +0000 (10:46 +0000)] 
Merge all the latest trunk fixes, and especially the fix for the ".www"
command in the CLI, into the qrf branch.

FossilOrigin-Name: 07a5523cf27fd7c1d8fbc5cde80cb45fadef49317ca59fec9f8e42b2839c3e19

2 weeks agoReworking of JS internals to support binding of nested C structs (like sqlite3_index_...
stephan [Mon, 10 Nov 2025 07:41:54 +0000 (07:41 +0000)] 
Reworking of JS internals to support binding of nested C structs (like sqlite3_index_constraint and friends) and allow some of the automated JS/C conversions to be plugged in at the struct-binding level, simplifying how struct members, in particular function pointers, can be used from JS.

FossilOrigin-Name: bb4fd5b789cebf2b224c29023fea3e620a86fb36730c36c0d85d9f35880bf643

2 weeks agoFix the ".www" command of the CLI so that it works on unix systems with
drh [Mon, 10 Nov 2025 01:46:06 +0000 (01:46 +0000)] 
Fix the ".www" command of the CLI so that it works on unix systems with
newer web browsers that do not allow access to files in /tmp.

FossilOrigin-Name: 2f918c14bac28c567cc854b3d41dcdd59191a118bb5fdea9373945fe860161f5

2 weeks agoFixes to autoExplain
drh [Mon, 10 Nov 2025 00:18:36 +0000 (00:18 +0000)] 
Fixes to autoExplain

FossilOrigin-Name: 38e4171697057437fc9f70f8734c7f557b91da47804ff10b3d2481802377222f

2 weeks agoEnforce mxRowHeight in columnar layouts. Code clean-up. Minimum column with
drh [Sun, 9 Nov 2025 17:25:23 +0000 (17:25 +0000)] 
Enforce mxRowHeight in columnar layouts.  Code clean-up.  Minimum column with
is 2 if there is wrapping, in case there are double-wide characters.

FossilOrigin-Name: 0ee8fc00af4c82da0d597c65dd3d8590c71ea78d8f4a29653bbb21668c6c530d

2 weeks agoMinor doc typo fix reported in [forum:939d5864df|forum post 939d5864df].
stephan [Sun, 9 Nov 2025 07:11:15 +0000 (07:11 +0000)] 
Minor doc typo fix reported in [forum:939d5864df|forum post 939d5864df].

FossilOrigin-Name: a1f9c977b83fab11c54710070dbedfaea47195050946db74075bdd3ade97a4c8

2 weeks agoCLI shell: ensure that .dump propagates its error code on error. Problem reported...
stephan [Sun, 9 Nov 2025 06:51:32 +0000 (06:51 +0000)] 
CLI shell: ensure that .dump propagates its error code on error. Problem reported in [forum:a4f3873b0a8503cc|forum post a4f3873b0a].

FossilOrigin-Name: 850b92b6347187d702736bf5a574b9b4a49854a33799875f24fc75c50a6bf908