Commit Graph

29154 Commits

Author SHA1 Message Date
stephan
f154cef8f2 Document the if block at the end of sqlite-check-tcl.
FossilOrigin-Name: 6bfd09408b9a51c0cbdb28f901a79c9774da755294d7eb67d88e4c42c5652830
2024-11-14 12:23:05 +00:00
stephan
3b56698541 configure: avoid performing multiple checks for -lm on behalf of --enable-fts4 and --enable-fts5.
FossilOrigin-Name: 6940caa192fa0cc84dbd24191a940aec96c304c68e60ead8f239e85d093e01e0
2024-11-14 12:09:09 +00:00
drh
104ab7e81f Enhance the vfstrace.c extension to show symbolic names for the various
SHM locks.

FossilOrigin-Name: c0dd7de8f1e8eb745a8beff086d8b40b289c2dd75fe099a86ccc2bd0581f5e9a
2024-11-13 18:23:18 +00:00
drh
26c080a04b Fix a memory leak in the ".dump" command of the CLI that can occur if an
error other than database corruption is seen while trying to query the
database.

FossilOrigin-Name: 2560cc7072c923f534a5de1e15d2b0dd4ac5faf0a8876d9e3bf9804345585444
2024-11-13 18:04:49 +00:00
drh
31c160ab8f Add the test/fork-test.c test program.
FossilOrigin-Name: 0611e2b0cf3f33c28cc9ff6c5da7ebba2033bcbda5b1072a30021a3e1fb4e738
2024-11-13 16:08:02 +00:00
drh
1b37bc0e66 Add the SQLITE_FCNTL_NULL_IO file-control.
FossilOrigin-Name: f0e917fcf51b59f8ccfe5b9341937341d0e6016eb275d6c33dcb10b0b301a9da
2024-11-13 14:58:35 +00:00
drh
92e9fa6fe8 Ensure that the sqlite3_index_info.idxStr string coming back from FTS5
is always zero-terminated, even if the xBestIndex call fails with an
SQLITE_CONSTRAINT error.

FossilOrigin-Name: a4e976a030851357049e672bbc0ff66d9cc152b3d5f8e03fff36a7c6f060a755
2024-11-12 13:37:00 +00:00
drh
7b32f84ebf Clarify the documentation to make it clear that rows inserted by a
CREATE TABLE AS SELECT statement are not counted by sqlite3_count64().
[forum:/forumpost/1e6cde5648|Forum post 1e6cde5648].

FossilOrigin-Name: 5c5982e3937acdcda43d6c5b46a95b82bc1839c3558a4b9ae9022384e0f13f04
2024-11-11 21:11:02 +00:00
dan
0cd2ffffb7 Fix the fts5 trigram tokenizer so that it handles non-nul-terminated strings.
FossilOrigin-Name: 84f4e37178a65e3128ac0240d37ac40df08b4050ab070d10707e35d11dcbeb10
2024-11-11 19:49:26 +00:00
drh
be46f935dc Add the ".dbtotxt" command to the CLI.
FossilOrigin-Name: b43acf5a8cd4a5efbb90b71af7710084f49bb90ffe4f56de168e8c3a6b679124
2024-11-11 19:07:58 +00:00
stephan
074cad3026 Wrap some exceptionally long lines in main.mk. Add option to override LDFLAGS on the sqlite3.dll target. Audit: all targets for which it is hypothetically relevant can now inherit user-supplied LDFLAGS, but only those provided to the configure script, not at make-time, in order to mimic the historical build's restriction in that regard.
FossilOrigin-Name: 073080cae3ea0d12b133d9c9ae98413bb32870a9738c98b89bc345181be81f23
2024-11-11 18:15:50 +00:00
drh
e4d4d73397 Use Win32 APIs to read/write the console in Windows unless the
SQLITE_USE_STDIO_FOR_CONSOLE option is defined.  This is an attempt to get
the build working on MinGW.

