Commit Graph

29154 Commits

Author SHA1 Message Date
stephan
7db8d195c3 ./configure now emits config-defs.json, a JSON-formatted counterpart of the DEFS=... info which the pre-built autotools bundles emit.
FossilOrigin-Name: 800b083c3a55a990bd5b7fd587e24144b0084a394f9cf8160c3aa0a6880f8053
2024-10-25 03:18:11 +00:00
drh
8ce6d66986 The "WITHOUT_JIMSH=1" option on the nmake command-line forces the use of
standard TCL for building, instead of jimsh0.

FossilOrigin-Name: 9f861f66e238b62e04d640ee98bac86b9b532a55d62c92ae0154bd67ee01ec75
2024-10-24 19:56:42 +00:00
drh
9bcfb2b694 Basic builds now appear to work using jimsh0 on Windows.
FossilOrigin-Name: d8f5193970401b763a94a1d0403bed4337c9fb1f087772b72fb46b9e0bde1c0d
2024-10-24 19:17:25 +00:00
drh
a734793b2f Fix a bug in jimsh0.c for when it is compiled using MSVC.
FossilOrigin-Name: f7def0be742fad9863f1eba11d0c2f1fa739ad1262e67d24380698e3948cedb7
2024-10-24 17:16:38 +00:00
stephan
7796ee07c4 Add missing ZERO_ARGUMENT_GENERATE_SERIES checks to ext/misc/series.c, as reported via support mail.
FossilOrigin-Name: 5a8e3915eec06dbec7e32d1b87c6a6d5eb618d9d1d9bac13f6e1e7f22bbf8180
2024-10-24 15:58:37 +00:00
stephan
ed959dba7d Add missing ZERO_ARGUMENT_GENERATE_SERIES checks to ext/misc/series.c, as reported via support mail.
FossilOrigin-Name: cd82e4c0f5f8ff16468b909d84dd5545c0456f624db61a4d112467a7cafed2fc
2024-10-24 15:57:29 +00:00
drh
ae5ef1e80f Fix the new tool/cp.tcl so that it works with older TCL versions, such as
jimtcl.

FossilOrigin-Name: 61f18c96183867fe9d0fb30b8b71c0253f40503e32c8a4202196fb6418f2f46e
2024-10-24 15:57:21 +00:00
drh
4f237f8def Fix harmless compiler warnings. One of the warnings was code that
deliberately committed memory errors to test the systems ability to cope.
But compilers don't allow that any more, so we'll have to leave that
capability untested.

FossilOrigin-Name: 7e7b3b2edbb580c9ac14f21e5caa8f2f6b171d9a7ce6cb336dc0c8db76da7e8c
2024-10-24 15:36:29 +00:00
drh
ae07b98a3c Add the tool/cp.tcl script and use it to simplify Makefile.msc.
FossilOrigin-Name: b7db2146a89587075d268b524ffc83d147f1d9d3e428c6d72bb7f3b8717c7954
2024-10-24 15:14:55 +00:00
stephan
72ef506925 Back out [bd66222721] because it causes conflicts with test runs, apparently due to .o files being built with different flags. This means that the CLI shell currently does not honor --disable-amalgamation.
FossilOrigin-Name: b063317352e1360293787909cafe46dbfda68a75a89c6559bac69ad160d5ec43
2024-10-24 14:33:11 +00:00
drh
542d1c923e Tweaks to help make jimsh0 usable to build using nmake. Does not quite work
yet, but getting closer.

