Commit Graph

10014 Commits

Author SHA1 Message Date
dan
0a416b9fd9 Merge trunk with this branch.
FossilOrigin-Name: d7d8d08f849b2caeef4f18244c4b594e4f66506ef00be47ab2dd4b53d3ab98e8
2025-11-11 17:06:24 +00:00
dan
055cc9c9b9 Add further test cases for temp triggers to this branch.
FossilOrigin-Name: c33899c09b7c998b95230678b0c71342b2a270557b8631788eb56c389ece2849
2025-11-11 16:50:31 +00:00
dan
45fe5b35be Merge latest trunk with this branch.
FossilOrigin-Name: 68c8d04c39ce4a9f3534807fa75c6245628b8c69f57a22c5e17906134d5509e9
2025-11-11 14:57:12 +00:00
drh
7f947dbd6c 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
2025-11-11 14:08:50 +00:00
drh
babac214d6 Bug fixes. All tests are now passing.
FossilOrigin-Name: a0fc99a3bdd12f9ac69511c1aea2bd9a3d5de593d44b4a732cfc8f48e0931c76
2025-11-11 00:21:26 +00:00
drh
0c4c0dbc7d Keep explicit NULL values in QRF_STYLE_Json output.
FossilOrigin-Name: cb07f3d441b0b2a3ebdfaa9456891a9c8e33fa07b967532a9edfaf6ff3163cb0
2025-11-10 22:05:42 +00:00
drh
dfeb788b0f Merge all the latest trunk improvements into the qrf branch.
FossilOrigin-Name: 1fc2298edc67cbaf1963ed858a36cab15f670c00779ace6b63bdd266b0dbaaf2
2025-11-10 20:11:36 +00:00
drh
7efded5edc Improved concurrency for "make devtest" by splitting fuzzdata1.db and
fuzzdata2.db into slices for asan and ubsan testing.

FossilOrigin-Name: 2c31176607f02a73cf2626cda2dd0711ae74bdf0b4520d4c84ff299c860e419e
2025-11-10 20:01:39 +00:00
dan
14fcb8252a Avoid dropping RETURNING triggers when the schema is reset while preparing a statement.
FossilOrigin-Name: e26bcef7522a6f6ee8d55fa30e7fe06419566cf4e8c2df0c33c92a4c89f58c05
2025-11-10 17:37:59 +00:00
drh
09f16c5ab6 Add the bTextNull field to sqlite3_qrf_spec. Use QRF to implement "tcl"
mode in the CLI.

FossilOrigin-Name: 2ba92320db3c16c3c91e29ea935ae92da546261f25846d242bd2dd27e0b7e032
2025-11-10 12:32:04 +00:00
dan
4ac766cc05 Have sqlite3_set_errmsg() return SQLITE_MISUSE if a NULL db handle is passed to it, as documented.
FossilOrigin-Name: 5f5a736f88bc9bc6c9c83d2cbfd74c0b5357d7417d9993d34a78f0b7317ff796
2025-11-10 10:47:29 +00:00
drh
e2201e40ce Fixes to autoExplain
FossilOrigin-Name: 38e4171697057437fc9f70f8734c7f557b91da47804ff10b3d2481802377222f
2025-11-10 00:18:36 +00:00
drh
7f28c6d64e 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
2025-11-09 17:25:23 +00:00
drh
3e98ff6b1d Remove about a thousand lines of dead code from shell.c.in.
FossilOrigin-Name: efbcc7decd5347e3460cc3ed62720c8c3932225dfdf92293a990c51895450906
2025-11-08 23:35:57 +00:00
drh
edc34bf866 Name changes. QRF_TEXT_Off becomes QRF_TEXT_Plain. mxTotalWidth becomes
nScreenWidth.

FossilOrigin-Name: 871567e377e976e0bb191d466019d1d4abe126f2da1880f1e25cd92b06a666d1
2025-11-08 22:46:29 +00:00
drh
bfa8c7d370 Improvements to QRF_STYLE_Line. Make it responsive to mxTotalWidth and
mxRowHeight.  Indent subsequent lines appropriately.  Add corresponding
test cases.

FossilOrigin-Name: 23ddc38cf19845a385c8b33002805c3c864ab9b2e36c3d609794444b06d20c89
2025-11-08 18:31:57 +00:00
drh
44aea46a07 Fix minor issues with alignment and quoting. All legacy tests are now
passing.

FossilOrigin-Name: 712b890531d351cf19d57d8cc6dced5cdd2c394d69fd1ace98298d79ddca269a
2025-11-08 17:08:19 +00:00
drh
96e47e16e7 Miscellaneous fixes to the new alignment configurations.
FossilOrigin-Name: 787fb4c2ac80db6552bc7a740c3c3c63c0c8414cb4e7db80d367b4b5512519d0
2025-11-08 15:25:07 +00:00
drh
22d6a48ba7 Separate column width specification from cell alignment.
FossilOrigin-Name: 5dadfd7f41764ddfed39bb49bbde3a54d8f282bb494c9c2abbba37d0995a7f8e
2025-11-08 14:04:29 +00:00
drh
ca111b06f3 Minor changes to fix a few legacy test cases. Snapshot prior to yet another
refactor.