FossilOrigin-Name: abfe488ed67e2e3510c230e656ecf203afa549ebd1d1872442f1fadc97d0817e
2024-11-11 17:02:29 +00:00
stephan
d29a369fe2 Doc update to account for [05073350087b].
FossilOrigin-Name: b81976c520fbad0bbdbbb877fe85691bcda25c12cf5597cfe224fb6306cd65b3
2024-11-11 09:53:40 +00:00
stephan
45c2b1804f Rename proj-define-if-opt-truthy to the more accurate, and less verbose, proj-define-for-opt.
FossilOrigin-Name: 05073350087b368312515134bdf9a266eb8289a065f208421fe08aa38b562d4b
2024-11-11 09:37:19 +00:00
dan
a864ac1c5a Fix a case in fts3 where a corrupt database record was not being handled correctly.
FossilOrigin-Name: cbcb53759b9510379e2159d14b73c9746e611df550b0bd05887bd4a480b519a8
2024-11-09 17:54:51 +00:00
stephan
f1b88ec953 Fix a deps problem, introduced in [1bd9de719], which breaks the build on systems where HAVE_TCL=0.
FossilOrigin-Name: 7953a8bdcba7242c98f786283270d7b3f8830058a29f2d810457eef697855325
2024-11-09 14:34:20 +00:00
stephan
e9b04e524b Simplify usage of proj-assert by making the expr prefix implicit. Add an optional description arg to proj-assert, defaulting to the body of the assertion script.
FossilOrigin-Name: ada7b36c37c59ea02e54462b0eb8b93ff6ab45863edfd67b19f1e1a7bb2f97de
2024-11-09 10:23:04 +00:00
stephan
5c792a484d Remove three unused files from autosetup/.
FossilOrigin-Name: 906563a7e07fca81effb31a77ee5d7cdacd4cc6157e16e1139da70c92716869a
2024-11-09 09:19:29 +00:00
stephan
497f84885b Remove an unused lib import from auto.def.
FossilOrigin-Name: 53a71981abf5aaca01e86ff87c3779d7dcc6661c80e1f2bf74515f49993b6a0d
2024-11-09 06:35:09 +00:00
drh
4ddeccfc15 Increase the minimum SQLITE_LENGTH_LIMIT from 1 to 30 to avoid problems doing
simple things like converting strings into integers.  See also
[8fd5b8ec4ab9b555].

