1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-01 06:27:03 +03:00

Commit Graph

  • d176ef5881 Fix a long-standing filename digest computation bug in the OPFS SAHPool VFS which caused all VFS-stored filenames to have a digest value of 0. See [/forumpost/042d53c928382021] and for full details. stephan 2025-03-16 14:05:42 +00:00
  • ab68965794 Add --asan-fsanitize=... configure flag to the canonical build to optionally set -fsantize flags for the fuzzcheck-asan tool. Teach proj-check-fsanitiz to fail for flags which the compiler emits any warning for, for reasons described in its comments. stephan 2025-03-16 13:09:21 +00:00
  • 539442300c Configure-internal doc cleanups. No functional changes. stephan 2025-03-16 12:27:21 +00:00
  • bafddb17d7 Consolidate some much-duplicated run-fuzzcheck recipe code in main.mk. stephan 2025-03-16 11:24:32 +00:00
  • fc293f7c0e Rework the run-fuzzcheck makefile target so that it better exploit parallelism. Test case "<tt>make -j16 run-fuzzcheck FUZZDB=20250222.db</tt>" went from 596 seconds down to 107 seconds. drh 2025-03-16 00:13:29 +00:00
  • 42db4d043e Enhance the fuzzcheck testing tool with new command-line options: --brief, and --slice M N. drh 2025-03-15 23:42:32 +00:00
  • 79102ef4e8 Merge the latest trunk enhancements into the reuse-schema branch. drh 2025-03-15 20:35:24 +00:00
  • a29e5d6c9f Merge the latest trunk enhancements into the bedrock branch via the wal2 intermediary. drh 2025-03-15 20:32:24 +00:00
  • 55c98cfe95 Merge the latest trunk enhancements into the wal2 branch. drh 2025-03-15 20:28:42 +00:00
  • 77d9bf1c26 Merge the latest trunk enhancements into the begin-concurrent branch. drh 2025-03-15 20:25:24 +00:00
  • 6e5d59e8ef Make use of the C99 flexible array feature, when available, so that the -fsanitize=bounds-strict option can be used, when available. [forum:/forumpost/311dbf9a1cadfae6|Forum thread 311dbf9a1c]. drh 2025-03-15 19:55:19 +00:00
  • b7b060401e Work around compilers that do not understand flexible arrays, in the recovery extension and in the fuzzcheck test module. flex-array drh 2025-03-15 19:00:46 +00:00
  • 7bd72d4abf Fix alignment problems on Linux with -m32 and on Mac PPC. drh 2025-03-15 18:26:27 +00:00
  • f212fb3362 Speed up parsing of very long fts3 query expressions. dan 2025-03-15 16:58:39 +00:00
  • 9f8a238fb5 Configure-internal build cleanups (no functional changes). Add EXTRA_SRC to the deps of sqlite3.c. stephan 2025-03-15 15:19:42 +00:00
  • 8c0e922721 -fsanitize is a CFLAG, not LDFLAG, so rename some vars accordingly and simplify the feature check to not run the linker. stephan 2025-03-15 13:50:07 +00:00
  • f792cda1a1 For fuzzcheck-asan, dynamically determine the list of -fsanitize flags to use based on configure-time feature tests. stephan 2025-03-15 13:36:01 +00:00
  • d389fd3699 Omit the -fsanitize=bounds-strict for now, as that is still not widely implemented. In particular, it does not work on Macs. drh 2025-03-15 13:11:24 +00:00
  • 0a4f10e6e2 Use flexible arrays in the recovery extension and in the fuzzcheck test program. Adjust the unix makefile to use -fsanitize=bounds-strict when building fuzzcheck-asan. drh 2025-03-15 13:04:16 +00:00
  • bd0e3ed522 Use flexible arrays whereever appropriate in FTS5. drh 2025-03-15 12:22:39 +00:00
  • 17abe9e251 Convert the Fts5Sorter.aIdx field to a flexible array. drh 2025-03-15 00:11:22 +00:00
  • 502b7a236e Turn Fts5Colset.aiCol into a flexible array. drh 2025-03-14 23:57:53 +00:00
  • 126541f8ac In FTS3, rename the MatchinfoBuffer.aMatchinfo field to aMI, to avoid confusing it with MatchInfo.aMatchinfo. Make aMI a flexiable array. drh 2025-03-14 23:20:12 +00:00
  • dbd455a0fd Fix one of two flexible arrays in FTS3. drh 2025-03-14 21:15:11 +00:00
  • 01ef1dfc1f Use flexible arrays for RTREE. drh 2025-03-14 20:19:49 +00:00
  • b6e8f65ffe KeyInfo is now an indeterminate size, so we cannot declare a variable of that type, only a pointer to an instance of that type. drh 2025-03-14 19:07:11 +00:00
  • cebf06c798 Make use of the flexible-array feature of C99, when available, to try to pacify -fsanitize=strict-bounds. This check-in fixes the core. There is more yet to do in FTS3, RTREE, and in FTS5. drh 2025-03-14 18:10:02 +00:00
  • dae87df198 Fix an internal doc typo reported in [forum:e25e581f917|forum post e25e581f917]. stephan 2025-03-14 12:37:36 +00:00
  • 5390f95f07 Minor doc corrections for the sahpool-digest fix and merge in current trunk. sahpool-digest stephan 2025-03-14 11:14:52 +00:00
  • 1560045c32 Cherrypick the [2b582c0097e33] doc addition, which was initially committed to the wrong branch. stephan 2025-03-14 09:34:09 +00:00
  • 99e8490705 Fix the generate_series extension for the case where the termination value is not an even multiple of the step from the start value and there is also a value=NNN constraint in the WHERE clause. [forum:/info/bf2dc8e909983511|Forum post bf2dc8e9] drh 2025-03-13 18:51:18 +00:00
  • 62d9d70edd The --echo flag on the CLI also echos dot-commands provided on the command-line. drh 2025-03-12 15:17:13 +00:00
  • ff3c451428 Document that sqlite_update_hook() can unset the current hook by passing a NULL callback, to address [forum:652aef4747|forum post 652aef4747]. stephan 2025-03-12 11:41:12 +00:00
  • 72b5c6db35 Avoid running test cases involving ANSI control characters or Unicode on Windows in a slave interpreter, as that combination does not work. windows-ansi drh 2025-03-11 15:46:23 +00:00
  • a7829ecbdd The substitute "puts" command used by the Windows implementation of sqlite3_analyzer must invoke fflush() after each line of output. Otherwise the output can be truncated when redirected into a file. drh 2025-03-11 12:19:27 +00:00
  • 1fc7844d40 Teach testrunner.tcl to distinguish Cygwin from Windows. This gets it running but then all downstream tests fail, at least in part because of the build target name discrepancies between the platform which requires .exe and those which do not. stephan 2025-03-11 11:24:52 +00:00
  • 642479d1cd Ensure that the TEMP database has been initialized at the beginning of a call to sqlite3_open_blob() for the TEMP database. Fix for the issue reported by [forum:/forumpost/0a556d619b|forum post 0a556d619b]. drh 2025-03-10 22:31:55 +00:00
  • e0fa42053f Merge trunk into the cygwin-fixes branch. stephan 2025-03-10 17:35:00 +00:00
  • 09eba154b2 Add an explicit db close to test/walsetlk.test to work around an unjustified test failure on Windows when the walsetlk tests are run in the same invocation of testfixture.exe in Windows. stephan 2025-03-10 17:28:43 +00:00
  • b37f8b9714 Patch an unnecessary size_t-to-int conversion which warns on some compilers. stephan 2025-03-10 15:35:43 +00:00
  • 4cd6c0b81b Ensure that the 'clean' target for Makefile.msc cleans up the testdir dir, analog to how the canonical makefile works, as stale files there have been leading to test failures. stephan 2025-03-10 15:27:17 +00:00
  • 42e5ceb093 Reimplement pathname conversion on Cygwin. MSC test passes/failures are on par with trunk and 'make test' running on cygwin is down to a single failure. stephan 2025-03-10 15:15:13 +00:00
  • 05ba11fc95 Tweak [6f24da264cf8d] so that it has no side-effects on autoconf/Makefile.msc. stephan 2025-03-10 14:10:46 +00:00
  • a4542bcf4a Disable the [d1ba200234f40b84|count-of-view optimization] if any subquery is DISTINCT, as the optimization does not work in that case. drh 2025-03-10 10:39:52 +00:00
  • e8bc8b68b0 Fix the build by rerunning test/mkpragmatab.tcl. drh 2025-03-10 10:36:50 +00:00
  • eed4e1d2df Disable the [d1ba200234f40b84|count-of-view optimization] if any subquery is DISTINCT, as the optimization does not work in that case. Bug reported by [forum/forumpost/a860f5fb2e|forum post a860f5fb2e]. drh 2025-03-10 10:32:31 +00:00
  • 49a5da1138 Add tf.bat target to Makefile.msc to facilitate running of individual test scripts via testfixture.exe. stephan 2025-03-10 09:54:01 +00:00
  • 065c0a6120 Test app/script patches from Jan Nijtmans for cygwin. Add/replace many more sentinel arguments for TCL variadic functions which specifically need a NULL trailing argument. With this, 'make test' on cygwin runs to completion for me, with 134 of 329227 tests failing. MSC build fails the same 13 tests which fail for me in trunk. stephan 2025-03-08 06:53:06 +00:00
  • 7b9407af90 os_win.c patches for Cygwin (described in the cygwin-fixes branch wiki page). Makefile.msc's test target on trunk fails the same 13 tests as this branch. stephan 2025-03-07 06:54:04 +00:00
  • 908c0301d1 Merge trunk into the cygwin-fixes branch (which was inadvertently branched too early). stephan 2025-03-06 14:40:45 +00:00
  • 8199c8d7a7 Cygwin-centric test script tweaks from Jan Nijtmans. stephan 2025-03-06 13:49:27 +00:00
  • b6503f1444 Cygwin-centric fixes from Jan Nijtmans. stephan 2025-03-06 13:38:07 +00:00
  • d75acb8312 Back out the most significant part of [5c28a17253e2f], as Cygwin is a hybrid. With SQLITE_OS_UNIX it will use POSIX locking, which will misinteract with apps using Windows-style locking. stephan 2025-03-06 09:29:15 +00:00
  • 47991d973a Various typo fixes reported by Daniel Dumitriu. No functional changes. stephan 2025-03-06 09:08:38 +00:00
  • ba6510a399 Additional 'array index is signed char' warning cleanups for the shell and its embedded extensions, analog to [44bd44532d]. stephan 2025-03-06 07:48:45 +00:00
  • 894cda4db7 Fix a tcl typo in the previous checkin which triggers an error on one machine but not another. stephan 2025-03-06 07:09:50 +00:00
  • 2d960e943b Have the configure script report cygwin as SQLITE_OS_UNIX instead of SQLITE_OS_WIN, per off-list discussion with Jan Nijtmans. stephan 2025-03-06 06:25:45 +00:00
  • fc9b5d2a95 Have the recover module add "PRAGMA foreign_keys = off" to SQL output. Have the shell tool add ".dbconfig defensive off". dan 2025-03-05 19:39:02 +00:00
  • bee4fb401e Always ignore comments in the schema of a database, even if SQLITE_DBCONFIG_ENABLE_COMMENTS is turned off. drh 2025-03-05 18:18:17 +00:00
  • c27c61586f Update the recovery extension so that it works with encrypted databases. dan 2025-03-05 17:26:56 +00:00
  • 427e0076a9 Use AtomicRead() and AtomicWrite() to access the pcache1_g.bUnderPressure global, to forestall unnecessary angst from thread analyzers. drh 2025-03-05 17:12:42 +00:00
  • 9f19ea83e7 Improvement output for ".schema --indent" in the CLI when the schema contains partial indexes with long and complicated WHERE clauses. drh 2025-03-05 16:35:51 +00:00
  • d376cec4e9 Improvement output for ".schema --indent" in the CLI when the schema contains partial indexes with long and complicated WHERE clauses. wrong-branch drh 2025-03-05 16:30:36 +00:00
  • 0131629cdc Update Lemon so that it accepts filename arguments to directives like "%include". Ex: "<tt>%include &lt;./subdir/file-to-include.txt&gt;</tt>". This was capability needed by pikchr and backported here for safe keeping. SQLite does not need this capability, though it doesn't hurt to have it in tree. drh 2025-03-05 13:39:33 +00:00
  • bf09cbe2ca Minor configure script cleanups which started out as cygwin-specific fixes but ended up just being minor platform-agnostic cleanups. stephan 2025-03-04 21:37:40 +00:00
  • 4b60c1b49c Roll back part of [6d87a8efe]: the check for tclsh90.exe (as opposed to tclsh9.0.exe) is incorrect on these platforms (it's an msvc build). Also remove an unused function added in that checkin. stephan 2025-03-04 21:31:18 +00:00
  • e34ad2b0b3 tclsqlite3 patch from Christian Werner: replace FILE handles with TCL channels for the db copy command. stephan 2025-03-04 21:25:18 +00:00
  • 0ca5b1e39d Teach autosetup how to find tclsh v9.0 on cygwin. stephan 2025-03-04 19:38:38 +00:00
  • 870ff768a8 Fix pointless comparison of an unsigned integer to less than zero in Lemon. drh 2025-03-04 17:06:38 +00:00
  • f5965e9d51 Makefile doc updates. Remove a couple extraneous targets. No functional changes. stephan 2025-03-04 07:29:28 +00:00
  • 3ce81095f9 Minor doc typo fixes via [forum:65bd941da8|forum post 65bd941da8]. stephan 2025-03-04 06:29:03 +00:00
  • 5b27bfac44 Document the EXTRA_SRC makefile var and add --amalgamation-extra-src=list to the canonical-build configure script as the formal way to pass that at configure-time. stephan 2025-03-04 05:16:10 +00:00
  • 707b713adc Merge the latest trunk enhancements into the reuse-schema branch. drh 2025-03-03 16:53:48 +00:00
  • 1b493be98d Merge the latest trunk enhancements into the bedrock branch through the wal2 intermediary. drh 2025-03-03 16:01:11 +00:00
  • 699a832669 Merge the latest trunk enhancements into the wal2 branch. drh 2025-03-03 15:57:12 +00:00
  • 1b9448f4d2 Merge all the latest trunk enhancements into the begin-concurrent branch. drh 2025-03-03 15:53:46 +00:00
  • 272344d206 Internal configure script cleanups. Resolve an as-yet-hypothetical corner case involving the --dev flag mixed with custom CFLAGS containing SQLITE_ENABLE... or SQLITE_OMIT... flags. Fix an unrelated API doc typo reported in [forum:606ea661df|forum post 606ea661df]. stephan 2025-03-03 14:15:13 +00:00
  • 31b72ff521 Minor configure script doc tweaks. This is also a note that the basic elements of the build run as-is on Haiku OS Beta 5 but the tcl bits do not (for lack of tclConfig.sh). stephan 2025-03-03 11:48:09 +00:00
  • c171cf1ef7 Ensure that detection of control characters by comparison against 0x1f uses unsigned characters. [forum:/forumpost/4c344ca61f|Forum post 4c344ca61f]. drh 2025-03-02 20:29:49 +00:00
  • c9cc6a5474 Use SQLITE_EXTRA_INIT_MUTEXED instead of SQLITE_EXTRA_INIT for the SQLITE_WASM_EXTRA_INIT feature, as suggested in [forum:14183b98fc0b1dea|forum post 14183b98fc0b1dea]. This doesn't make a functional difference now - this is in the name of future-proofing against eventual threading support in wasm. stephan 2025-03-01 23:44:11 +00:00
  • 8346ceef5a Add an assert() in vdbesort.c to help both humans and static analyzer AIs understand why a particular array cannot overflow. drh 2025-03-01 11:47:01 +00:00
  • 557974e126 In the CLI, ensure that all calls to ctype.h macros are cast to unsigned char. Apparently cygwin needs this. drh 2025-02-28 15:54:28 +00:00
  • f5d3e81eff Bring the autosetup-related bits up to par with trunk. stephan 2025-02-28 05:01:38 +00:00
  • cf794e17cc Latest upstream autosetup. Fixes two minor corner-case issues which we haven't yet seen in practice. stephan 2025-02-28 04:58:43 +00:00
  • 9b7c5c247b Strive to make sorts stable in the mkpragmatab.tcl build script, so that we get consistent amalgamations regardless of platform. [forum:/forumpost/c9914addebf3da51|Forum thread c9914addebf3da51]. stephan 2025-02-28 01:06:14 +00:00
  • da5f813878 Approximately 100 typo corrections spanning the whole tree, submitted via [forum:0db9827f0464bc33|forum post 0db9827f0464bc33] and individually audited and verified. Affects only code comments, innocuous test strings, error message text in tool (not library) code, and configure-level help text. stephan 2025-02-27 21:17:55 +00:00
  • 3398441bfc Reimplement testrunner_data.tcl::trd_get_bin_name() to assume a .exe extension on all platforms not matching "unix", to avoid having to do file-exists checks. stephan 2025-02-27 19:40:02 +00:00
  • 1d54203394 Strive to make sorts stable in the mkpragmatab.tcl build script, so that we get consistent amalgamations regardless of platform. [forum:/forumpost/c9914addebf3da51|Forum thread c9914addebf3da51]. drh 2025-02-27 16:07:49 +00:00
  • 157d9276a0 Merge back a sequence of three changes that were branched due to a build break. drh 2025-02-27 15:55:01 +00:00
  • 29820d39d8 Fix build break in [e2bd23f251359e7a]. build-break drh 2025-02-27 15:52:15 +00:00
  • fd3938fbca Add support for SQLITE_EXTRA_INIT_MUTEXED - like SQLITE_EXTRA_INIT, but is called from within sqlite3_initialize() when the SQLITE_MUTEX_STATIC_MAIN mutex is still held. dan 2025-02-27 11:03:54 +00:00
  • 129203bce3 Internal doc typo fixes reported in [forum:01d15f21b6|forum post 01d15f21b6]. stephan 2025-02-27 03:23:33 +00:00
  • e1e822ca23 Teach testrunner how to run local binaries which have a .exe extension. Also teach it to recognized mingw environments (but actually building the test programs there currently doesn't work). stephan 2025-02-26 19:22:52 +00:00
  • 94c42564f3 Test testrunner.tcl to identify an msys environment. stephan 2025-02-26 18:31:42 +00:00
  • 666bbd4641 Undo part of [69e83ab859c], as that order of operations breaks the --prefix=... configure flag. Found a workaround for the library version and OS/environment info being emitted when --help. stephan 2025-02-26 17:11:25 +00:00
  • 68d88cfec5 configure: extend the readline detection a bit so that it can find readline on termux environments without having to be told where it is. Fix a typo in a libedit-related message. stephan 2025-02-26 16:15:34 +00:00
  • a37aec123a Shift some bootstrapping configure bits to avoid emitting extra output if --help is specified. stephan 2025-02-26 09:14:26 +00:00
  • 69eaadbee3 Merge trunk into the sahpool-digest branch. stephan 2025-02-26 03:32:52 +00:00
  • d804893762 Fix a bug in mkwasmbuilds.c which caused sqlite3.wasm to get deleted directly after it was built. stephan 2025-02-26 03:20:26 +00:00
  • d2f7dfa619 More work on the sahpool digest fix. New/fixed versions can read legacy (no digest) files but the reverse is only possible in limited circumstances (when files originated from a legacy version). The burning question is whether the real fix would be to remove this digest check altogether, as it only applies in a very limited context, and the fact that it was broken for some 18 months unnoticed suggests that its value might not be worth the CPU cycles. stephan 2025-02-26 03:03:08 +00:00