stephan [Thu, 19 Dec 2024 14:09:35 +0000 (14:09 +0000)]
configure script: only set the SQLITE_TEMP_STORE feature flag if --with-tempstore is explicitly set, to avoid colliding with that flag being set by other means via the test fixture scripts.
drh [Thu, 12 Dec 2024 15:11:27 +0000 (15:11 +0000)]
Increase the maximum number of arguments on an SQL function to 1000 with the
capability to increase it further up to 32767 using a compile-time option.
drh [Mon, 9 Dec 2024 20:37:18 +0000 (20:37 +0000)]
Enhance the ".import" command of the CLI so that it is able to insert into a
view that has an instead-of trigger.
[forum:/info/3e03c73150f8b9f8|Forum post 3e03c73150f8b9f8].
stephan [Sun, 8 Dec 2024 18:38:40 +0000 (18:38 +0000)]
Add a note in Makefile.msc about EXTRA_SRC files possibly requiring manual editing, as discussed in [forum:903f721f3e7c0d25|forum thread 903f721f3e7c0d25].
drh [Sat, 7 Dec 2024 19:57:30 +0000 (19:57 +0000)]
Yet another iteration of the solution to the floating-point conversion
problem - this what avoids complaints about oversize double values
from -fsanitize.
drh [Sat, 7 Dec 2024 14:48:55 +0000 (14:48 +0000)]
On x64 hardware, round-trip uint64_t→double→uint64_t conversions
fail for values greater than UINT64_MAX-2047. This caused the SQLite
text-to-float converter routine to give incorrect results for values
between '1.8446744073709550592eNNN' and '1.8446744073709551609eNNN' for any
exponent NNN. This problem was introduced by check-in [761d8fd18b0ee868]
and first appeared in version 3.47.0 and was reported by
[forum:/forumpost/569a7209179a7f5e|forum post 569a7209179a7f5e]. Fixed
by this check-in.
stephan [Mon, 2 Dec 2024 14:14:30 +0000 (14:14 +0000)]
Reformulate [9e09d5d6] so that memsys5 shows up in the late-config summary as being enabled and does the right thing if both --debug and --memsys3 are used.
stephan [Sat, 30 Nov 2024 17:48:31 +0000 (17:48 +0000)]
At the end of the configure script ensure that none of the files which are filtered for @VARS@ contain any unresolved @VAR@ placeholders, failing fatally if any do.
drh [Tue, 26 Nov 2024 23:40:54 +0000 (23:40 +0000)]
Allow the iif() function to work with two arguments. The third argument is
then assumed to be NULL. Also allow if() as an alternative spelling for iif().
stephan [Tue, 26 Nov 2024 19:19:12 +0000 (19:19 +0000)]
Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. Update autosetup/README.md with details of the patch.
stephan [Tue, 26 Nov 2024 19:02:16 +0000 (19:02 +0000)]
Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. --with-debug is now an alias for --enable-debug but can be removed entirely if all scripts which have been adjusted for the autosetup build are edited to (re)use the older flag name.
drh [Fri, 22 Nov 2024 17:41:00 +0000 (17:41 +0000)]
Fix another issue in argument expansion on Windows for tclsqlite3.c in
interpreter mode. Problem introduced by check-in [9b87ea219bce5689] and
unfixed by [cd942dce148c9d8f].
stephan [Fri, 22 Nov 2024 16:45:43 +0000 (16:45 +0000)]
Remove a flaky JS test which has a result depending on unrepredictable context. That same feature is more reliably tested at a later point in the same script.
stephan [Fri, 22 Nov 2024 16:24:55 +0000 (16:24 +0000)]
In order to support package builds, like OpenBSD's, which set a custom soname on libsqlite3.so, extend the --soname configure flag to allow arbitrary soname values.
stephan [Fri, 22 Nov 2024 14:18:23 +0000 (14:18 +0000)]
Move handling of the tempstore feature flag into the OPT_FEATURE_FLAGS list and remove the CFLAGS.libsqlite3 makefile var which exists solely to account for the tempstore being tracked separately from the other feature flags.
stephan [Fri, 22 Nov 2024 13:47:12 +0000 (13:47 +0000)]
Remove the libsqlite3.so.3 link from the installation process, as it now serves no functional purpose. We retain libsqlite3.so.0 (A) for compatibility with clients linked against legacy builds and (B) 0 is still valid as the library's ABI version.
drh [Wed, 20 Nov 2024 16:21:34 +0000 (16:21 +0000)]
New configuration option --dynlink-tools causes some command-line tools like
sqldiff and sqlite3_analyzer to link against the libsqlite3.so system library
rather than being built-in. Caution: sqlite3_analyzer requires the
SQLITE_ENABLE_DBSTAT_VTAB compile-time option on its SQLite library in order
to work, so do not use --dynlink-tools to build sqlite3_analyzer without it.
drh [Wed, 20 Nov 2024 14:59:32 +0000 (14:59 +0000)]
Bug fix in the SubrtnSig logic from [c9a3498113074bbc], if a subquery is
copied and then changes are made to the copy, be sure to give the copy
a unique Select.selId value so that the original will not be substituted
in place of the modified copy.
[forum:/forumpost/0b9ded2f8428ac00|Forum post 0b9ded2f8428ac00].
drh [Wed, 20 Nov 2024 11:34:16 +0000 (11:34 +0000)]
Do not report an sqlite3_error_offset() for errors that occur inside of
views or triggers, since the text of those elements is not part of the
original query.
stephan [Tue, 19 Nov 2024 19:47:51 +0000 (19:47 +0000)]
Get sqlite3_analyzer optionally linking against libsqlite3.so instead of embedding sqlite3.c. Patch mkccode.tcl to accept digits in its IFDEF/IFNDEF checks and sqlite3_analyzer.c.in to only include sqlite3.c if -DINCLUDE_SQLITE3_C is passed to mkccode.tcl.
drh [Tue, 19 Nov 2024 18:26:47 +0000 (18:26 +0000)]
Enhancements to tool/mkccode.tcl such that it recognizes -D command line
arguments and can use them in internal IFDEF and IFNDEF macros. Update
the tool/sqlite3_analyzer.c.in script such that it omits the SQLite amalgamation
if -DSQLITE_ENABLE_DBSTAT_VTAB is defined.
stephan [Tue, 19 Nov 2024 17:41:13 +0000 (17:41 +0000)]
Revert linking the shell to the dll for reasons explained in new makefile comments. Move the --with-debug configure flag into the developer options set and add commentary about why it should never be used for production builds.