FossilOrigin-Name: 6aa01707af4bd96f0f173f9e87f2398be7e6f246f59baa117092849a626b2d61
2024-11-08 20:57:45 +00:00
dan
23cfa0138e Fix an assert() failure in sqlite3recover.c.
FossilOrigin-Name: f52bb19281b189508f5c31305cbd4a5651f3e036a4ee753c64488b0c7e5d2e4d
2024-11-08 20:44:16 +00:00
stephan
4441897daa Remove one dep from .tclenv.sh which is only valid for configure-driven builds, not static makefiles.
FossilOrigin-Name: 22986767da8f086daaa6dc760c15e6aedcc5d2d6033937ac2f112ee5750d7fdb
2024-11-08 14:34:33 +00:00
stephan
a700db9387 Add 'tcl' makefile target which builds all but tclextension (which does not have a well-defined name and dependencies). Improve the deps for .tclenv.sh to avoid getting a stale tclsh when re-configuring with a different --with-tcl(sh).
FossilOrigin-Name: 1bd9de719b0944fdceec32103da3131a7d387820850ab03f652f813d840355b8
2024-11-08 13:37:00 +00:00
stephan
a4093dcc06 Add missing CFLAGS.intree_includes to T.compile.tcl to fix build of tclsqlite3.
FossilOrigin-Name: bb3c6dc126896528328bb9f51a28a1d46d4549e687c93c16f2d164230c6b1684
2024-11-08 08:01:56 +00:00
stephan
62801081f3 More closely emulate the legacy build's handling of LDFLAGS, permitting them to be passed to configure but not to make. We cannot 100% enforce that because main.mk is not filtered by the configure script, so we instead add a level of indirection to make passing of LDFLAGS=... to make a no-op.
FossilOrigin-Name: d1af9f31831dc99a808b916df4d414943f5d56796c8342411ee4a57abfde85e2
2024-11-08 07:37:12 +00:00
stephan
3b306aac6e Support clients passing in LDFLAGS to configure/make, but in a more limited form than the legacy build it (i.e. only to select targets rather than all targets). Rename make-side internal uses of CFLAGS to CFLAGS.env for consistency with the new LDFLAGS.env. See discussion in [forum:5fcbea40f3|forum thread 5fcbea40f3].
FossilOrigin-Name: a5e07e8063ad50f2cf46b6be568717adc9604bd6dbf926a526de43bda2996ad0
2024-11-08 06:22:15 +00:00
stephan
6f95d95015 Disable setting of the SONAME (enabled by [2a2419ef742]), as it's not clear whether blindly setting the SONAME, which now differs from its historical value, will cause more grief than it solves. Add a (disabled) experiment which permits setting (or not) the SONAME to the legacy or current values. This change is up for further change as experimentation proves whether we truly need/want the SONAME. See discussion in/around [forum:0c6fc6f46b2cb3|forum post 0c6fc6f46b2cb3].
FossilOrigin-Name: d931456805e7d5c3379ca68b97a0a1d4ab1eb80c5e90c169cf43fc8239247d25
2024-11-08 05:26:26 +00:00
dan
d42855e404 Fix an OOB write that could occur in fts3 when dealing with corrupt database records.
FossilOrigin-Name: 108863ec7998e0a35569e3c6534b538f00d4ef87fdb316bd6a4a9a7a272bba47
2024-11-07 17:34:53 +00:00
stephan
ee9950d09b Extend the set of --flags which get cleared/unset when using --with-wasi-sdk.
FossilOrigin-Name: 2a2419ef742c9f37c32be04d417337c1fa22503305d2df154fa38b2b69eae943
2024-11-07 16:59:15 +00:00
stephan
6e6820148a Doc touchups in the line-editing feature check code.
FossilOrigin-Name: bb5656bdc905947df205432e108ca6724393061a27028e23bf35b4bf48505d4f
2024-11-07 15:23:54 +00:00
stephan
c7882b975e tcl configuration: --with-tcl=prefix is equivalent to passing the --prefix dir to it. If --with-tcl or --enable-tcl are explicitly passed in and tclConfig.sh is not found, fail fatally. When TCL is either explicitly disabled or default search for it fails non-fatally, be more explicit about which components are not available.
FossilOrigin-Name: c5389d39a90047683e80ae9081d5d10aaa95da00dfc8a133b4a1a6949a11620d
2024-11-07 15:04:15 +00:00
drh
c00d89d599 Further improvements to the ".mode json" output in the CLI.
FossilOrigin-Name: 6201b5707f8c895028f9c08cb4f83d33a16a91bf04ed3830ac51aa763d6b7205
2024-11-07 12:03:53 +00:00
stephan
88e6a942ad Autosetup doc touchups.
FossilOrigin-Name: 574515290058ddfaf39a4221fa0f7a99222c4b040dd455348550816b18492c20
2024-11-07 10:07:20 +00:00
stephan
b4afb2fb2f Extend the list of "truthy" config values to include "true". Related doc updates.
FossilOrigin-Name: 4455718e485a31100ce3eb4ac5aeb7437c667d7994c6d2abfb38ad8bd1976d6e
2024-11-07 09:36:01 +00:00
stephan
4c3139d7ee Add some internal docs to auto.def explaining certain passages.
FossilOrigin-Name: 4749967e1b85675580eda2e92f4463c022e3ff929390a8f5b59f614f3975e158
2024-11-07 08:57:38 +00:00
stephan
00e863c48e Document the purpose of a global auto.def var added in [0d558318172d].
FossilOrigin-Name: f5b6604716826b2057e969a8c0d099325b22eac42f1da65ec367671fc6625639
2024-11-07 08:29:58 +00:00
stephan
d9345f3312 When --with-linenoise refers to the msteveb flavor and jimsh is the TCL used for code generation, enable linenoise in jimsh. Remove some dead auto.def code.
FossilOrigin-Name: 0d558318172dddc8d5c5842625ddf09866ae09cac9cf28731be44db86b5e0fb1
2024-11-07 07:31:25 +00:00
stephan
197fa124d7 Add mention of file-isexec in autosetup/README.md.
FossilOrigin-Name: f469356749b62b3ce4161b40ed105d60867a366a389efa583fe9607a13426803
2024-11-07 06:02:05 +00:00
stephan
968dc2489a Change several 'file exists' checks for tclsh to file-isexec because that checks for .exe extensions on Windows.
FossilOrigin-Name: 052a1b4d7cb43b7f65028c41e9a7a17b533c834d8f620fbc7bc0adddb1fdb843
2024-11-07 06:00:14 +00:00
stephan
347e4833f9 For platforms where tclsh is found but tclConfig.sh is not, set HAVE_TCL to 0. We can't build the TCL components on those. Problem reported in [forum:5106aee3a8|forum post 5106aee3a8].
FossilOrigin-Name: 04d2576b2e516fc5f5ba719d6bb01d25fd3b06b1c2d26acbec32bcdd65e9a01c
2024-11-07 05:26:09 +00:00
drh
19d87fa848 Fix an FTS3 corruption test case that depends on the specific pseudo-random
byte sequence generated by sqlite3_randomness(), which is different on
big-endian platforms than it is on little-endian platforms.