FossilOrigin-Name: b429e7882fd630a490350efa38bfce8686d6727f324a60191337a59d5436828b
2025-11-08 10:48:55 +00:00
drh
6eb5f5d9a7 Rewrite the table layout in QRF. Easier to maintain now. Still a few
shell test failures, but much better after this rewrite.

FossilOrigin-Name: 25838d282c5f7a922988245f373edfe8adbe28e929abce83afcda2b08472e685
2025-11-08 03:20:47 +00:00
dan
1b599c8286 Update this branch with latest trunk changes.
FossilOrigin-Name: 0b849623f855ae6a8150a85249b25aa43109ae063f7b4a42a9c77b2838bf5708
2025-11-07 19:29:10 +00:00
dan
39d132db5b Merge latest trunk changes with this branch.
FossilOrigin-Name: c0571f0010f3a6311fa99cf1b37a8e5ee39a9b8e27313cde5ea4bd1701bf2f93
2025-11-07 19:23:06 +00:00
drh
ec27a2e7e5 Fix some problems. But there is a need to do major surgery on the
table layout algorithm, so it seems good to snapshot before proceeding.

FossilOrigin-Name: 9052991a897ad12ac54476d9a370d1ad18937abc3c3fc11efcb678f21cb5ef69
2025-11-07 19:20:49 +00:00
drh
d2424338b0 Incremental check-in. QRF is working, but there are many test failures
in the shell test modules.

FossilOrigin-Name: de7fc9afc43d4bd5f5995832cd698633e0e7213c190fa044856c9f82512161f9
2025-11-07 17:48:14 +00:00
drh
84c03d6c36 Rename "mxWidth" to "mxColWidth". Add "mxTotalWidth" and "mxLength"
settings and hook them up to the TCL interface, but those settings are
not yet implemented.

FossilOrigin-Name: 3f327e8fbc295b43c79118f8f49f8d2e20c2f3ac96e3b7f996720dab858d8199
2025-11-07 13:11:16 +00:00
drh
b6dcd0ae00 Fix an error-message test case broken by the previous check-in.
FossilOrigin-Name: fb040354901569915389c8c4c1530dfda8b724be7885adfde654e229d3e98eec
2025-11-07 12:15:25 +00:00
drh
10747754d4 Add the JsonLine output style.
FossilOrigin-Name: 7dfba841cfc515ac28401c4eb90ec24e04fd52cddaeae41be3cfa6967dac0eac
2025-11-07 12:12:02 +00:00
drh
099f7f052b Revamp so that Explain and Eqp styles force the statement into the
the appropriate explain-mode for the rendering and restore it afterwards.
Add the new scanstatus styles: Stats, StatsEst, and StatsVm.

FossilOrigin-Name: 128f1149076ef00c567405ea2112be0ae665b12e81672ae5494d82af11633af5
2025-11-06 19:22:34 +00:00
drh
bac6b5eaef More test cases and a bug fix.
FossilOrigin-Name: 9a9c4580772fa35a68b3e27a40fc9bc615144979dfd27b1054538e29a489c024
2025-11-05 22:48:33 +00:00
drh
2e660d30f5 Further testing and bug fixing.
FossilOrigin-Name: d6b1bac15a692a69f3707fca721b57b3b283edb3850efa34ba42b02c3669fc71
2025-11-05 22:33:47 +00:00
drh
33cc175e51 The TCL interface for QRF is now feature complete (at least until I think
of new features to add).  There is still a lot of testing, bug-fixing,
and documentation to be done, however.

FossilOrigin-Name: 633fe4fe584ae14ed6ced1ae137bf96a434a012423d70f0f93876737b0ca075c
2025-11-05 18:27:18 +00:00
drh
b230147671 A few simple test cases added.
FossilOrigin-Name: 7200372ed2424d1ac4c88644e0b17a224539f170b9111ced9c88774edbd75261
2025-11-05 16:29:06 +00:00
drh
9ff8a73ba4 New build product "tclsqlite-ex.c" is the tclsqlite.c file with QRF added.
This is now used whereever tclsqlite.c was used.  Hence QRF is now in the
testfixture and in the tclextension.  The sqlite3 method is "format".  That
method is currently just a non-functional stub.

FossilOrigin-Name: e08d21fe1365176f268f1dcca4048fb5ff043356e5817c8622b4ed9a1a5a58cf
2025-11-05 12:37:42 +00:00
dan
f1c37a357e Add new column "cwd" to the jobs table in testrunner.db. For recording the directory in which the test ran or is running.
FossilOrigin-Name: 334305a469a51ef0d768ba8443d8cab217f45394cc9f720748a489b10703193d
2025-11-03 15:29:51 +00:00
drh
d95fffc9af Adjust the dbstatus2.test module so that it works on 32-bit builds in
addition to 64-bit builds.