FossilOrigin-Name: e911303b8d180897c256e5de6edaa6b99239f914b84de2d08b3410650cd52c6d
2024-10-24 13:27:25 +00:00
stephan
e3565d9424 Minor makefile tweaks to account for customizations via a custom hand-built makefile.
FossilOrigin-Name: 7f92e820e675ea5d54284c534d44ec4f7f242b30920a5f84c020b93f2e7e969d
2024-10-24 12:57:45 +00:00
drh
936fa83402 Fix jimsh0.c so that it compiles using MSVC: "cl jimsh0.c"
FossilOrigin-Name: f531825d4e16502ac8fa496fba51ea735232e2988aa9ddd0f232825f6ec2a9a2
2024-10-24 12:18:53 +00:00
dan
8cfc6a7aed Fix an inconsistency in the way SQLITE_CORE is used in fts3.c.
FossilOrigin-Name: d4816e534a22250bd18509b07edca205c7ad6a8b3ecbbf5336a517ac19f78f55
2024-10-24 12:06:04 +00:00
stephan
2ba8b9566f Fix the sqlite3(.EXE) build to honor --disable-amalgamation.
FossilOrigin-Name: bd66222721ad06e99c1b66a3a0fbde06532507aa067165f47fa5d6c41ba630e6
2024-10-24 12:03:02 +00:00
drh
b79997a7c0 Merge all the latest trunk enhancements into the autosetup branch.
FossilOrigin-Name: d0554ac46866b5ad467b88de6fae06695fd81e7fdf38157702a395f7282cbe9d
2024-10-24 11:20:25 +00:00
drh
3db85bf0d3 Update the version number for the TEA extension.
FossilOrigin-Name: 56353bcffa1bad425b1645b09e7192aa418d6b989df5958e0a770226bfc2ce63
2024-10-24 11:11:31 +00:00
stephan
79d3714f24 Beginnings of rephrasing #if SQLITE_CORE to #ifdef/ifndef for consistency, as discussed in [forum:cea40371c5e34b09 | forum post cea40371c5e34b09].
FossilOrigin-Name: 58d91abf0c5a7712f27783640ef628681de18be5007020d6d8b362dd5a392eda
2024-10-24 07:44:13 +00:00
stephan
4cd85bda4a Various build cleanups centered around straightening out various uses of CFLAGS and its cousins. Teach Makefile.linux-generic to figure out the TOP dir on its own (a GNU Make-ism, but it's a Linux-specific makefile).
FossilOrigin-Name: 58a0f7e79ce913b432dfd4db018e5a92efa8a6bd8a50bd78ab705ceac0322e9c
2024-10-24 07:31:39 +00:00
stephan
30b20563e4 More potentially-controversial makefile symbol renaming. This is simply more readable to my eyes.
FossilOrigin-Name: 6d4d1d5fefb82ec7458efc2e93c933d9dc415dfa06fa46ff4725c30fc920ca5a
2024-10-24 05:33:30 +00:00
stephan
b3cff449f9 Bump version number to 3.48.0 (in this branch only - in trunk, doing so requires a specific autoconf version) and rename the RELEASE and VERSION makefile symbols for clarity's sake.
FossilOrigin-Name: 4193d90f2158e25fe25f9bcf579ae38a6e0ab6c26f52cd07a777d67b87107632
2024-10-24 05:03:20 +00:00
stephan
caf8c28420 Potentially controversial/unconventional makefile symbol renamings and docs explaining them.
FossilOrigin-Name: 7eceb7539dcce16104a93ad0ca1f755f23621751878cc4b01465e61333795b72
2024-10-24 04:56:44 +00:00
stephan
ce236e031e Generic build cleanups.
FossilOrigin-Name: be7b32a77f58ae3eb15cb828385035e63236b7e6c0669f90f2321f0509f0de1b
2024-10-24 04:34:39 +00:00
stephan
e74c738e55 Get Makefile.linux-generic (formerly Makefile.linux-gcc) working with jimsh in out-of-tree builds. Pass on -DHAVE_READLINE=1 to the sqlite3 shell if configure detects it.
FossilOrigin-Name: a555ff6dbc2ded5a9c65c8ef483f3197298848a580dda25ba0b721ba13167ad4
2024-10-24 03:50:40 +00:00
stephan
8c97ad8834 General make cleanups. Start adding a sanity-check mechanism to main.mk which does basic validation of the vars it expects to be set by the file which includes it. Get Makefile.linux-gcc working for the core-most rules.
FossilOrigin-Name: 85b2c73ccb85d7f5830a6fac692b380c5c79e7a54ee3fc6fc37343fa23816ef8
2024-10-24 03:14:40 +00:00
stephan
4dadb531b0 Rename some build vars for legibility. Fix hwaci-make-from-dot-in when the input file list is multi-line.
FossilOrigin-Name: fdb584421578cae825365d457cd533721839e3503f3744c77832c5925815b537
2024-10-24 01:26:50 +00:00
stephan
e615b73040 Fix out-of-tree builds configured with --disable-amalgamation.
FossilOrigin-Name: 182dac1c46f8ada2e1f3abd4959ac72f0ecfd451b41fbe699f5077f338ae7d62
2024-10-24 00:02:44 +00:00
stephan
6d288e2408 Remove unused configure check for clang-18.
FossilOrigin-Name: d73ac7286aba8e8f9d1236dd06f6055bc3026879ff15efb151cc54175d02e315
2024-10-23 17:40:07 +00:00
stephan
18f6445aea Remove three autotools files which are not needed in the autosetup port.
FossilOrigin-Name: fc20861443ea52a058f556fdf1ddf03a41c538e3b97ff663833e422a50e38d66
2024-10-23 17:17:16 +00:00
stephan
8d69bd2a20 Fix a #define typo in jimsh0.c, eliminating the need to explicitly pass -DJIM_COMPAT when building it. This fix has since made its way upstream.
FossilOrigin-Name: 9b105abf6fb6425d223ab9319f539b9d0cc2df488e0c23c5070853ba4778ebee
2024-10-23 16:59:12 +00:00
stephan
a7d3d40e06 After compiling jimsh, run sanity tests on it to ensure that it is built with -DJIM_COMPAT and one of (-DHAVE_REALPATH, -DHAVE__FULLPATH).
FossilOrigin-Name: ea6a14a6e64c0ed2306b9b3048132659094259b95b49a9572f7178c26b28f93a
2024-10-23 16:46:46 +00:00
stephan
519fc4f8c2 Work around a minor JimTCL regexp incompatibility in tool/vdbe-compress.tcl. Summary: it thinks that backslash-escaped octal values are back-references, which it does not like.
FossilOrigin-Name: aeac23359bb681c0c86c55c83ab9c16973822f6bc4e1a11959102b062333e358
2024-10-23 16:03:51 +00:00
stephan
264c691863 Remove the configure-script VERSION check from tool/srctree-check.tcl, as it's not relevant in the autosetup build.
FossilOrigin-Name: 6c5826d7522eade0f5682367637f45b0b64a7cced3cd7d643a30fb9ab0acd2a9
2024-10-23 15:13:43 +00:00
stephan
284e70b3a1 Add missing export of LDFLAGS_DLOPEN to Makefile.in.
FossilOrigin-Name: d18af84bf76db16513791b43850c41dbb5a83c435b8d3e93afaa8c2920460ac7
2024-10-23 15:05:08 +00:00
drh
deb5ad6297 Reorder conditions in sqlite3PagerDirectReadOk() for coverage.
FossilOrigin-Name: da9124fee28c155c4d1cc0d3949eb7b588a7236c12883a010af7909ad8e534ef
2024-10-23 11:33:56 +00:00
drh
98772d6e75 Fix harmless compiler warnings in wherecode.c. One such warning was
identified by [forum:/forumpost/721675f007|forum post 721675f007] and the
other was found by tool/warnings.sh.

FossilOrigin-Name: 987b96aa636c1801f87d3e1c75d34d45c5b6f437bcc6d150298675447ed16b5d
2024-10-23 11:06:56 +00:00
drh
2c264ad060 Add two new #include statements to the composite "fts5.c" file that
is constructed as part of the build process.  These #includes are no-ops
in the SQLite amalgamation (and are commented out automatically by the
amalgamation builder) but are needed if the FTS5 extension is built
separately, it seems.
[https://bugzilla.mozilla.org/show_bug.cgi?id=1926321#c3|Enhancement request].

FossilOrigin-Name: 1bf8daeb24142044e1b5d4b205317c42353004643fadb6b34f9ae6bfa4e3a6bc
2024-10-23 10:36:02 +00:00
stephan
8a6ddc551e Another fix for autosetup/autosetup-find-tclsh for the case where a tclsh is found on the system.
FossilOrigin-Name: 19d78fcef469a15487953ce2d227746ad83c0360fdc42cd4b6df6a2bc5ebb8ae
2024-10-23 02:36:50 +00:00
stephan
5d6c11b766 Latest autosetup/autosetup-find-tclsh from [https://github.com/msteveb/autosetup/issues/67 | autosetup ticket #67].
FossilOrigin-Name: 0e33f6cd48cb844331e66bfcfd93f83671380edef70b1e6684c09a7d4671eb17
2024-10-23 02:22:57 +00:00
stephan
55fca9585c Reorder some auto.def code to avoid breaking --help.
FossilOrigin-Name: 151d7dfc8da64932f624528ed55764df6408a578bddc741b3dbf2f14567a0d71
2024-10-23 02:17:46 +00:00
stephan
fdcd599992 Minor cleanups in the --with-wasi-sdk bits.
FossilOrigin-Name: d952c17981073cb0158b392edd9b0818dfba2456ab9997d360af56774c9f4216
2024-10-23 02:11:52 +00:00
stephan
54e1dff24b Get auto.def handling the case that no tclsh is installed in a default location. If not, use jimsh if we can find realpath(), else bail out.
FossilOrigin-Name: 359741bc7624006014d73c4cf5cdd29fa38c33a446ed04b46032e5d3ca18d13c
2024-10-23 01:59:34 +00:00
stephan
591123eea9 Fix /dev/null and stderr redirection ordering in autosetup/autosetup-find-tclsh so that the extraneous strlcpy()/snprintf()/rand() warning output from ld on OpenBSD does not break detection of jimsh0.
FossilOrigin-Name: cd447e50d1b31e7539e4a8b5dc2a88c5a6a3814a28718b5829167b830dfd0edd
2024-10-23 01:33:15 +00:00
stephan
198b72cfe8 Use pkg-config for readline detection, if available. Unrelated minor tcl cleanups.
FossilOrigin-Name: 3a41ac08a443f96c3f34432f5034d2d12f03913f2a1db19d9f133b365b39ad20
2024-10-23 01:18:16 +00:00
dan
3dbddc5507 Changes to EXPLAIN QUERY PLAN to identify covering index plan that use indexes on expressions.
FossilOrigin-Name: 29fb4919b6118b3b9ae411ec2ed5b59db7fae281909501c5fa238221ba635db5
2024-10-22 20:16:41 +00:00
drh
f896e2bd5b Add the "halt" command to testrunner.tcl
FossilOrigin-Name: 2cc25d5dbbc729f3b6deb8c6a45b975c535b4d20ad240e4ec0c85b3733a170ed
2024-10-22 20:09:18 +00:00
drh
653eb471c3 Add the SQLITE_IOCAP_SUBPAGE_READ bit to the possible returns values
from xDeviceCharacteristics method of the system-IO abstract class.  The
direct-overflow-read optimization is disabled for any VFS that does not
set this bit.  The bit is set for standard VFSes.

FossilOrigin-Name: 6e7d498cda1d8fa76f3efac0ee0540dd8241db75e85b863097cab2ed530aabb0
2024-10-22 19:33:20 +00:00
drh
96501c89d5 Rename to SQLITE_IOCAP_SUBPAGE_READ.
FossilOrigin-Name: dd446ef1816f4e95ce29de0b3841dd0a6c983646fd2dd271c2db8f3263478164
2024-10-22 18:26:03 +00:00
drh
c8284c766a Add the SQLITE_IOCAP_BYPASS device characteristic. Do not allow the
SQLITE_DIRECT_OVERFLOW_READ optimization if that capability is missing.

FossilOrigin-Name: f50ae00ce9ff572e6bd5e2788602ba356383526ab7289622a32fbf52926c6df0
2024-10-22 18:00:26 +00:00
stephan
fa8a7f88ff Minor build docs and cleanups.
FossilOrigin-Name: 0eb96ea2d153c0f7bd9743b759849c95b3e9f1e6e4a9cdb30c26aa2ca43c1e14
2024-10-22 17:57:22 +00:00
drh
76e48f4d66 Do not typedef Tcl_Size if it is already #defined.
FossilOrigin-Name: 53491688cf622ca317b3ff56156e601c2bdfffc94e4fe471ca82d5ba1d9e875f
2024-10-22 16:19:14 +00:00
stephan
4f72770b34 Minor cleanups to how configure generates tool/emcc.sh.
FossilOrigin-Name: 4484b4623684b09df018f85d95a2b2894a13f38013902831be20a263db605001
2024-10-22 13:02:48 +00:00
stephan
6ac6bedc80 Teach ext/wasm/GNUmakefile to use tool/emcc.sh and fix a syntax error in tool/emcc.sh.in. Work around a JimTCL incompatibility in tool/mkshellc.tcl.
FossilOrigin-Name: 24e0f6ecc67615a2a8c2df08aa47a782cf692fb1a5a59246eab83c0232e78edc
2024-10-22 12:56:00 +00:00
drh
8f90c66407 Further changes to sqlite3_rsync.c to work around Windows issues.
FossilOrigin-Name: e2bd3219d9f7bab377ebcfa9a737ca59899c68dad1e3d1d16347bbfdd25652ee
2024-10-22 10:29:13 +00:00
drh
49f293ba58 Set I/O mode to binary in Windows in sqlite3_rsync.
FossilOrigin-Name: 67175287440cf363df01bed2464122c3b686a82ea82aeecd3f45fe90c359495c
2024-10-22 09:43:27 +00:00
stephan
1e38a9cc1a After discussing [4d4423df8d14] with Steve Bennett, do not prepend $prefix/bin to the search path for binaries, as that path is commonly used for cross-compiled targets and we want binaries which will run on the build host.
FossilOrigin-Name: f2008a7d797263de25eaed60d4b6bd5c87cdb917bb92cfc8700f91e6416d744c
2024-10-22 03:56:21 +00:00
stephan
894bd83f52 Touch configure-generated files at configure-time even if autosetup does not update them because their contents would not be changed. Works around wonky deps causing too-frequent rebuilds.
FossilOrigin-Name: 339b48af1728f6acb4c3a02f84bd432466dcc728d3d01f9728e82f3c6aedb002
2024-10-22 03:33:11 +00:00
stephan
f4ab0ad8ee Rename hwaci-error to the more descriptive hwaci-fatal. Use autosetup's file-isexec instead of [file executable] for portability. Remove the binary file lookup cache - unnecessary complexity. When searching for tools like tclsh, check under $prefix/bin before checking the $PATH. This seems like the right thing to do, but the fact that autosetup's file-search API's do not do that by default leaves some room for doubt about the wisdom of this change.
FossilOrigin-Name: 4d4423df8d14fb683bb89bebeac4b108a40847259a116fcb634b9e6594907026
2024-10-22 03:12:11 +00:00
drh
0d7ede8d1c In testrunner.tcl: Better estimates for ETC (Estimated Time to Completion).
Show the ETC even for the single-line status reports.

FossilOrigin-Name: 2a2f5f4e378338951cc2030ffbacd678e6a6eab142e39ee632c61be42345b092
2024-10-21 22:45:59 +00:00
stephan
31465666ff Bring checksymbols target up to date and add a TODO based on a feature request from the forum.
FossilOrigin-Name: c00a03256b3f06411f93e690f875e9bc59a750aeea3ecf84bf8c8bec7c08b8ae
2024-10-21 22:15:04 +00:00
stephan
e6c2759acb Add sqlite3rebaser_... to the API symbols accepted by the 'checksymbols' makefile target.
FossilOrigin-Name: 0284590f212b2d6ac6516e60350e924a1c29602e8ac8b997d0a5fa488a2dc9c1
2024-10-21 21:53:08 +00:00
stephan
744d986d17 Resolve two build FIXMEs.
FossilOrigin-Name: 4de51c165ca4d0ad66f5dd7aa16fc82c673c6791b65990339134fb26b858ec33
2024-10-21 21:32:58 +00:00
stephan
7968c38540 Get most of the numerous misc tool binaries building.
FossilOrigin-Name: fa74cbb40c0f2e0135ac97fc4fa899b2ab7973f925f154e8e18c85661d60e17f
2024-10-21 21:22:18 +00:00
stephan
ad8e79ce53 Simplify how the targets which may or may not be enabled, depending on config flags, are formulated in main.mk.
FossilOrigin-Name: 7bea793ce46ab5c41b242c5e69b4f9bd8536a9b106e8c39f7ac002451d5db6ea
2024-10-21 20:12:03 +00:00
stephan
5bae363b99 More build doc tweaks and get ./startup building.
FossilOrigin-Name: cee285029c7225a2457062eb2b4ea7c6a17a3a5ba5fb776ebbb4ea8be62b9fff
2024-10-21 19:51:32 +00:00
stephan
b124098e51 Start moving most Makefile.in docs over to main.mk. Fix compilation of tclsqlite.c.
FossilOrigin-Name: 5b154e08ab5e8a8fd1ac1b28debd46824ef55b533a60ca5711c55b5a59a871cd
2024-10-21 17:50:55 +00:00
drh
f5fb820c0f Version 3.47.0
FossilOrigin-Name: 03a9703e27c44437c39363d0baf82db4ebc94538a0f28411c85dda156f82636e
2024-10-21 16:30:22 +00:00
stephan
59ac8f4c7f Add docs introducing how to define and use autosetup configure flags. Use -DJIM_COMPAT when building jimsh to force its expr command to be syntax-compatible with canonical TCL.
FossilOrigin-Name: a6a275de3d975fdf7432d71a915b40426a976725ebd81a178b5e80d14cf3a2df
2024-10-21 16:06:49 +00:00
dan
e2f294a1e5 Add a case to testrunner.tcl so that mdevtest can run on openbsd.
FossilOrigin-Name: e904b37fb2621e6bd5e761f3ecb75adb34350f2d1d7b229e655e74bc6a2f5321
2024-10-21 14:24:27 +00:00
stephan
d54bae947d Merge trunk into autosetup branch.
FossilOrigin-Name: 347a50e66fa17bba997f6cbaa5bd693d029df488e54c24f7e4db47b65e84ce81
2024-10-21 13:11:43 +00:00
dan
32d255851e Avoid using LIKE in sqlite3expert.c, in case "PRAGMA case_sensitive_like" has been used or the "like" UDF replaced by something unexpected.
FossilOrigin-Name: 9f642b3dbc8febfacad97076030f44e9b40067e27222f2bcb84813c5765d3d2a
2024-10-21 10:47:24 +00:00
dan
b74c7880d6 Fix another problem with ".expert" and virtual tables. [forum:/forumpost/49d6a19ec|Forum post 49d6a19ec].
FossilOrigin-Name: 7a7162293c8fdb0078fe56948d697703539dd23273b2072990d4391c761e6ae2
2024-10-20 07:19:38 +00:00
stephan
a3d219a794 Build doc touchups.
FossilOrigin-Name: 109d441bf1bcdbc01d1f3f2aa145039539fc5aad02f91fc987a0c3702e21809d
2024-10-20 02:47:56 +00:00
stephan
84f952ba8f A possible fix for some as-yet-unused configure code which looks for a module loader.
FossilOrigin-Name: c6c799a54b3fad2f8c2b73b0a88f64dda38736a283bbf4dd286ac9dd6d6bf153
2024-10-20 02:35:25 +00:00
stephan
ec5e611935 Cosmetic tweaks to auto.def.
FossilOrigin-Name: 476d2407e52ebf66e18f4f5f70c7c2a37bb4d253969c23e1e75d4cb0460a93e0
2024-10-20 01:41:36 +00:00
stephan
857bcb6035 Minor doc updates.
FossilOrigin-Name: 6578a8d59e351182ee16a1f4e4b2c88a042a92dd8b32049947aa0436464b8588
2024-10-20 01:34:13 +00:00
stephan
8bdece9034 Do not check for Emscripten when doing a --with-wasi-sdk build.
FossilOrigin-Name: 111cff2cf38886ccec11b45db8b891ec84e24d0b61d413b35fd474b51003e8f2
2024-10-20 01:14:54 +00:00
stephan
f9c73ef7c5 Generic build cleanups and reorgs.
FossilOrigin-Name: 365a3d71cf9e0be11e7b3e90b6500142619102d8321c1d6f8111f37117a57929
2024-10-20 01:09:51 +00:00
stephan
72c5b9bf0e Add sqlite3_rsync to the docs at the top of mktoolzip.tcl. No code changes.
FossilOrigin-Name: 10f5c4a2fce8a9ea9b1533cabbaf4ca8549e72950d5c460c0f4501a9fc50e3e8
2024-10-19 22:45:50 +00:00
stephan
003d304c9b More build cleanups and get it working with BSD make (which apparently does not support $< and behaves slightly differently than gmake with X?=Y).
FossilOrigin-Name: dcf4fc78fb2813d37eb56c358009f1e5225f28a0c85c710c8127db330efaf319
2024-10-19 20:53:46 +00:00
stephan
25557128fe Move most of the makefile code into the static main.mk.
FossilOrigin-Name: 09905ed094f7102dbb4fc81b059452c50b48b0f3a2bd9736bed364b0639d89d7
2024-10-19 20:26:17 +00:00
stephan
abf470d7a3 Factor out all autosetup-processed @if/@else blocks from Makefile.in in prep for moving most of the makefile code into main.mk (which has, so far, been completely overlooked in this port but will now become the main basis for the static parts of the build). The idea is that all build configuration goes into a platform-dependent makefile which then includes main.mk.
FossilOrigin-Name: 707e0f5857d58ec8b457270f988126b1dd0f01b5a3445a43ff7b5429324b1b3d
2024-10-19 18:31:47 +00:00
stephan
816f4b9cc1 Generic build cleanups.
FossilOrigin-Name: 510afccf02dc9c3e3b928c64c34d10bee66a2343ecec6e24c4770cb0f139cd65
2024-10-19 16:58:17 +00:00
stephan
a505d89bbe Merge trunk into autosetup branch.
FossilOrigin-Name: 2923a8924c92f62d07cb130462a8e6f4662837bad1a02bda53e630b64c692f60
2024-10-19 13:51:23 +00:00
stephan
6d8ec2aed4 Get tool-zip target, and its prerequisites, building.
FossilOrigin-Name: 38cc5db3a8f3079c9be18a9939dae9ba8f4411d4c2361369d697d32f536fc3a4
2024-10-19 13:44:16 +00:00
stephan
885fad890c Add missing $(TEXE) suffixes in the tool-zip makefile target.
FossilOrigin-Name: 5a594dbcd533aa1e37acea1702db993672c3c0e621add9ea26a497c52037617f
2024-10-19 13:38:51 +00:00
drh
4da761773e Move the #include of hwtime.h from the bottom of util.c to the top of
vdbe.c so that it will be available when needed, even for non-amalgamation
builds.

FossilOrigin-Name: 5f23036a87f443c82fa7fd48fdac16a31128bb9288b71f97228c29bcfeb632fb
2024-10-19 13:20:34 +00:00
stephan
7abd86c4b8 Get more of the test/utility targets building.
FossilOrigin-Name: 24c81c6c52603c217134c233190499086240211763736aa10cb6d0be074e68a5
2024-10-19 13:19:05 +00:00
stephan
49de624e41 Work around a JimTCL regsub incompatibility in mkccode.tcl.
FossilOrigin-Name: c2e5dd791cce3ec4f1f009e945b8c66e8c5e01ae25077f345389f04e3c004ecf
2024-10-19 13:18:56 +00:00
stephan
a1e6fbebdf Get the spell-checking targets working. Rename some symbols.
FossilOrigin-Name: e389ef9c14f2421fe8cad09a8539e6a3215c96da61af790b144fccbd8bf1ca12
2024-10-19 12:47:06 +00:00
stephan
624cb96f54 An assortment of comment typo fixes discovered by aspell. Add several new words to tool/custom.txt. No code changes.
FossilOrigin-Name: 59b76a99e4a28f4cc8c4f9f39ff6e039c4d29cb7b44183f1902b5792638656d2
2024-10-19 12:39:06 +00:00
drh
afb88c5296 Remove unnecessary VACUUMs from the previous check-in to sqlite3_rsync.
FossilOrigin-Name: ad8d4812420e6a5f1cd5c26d2ed07b76e0e3e94596bae4ca59b667a4099bd1cc
2024-10-19 11:02:24 +00:00
stephan
b08f1d5d97 Get mptest(er) building.
FossilOrigin-Name: f740f6a4447543751800465ddfa11c9e3c89fb7054a9dfb5450938885b8f9633
2024-10-19 00:49:01 +00:00
drh
78b6c17faa Fix the sqlite3_rsync utility so that it is able to synchronize a database
using a UTF16 text encoding.
[forum:/forumpost/e055d50821|Forum post e055d50821].

FossilOrigin-Name: 981347009c4baa9f16d60091d37e11b05a7fc1c62ae262c4de596b584d6a491a
2024-10-19 00:16:23 +00:00
stephan
a525d635a9 Minor doc cleanups in SQLTester.mjs and confirm that the tests pass with both OPFS VFSes.
FossilOrigin-Name: ac747d57c2a26b47644bca2a9b191b09f5180f6872dce9c3261c370a18c848a2
2024-10-18 23:54:23 +00:00
stephan
23caead6cb Fix three bugs in SQLTester.mjs which caused --tableresult tests, escaping of SQL values to incorrectly fail, and the --column-names setting to not be reset between tests.
FossilOrigin-Name: 779368dd9b8bb20890b06229c4c3c3b5d153ee88d1af472799515cdc599c870a
2024-10-18 23:36:08 +00:00
stephan
b94228a119 Fix a var reference typo in SQLTester.mjs.
FossilOrigin-Name: 31179fa78e47cafae49df35f28e5c4b01654665d54ee60d059545ce2d97a39a2
2024-10-18 23:10:41 +00:00
stephan
d11a3fd916 Remove the unused dbfuzz2-asan/msan makefile targets. Fix a comment typo in a makefile.
FossilOrigin-Name: 07843ac245661e8b8e086ad9d36c60bacf11784e9c56482593691fb97732f04f
2024-10-18 16:50:29 +00:00
stephan
83afc4c2b2 Remove the problematic dbfuzz2-asan/msan targets, which Richard says are not used anymore.
FossilOrigin-Name: 503ce205a1efe0d52b184b1b6a23b4b6b5adb7acf6f4617249a5fa1d81e523ef
2024-10-18 16:47:54 +00:00
stephan
20755cef7d Get most of the fuzzing-related apps building, sans dbuzz2-asan/msan, both of which refuse to link with clang v18 because it's trying to use -lstdc++ despite the app being only C.
FossilOrigin-Name: 3e843452927aaea152eab60213337912c34966e2c77d3cfd50d2ee9eb77c6796
2024-10-18 16:39:17 +00:00
stephan
90675da34a Remove a not-strictly-necessary 'undefine' invocation from ext/wasm/GNUmakefile, as it is not compatible with too-old versions of gmake. Resolves the problem reported in [forum:e57932e3ccdc2c9c | forum post e57932e3ccdc2c9c].
FossilOrigin-Name: a31a94644113c226a06316a3f95fb38b605821f1c123e2cda06ba90bfcacf59f
2024-10-18 12:31:21 +00:00
drh
f9a02e166a Minor enhancements to the compile-for-windows.md document.
FossilOrigin-Name: 5f0cc7f26453faaea20a7bb0a1bcbab381a9bae7a81e099bb27f4b05fac1cd6c
2024-10-18 10:51:43 +00:00
drh
d8712c6c25 Fix typo in the README.txt for the amalgamation autoconf tarball.
FossilOrigin-Name: 62d24a69fe9cf6c07aa7e554f54aa7874b90e64c7c5597a78a824c6c9dc8847e
2024-10-18 10:42:24 +00:00
drh
c2e400af04 New assert() statements to validate OP_OpenEphemeral logic.
FossilOrigin-Name: 6d55c3e238e06c6727f3e816a9268b6222ebfc90ec745bbbd48430bf7b16664c
2024-10-18 01:14:14 +00:00
drh
dd719bebfa Fix obsolete M4 macro in the configure script for the TEA extension within
the autoconf tarball.

FossilOrigin-Name: 360613a2246ae193d9a1d4bc7a91a0f63f159146709dac8a2de3e0ca8eb62752
2024-10-17 23:14:27 +00:00
stephan
d1068f8b73 Merge current trunk into the autosetup branch.
FossilOrigin-Name: 352da23b46f13fbb2c38fcdd0b6092bf39a391a0bfed587004c85f7f5b99a58d
2024-10-17 22:20:27 +00:00
stephan
2a1a3d6af5 General cleanups. Rename BTCL to BTCLSH for some clarity.
FossilOrigin-Name: 83eaef7d62677a85a2c42f98d52ff2e8e5356724ad6d12b2907409d96d4757f1
2024-10-17 22:19:37 +00:00
drh
fe15ed4342 Fixes from code inspection:
(1) Extra paranoid defense against integer overflow.
(2) Remove a stray blank line in an FTS5 comment.

FossilOrigin-Name: 8563728deeb1d3ead9ff99a3ad2c7819b2223ead44e7374ecc7bbeda2d955ade
2024-10-17 18:12:03 +00:00
drh
a9e4ebc513 Fix a typo in compile-for-unix.md. Simplify hyperlinks in the compile-for-*
documents.

FossilOrigin-Name: 8cd7d157741f207c3a38744f2d85a5bb808824b5e83b9e033a8ce3954fe38f43
2024-10-17 16:22:47 +00:00
drh
bcdb28b8f9 Improved README.txt file in the amalgamation-autoconf tarball.
FossilOrigin-Name: b7814350381a2929e9fa6444867a80437291b8bbe59479d4525350b2719bc72c
2024-10-17 13:29:49 +00:00
drh
4f5eba199a Attempt to get the TEA builder in the amalgamation-autoconf tarball working
using hints from Jan Nijtmans.

FossilOrigin-Name: ad9d7bdef95a8da76da0f6db358b6ffb0a0aa9097df2ff52f042e16e62afa8f5
2024-10-17 13:00:56 +00:00
stephan
cab9574668 Ensure that the OPFS VFS's xOpen() writes back the read-only flag to the output flags. Resolves the problem reported in [forum:cf37d5ff1182c31081 | forum post cf37d5ff1182c31081].
FossilOrigin-Name: 0a32624015f16fd881a4ecbb56b7833391028d327a95f4c899eee864ed7fe00d
2024-10-17 12:14:34 +00:00
stephan
6031de92c6 When calling OpfsSAHPoolUtil.removeVfs(), ensure that the cached result the VFS init is also removed so that the VFS may later be registered again with the same name. Set up test code for the regression reported in [forum:cf37d5ff11 | forum post cf37d5ff11] (which uncovered the removeVfs() shortcoming) but that test is currently only known to fail with the "opfs" VFS and is not currently set up to fail.
FossilOrigin-Name: b7f7a5deeae61920dbfec7606cf9014de711f959a285b29e12673abfd2f88646
2024-10-17 11:12:57 +00:00
stephan
88282af521 Add has_tclconfig to the tidy makefile target.
FossilOrigin-Name: 309e6d6f07d4169fbd6ea1d8b3d4809186ad9b7a2e69bbd33eedb9a55e831d68
2024-10-16 14:05:39 +00:00
stephan
ead26840b8 Get testfixture building.
FossilOrigin-Name: 9a7e56a01703fdcb4c83481d33d48bd4c8e6a5586c1315bae36fdff34a1b3bd1
2024-10-16 14:04:00 +00:00
stephan
883f35db10 Merge trunk into this branch.
FossilOrigin-Name: 9c3bb3dc4f5b5cd7db6cd50d22dbe8f933cccf5f2fd253467bb50f36b3207a93
2024-10-16 13:02:07 +00:00
drh
f578ce102e Change the name of the new utility program from sqlite3-rsync to
sqlite3_rsync - dash changed to underscore - for consistency with the
preexisting sqlite3_analyzer.

FossilOrigin-Name: 86e794cbaa5ae600635c933b46298a39f2465daf4c5cd1570f2a03e19ac08d9d
2024-10-16 11:05:11 +00:00
drh
9c5fb63d37 In the unix Makefile, strip compiled binaries prior to adding them to the
tool ZIP archive.

FossilOrigin-Name: cd8ae6fd7166680a6d121d710ff9d722e3e14d1d3538fc8ea1ea2690035ba80e
2024-10-16 10:20:30 +00:00
drh
87cb97b0ec Fix harmless compiler warning in flockCheckReservedLock().
FossilOrigin-Name: f369de3d8fa34a403b5c9f6269f7e3fdb16a13784a70460c5032ad4e66615d64
2024-10-15 22:22:53 +00:00
drh
45b4dca606 Fix the "tool-zip" makefile target so that it includes sqlite3-rsync.
FossilOrigin-Name: ecdbedb16bbc467b0bc56badae2a4d407b4ea2085312b50af56af8cd110f055c
2024-10-15 18:45:21 +00:00
drh
1b59f37c06 Fix a typo in a comment used to generate document. No code changes.
FossilOrigin-Name: 9b4bc5c4c1dc7c4ba359babc71c07ac3a6719971766951a8d2cb1df9e2396a83
2024-10-15 14:28:23 +00:00
drh
dcaae8fd4b Cross-reference the sqlite3_backup_init() function to the documentation for
VACUUM INTO and sqlite3-rsync.  Comment changes only.  No changes to code.

FossilOrigin-Name: 405c23ce02cc7f970e732afc26e01d0267b8fa89d8edc3d53fae2b3bc8405cbb
2024-10-15 14:00:29 +00:00
drh
4924847cb9 Avoid the possibility of buffer overrun in the READ_UTF8 macro by using
an less-than operator rather than not-equal-to.

FossilOrigin-Name: 20e60bf058c54bc818ea1b8ce54ace8bcd50699734713cef622bf79e49a9a279
2024-10-14 18:43:04 +00:00
drh
5899d9c08f There is no need to DELETE the content of sqlite_sequence in the output of
the CLI ".dump" command because that table will initially be empty if it
exists at all.  [forum:/forumpost/2e31f49d00472cec|Forum post 2e31f49d004]

FossilOrigin-Name: 8d7fe903d09a2a7961f506b2c8e93765e4feb7cd48aac436d75c7ec7838e856a
2024-10-14 11:48:19 +00:00
drh
39b9249562 The CLI now default to ".crlf ON" in Windows. CSV output always uses CRLF on
all platforms.

FossilOrigin-Name: 84d19f03b1989d665547745defcd95fc927f8389ed65c76195a39206435791ba
2024-10-14 10:45:02 +00:00
drh
863fcdc116 Be consistent about using "CRLF" instead of "CRNL".
FossilOrigin-Name: ec4f4cfd5f8ca83fad4f08cf6566251d9c63e50a3a4284baca299bd94b047951
2024-10-14 09:19:02 +00:00
drh
72fea11809 Fix a harmless compiler warning in the CLI.
FossilOrigin-Name: 31c46e84fffe29c45fc63ae8cd1f96f42196f0ab56e72cd07b4eedbd9058e85b
2024-10-14 09:08:02 +00:00
dan
a4ff06f056 Fix a problem with the ".expert" command and queries that use virtual tables.
FossilOrigin-Name: 43787b8ec5348207ae84e6f16acf2605c1ca024fc02b022ce2f36b8495e88384
2024-10-12 19:33:47 +00:00
dan
629e1bfa6d Ensure that test file ext/expert/expert1.test works with non-fts5 builds.
FossilOrigin-Name: 933dfd06188b487f14e522453a83b06e491aea97b4248c17f87727b56694acb5
2024-10-12 18:33:40 +00:00
dan
d5a780fddf Allow the ".expert" command to analyze statements that use built-in virtual tables.
FossilOrigin-Name: a201906cd3c85080f9b739c2d347c51348ebebd3dc9b647d33d8dcae4b6e5850
2024-10-12 18:00:22 +00:00
drh
589ce93e9e Additional clarification in the comments to sqlite3_stdio.c. No changes
to code.

FossilOrigin-Name: 2db24c5364808008fa503f37ca8ccf5d135e8f6bfac2efb29e509e26f7190470
2024-10-11 23:31:37 +00:00
dan
14101a3c28 Experimental change to explain query plan to identify covering indexes on expressions.
FossilOrigin-Name: 3bb03a2891e30c58b66e3665a8877a8eab4a8bac57ee153d8d31358caeaf4b7c
2024-10-11 20:36:26 +00:00
drh
4859bc9a9f Update comments in ext/misc/sqlite3_stdio.c to reflect the latest enhancements.
No changes to code.

FossilOrigin-Name: 9621c3b527702b47799538e028f96945b5697752dbb56078aa7f114c72fd4e1a
2024-10-11 19:57:41 +00:00
drh
4dfc4dc2df Add the doc/compile-for-unix.md document.
FossilOrigin-Name: a3e16e478b03ccc12888eb5700c2e480a446957368f4b37ed322af2f4c9cd7c4
2024-10-11 19:33:22 +00:00
stephan
ea7ea76a59 Avoid a segfault when calling src-verify without any arguments.
FossilOrigin-Name: c0c4e6f111b9b16538aad33e83f02f8d7835e952649f5cee610c068722bea4a4
2024-10-11 19:22:32 +00:00
stephan
c85c102efe Add two missing $(BEXE) suffixes, as reported in [forum:9ad28680d394afda | forum post 9ad28680d3]. Problem introduced by [1218a203483cecdc] being incomplete in where it added that suffix.
FossilOrigin-Name: de9663c0aae92e457ddda48b751b32f205bfab29f60b055571e5f69b41ffd584
2024-10-11 19:18:44 +00:00
drh
2623a19ab0 Improved instructions in the TEA readme for building the TCL extension.
FossilOrigin-Name: bf996f710212fbc0c0c67789e3f6f1a805e7b81e0265b312265ca7286e76d6f3
2024-10-11 19:13:02 +00:00
drh
b8d18f321c Update the README for the TEA extension in the amalgamation tarball.
FossilOrigin-Name: acc866c8f1b73fd57f434c5cb2576c2a7b9475a127febbcc27e8c714bbe29a8a
2024-10-11 19:08:45 +00:00
dan
4723539637 Avoid running some new tests in lock5.test with the inmemory_journal permutation.
FossilOrigin-Name: 0b12e2e55c6d4b329f0a7629965f313f48b6d3918d36d3371953c56e0c688a28
2024-10-11 18:59:29 +00:00
drh
ed3cf6ef37 Update the autoconf Makefile.msc
FossilOrigin-Name: 911ab3299771a607a135f0bcde3057b0ed337870362396bf72506210fdff729e
2024-10-11 17:43:47 +00:00
drh
17408fbbd8 An improved method for statically linking sqlite3_analyzer.exe using Tcl9.
Enable wildcard expansion of arguments to testfiture on Windows.

FossilOrigin-Name: 9b87ea219bce5689a69efac31063b9b11928e59124c0d36194715ff7faa5129d
2024-10-11 17:02:37 +00:00
drh
b23cce9a16 Fix the CSV output mode in the CLI such that the line ending is NL by default
but goes to CRLF if ".crnl on" is set.  Make the .crnl command available on
non-Windows builds.  Update the .crnl command such that if it has no arguments
it shows the current setting.

FossilOrigin-Name: da750e39df7bf42330d8c8b266300da07247c9619895861b4cff4be7c94db7cf
2024-10-11 14:30:58 +00:00
drh
0b453b3b33 Avoid undesirable NL to CRLF translation when doing binary output to the
Windows console.

FossilOrigin-Name: d25bdce36abed95524ad058a277aba7bb17270e7ff1476474713dbc29742c762
2024-10-11 14:02:48 +00:00
drh
64366ae114 Improvements to TCL9 support. Fixes to the Makefiles so that the "install"
targets are consistent and so that they work better with TCL9.

FossilOrigin-Name: bcfae7183e92ce37717852bae5b1dd526903fa8429fb6f738c2147d4e5231642
2024-10-10 10:47:37 +00:00
drh
7b179a3098 For compatibility, allow the TCL interfact to continue working with TCL 8.5.
FossilOrigin-Name: 69346e9d4704e8fd82cbb3359913191e05cb38ee591baf97dcfe321db0ea085e
2024-10-10 10:33:31 +00:00
drh
f553588c76 Adjustments to the Makefile.msc to get static builds of sqlite3_analyzer.exe
working with TCL9.  Update the compile-for-windows.md document for TCL9.

FossilOrigin-Name: df16d07d8db042cdb1dc6bb9a00a0265ba791a615d74f9152d0b3344e618fe93
2024-10-10 09:59:06 +00:00
drh
50ec92f7ce Improvements to Makefile.msc: (1) Attempt to find sane values for key
variables based on the value of TCLDIR.  (2) Default to TCLVERSION 90 instead
of 86.  (3) Add the "tcl-env" target that shows the values of key variables
associated with TCL.

FossilOrigin-Name: 6b7a789a416fb62a532882d10e41c7048a6805f5fbbc008f36f9802be45d9ebb
2024-10-09 20:05:26 +00:00
stephan
94fe1ad1c6 Add quotes around $(CC) in tclextension-related targets so that a CC of "ccache cc" works.
FossilOrigin-Name: e8f719d13fbcbaf1b52b421d7af59759b1b4692d4010a68d5865dfeaf3cf8cb0
2024-10-09 17:47:43 +00:00
drh
da1bf77cc2 Fix a problem in the generate_series() extension introduced by
[d50b784807333c54].

FossilOrigin-Name: 41d58a014ce89356932d717843a1fa6e0735f15a7b7265c41ac85a9722a5d826
2024-10-09 16:32:19 +00:00
dan
8f97647477 Fix the xCheckReservedLock() method of the flock VFS to avoid dropping the file lock.
FossilOrigin-Name: f7acb189d8eadf2de2fa992b3ff7293838fd0f8fd3c61e9f0238226a36ea6bcf
2024-10-09 16:28:26 +00:00
dan
48dd75df73 Fix the xCheckReservedLock() method of the flock VFS to avoid dropping the file-lock.
FossilOrigin-Name: 8ffaf85249ff38ceea037a6e96b3484c912f1c1aa55b8642297d592768661344
2024-10-09 15:40:07 +00:00
drh
492925a8f0 Change the makefile to prefer the use of tclsh9.0 if it is available.
FossilOrigin-Name: 28e2b9a23f61530bc5eea364a74817fca03fa31f70d4eefb0942a89c1d79f765
2024-10-09 13:54:24 +00:00
drh
97b0610602 Make it so that the TCL extension installed using "make install" has the
same name as the one installed by "make tclextension-install".

FossilOrigin-Name: e21fc1ba44dc88547fd2cdfaed90717566153880e79d862e2b3e54ba7f8f0a2e
2024-10-09 13:40:49 +00:00
stephan
a60142fef5 Add sqlite3rc.h build.
FossilOrigin-Name: 8d5f99f7e3f0ff9eaea1cb550369864e49a0fe0b00a53b1eba6ed099b61d8d24
2024-10-09 13:26:01 +00:00
stephan
fa2770fec5 More work on the tcl build parts.
FossilOrigin-Name: 292ad7d519d39f16f130d082d3f134deadd5409d56ffb5340064a1996f4b4d57
2024-10-09 13:20:25 +00:00
drh
50bb0aaa2c Changes to the TCL extension and how it is built, suggested by Jan Nijtmans.
FossilOrigin-Name: 9c0690193200551a3218c576b19eaf40e330dc252d67b430204ff44495e4793e
2024-10-09 13:19:21 +00:00
drh
4b0a2e0106 Improved handling of unicode characters in the LIKE optimization.
Follow-up to [bce52ce2a6e7f3d3].

FossilOrigin-Name: 9d0eb3980409115f2f6fd1720a03f34e3968c93be55feafdfef20bf5f711c17f
2024-10-09 11:52:29 +00:00
stephan
92860ade7a Remove extra layer of quotes around install target dirs.
FossilOrigin-Name: f2e3cf219e28c369ad6de240f0780eb3b638c47e1bab56ab80713a9bf63e2aa7
2024-10-09 08:05:21 +00:00
stephan
c7b822082e More work on the tcl build bits.
FossilOrigin-Name: f00988a909dd4338083a6e09231932c6fa57a40e35968c51483615121d20d25f
2024-10-09 07:12:32 +00:00
stephan
49bb81844c Generic build cleanups.
FossilOrigin-Name: 2cd213b38748d93134dc88b25aada4741838eaed683e44d5cc7837a6586fa4cf
2024-10-09 05:28:29 +00:00
stephan
48d11044ba Add a few missing $(BEXE) suffixes on makefile targets which are apparently never run on platforms where that var is non-empty.
FossilOrigin-Name: 1218a203483cecdc8c9abdc970ad68eba0dfa9cafbed95c63cefb7e8af8babee
2024-10-09 05:20:32 +00:00
stephan
114e0543af More work on the --with-tcl bits.
FossilOrigin-Name: 4d4cc49b6a886fef9a7b3af78a7b752c199045904a1bf74912adae2e8fd360ad
2024-10-09 04:27:03 +00:00
stephan
f400f41fde Get much of the --with-tcl-related bits working.
FossilOrigin-Name: 4e4a740369d3edc58d35c660b1ea73ee381503f82a98a4b770fd07cef1704e8b
2024-10-09 04:01:14 +00:00
drh
7f5a10e4ba Enable the ".crnl" command on Windows builds of the CLI even if the
SQLITE_U8TEXT_ONLY or SQLITE_U8TEST_STDIO compile-time options are used.

FossilOrigin-Name: 6364a2f0449794b0c089ba9fbc099f5558b88ac91c459caf7fae3a43dfcd192e
2024-10-08 17:27:00 +00:00
stephan
10d1b0c5db Fix build portability problems discovered on an ARM OpenBSD system.
FossilOrigin-Name: ef5348dc3f5b9fbe19753ff85e4da461ee962f0790e5f9cfda6eba522576451b
2024-10-08 16:33:42 +00:00
stephan
59ded3ff14 Get some basic install rules working.
FossilOrigin-Name: e9ab211f82f789c89ab52e8d5fe7526c09943b2b8b3002fa7a16fb2b40addc8f
2024-10-08 16:06:11 +00:00
stephan
d5503d383b Make tool/emcc.sh.in Bourne-friendly.
FossilOrigin-Name: a69ab88474a7b917679633e366364b05a99c348dabc37f1bbc5010f7005d5500
2024-10-08 16:05:54 +00:00
drh
ab85d9abd6 Additional improvements to the behavior of ".crnl" in the CLI. The default
output mode is O_BINARY so that results are identical on Windows and
non-Windows systems.  On Windows you can optionally do ".crnl on" to enable
NL-to-CRLF conversion on output.  Output to Windows console is always
O_U8TEXT and so is unaffected by the .crnl setting.

FossilOrigin-Name: dbfc10b8981bcce4f875c4adef43f398871b41551074445087e343ded50253c5
2024-10-08 15:11:43 +00:00
drh
dd2deecbbd Fix the .crnl command in the shell so that it does not get undone by
calls to print a quoted string or CSV output.

FossilOrigin-Name: 6b932337c8dee3e52b472a38984e91b5091f3d90c41ac1cc171fa4149cc491c5
2024-10-08 14:07:28 +00:00
drh
eaefd9ccc8 Allow expressions with subtypes to be read from indexes unless they are
being used as direct or indirect parameters to SQLITE_SUBTYPE functions.

FossilOrigin-Name: 39a56a23fec24dd713905457b6d4ed7c148f88e325a26c376f1e6daf147c69c8
2024-10-08 10:10:42 +00:00
drh
7998b889e8 Add an ALWAYS() on a branch in the new indexed-subtype logic.
FossilOrigin-Name: f150c3c5b898975b1f83d61fa589753449a48f8a0007e8e167dbd702528197c5
2024-10-08 00:15:22 +00:00
drh
ddc764b274 Add a NEVER() to an unreachable branch in the new indexed-subtype logic.
Mark the pi() function as deterministic.

FossilOrigin-Name: 50be8f5091b2202b67a80f826feee2c378f001745ad5acb7c4374423bbf6ff22
2024-10-07 21:04:57 +00:00
drh
f7f78a624d The (undocumented) subtype() SQL function should have the SQLITE_SUBTYPE flag.
FossilOrigin-Name: c361dd91841da64fdd009e6eab389ccd81266a24d1070e5313fe1d22e6cef65a
2024-10-07 18:06:17 +00:00
drh
56423385fb Merge the latest trunk enhancements into the indexed-subtype-expr branch.
FossilOrigin-Name: 2fe2f374584b025676684ebe4ef29304883a3b0b125b62abc1dbf74815eecdfb
2024-10-07 16:53:41 +00:00
drh
2813eb3c9e Add the undocumented test/debug function parseuri(), useful for fuzzing.
Only appears when compiling with SQLITE_DEBUG.

FossilOrigin-Name: 011fab70cb3d194b27742ebb236b05be582230567cf78e3e6cac6911de86922f
2024-10-07 12:48:21 +00:00
drh
ce527f2e97 Fix handling of U+fffd in the LIKE optimization.
dbsqlfuzz eee57fb9eea1dfa5aa40dfa87865cf8c84d12f96.

FossilOrigin-Name: bce52ce2a6e7f3d3d1b2807d1ea95243d9b655e557c1bb6f0b8a9a6cefb1aed6
2024-10-07 12:19:23 +00:00
dan
29f976432a Fix an assert() failure in "PRAGMA integrity_check" that could occur when checking a corrupt database.
FossilOrigin-Name: d218993be5886f07193d5c2a66ccd0ecdd7bb87687947b89945c90e31cea5451
2024-10-07 11:47:05 +00:00
drh
fba24d3528 Origin should not send content for the lock-byte page to the replica, in
sqlite3-rsync.
[forum:/forumpost/d14b55e5fa19c25f|Forum post d14b55e5fa19c25f].

FossilOrigin-Name: aa9bd711cc1b0136098388976d22adc0a2fc89f50fe2273ed80ee3e4e50c98b6
2024-10-06 21:26:56 +00:00
drh
74672acd94 New SQL function for testing/debugging use only: parseuri().
FossilOrigin-Name: 37d3b6b17e92b2c760239c3053bbc7fb85091acd688c54a73af7611fe9501312
2024-10-06 15:01:31 +00:00
stephan
2c72c55dca Back out [2f7eab381e16] because the stderr output on systems without gmake causes grief in the testing tools.
FossilOrigin-Name: cc6f3de0320aceb0e9d81413fa4c021ad2b4ee1c72ecef13438d80c4d3701135
2024-10-05 21:44:21 +00:00
dan
d564bdb050 Allow expressions with subtypes to be read from indexes unless they are being used as direct or indirect parameters to SQLITE_SUBTYPE functions.
FossilOrigin-Name: aa440e78e9004c7ca3e03beaf264f54d0070ad7298a3c96ca097d8b35c872e5f
2024-10-05 18:10:02 +00:00
dan
c857b9eb5d Experimental change to allow expressions with subtypes to be read from indexes in situations where they are not used as function parameters.
FossilOrigin-Name: ac63f98ad85a4dd1e49cc64b41f0ca0044153972c15d71c669f4bc3ec590e268
2024-10-05 17:37:19 +00:00
stephan
d0be4a781e Merge trunk into autosetup branch.
FossilOrigin-Name: 6cbb05fde1b74ced6d56d6ec7f815c989697381531175daccebc4311bfef61d9
2024-10-05 12:06:31 +00:00
stephan
706fdeebb8 Add ext/wasm to the top-level clean/distclean rules in such a way that any error due to a lack of gmake are ignored.
FossilOrigin-Name: 2f7eab381e16760952d1c90a9119d2a217933f0136442d8f6eeb6d95e366ca4f
2024-10-05 12:02:17 +00:00
dan
c8c95f5149 Fix typo in documentation for SQLITE_SUBTYPE. No code changes.
FossilOrigin-Name: 6733893f450097e07cbd563d6a46790825fd0689283d60181c09793ce7d5509e
2024-10-04 17:02:36 +00:00
drh
51bbf0c7b8 Unconditionally include &lt;ctype.h&gt; in sqliteInt.h, even in builds where
it is not needed.

FossilOrigin-Name: 825f01d7e258ac7981f715fd10708560381b079f0e026abc414cf56d16d862da
2024-10-03 16:31:08 +00:00
drh
1e2834dd45 Fix to the previous: The dbpageRollbackTo() method should return SQLITE_OK.
FossilOrigin-Name: 4dea7221129350a15df8dee5aabd5567e47adda4d255b65d4ba82fd821913759
2024-10-03 10:06:51 +00:00
drh
c51dccbd8b Fix missing return value from the new dbpageRollbackTo() callback.
FossilOrigin-Name: d1e0992e1f2885be9725d872b8688806e06788f3d66a70de86255179d93f74d3
2024-10-03 09:53:44 +00:00
drh
46a62afbab Modify the behavior of sqlite_dbpage so that the null-INSERT that truncates
a database must be the very last INSERT operation within a transaction in order
to be effective.  This simplifies the code and also makes the behavior
easier to document and understand.

FossilOrigin-Name: b869a7d9ce9567a61d2257272032aaee705bbc6158c7f2cd36e7f3ee66d72722
2024-10-02 18:54:40 +00:00
dan
44b8c37017 Fix a typo in fts5delete.test.
FossilOrigin-Name: b1f001435eff72c2119ecee973194385f70fd1b66ef0be8a66c0b0ad02ae43df
2024-10-02 17:43:06 +00:00
dan
c5c3cbc026 Add the contentless_unindexed=1 option to fts5. This causes the values of any UNINDEXED columns of a contentless fts5 table to be stored persistently in the database.
FossilOrigin-Name: 58313ac59e0bd164f601d68a1474f658c5d1c038638e00f3dc15eb58202e661c
2024-10-02 17:04:30 +00:00
drh
3b3f230d95 Adjust the new truncation behavior of sqlite_dbpage(N,null) such that it causes
the database to be truncated to N-1 pages.  This makes more since.  An error is
raised if N is less than 2.

FossilOrigin-Name: 7d5ff86ef7386f4f7f6a956dc0de607e61040d335c9f98d1f71e76a39f4f5e03
2024-10-02 16:55:27 +00:00
drh
92e71573ce Remove all use of the "long double" data type from SQLite, as hardware support
for long double is increasingly rare and the use of long double creates
challenges for some compilers.

FossilOrigin-Name: 761d8fd18b0ee8681b12998f01a2eca1b796807a5174a1270cfb9bdc841424ac
2024-10-02 13:26:17 +00:00
drh
010f9f8704 Remove a few more traces of long double from the code.
FossilOrigin-Name: 11d6a89e4a25c3f884ff617036d239dc42522859400cd1f4674634f6c7adbb02
2024-10-02 11:34:11 +00:00
dan
dceffee1ba Ensure that if sqlite3_snapshot_get() is called immediately after a "BEGIN", then it locks the database such that the returned snapshot object may not be invalidated by a writer or checkpointer until after the sqlite3_snapshot_get() caller has closed its transaction.
FossilOrigin-Name: eb5277e490a9b48c865f2dc449cdb8f1b604e233737e492abb4f2f7101a6715b
2024-10-02 11:15:22 +00:00
dan
512ad53f3a Merge latest trunk changes into this branch.
FossilOrigin-Name: 2b3945e6a597e6853cac567052e92926c8cb6d7a029ac64c2d45c321bbe2e94d
2024-10-02 11:11:29 +00:00
dan
f9d1141a3b Update docs for sqlite3_snapshot_get().
FossilOrigin-Name: 78c3892ab777a39406da8a9df84d0634397514e25512b0363a13bff3b8bc8925
2024-10-02 11:11:00 +00:00
drh
e8b2c92240 Remove all code that makes use of the C-language "long double" datatype.
FossilOrigin-Name: f622b52024c8bec1d241b1dc480fbbd839fc1af50b6220f012812503de2c656e
2024-10-01 20:29:43 +00:00
drh
7151010919 New #ifdefs to omit code that is unused when SQLITE_USE_LONG DOUBLE is defined.
FossilOrigin-Name: 98066e2d226e7d2eceec1931a1432baea956f49bf3c708d8a6d511fa4e864ca3
2024-10-01 19:10:47 +00:00
stephan
1f2faa647f Another comment about the LONGDOUBLE wasm topic. No code changes.
FossilOrigin-Name: 1755831cb1ac58241e0b11d8d003b5eca39b65aa3cb84229b215662028b1b3c0
2024-10-01 17:57:55 +00:00
stephan
c9c1b65698 Use the new SQLITE_USE_LONG_DOUBLE to disable long-double support in WASM builds, as they cannot be represented in JS and this saves approximately 5.5kb in the resulting wasm file.
FossilOrigin-Name: fa7b56f776b715d061581fad6f04b871504ff5d808e7364419d1d6cdef82c5ee
2024-10-01 17:08:23 +00:00
drh
dac22f6566 Add compile-time option -DSQLITE_USE_LONG_DOUBLE=0 to omit all attempts to use
"long double".  Or =1 to omit attempts to use the Dekker algorithms to achieve
high-resolution floating point.

FossilOrigin-Name: ca5964ef70efad3332e0bf9c158eb5fd5006d3022051d1ac506c097c427735a1
2024-10-01 16:55:30 +00:00
stephan
ea63f48ec8 Get more of the CLI utils building.
FossilOrigin-Name: 6838b7b5d6130b1e0af9a71ad2c5922b1ef35f082907dffeed03811e1e62406f
2024-10-01 13:40:59 +00:00
stephan
51e8287dde Correct missing LDFLAGS_ZLIB for libsqlite3.so.
FossilOrigin-Name: 98bbba3a05734e080a0c8c51fac0368436809d4ff3c39959a51970400b4470cb
2024-10-01 11:09:50 +00:00
stephan
2e7c9ae473 Fix reversed logic in the build/target/host names in several hwaci-* functions.
FossilOrigin-Name: fde7257ad9ce84be6d907be3c6d277b04dd9466ee6828bfded4cfefc86db22db
2024-10-01 11:04:02 +00:00
stephan
ed94e0e677 Add an #if'd-out block to sqlite3-wasm.c mentioning the LONGDOUBLE_TYPE, as brought up in [forum:cbfb0d0ac0a4e349 | forum post cbfb0d0ac]. No functional changes.
FossilOrigin-Name: 0b83e8f1ef53b35a9dda0740b4922b8691428f7484f3058833a961f3f8d0b178
2024-10-01 10:49:30 +00:00
stephan
aca993423f Add static library build. Get build working (for a given value of working) with the --disable-amalgamation flag.
FossilOrigin-Name: ddfda58004fa3e43c4f2d497c6feecbea3b195d14196bf179f4aafd21ea089ea
2024-09-30 19:01:41 +00:00
drh
cacef23082 Fix the character width tables for the CLI such that all unicode code-points
less than 0x300 have a width of 1.  This is in fact the case for Mac, Ubuntu,
and Windows.

FossilOrigin-Name: f0c5a86fefecded07e098e1326dd54c72504b0bb480f710e395d4041a322dfcb
2024-09-30 18:19:38 +00:00
stephan
c4c951adbe More generic build tinkering.
FossilOrigin-Name: 433bfc790258e1d2e7c9ea4839a9edb25dde0b99d1e888d1e2a4cf669825fb79
2024-09-30 17:44:41 +00:00
dan
d5838eaa42 In fts5, avoid starting a new merge of level L if there exists already an ongoing merge of a level less than L.
FossilOrigin-Name: 350c6e75ce3c1e81458d1baa73045df489284206e8b279ab3c2f5e3d011c262a
2024-09-30 17:28:45 +00:00
stephan
0831b3a989 Generic build tinkering.
FossilOrigin-Name: b6c1772ce0278988ecaea485c4feb8b0919fa1530f0c53b8321d9bd2277b5acd
2024-09-30 14:33:36 +00:00
drh
54fd01c4ab Fix the CLI so that the --bom option only outputs a single BOM, not two.
FossilOrigin-Name: 76b6331e6a705a420a64820a18214f07cf4c1d5151e7158d6fff09964e63f352
2024-09-28 19:52:38 +00:00
dan
dcf757c2ea Merge trunk changes into this branch.
FossilOrigin-Name: 81d48df62ccf8b56e7adbc5327103e8ab5499bb22e587c4f0d0780a66adbdb67
2024-09-28 15:20:13 +00:00
stephan
33669ef289 Add another missing mkdir to the wasm build process.
FossilOrigin-Name: e815055b321085deda8607ac3279ef1a1c890fe3bf9d9b9c0a74028e87857a7d
2024-09-28 15:13:49 +00:00
dan
54e35b543d Add tests for DELETE on contentless, contentless-delete and contentless-unindexed fts5 tables.
FossilOrigin-Name: 74832fffb61d5e09ff256622cc9aa1fd2c40d30324c410bd6a8c688f0506a536
2024-09-28 15:09:43 +00:00
stephan
595a2532f3 Get libsqlite3.so building.
FossilOrigin-Name: c65e3679e0d28e980bb555b47f31690b27915d9ff0850f598e3bed528b18ca1d
2024-09-28 14:51:10 +00:00
stephan
5ec9ed7fe9 Complete a line of documentation which was interrupted mid-sentence.
FossilOrigin-Name: c9cbbeda3d1ec4215396aaaf94428b829c4f53329431fa61251914c195f8a9a1
2024-09-28 13:51:47 +00:00
stephan
6a8336987a wasm: move the makefile-eval-generated fiddle rules into mkwasmbuilds.c. Squelch some warnings from grep when running 'make clean' on a clean tree.
FossilOrigin-Name: 0485d1360b0dbf9987d16ab1df47b6b7a25595881581799f87889f6d4eeb60f4
2024-09-28 12:01:10 +00:00
stephan
d4c735d491 Ensure that the temporary build dir is mkdir'd by wasm deps which depend on it.
FossilOrigin-Name: cabdf9797281090ab3f95c9f4c2a79878d1c64d1f2a09e433e2309abe5e19e59
2024-09-28 11:23:09 +00:00
stephan
51fb37db61 For wasm builds: automatically use higher optimization (but slower build) levels when a target related to deliverables (as opposed to dev mode) is explicitly invoked.
FossilOrigin-Name: 45361ab9744ccac3419d97fe8951838f14bd28220e3f7f747b39e46cfc3b5a1d
2024-09-28 11:03:00 +00:00
stephan
5ff68db4f1 Latest upstream autosetup for a --help fix on QNX.
FossilOrigin-Name: b9faebbb543fb3a03f46dd4defe28ffa0c32a9a46ed73912f93b86e41f3db04a
2024-09-28 00:41:34 +00:00
stephan
fabae7a134 Minor makefile doc fixes. No functional changes.
FossilOrigin-Name: b3ad58e1fc73941f2d32bab0e0fac0b95849ae69f84788a431e65bb072e42db5
2024-09-28 00:39:19 +00:00
stephan
0be8482f96 Merge trunk into autosetup branch for latest wasm pieces.
FossilOrigin-Name: c3877d1241f946b470a7a4868f13e1106e8aac4851d4bc5a64c90e0569444b81
2024-09-28 00:37:23 +00:00
stephan
3c58039e9e Merge wasm-build-rework branch into trunk. Summary: 1) add optional bare-bones build, stripped of many optional library features, 2) replace much of the hyper-spaghetti wasm-specific makefile code with a more legible static code generator.
FossilOrigin-Name: 208c27714646c9bc26eef11266086a71da04bc24e87078de0955e7beb68a821e
2024-09-28 00:02:52 +00:00
stephan
add19478c1 Fix fiddle build broken by recent build-level reworks. Remove a stale reference to an old CSS file.
FossilOrigin-Name: f904b3b7842da036c3e8423bae02cdf207573c92dc379a601eae289eb3c5f547
2024-09-27 23:45:40 +00:00
dan
58b4a8f6e7 Extra test cases for UPDATEs of contentless tables.
FossilOrigin-Name: 4d11d844de3edd82f022c36381ca7f14a546a608293c329b91e7f041cec82ff5
2024-09-27 19:21:09 +00:00
dan
43eafb7b76 Fix a problem with UPDATE statements that modify the rowid of contentless_delete=1 tables.
FossilOrigin-Name: d69abca82145465c85241a12322986f22bf12ffe42f86c2c8e8e2f2a77d53bf8
2024-09-27 19:10:54 +00:00
dan
08f1ba0767 Fix a problem with UPDATEs that do not modify all UNINDEXED columns of a contentless_delete=1, contentless_unindexed=1 table.
FossilOrigin-Name: b6b1db8d343d3e55c3a5589af3ec629762e06c6b689b77defd445347198cb2e7
2024-09-27 18:32:52 +00:00
stephan
3cb46bd929 Merge trunk into the autosetup branch.
FossilOrigin-Name: 9586ea204c705430d63e3757f80009a152b89573a75c6862e407062be8ef346c
2024-09-27 16:43:47 +00:00
stephan
c707b2eb6d Squash sign-comparison warnings reported in [forum:5e605a763a65c3f8 | forum post 5e605a763a65c3f8].
FossilOrigin-Name: e74fce93c518296bdb0a4273cd5fd3f785d37d27750ca456b61a3502135775f9
2024-09-27 16:20:03 +00:00
stephan
05c5e76c94 Add basic libreadline detection and build CLI shell.
FossilOrigin-Name: 2ba7ab562580667bc9249f2d1f2402c605553d5583eec497398abe6d196c83d4
2024-09-27 13:29:50 +00:00
stephan
1865e85e0b General tinkering and cleanups in the autosetup bits.
FossilOrigin-Name: a290e3b15de75f6a0a4975b5747449525fb2b58b3947b8ca0ab64a4d3cca228e
2024-09-27 12:15:14 +00:00
dan
0992764c7a Merge trunk changes into this branch.
FossilOrigin-Name: 4a26a4e0015bc42b1d007def3750caf7baefe429270a295cc2f4499c98c07247
2024-09-27 11:35:22 +00:00
dan
bcd6d5d393 Allow UPDATEs of unindexed columns in fts5 contentless_unindexed=1 tables. Testing to come.
FossilOrigin-Name: cd36d66c88d7282eb0a3ccde5713253f72f5843e451b2693b71adfdae28b41fb
2024-09-27 10:57:41 +00:00
stephan
c139ad34de Rename TCL_GENERATOR to BTCL for consistency with BCC/TCC.
FossilOrigin-Name: a7ff8f3c2c86f435a08d568a07f019a59dcca8f66a719d242289fa0c7097c2af
2024-09-27 09:40:55 +00:00
stephan
8d2f6c13e3 Disable the optional extending of JimTCL on the grounds of YAGNI.
FossilOrigin-Name: f395c269d55c2b5ceb074f26d0b63f65b1f04ec513fe203c7e73e3a876b1f055
2024-09-27 03:16:01 +00:00
stephan
3c6db6831d General auto.def cleanups, mostly around JimTCL. Swap out impl for the sqlite_cfg.h generator - this approach is lower-maintenance (requires no hand-maintained template) but may not be compatible with expectations.
FossilOrigin-Name: da197946dbaacedb6e74827db9b5dd195d4aaf78ad9411a14aca732ab77917c6
2024-09-27 03:04:16 +00:00
stephan
587256a634 Tweak build to fall back to system-side tclsh if we cannot find realpath() or _fullpath() for JimTCL (needed for some of the code generator scripts to work).
FossilOrigin-Name: b31dbb9945d0ac5e22d146565443bcdc0dd1a1c83034cfb5867b2303ada2bdea
2024-09-27 02:35:41 +00:00
stephan
474cdc54ef Run all of the TCL-based code generators using JimTCL.
FossilOrigin-Name: 3193b86a91d8096be68cb83133c7665129694521d7da81bf725e285c229271f7
2024-09-27 01:42:52 +00:00
stephan
9ce9ee6819 Generate sqlite3.h/.c with jimsh, somewhat to my surprise.
FossilOrigin-Name: c365d8e1f7aa19e424f60f976db683c3ccb489900124811541e02d47f9a1cbe3
2024-09-27 01:30:34 +00:00
stephan
69f2da0eed Experimentally build shell.c using the autosetup-provided JimTCL.
FossilOrigin-Name: 5bd62cdbc4b188a59c83fb04685f9967d6a5270772eb48f950a5d86409eb8a1b
2024-09-27 01:25:49 +00:00
stephan
42aa26a607 Remove some gratuitous overengineering before it can spread.
FossilOrigin-Name: 94340011ed903434cd12ca982f226c548f7ec43019d449b4ee12e18ec886fb27
2024-09-27 01:04:09 +00:00
stephan
02616ccf29 Get the generated .c/.h files generating.
FossilOrigin-Name: e890c8508da4e126f43c61f809f750d6cb2d7d01600fe2173fbcd7dabbfce0fd
2024-09-27 01:00:32 +00:00
drh
c94e4a7b2f Fix a harmless compiler warning in the CLI.
FossilOrigin-Name: 27ef1909bb0c4d9470c6074b40500632c68341127a079a3eb3b6a19dbfb2aeac
2024-09-26 22:25:13 +00:00
stephan
66cb9d0ec7 Re-indent some tcl code.
FossilOrigin-Name: 34ea629a07bfb00c86df7c62462bf2d699347c34dcb7656c86f5f76b52d33b30
2024-09-26 21:09:22 +00:00
stephan
9a1b212f50 Latest hwaci-common.tcl after refactoring to facilitate including a copy in the libfossil tree.
FossilOrigin-Name: feea65bcd54f9266445bc4d65ea5e3cfadee8e3abff5b682e31cdc0034354fbf
2024-09-26 21:08:00 +00:00
drh
74194f14ec Add the ext/misc/sqlite3_stdio.c portability interface and incorporate it
into the CLI, sqldiff, and sqlite3_analyzer.  Enhance the CLI with the new
".www" dot-command and related options on .once and .output.

FossilOrigin-Name: f97f9944b829a49da12786f934da0a5ad51591afd6d8a19a4a0835f51bbdbff2
2024-09-26 19:38:34 +00:00
drh
2b041fb97a Provide SQLITE_U8TEXT_ONLY and SQLITE_U8TEXT_STDIO compile-time options
to the sqlite3_stdio.c module.

FossilOrigin-Name: f31588520e3f45b50dcaa9eecab17f52ebb56bb53d0f9bdb88cc596d1a156353
2024-09-26 19:16:20 +00:00
stephan
c2da952f5d Get lemon building. Re-indent hwaci-common.tcl for consistency.
FossilOrigin-Name: 53dc33d5e20062e8c4c9856349bbc143c858327ef41f356ffcc574b36d0cc73c
2024-09-26 18:40:07 +00:00
stephan
2c77d51dfe Resolve a harmless compiler warning in QNX builds.
FossilOrigin-Name: 2916460179c6089375188c6e4e3cff1fca5bbbbb7280a10c919e09e75d1f11f8
2024-09-26 18:13:10 +00:00