FossilOrigin-Name: 6216bfcb74273b7893735e265d3f04d1362fa625cd60cebccb866ce7d6c50e01
2024-11-06 19:19:49 +00:00
stephan
61cf538d27 Re-phrase some (#if !SQLITE_CORE) to (#ifndef SQLITE_CORE), as discussed in forum:cea40371c5e34b09 | for post cea40371c5e34b09].
FossilOrigin-Name: 5495b12569c318d5020b4b5a625a392ef8e777b81c0200624fbbc2a6b5eddef9
2024-11-06 12:58:31 +00:00
stephan
9243eb4ab8 Elaborate on how autosetup selects a tclsh to use.
FossilOrigin-Name: d3887895a33742fb1fc97235cf897d295b237a9fb5a84031826f9c1018106f18
2024-11-06 12:13:04 +00:00
drh
7e3e031182 Fix typo in the LICENSE.md file.
FossilOrigin-Name: 0588cc5c2fad980aa67402f4fe959a499d711ff23903a521af1b1abc4586c802
2024-11-06 10:09:21 +00:00
stephan
598d0d1498 Minor doc tweaks.
FossilOrigin-Name: 2919a61bd4f8cb4f53462d4807cbc04ac5f71dd437cd693538754cf3f17d00cc
2024-11-06 08:29:47 +00:00
stephan
6da414ef41 When constructing the auto-reconfigure commands, only quote args which look like they need it. Minor doc updates.
FossilOrigin-Name: d4fbd34f7a4b0e6179cb06114d148fbc5d30b8dc8db0b764f4347dd50ff591ba
2024-11-06 07:20:20 +00:00
stephan
ebb3e03b6d Minor doc tweaks and typo fixes.
FossilOrigin-Name: 406d9122b75990722ab79fdf42d4528d670645d8f778ca0b5a2a35fa1dc106c4
2024-11-06 06:44:35 +00:00
stephan
2e29bcd542 Split the motivation of the makefile var naming convention into its doc own section.
FossilOrigin-Name: bf42b93cc7a4f8de2308fa4e5a798a62797bc95d95e4b0bd06035c74413fa828
2024-11-06 06:06:43 +00:00
stephan
199925a352 Add a section to autosetup/README.md describing the motivations for the more glaring design decisions.
FossilOrigin-Name: c0940a822a63bff74585bd37401eca92f74ddf9fe95748d2474039ee9b2bd9b6
2024-11-06 05:54:27 +00:00
stephan
4c2f7e57a2 Add autosetup/README.md - maintenance-related docs for SQLite developers (e.g. how to update autosetup). Start marking up the proj.tcl APIs with autosetup's doc markup so that they appear in the ./configure --reference output.
FossilOrigin-Name: aa6213767f0d7e63c753e33aadb95cbeb8e522c22f2fe1bbfa4df66bea6e3380
2024-11-06 04:38:05 +00:00