FossilOrigin-Name: dcaaa71e750d56afde3e905aaf10729ec95e0ede00522e1b12af6b6345e744ac
2025-11-03 12:36:52 +00:00
drh
4733884eae Update test result output from test/dbstatus2.test module so that it
reports the actual value of nTmpSpill when that value is out of range.

FossilOrigin-Name: 382c8440d7a16eae49fa1644513ae045bfceb072d9b4005963f57f1a57fe94b2
2025-11-03 11:35:13 +00:00
drh
0dfa31d279 Fix the test/speedtest.tcl script so that the CC= command-line option works.
FossilOrigin-Name: 0de0ba878b9ec572d76d47112a0124df9f234fbb7a69c5f5a76ce8c439b11f6f
2025-11-03 10:40:06 +00:00
drh
0c747e1653 Update the test/walthread.test testing script so that it uses a random
database name.

FossilOrigin-Name: ce25a758d4cea1741cb3db6384720f17faef61b352d494ab410a83a41f1721d3
2025-11-01 20:14:43 +00:00
dan
7f70085071 Detect some cases of ambiguous column references in USING clauses that can come up with nested joins.
FossilOrigin-Name: 38c993c8b7137d6d5623d387292639634297c17da11befec9029f12a16a472f8
2025-10-31 16:07:31 +00:00
drh
1c19c06246 Fix the output of ".dump" in the CLI so that the sqlite_sequence table
is created using correct syntax.

FossilOrigin-Name: 4b9f2e1d4485ad3baf9285aa09b468469be929b18cb308f19af471d7aac66076
2025-10-31 11:23:44 +00:00
drh
139ec38ac8 Further improvements the ".dump" command to handle corner cases.
FossilOrigin-Name: cd0c77934ff32050380c2143bba7d4e6c07d5f08187cb5d5e8e7602854d1cda8
2025-10-30 18:52:48 +00:00
drh
c5ff2aa7cf Fix the CLI ".dump" command so that it does not make duplicate
sqlite_sequence table entries as described in
[forum:/forumpost/b1674b56ad|forum thread b1674b56ad].

FossilOrigin-Name: c833f26a6780f919551e50c67d308e96293cec8481899354411d805617481f24
2025-10-30 11:39:49 +00:00
dan
11b6fc93f6 Experimental change to allow triggers in the temp schema to use fully qualified table names in INSERT/UPDATE/DELETE statements.
FossilOrigin-Name: 48e168007ceb1bdc54cf21a8e959a8e0f9ccdc478827db7a7a0518fc7a226401
2025-10-29 20:57:44 +00:00
drh
d443f0a95f Fix a logic error introduced by [cea8bf79e18d55a8] which caused
"0 OR 2" to be evaluated as "2" instead of as "1".  Problem reported at
[forum:/forumpost/d5f32040c5d50d2d|forum post d5f32040c].

FossilOrigin-Name: 095cc4f22e63c98cbb2acabdbcaf02e59e67ec6d3cc219b5f42a714e3d53a264
2025-10-29 20:47:01 +00:00
drh
bc2691d5c1 In the CLI, improved error messages on input errors. Limit the size of a
single SQL statement to a little more than 2GB.

FossilOrigin-Name: 0b50e7e10aae3d57f1cbd38d02be50cfbd2d5148ab4a9be712afd8678787b7bd
2025-10-24 12:32:32 +00:00
drh
d41f5ef7e6 Reduce the maximum size of LIKE and GLOB patterns in the ossfuzz.c test
module to avoid false-positive infinite loop reports from OSS-Fuzz based
on long and complex fuzzer-generated LIKE/GLOB patterns that are not actually
infinite loops, but which do take a long time to resolve.

FossilOrigin-Name: 53edea286b0a38f4f9c7017276f3a826037919144d517f8c89ef0f35b65af5f1
2025-10-19 17:30:07 +00:00
drh
e7cf3fe4c8 Add the test/testloadext.c loadable extension to test the ability to use
the latest APIs using the loadable extension mechanism.

FossilOrigin-Name: a9bd7ed6f77c5e53f9130eac7eb999c662e9158fb229a462d29f18653284d6d0
2025-10-14 17:50:55 +00:00
drh
898ac77f55 Merge all the latest trunk enhancements into the dbstatus-spill branch.
FossilOrigin-Name: 55f2613c1bacddb05902d4d5dac3d2b49b91053e6249dd926bb953c763eafeb0
2025-10-14 11:18:45 +00:00
drh
a8bb50ce95 Fix a bug in concat_ws() in which an initial empty string was treated as if
it was a NULL value.

FossilOrigin-Name: eb2e4e46171c12f59aa5d571eeb310534360b110c3e7bda6eaf68f0e25546264
2025-10-13 12:36:54 +00:00