SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

364 check-ins using file src/attach.c version f35bb8cc

2024-12-24
14:44
Properly wait for asynchronous results for calls to LockFileEx() on FILE_FLAG_OVERLAPPED files even if LOCKFILE_FAIL_IMMEDIATELY, which usually causes LockFileEx() to return synchronously, is specified. (Leaf check-in: 35b3e73c user: dan tags: win32-enable-setlk)
2024-12-22
21:17
In the (debugging) rtreenode() function, do not override an error coming out of sqlite3_result_text(). (Leaf check-in: 286559df user: drh tags: trunk)
2024-12-19
20:29
Fix a test case in sqllimits1.test so that it works with the Apple configuration which changes the default SQLITE_MAX_LENGTH. (check-in: 536fff14 user: drh tags: trunk)
19:52
Correction to check-in [a9759fc78d6cb0df] - printf() parameters values must be integers. (check-in: 2db531d1 user: drh tags: trunk)
19:02
The BTree mutex must be held when calling sqlite3BtreeLastPage(). This check-in fixes a bug introduced by [cf8b99e17872c054]. (check-in: e6c30ee5 user: drh tags: trunk)
14:20
Fix the sort4.test module so that the first two test cases are omitted when SQLite has been compiled using SQLITE_MAX_WORKER_THREADS=0. (check-in: 5b96dcf5 user: drh tags: trunk)
14:09
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. (check-in: c7839b80 user: stephan tags: trunk)
14:08
Fix the Microsoft makefile so that it does not set SQLITE_TEMP_STORE unnecessarily. (check-in: f9b92f95 user: drh tags: trunk)
13:36
Enhance lemon so that it accepts the -U command-line option that undefines a preprocessor macro. (check-in: e2188a3e user: drh tags: trunk)
12:08
Fix additional integer overflow problems in the substr() function. (check-in: 472abb49 user: drh tags: trunk)
2024-12-18
20:29
Fix possible integer oveflow in the second and third argument to substr(). (check-in: b04b4006 user: drh tags: trunk)
20:23
Experimental: If SQLite is compiled with SQLITE_WAL_BIGHASH defined, use hash tables large enough to fit 128K, instead of 4K, entries in the *-shm file. (Leaf check-in: 0cb853ea user: dan tags: bedrock-bighash)
18:29
Avoid 32-bit roundoff error on the second argument to round(). Forum post 170aeab92a. (check-in: a9759fc7 user: drh tags: trunk)
03:41
Rename some var refs in ext/lsm1/Makefile for the new build process. (check-in: 0ce42fa5 user: stephan tags: trunk)
2024-12-17
14:32
Do not attempt to truncate a database in sqlite_dbpage if the database is not larger than the requested truncation size. (check-in: cf8b99e1 user: drh tags: trunk)
2024-12-16
20:30
Optimize deferred allocation of pages on this branch by avoiding BTALLOC_LE. (Leaf check-in: b1e80468 user: dan tags: bedrock)
19:31
Fix release test errors on winrt. (check-in: 39bebd50 user: dan tags: win32-enable-setlk)
18:29
Merge divergence-reduction changes into the bedrock branch. (check-in: ec5d7025 user: drh tags: bedrock)
18:16
Sync wal2 with trunk. (Leaf check-in: caadbe0c user: drh tags: wal2)
18:13
Further reduction in divergence from trunk. (check-in: e4406a6e user: drh tags: wal2)
18:04
Code formatting changes to make trunk more like wal2. (check-in: 8f725472 user: drh tags: trunk)
17:46
Reduce divergence of wal2 from trunk. (check-in: 90d744d6 user: drh tags: wal2)
15:13
Fix a problem on this branch causing a file-handle to be leaked following an OOM condition. (check-in: 5ca12dc9 user: dan tags: win32-enable-setlk)
13:38
Merge all the latest trunk/wal2 enhancements and fixes into the bedrock branch. (check-in: a0cf2621 user: drh tags: bedrock)
13:32
Sync with trunk. (check-in: eab61945 user: drh tags: wal2)
13:25
Changes for better alignment with the wal2 branch. (check-in: 4fab85b3 user: drh tags: trunk)
13:05
Synchronize the WASM code with trunk. (check-in: 3619baa1 user: drh tags: wal2)
12:41
Merge all the latest trunk enhancements and fixes into the wal2 branch. (check-in: 011ce4ae user: drh tags: wal2)
12:19
Resynchronize the begin-concurrent branch with trunk. (Leaf check-in: e4718a04 user: drh tags: begin-concurrent)
12:09
Remove unnecessary divergence from trunk. (check-in: 019b0434 user: drh tags: begin-concurrent)
12:08
Remove unnecessary end-of-line whitespace. (check-in: ae580443 user: drh tags: trunk)
11:19
Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: faef90ea user: drh tags: begin-concurrent)
07:03
Tiny makefile/configure script doc tweaks. No functional changes. (check-in: ed5e9126 user: stephan tags: trunk)
2024-12-14
17:36
Merge changes from wal2, including the fix to prevent non-PASSIVE checkpoints from ever taking the writer lock. (check-in: eb8449ea user: dan tags: bedrock)
17:19
Update to walRestartLog() function to make it shorter easier to merge with branch "bedrock". (check-in: 88d7fb2a user: dan tags: wal2)
16:50
Fix a problem with non-PASSIVE wal2 checkpoints sometimes taking the WRITER lock. (check-in: 11d7865a user: dan tags: wal2)
16:41
Do not attempt to switch wal files when writing if the current transaction read from both wal files. This fix is already on branch 'bedrock'. (check-in: 693cc8e8 user: dan tags: wal2)
2024-12-13
20:18
Fix a problem with the output of "PRAGMA wal_checkpoint" introduced long ago by [63483e22c775183e]. (check-in: c5f7bba8 user: dan tags: wal2)
17:01
Merge all recent trunk enhancements and fixes into the wal2 branch. Addendum: This was part of an attempt to reduce divergence. I'm still trying to figure out the best way to do that. (Closed-Leaf check-in: be32067a user: drh tags: mistake)
16:37
Try to reduce incidental divergence between trunk and wal2. (Leaf check-in: 01c8ebfb user: drh tags: wal2-conflict-reduction)
01:29
Fix a harmless compiler warning that comes up when using SQLITE_DEBUG in separate compilation mode. (check-in: 52e0f8ca user: drh tags: trunk)
2024-12-12
20:59
Fix a buffer overread in test code. Add test configurations for ENABLE_SETLK=1 and FOR_WINRT=1 builds to release testing. (check-in: b558db5d user: dan tags: win32-enable-setlk)
15:11
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. (check-in: e8d7d68b user: drh tags: trunk)
2024-12-11
15:30
Ensure that all win32 API functions invocations in os_win.c are made via the function table. Fix asan error in test code. (check-in: 2ffdc799 user: dan tags: win32-enable-setlk)
2024-12-10
21:24
Fix a problem with walsetlk.test on windows. (check-in: 704e6567 user: dan tags: win32-enable-setlk)
19:00
Ensure windows may block on a SHARED (but not EXCLUSIVE) DMS lock. (check-in: 55e4e7bb user: dan tags: win32-enable-setlk)
18:12
Fix walsetlk.test to work on unix. (check-in: 798dff04 user: dan tags: win32-enable-setlk)
17:36
Merge latest trunk changes into this branch. (check-in: d67a42d6 user: dan tags: win32-enable-setlk)
12:32
Fix harmless typo in a comment describing the columnMallocFailure() function. (check-in: 0f3b484f user: drh tags: trunk)
2024-12-09
21:01
Bring all the latest trunk fixes and enhancements into the commit-and-continue branch. (Leaf check-in: 19e47df3 user: drh tags: commit-and-continue)
20:46
Make the TCL interface more rebust against very large strings coming out of TCL9. (check-in: e2bae414 user: drh tags: trunk)
20:37
Enhance the ".import" command of the CLI so that it is able to insert into a view that has an instead-of trigger. Forum post 3e03c73150f8b9f8. (check-in: 7dcc3731 user: drh tags: trunk)
20:36
Enhance the ".import" command of the CLI so that it is able to insert into a view that has an instead-of trigger. (Originally checked into the wrong branch.) (check-in: c71acee1 user: drh tags: commit-and-continue)
17:30
Test the case where a db connection blocks for a while and then successfully obtains the lock. (check-in: 9cbc97ff user: dan tags: win32-enable-setlk)
16:01
Enhance tests to ensure that blocking locks, and not calls to xSleep(), are being used by SQLITE_ENABLE_SETLK_TIMEOUT builds when they should be. (check-in: c892242b user: dan tags: win32-enable-setlk)
13:02
Add NEVER() around branches that seems to have been made obsolete by [a350ea7c6b89725b]. (check-in: cb5bad5c user: drh tags: trunk)
11:47
Further improvements to the decimal-to-float conversion for values close to LARGEST_UINT64. (check-in: 453c9499 user: drh tags: trunk)
11:37
Fix an obscure problem with multiple outer joins, ON clauses and query flattening. Forum thread 5c8a069d23. (check-in: a350ea7c user: dan tags: trunk)
11:12
Fix an obscure problem with multiple outer joins, ON clauses and query flattening. Forum thread 5c8a069d23. (Closed-Leaf check-in: 289daf6c user: dan tags: forum-5c8a069d23-fix)
10:57
Add a note in Makefile.msc about EXTRA_SRC files possibly requiring manual editing. (check-in: a0a36bad user: drh tags: trunk)
10:52
Resynchronize autoconf/Makefile.msc (Closed-Leaf check-in: 8f9c6408 user: drh tags: makefile-fix)
2024-12-08
18:38
Add a note in Makefile.msc about EXTRA_SRC files possibly requiring manual editing, as discussed in forum thread 903f721f3e7c0d25. (check-in: 229c2f01 user: stephan tags: makefile-fix)
2024-12-07
23:29
Merge the latest trunk fixes and enhancements into the bedrock branch. (check-in: 08cfa7e8 user: drh tags: bedrock)
23:24
Update the wal2 branch with the latest trunk enhancements and fixes. (check-in: d3ce95f7 user: drh tags: wal2)
19:57
Yet another iteration of the solution to the floating-point conversion problem - this what avoids complaints about oversize double values from -fsanitize. (check-in: fc6904a5 user: drh tags: trunk)
19:06
A cleaner and more robust solution to the floating-point conversion problem originally fixed by [81342fa6dd03fffb]. (check-in: 351de57f user: drh tags: trunk)
17:08
Fix more harmless compiler warnings. (check-in: f5b8fd77 user: drh tags: trunk)
16:53
Fix harmless compiler warning caused by the previous check-in. (check-in: 462700ae user: drh tags: trunk)
14:48
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 post 569a7209179a7f5e. Fixed by this check-in. (check-in: 81342fa6 user: drh tags: trunk)
2024-12-06
18:35
Add the SQLITE_PREPARE_DONT_LOG option for sqlite3_prepare_v3(), that prevents errors in the compilation of the SQL from being sent to sqlite3_log(). (check-in: 87040342 user: drh tags: trunk)
00:12
Minor doc update in auto.def. No functional changes. (check-in: d324be29 user: stephan tags: trunk)
00:09
Ensure that the post-config checks for @UNEXPANDED_VARS@ pass even if --disable-tcl is used, as reported in forum post 74ef8059fc. (check-in: a38606bf user: stephan tags: trunk)
2024-12-05
23:53
Fix the build of sqlite3_analyzer.exe on Windows that was broken by check-in [80f3bf8c2ee31ba1]. (check-in: 223f47b2 user: drh tags: trunk)
2024-12-04
19:32
Fix filectrl.test so that it works with winrt builds. (check-in: 70b0cfb0 user: dan tags: win32-enable-setlk)
18:27
Assume an NT-based OS when running tests if sqlite_os_type is not set. (check-in: 22e4aede user: dan tags: win32-enable-setlk)
16:01
Minor doc correction in ext/misc/shathree.c, as reported in the forum. No functional changes. (check-in: 3b82d2c6 user: stephan tags: trunk)
2024-12-03
19:41
Back out minor changes not required by this branch. (check-in: 68c34ffd user: dan tags: win32-enable-setlk)
19:30
Merge latest trunk into this branch. (check-in: eb13b8b3 user: dan tags: win32-enable-setlk)
19:09
Further test file tweaks to run with SQLITE_OS_WINRT builds. (check-in: 54853421 user: dan tags: win32-enable-setlk)
15:19
Fix the lock_win32_file test command so that it works with winrt builds. (check-in: 59946560 user: dan tags: win32-enable-setlk)
2024-12-02
20:48
Fix a problem with SQLITE_OS_WINRT builds. (check-in: baf43e8c user: dan tags: win32-enable-setlk)
19:55
Improve the output from the ".testctrl opt" command in the CLI. (check-in: de7064d1 user: drh tags: trunk)
17:21
Ensure that the query flattener does not change an ON clause term to a WHERE clause term. Forum post 3f676b1196. Follow-up to [f1eae192315335d7]. (check-in: bdd408a2 user: dan tags: trunk)
16:24
Fix a comment typo on the sqlite3ExprIsSingleTableConstraint() routine. (check-in: 346a845b user: drh tags: trunk)
16:07
Fix a harmless typo in debugging output. (check-in: 578f76cf user: drh tags: trunk)
14:14
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. (check-in: 447db1cd user: stephan tags: trunk)
13:47
Enable MEMSYS5 with the --dev configure option. (check-in: 9e09d5d6 user: drh tags: trunk)
13:29
Slighly less confusing output from treeview during debugging. (check-in: 7aef0b93 user: drh tags: trunk)
2024-12-01
15:23
Trim a bit more from the sqlite370.svg border to get it closer in scaled size to the logo currently on the docsrc site. (check-in: 81c7277f user: stephan tags: trunk)
14:20
Correct the fill color for the background of sqlite370.svg - it was slightly darker than it should have been. (check-in: 73213240 user: stephan tags: trunk)
14:14
Re-export sqlite370.svg to retain the gradient part and clip the size using the cutting guides in sqlite370.eps. (check-in: 12017b01 user: stephan tags: trunk)
14:02
Export a clipped copy of sqlite370.eps as sqlite370.svg, based on discussion in forum post 1bbd6d17ca. (check-in: dd3a13c1 user: stephan tags: trunk)
2024-11-30
20:00
On windows, use a separate handle for each connection for xShmLock() locks. (check-in: 272d552f user: dan tags: win32-enable-setlk)
17:48
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. (check-in: 301df5c2 user: stephan tags: trunk)
14:13
In sqlite_dbpage, cancel any pending truncate operation if there an error occurs later in the transaction. (check-in: 1abab10f user: drh tags: trunk)
12:00
A NEVER() that was added by [eb5ac9e5b9a4f9c8] is violated by the ifnull() in-line function. This check-in fixes that problem. (check-in: 2220ccf4 user: drh tags: trunk)
2024-11-29
11:49
Fix a NEVER() in the iif() logic that can be true if compiled with SQLITE_ENABLE_UNKNOWN_SQL_FUNCTIONS. Problem introduced by [eb5ac9e5b9a4f9c8]. (check-in: 3ec2df5a user: drh tags: trunk)
2024-11-28
23:55
Remove some outdated docs from Makefile.in. (check-in: cc2c5fc9 user: stephan tags: trunk)
20:46
Typo fixes and cleanups in autosetup/README.md. (check-in: 7f366565 user: stephan tags: trunk)
16:14
Configure script doc updates and cleanups. Skip check for EMSDK when doing an out-of-tree build, as ext/wasm does not support that build mode. (check-in: 9d2f4148 user: stephan tags: trunk)
15:52
ext/icu/README.txt: clean up EOL whitespace and add a mention of the --with-icu-... configure flags available as of version 3.48. (check-in: 4976ac71 user: stephan tags: trunk)
11:52
Improvements to sqlite3ExprImpliesExpr() so that it recognizes that expressions like "iif(X,Y)" and "CASE WHEN X THEN Y END" imply X. (check-in: eb5ac9e5 user: drh tags: trunk)
02:09
Simplification to the fix in the prior check-in. (Closed-Leaf check-in: f79cb748 user: drh tags: expr-implies-expr)
01:47
The sqlite3ExprCompare() routine should always compare the same variables as equal to one another, regardless of whether or not QPSG is set. (check-in: df95d520 user: drh tags: expr-implies-expr)
00:58
Add two NEVER() conditions. (check-in: 4f358ad2 user: drh tags: expr-implies-expr)
00:34
Enhancements to sqlite3ExprImpliesExpr() so that it realizes that "iif(A,B)" implies "A". (check-in: d96ecbee user: drh tags: expr-implies-expr)
2024-11-27
18:01
Fix an inaccuracy in the documentation in fts5.h. (check-in: ec3ca6f1 user: dan tags: trunk)
14:41
Use the P5 rather than the P3 parameter of OP_AutoCommit to avoid an unnecessary conflict in the begin-concurrent branch. Fix some comments. (check-in: e6f63526 user: drh tags: commit-and-continue)
14:16
Merge the latest trunk enhancements into the commit-and-continue branch. (check-in: adaddf49 user: drh tags: commit-and-continue)
2024-11-26
23:40
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(). (check-in: 1e405c39 user: drh tags: trunk)
23:30
New test cases. (Closed-Leaf check-in: f1cb1a81 user: drh tags: two-argument-iif)
20:56
Provide a two-argument version of the iif() function, plus an alternative spelling that only requires a single "i". (check-in: a251ee64 user: drh tags: two-argument-iif)
20:46
Update fts5 so that the xInstToken() extension API works with prefix queries. (check-in: 41b79bde user: dan tags: trunk)
20:16
Update documentation in fts5.h. (Closed-Leaf check-in: f1e44f70 user: dan tags: fts5-tokendata-prefix)
19:19
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. (check-in: 00dffd10 user: stephan tags: trunk)
19:02
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. (Closed-Leaf check-in: 3296c8d3 user: stephan tags: autosetup-debug-flag)
16:12
Move some of the in-comment configure script help text into the --help text. No functional changes. (check-in: ee8449c4 user: stephan tags: trunk)
16:04
Minor tweak to ./configure --help output. (check-in: 7e634d05 user: drh tags: trunk)
03:15
Replace some outdated docs re. soname with a link to the soname forum post. (check-in: 9225701c user: stephan tags: trunk)
2024-11-25
18:47
Ensure that file-handle winShmNode.hFile.h is used in a thread-safe manner. (check-in: 7a32b497 user: dan tags: win32-enable-setlk)
17:07
Correct duplicated soname linker flags, one of them mis-named. (check-in: 87dfd92d user: stephan tags: trunk)
16:54
Fixes for code on this branch. Now appears to work, but is not tested well. (check-in: 0568fc6d user: dan tags: win32-enable-setlk)
2024-11-22
21:24
Supports SQLITE_ENABLE_SETLK_TIMEOUT on windows. Does not work properly yet. (check-in: 737ca8a9 user: dan tags: win32-enable-setlk)
17:41
Fix another issue in argument expansion on Windows for tclsqlite3.c in interpreter mode. Problem introduced by check-in [9b87ea219bce5689] and unfixed by [cd942dce148c9d8f]. (check-in: 0fe1622c user: drh tags: trunk)
16:45
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. (check-in: 3d6ae138 user: stephan tags: trunk)
16:24
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. (check-in: 9c1c1b99 user: stephan tags: trunk)
14:18
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. (check-in: 2df5065d user: stephan tags: trunk)
14:12
Makefile doc cleanups. No functional changes. (check-in: 64add0ac user: stephan tags: trunk)
13:47
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. (check-in: 91bd9813 user: stephan tags: trunk)
13:22
Add links to the SONAME discussion at relevant places in auto.def and the makefiles. No functional changes. (check-in: c78dcc31 user: stephan tags: trunk)
12:29
Fix harmless scanbuild warnings caused by the introduction of the ".dbtotxt" command into the CLI by check-in [b43acf5a8cd4a5ef]. (check-in: 554d8fbd user: drh tags: trunk)
12:07
Fix some harmless scanbuild warnings in the shell. (check-in: 9ba1c9b5 user: drh tags: trunk)
12:00
Fix harmless compiler warning caused by [c77a4a42f2e3d164]. (check-in: 063690d2 user: drh tags: trunk)
2024-11-21
20:57
Make ".scanstatus" an undocumented alternative name for ".scanstats" in the CLI. (check-in: f20688ef user: drh tags: trunk)
20:10
Fix a bug-in-waiting (one too few list elements) in [b6bd25bd769e]. (check-in: e527dcd0 user: stephan tags: trunk)
20:07
Add the --scanstatus configure flag to set -DSQLITE_ENABLE_STMT_SCANSTATUS. (check-in: b6bd25bd user: stephan tags: trunk)
15:53
Fix a JS test which was broken when OMIT_PROGRESS_CALLBACK was _not_ used. (check-in: fba23150 user: stephan tags: trunk)
01:50
Document that -nofollow does not work on Windows. Fix Windows symlink test cases for when the test suite is run as administrator. (check-in: 4de8a75e user: drh tags: trunk)
2024-11-20
20:39
Fix compiler warnings caused by variable shadowing. (check-in: 211b3057 user: dan tags: fts5-tokendata-prefix)
20:24
Merge the latest trunk fixes and makefile enhancements into the commit-and-continue branch. (check-in: 34cb6029 user: drh tags: commit-and-continue)
16:21
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. (check-in: 314c606d user: drh tags: trunk)
16:17
Use shared-library flags, not shared-object flags, to create shared libraries. This makes no difference on Linux, but is required for Mac. (Closed-Leaf check-in: bfaa3ee7 user: drh tags: link-tools-dynamically)
14:59
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 post 0b9ded2f8428ac00. (check-in: 19d1bede user: drh tags: trunk)
14:19
Provide the sqlite3ShowWhereTerm() interface callable interactively from a debugger, when compiling with SQLITE_DEBUG. (check-in: c77a4a42 user: drh tags: trunk)
11:34
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. (check-in: bf66c6df user: drh tags: trunk)
2024-11-19
21:19
Add fix from [bfab759611b0] to sqltclsh. Remove some now-unneeded has_tclsh84/5 checks in cases where jimsh can be used. (check-in: 9d389b99 user: stephan tags: link-tools-dynamically)
21:14
Add missing $TCL_LIBS to the link for sqlite3_analyzer. (check-in: bfab7596 user: drh tags: link-tools-dynamically)
20:23
Didn't work out; broke the build. Was: Add the ability to build certain tools dynamically linked to libsqlite3 instead of embedding their own copy of sqlite3.c. (Closed-Leaf check-in: 84bd96a6 user: stephan tags: mistake)
20:21
Rename --link-tools-dynamically to --dynlink-tools, per discussion. (check-in: 50b9f6fd user: stephan tags: link-tools-dynamically)
20:14
Move the in-comment-code commentary about --with-debug, from [7b14309be4], into the --help text for that flag, where it's readily visible. (check-in: c938e5d7 user: stephan tags: link-tools-dynamically)
19:47
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. (check-in: 80f3bf8c user: stephan tags: link-tools-dynamically)
19:16
Merge trunk into this branch. Fix a small jimtcl/tclsh regex incompatibility in mkccode.tcl. (check-in: 7fb3ebfe user: stephan tags: link-tools-dynamically)
18:26
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. (check-in: 7fec2092 user: drh tags: trunk)
17:41
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. (check-in: 7b14309b user: stephan tags: link-tools-dynamically)
16:40
Reformulate sqldiff deps and rules so that the target matches the resulting file name, to avoid rebuilding it on every make invocation. Apply the same treatment to the sqlite3 CLI shell. (check-in: 9a17b83f user: stephan tags: link-tools-dynamically)
15:20
Initial configure support for linking certain binaries to libsqlite3.so instead of embedding it dynamically (which they typically do). This currently applies only to sqldiff, but support for adding the same for other tools is planned. This requires disabling the soname because setting it causes the build to link to whatever libsqlite3.so.0 is installed system-wide, so the soname now defaults to off. (check-in: 9192c146 user: stephan tags: link-tools-dynamically)
11:58
Fix a problem handling OOM errors in fts3 that could occur when parsing multi-token strings. (check-in: 4c4d1db0 user: dan tags: trunk)
2024-11-18
20:44
Merge the divergence reduction into the bedrock branch. (check-in: e03dd0bd user: drh tags: bedrock)
20:30
Continue to reduce divergence between wal2 and trunk. (check-in: 9591ab7c user: drh tags: wal2)
18:49
Realignment of begin-concurrent with trunk. (check-in: 38232952 user: drh tags: begin-concurrent)
18:45
Reduce divergence from trunk. (check-in: c5d77671 user: drh tags: begin-concurrent)
18:45
Reduce divergence from begin-concurrent. (check-in: 84d41e9d user: drh tags: trunk)
18:27
Realign trunk and wal2. (check-in: dcf27687 user: drh tags: wal2)
18:03
Attempt to reduce divergence from trunk. (check-in: ffe9f9cc user: drh tags: wal2)
17:05
Attempt to reduce divergence with the wal2 branch. (check-in: e0d8f991 user: drh tags: trunk)
16:52
Realign the begin-concurrent branch with trunk. (check-in: b92c9a66 user: drh tags: begin-concurrent)
16:44
Attempt to reduce divergence from trunk. (check-in: ae863439 user: drh tags: begin-concurrent)
16:44
Attempt to reduce divergence with begin-concurrent. (check-in: f783d901 user: drh tags: trunk)
15:34
Merge the latest trunk changes into the bedrock branch. (check-in: 59a7eb29 user: drh tags: bedrock)
15:30
Merge the latest trunk changes into the wal2 branch. (check-in: d19aeff6 user: drh tags: wal2)
15:18
Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 680a2eaa user: drh tags: begin-concurrent)
14:54
Disable commit-and-continue tests under the inmemory-journal and journaltest permutations. (check-in: 2f31c2b0 user: drh tags: commit-and-continue)
14:15
Remove the .POSIX entries from the makefiles because they cause portability problems rather than solve them. (check-in: e1330ecf user: stephan tags: trunk)
14:08
Fix a "applying zero offset to null pointer" usan error in the fts5 trigram tokenizer. (check-in: 9b79b999 user: dan tags: trunk)
13:29
Fix minor problems in testrunner.tcl that pop up when the command-line arguments are such that no tests are run. (check-in: 321ded32 user: drh tags: trunk)
11:49
The COMMIT AND CONTINUE TRANSACTION syntax is disabled by default. Enable it using the SQLITE_DBCONFIG_CONTINUE_TRANSACTION configuration option. (check-in: a2b784cb user: drh tags: commit-and-continue)
11:14
Fix a typo in a variable name. (check-in: 9c7f569a user: drh tags: commit-and-continue)
2024-11-17
23:53
Fix an uninitialized variable that appears to be the cause of the problems with check-in [80b98446fc070d9a]. (check-in: 22393c3a user: drh tags: commit-and-continue)
11:46
Merge the latest trunk enhancements into the commit-and-continue branch. (check-in: 1742af12 user: drh tags: commit-and-continue)
11:42
Make the --vfstrace output from the CLI go to the same output channel as everything else. (check-in: f71d4900 user: drh tags: trunk)
09:49
buildtclext.tcl: add docs explaining the DESTDIR check and break out of the auto_path search loop early if the DESTDIR is not writable, rather than re-checking that repeatedly. (check-in: d07be336 user: stephan tags: trunk)
2024-11-16
23:32
Add simple test cases. In doing so I found that the feature does not work on a Linux ramdisk, nor on Win11. Gotta fix that. (check-in: 80b98446 user: drh tags: commit-and-continue)
18:59
Merge all the latest trunk enhancements into the commit-and-continue branch. (check-in: d217b484 user: drh tags: commit-and-continue)
18:54
Call fflush() on ".echo" output from the shell, so that the output to stdout is aligned with output to stderr. (check-in: c38b9db3 user: drh tags: trunk)
18:37
Clean up the implementation now that it only has to deal with the much simplier concept of COMMIT AND CONTINUE TRANSACTION. (check-in: 17360660 user: drh tags: commit-and-continue)
17:39
Fix argument expansion in sqlite-tclsh on Windows such that if an argument does not match a filename even after glob expansion, it is appended to the argument list verbatim. (check-in: cd942dce user: drh tags: trunk)
17:09
Handle DESTDIR at an earlier phase in buildtclext.tcl to account for the is-writable-dir check and to filter out //zipfs: dirs as (im)possible installation targets. (check-in: d2e8c161 user: stephan tags: trunk)
14:40
Simplify the new syntax to be just "COMMIT AND CONTINUE TRANSACTION". (check-in: 61797109 user: drh tags: commit-and-continue)
14:30
Add the --destdir flag to the tclextension-install makefile target. (check-in: d1663cf0 user: stephan tags: trunk)
14:29
Add --destdir flag support to buildtclext.tcl, but do not yet add that to the makefile (so that this change can be cherrypicked to the 3.47 build). (check-in: 67a3ca0c user: stephan tags: trunk)
10:42
Rename tool/tclConfigShToTcl.sh to tool/tclConfigShToAutoDef.sh in the name of pedantic correctness. (check-in: a7dd196d user: stephan tags: trunk)
09:00
configure: tiny simplification of proj-assert. (check-in: bfdc416b user: stephan tags: trunk)
2024-11-15
20:42
Load all the latest trunk enhancements, and especially the enhancements to vfstrace, into the commit-and-begin branch. (check-in: 605889b0 user: drh tags: commit-and-continue)
20:39
Enhance the vfstrace extension such that the output can be controlled using the "PRAGMA vfstrace('...');" statement. See header comment on the source code for details. (check-in: 96105d33 user: drh tags: trunk)
19:42
In the interest of minimizing downstream disruption, set the soname of libsqlite3.so to (by default) its legacy value of libsqlite3.so.0 and unconditionally create (or replace) a symlink with that name at install-time, in addition to the newer-named symlinks. (check-in: 0773677b user: stephan tags: trunk)
17:28
Another approach at implementing COMMIT AND BEGIN. (check-in: a905bd5d user: drh tags: commit-and-continue)
16:35
Generic auto.def cleanups. No functional differences. (check-in: 02aceb8c user: stephan tags: trunk)
15:31
buildtclext.tcl: work around a case, reported in forum post 0683a49cb0, in which package maintainers edit their copy of tclConfig.sh to change the TCL_SHLIB_LD command. (check-in: e24a3efe user: stephan tags: trunk)
10:53
configure: add optional pkg-config support for detecting ICU. (check-in: 3e5b8077 user: stephan tags: trunk)
10:47
When checking pkg-config for ICU support use icu-io instead of icu-uc, as that contains all requires libs on Linux and BSD. (Closed-Leaf check-in: 6ca45754 user: stephan tags: autosetup-icu-pkg-config)
10:12
configure script doc additions for the ICU feature check. (check-in: 1925a68f user: stephan tags: trunk)
10:07
An experiment in optionally using pkg-config to determine the libs to link in for ICU support, but its ldflags is missing one required lib on both Linux and OpenBSD. Keeping this for later reference, as it demonstrates how to use pkg-config from autosetup. (check-in: 09caa94c user: stephan tags: autosetup-icu-pkg-config)
2024-11-14
22:59
Attempt to hold a lock across the COMMIT AND BEGIN boundary so that no other process can start a new transaction in between the COMMIT and the BEGIN. (check-in: bc8bcc53 user: drh tags: commit-and-continue)
19:59
Fix assertion faults in the COMMIT AND BEGIN path. (check-in: a9a4ac17 user: drh tags: commit-and-continue)
19:36
Merge more makefile enhancements from trunk into the commit-and-begin branch. (check-in: 098400d3 user: drh tags: commit-and-continue)
19:34
Fix typo in the handling of the new --dev flag which caused it to set the --debug flag instead of the --with-debug flag (the former is for autosetup's internal use). (check-in: 81202d2a user: stephan tags: trunk)
19:25
Remove $prefix/include from the default -I path because it can cause the build to pick up an unintended copy of sqlite3.h. Extend the ICU configure support (the origin of -I$prefix/include) to enable fetching the -I path from icu-config and apply it only to those objects which need it. (check-in: f778dfdd user: stephan tags: trunk)
19:08
Merge makefile enhancements from trunk into the commit-and-begin branch. (check-in: b5dd11e0 user: drh tags: commit-and-continue)
19:06
Add new makefile target "sqlite3d" (where the "d" means either "development" or "debug") that always uses separate source files, regardless of the --disable-amalgmation setting. (check-in: 91da205b user: drh tags: trunk)
17:52
Add --enable-dev configure flag which sets various other flags. (check-in: ea79c363 user: stephan tags: trunk)
17:25
Merge the latest trunk enhancements and fixes into the commit-and-begin branch. (check-in: 05fb5d30 user: drh tags: commit-and-continue)
16:06
Remove unused sqlite_cfg.h.in from the build. (check-in: bba54e26 user: stephan tags: trunk)
16:00
Fix a state makefile dependency which refered to the now-removed sqlite_cfg.h.in. (Closed-Leaf check-in: 9a726b4b user: stephan tags: makefile-simplification)
15:55
Remove some obsolete macros from the CLI. (check-in: 5c4eb625 user: drh tags: trunk)
15:25
Remove unused sqlite_cfg.h.in (sqlite_cfg.h gets generated without an input template). (check-in: 6148f2d3 user: stephan tags: makefile-simplification)
14:38
Fix a problem with window functions min() and max() when used with a FILTER clause. Forum post e9126d554a. (check-in: d15fb0f7 user: dan tags: trunk)
12:23
Document the if block at the end of sqlite-check-tcl. (check-in: 6bfd0940 user: stephan tags: trunk)
12:09
configure: avoid performing multiple checks for -lm on behalf of --enable-fts4 and --enable-fts5. (check-in: 6940caa1 user: stephan tags: trunk)
12:03
Early prototype code for COMMIT AND BEGIN. Does not currently work. (check-in: ddac5973 user: drh tags: commit-and-continue)
2024-11-13
18:23
Enhance the vfstrace.c extension to show symbolic names for the various SHM locks. (check-in: c0dd7de8 user: drh tags: trunk)
18:04
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. (check-in: 2560cc70 user: drh tags: trunk)
16:08
Add the test/fork-test.c test program. (check-in: 0611e2b0 user: drh tags: trunk)
14:58
Add the SQLITE_FCNTL_NULL_IO file-control. (check-in: f0e917fc user: drh tags: trunk)
2024-11-12
13:37
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. (check-in: a4e976a0 user: drh tags: trunk)
2024-11-11
21:11
Clarify the documentation to make it clear that rows inserted by a CREATE TABLE AS SELECT statement are not counted by sqlite3_count64(). Forum post 1e6cde5648. (check-in: 5c5982e3 user: drh tags: trunk)
21:07
Adjust the behavior of sqlite3_changes64() so that it counts INSERTs into a new table created using "CREATE TABLE name AS SELECT ...". It has never done this before. The documentation is a little ambiguous about whether or not it actually should. This check-in is on a branch because it will probably never make it to trunk for fear of breaking some legacy program. (Closed-Leaf check-in: b741608c user: drh tags: chngcnt-create-as)
19:49
Fix the fts5 trigram tokenizer so that it handles non-nul-terminated strings. (check-in: 84f4e371 user: dan tags: trunk)
19:07
Add the ".dbtotxt" command to the CLI. (check-in: b43acf5a user: drh tags: trunk)
18:15
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. (check-in: 073080ca user: stephan tags: trunk)
18:11
Optimize deferred allocation of pages on this branch by avoiding BTALLOC_LE. (check-in: 08121610 user: dan tags: begin-concurrent)
17:03
Update this branch with latest changes and build system updates from trunk. (check-in: 52bd7953 user: dan tags: begin-concurrent)
17:02
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. (check-in: abfe488e user: drh tags: trunk)
13:17
Add an -fsanitize=fuzzer compatibility mode to the CLI. (Leaf check-in: d85f14c7 user: drh tags: cli-fuzz)
09:53
Doc update to account for [05073350087b]. (check-in: b81976c5 user: stephan tags: trunk)
09:37
Rename proj-define-if-opt-truthy to the more accurate, and less verbose, proj-define-for-opt. (check-in: 05073350 user: stephan tags: trunk)
2024-11-09
17:54
Fix a case in fts3 where a corrupt database record was not being handled correctly. (check-in: cbcb5375 user: dan tags: trunk)
14:34
Fix a deps problem, introduced in [1bd9de719], which breaks the build on systems where HAVE_TCL=0. (check-in: 7953a8bd user: stephan tags: trunk)
10:23
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. (check-in: ada7b36c user: stephan tags: trunk)
09:19
Remove three unused files from autosetup/. (check-in: 906563a7 user: stephan tags: trunk)
06:35
Remove an unused lib import from auto.def. (check-in: 53a71981 user: stephan tags: trunk)
2024-11-08
20:57
Increase the minimum SQLITE_LENGTH_LIMIT from 1 to 30 to avoid problems doing simple things like converting strings into integers. See also [8fd5b8ec4ab9b555]. (check-in: 6aa01707 user: drh tags: trunk)
20:44
Fix an assert() failure in sqlite3recover.c. (check-in: f52bb192 user: dan tags: trunk)
14:34
Remove one dep from .tclenv.sh which is only valid for configure-driven builds, not static makefiles. (check-in: 22986767 user: stephan tags: trunk)
13:37
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). (check-in: 1bd9de71 user: stephan tags: trunk)
08:01
Add missing CFLAGS.intree_includes to T.compile.tcl to fix build of tclsqlite3. (check-in: bb3c6dc1 user: stephan tags: trunk)
07:37
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. (check-in: d1af9f31 user: stephan tags: trunk)
06:22
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 thread 5fcbea40f3. (check-in: a5e07e80 user: stephan tags: trunk)
05:26
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 post 0c6fc6f46b2cb3. (check-in: d9314568 user: stephan tags: trunk)
2024-11-07
17:34
Fix an OOB write that could occur in fts3 when dealing with corrupt database records. (check-in: 108863ec user: dan tags: trunk)
16:59
Extend the set of --flags which get cleared/unset when using --with-wasi-sdk. Enable the soname linker option for libsqlite3.so. (check-in: 2a2419ef user: stephan tags: trunk)
15:23
Doc touchups in the line-editing feature check code. (check-in: bb5656bd user: stephan tags: trunk)
15:04
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. (check-in: c5389d39 user: stephan tags: trunk)
12:03
Further improvements to the ".mode json" output in the CLI. (check-in: 6201b570 user: drh tags: trunk)
10:07
Autosetup doc touchups. (check-in: 57451529 user: stephan tags: trunk)
09:36
Extend the list of "truthy" config values to include "true". Related doc updates. (check-in: 4455718e user: stephan tags: trunk)
08:57
Add some internal docs to auto.def explaining certain passages. (check-in: 4749967e user: stephan tags: trunk)
08:29
Document the purpose of a global auto.def var added in [0d558318172d]. (check-in: f5b66047 user: stephan tags: trunk)
07:31
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. (check-in: 0d558318 user: stephan tags: trunk)
06:02
Add mention of file-isexec in autosetup/README.md. (check-in: f4693567 user: stephan tags: trunk)
06:00
Change several 'file exists' checks for tclsh to file-isexec because that checks for .exe extensions on Windows. (check-in: 052a1b4d user: stephan tags: trunk)
05:26
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 post 5106aee3a8. (check-in: 04d2576b user: stephan tags: trunk)
2024-11-06
19:19
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. (check-in: 6216bfcb user: drh tags: trunk)
17:31
Merge latest trunk changes into this branch. (check-in: edb84234 user: dan tags: fts5-tokendata-prefix)
16:20
Add tests for xInstToken() and prefix queries with various fts5 configurations. (check-in: 9cc04331 user: dan tags: fts5-tokendata-prefix)
12:58
Re-phrase some (#if !SQLITE_CORE) to (#ifndef SQLITE_CORE), as discussed in forum post cea40371c5e34b09. (check-in: 5495b125 user: stephan tags: trunk)
12:13
Elaborate on how autosetup selects a tclsh to use. (check-in: d3887895 user: stephan tags: trunk)
10:09
Fix typo in the LICENSE.md file. (check-in: 0588cc5c user: drh tags: trunk)
08:29
Minor doc tweaks. (check-in: 2919a61b user: stephan tags: trunk)
07:20
When constructing the auto-reconfigure commands, only quote args which look like they need it. Minor doc updates. (check-in: d4fbd34f user: stephan tags: trunk)
06:44
Minor doc tweaks and typo fixes. (check-in: 406d9122 user: stephan tags: trunk)
06:06
Split the motivation of the makefile var naming convention into its doc own section. (check-in: bf42b93c user: stephan tags: trunk)
05:54
Add a section to autosetup/README.md describing the motivations for the more glaring design decisions. (check-in: c0940a82 user: stephan tags: trunk)
04:38
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. (check-in: aa621376 user: stephan tags: trunk)
02:59
Enhance the --with-emsdk flag to use a default value of 'auto', meaning to search the environment for it, and to fail fatally if --with-emsdk is explicitly provided but the SDK is not found. (check-in: 9724b747 user: stephan tags: trunk)
2024-11-05
23:26
Improve the ".mode json" output of the CLI so that it encodes U+007f using an escape sequence. (check-in: 8b58cf9b user: drh tags: trunk)
18:25
Have the xBestIndex method of the generate_series virtual table ignore contraints on the "value" column with usable=0. (check-in: f5113a2e user: dan tags: trunk)
13:34
Work around a TCL {list-quoting} quirk when escaped/deferred var derefs are passed in as values to the autotools-conventional --XYZdir flags (as seen in a downstream package build script). (check-in: 6adfca7e user: stephan tags: trunk)
13:03
Remove the --enable-rbu flag from the configure script, per /chat discussion, because it's a highly niche feature not in active use. (check-in: 77db0cd7 user: stephan tags: trunk)
11:59
Ensure that the one-line running status output from testrunner.tcl does not exceed the 80-char line width of a standard terminal. (check-in: 1eae0f9e user: drh tags: trunk)
09:49
auto.def: remove an extraneous global var, some dead tcl/makefile code/comments, and some extraneous output. Rename an internal-use proc. Disable the ext/wasm cleanup in the top-level (dist)clean because the noise from gmake is irritating. (check-in: ee9eb8b1 user: stephan tags: trunk)
08:21
Enhance the rpath configure check to honor --exec-prefix=... Remove some debugging code and move other debugging code around. (check-in: a8c1a82b user: stephan tags: trunk)
08:14
Roll back [47e50fa84dacf83c] for consistency with the legacy build. sqlite3.pc is now generated equivalently to prior versions. (check-in: af79d11e user: stephan tags: trunk)
07:55
Add the --enable-rbu configure flag and building of the commented-out rbu binary. (check-in: 6c6fa3ad user: stephan tags: trunk)
07:29
Remove some dead makefile code. (check-in: b69ce89d user: stephan tags: trunk)
02:38
Change a (#define HAVE_FCHMOD) to (#define HAVE_FCHMOD 1) per user request in forum post 24cf6020c6. There's no semantic change for this tree, but this is consistent with how auto-config tools would define it and the empty #define interferes with some downstream code. (check-in: 9c46d84f user: stephan tags: trunk)
02:14
sqlite3_stdio.c now uses sqlite3_malloc()/sqlite3_free() instead of malloc()/free(). Reported in forum post 6b6cb3dd. (check-in: 1982471d user: stephan tags: trunk)
2024-11-04
20:16
Fix the percentile extension so that works as an independent extension. Forum post ab25469a350e0488 (check-in: 27b829c3 user: drh tags: trunk)
19:18
Fix harmless compiler warnings. (check-in: bc93e179 user: drh tags: trunk)
19:08
Ensure that the database encoding is detected before the code generator gets too far down into byte-code generation and execution, but not so early that it interferes with initialization. Forum thread bc75a4d20b756044. (check-in: af7173a1 user: drh tags: trunk)
16:59
Avoid loading the entire record into memory for an sqlite3_preupdate_old() call that retrieves an IPK value. (check-in: 7f4de437 user: dan tags: trunk)
13:57
Fix two mismatched uses of malloc() and sqlite3_free() in sqlite3_stdio.c, as reported in forum post 7dd7c70038. (check-in: af0a345b user: stephan tags: trunk)
12:11
Fix typo of --libexec ==> --libexecdir, discovered via audit of a downstream build script. Unrelated doc touchups. (check-in: a60e5d76 user: stephan tags: trunk)
10:16
Ensure that the ext/wasm fiddle build undefines certain shell feature flags which it cannot use but might be inherited from the top-level makefile. (check-in: 99bb5d9b user: stephan tags: trunk)
08:29
When installing the shared lib, re-activate the accommodation of legacy-style .so links (removed in [80584e165e4]) based on two reports that not having those will cause all clients linked against the legacy naming convention to fail to dynamically link (which would preclude an update of a system-level libsqlite3 package). Set up the infrastructure needed for adding an SONAME to the library but do not yet activate it. See discussion in/around forum post 046133a7da. (check-in: 1586eace user: stephan tags: trunk)
06:38
Minor internal doc additions. (check-in: 9edc8582 user: stephan tags: trunk)
05:27
Latest upstream autosetup to get handling of (==ignoring) autotools' x-includes and x-libraries flags and stop leakage of some autosetup-init-level vars into auto.def's global scope. (check-in: 307349bf user: stephan tags: trunk)
04:12
Latest upstream jimsh0.c, which accounts for the problem patched locally by [29b944959568]. (check-in: c7a5b7d2 user: stephan tags: trunk)
03:43
Minor doc correction and proj.tcl-internal API renaming. (check-in: c8b24c59 user: stephan tags: trunk)
2024-11-03
21:32
Move the .default-CFLAGS handling into a utility function, rename the corresponding file to .env-VAR, and apply that lookup to a couple more places. (check-in: f01b61f2 user: stephan tags: trunk)
20:15
Fix a CFLAGS.jimsh typo in Makefile.in. Change default jimsh flags to include -O1, which slows down its build but speeds up its runtime considerably. (check-in: a912c169 user: stephan tags: trunk)
19:42
If any autotools-conventional dir names are explicitly overridden via ./configure --dirname=X then export those names as-is to the makefile, otherwise derive them from $prefix. This is, at least in part, a compromise to provide package maintainers a way to specify a libdir which will be incorporated into the -rpath link flag (which we can only determine at configure-time). (check-in: 832abe8a user: stephan tags: trunk)
18:30
Workaround for a compiler-specific jimsh compilation error reported in forum post 18e420d0. Reported upstream as ticket #322. (check-in: 29b94495 user: stephan tags: trunk)
07:45
Minor doc updates. Remove two outdated todos. (check-in: ad192378 user: stephan tags: trunk)
05:33
Fix another T.exe typo and remove an outdated TODO. (check-in: 02208e6b user: stephan tags: trunk)
01:31
Fix T.exe typos in main.mk which break installation on platforms where that value is not empty. Also some unrelated doc tweaks. (check-in: ab97ff44 user: stephan tags: trunk)
2024-11-02
19:10
Allow an fts5 table or query to be configured to collect xInstToken data for any prefix terms as part of the first parse of the main index, if any. (check-in: 46929ae9 user: dan tags: fts5-tokendata-prefix)
05:50
An experiment in hybridizing overriding of autotools-conventional XYZdir vars, the goal being to be able to provide both overrriding of them at configure-time and make-time with sensible semantics. Based on notes from forum post 00d12a41f7. (Closed-Leaf check-in: cc259bf5 user: stephan tags: autosetup-dir-overrides)
03:34
Add autotools-compatible overridable dir name vars for the various installation targets, calculated at make-time instead of exported at configure-time for reasons explained at length in the accompanying comments. (check-in: 24aba7ee user: stephan tags: trunk)
2024-11-01
19:41
Merge latest trunk changes into this branch. (check-in: 790c56d4 user: dan tags: fts5-tokendata-prefix)
01:56
When configuring with --with-wasi-sdk, ensure that we use that SDK's 'ar' tool instead of whatever is in the PATH. When pushing/popping the define var scope for the jimsh compatility check, include more defines per consultation with autosetup's creator. (check-in: 2dcc465a user: stephan tags: trunk)
2024-10-31
18:29
In testrunner.tcl, only show the ETC on the status line if it will fit within the 80-character line limit. (check-in: 45a3213d user: drh tags: trunk)
17:38
Fix the clean-autosetup target in Makefile.in so that it does not fail even in cases where gmake is unavailable. (check-in: 207ca21b user: drh tags: trunk)
17:23
Extra defenses against UAF when failing to allocate a transient cursor. No known path to a UAF currently exists. This change just helps with the static analysis to prove it. (check-in: bae05811 user: drh tags: trunk)
15:40
Update this branch so that it works with ZipVFS. (Closed-Leaf check-in: bc71b0a0 user: dan tags: readonly-ignore-wal-jrnl)
11:53
When building a shared library on Mac, one must specify the original *.o files that go into that library. It does not work to specify a prior shared library containing a subset of the files to be included. (check-in: 5adc7d5d user: drh tags: trunk)
11:21
Omit unnecessary bold text in ./configure output. (check-in: d1368dc1 user: drh tags: trunk)
11:19
Improved differentiation between antirez and msteveb linenoise. (check-in: cfb4bfcf user: drh tags: trunk)
11:04
The presence or absence of the linenoise-ship.c source file is sufficient to differentiate Antirez linenoise from MSteveB linenoise. (Closed-Leaf check-in: 28cc77b9 user: drh tags: linenoise-detection)
09:25
Add a missing 'close' call to proj-file-content-list. (check-in: 005702f3 user: stephan tags: trunk)
08:12
Add -trim flag to proj-file-content. (check-in: babf66f5 user: stephan tags: trunk)
08:03
Remove some proj-assert checks which are not valid on OpenBSD. Ensure that queued up notices about TCL warnings are displayed before leaving sqlite-check-tcl. (check-in: 3447308f user: stephan tags: trunk)
07:30
When reading in .default-CFLAGS, trim it. (check-in: a62a5171 user: stephan tags: trunk)
07:20
Add the .POSIX special target to the main makefiles to hint to the make impl that it should behave POSIXly-correct. Fix the default file extension for static libs in main.mk. (check-in: 2c615d3a user: stephan tags: trunk)
07:01
Add more deps to T.tcl.env.sh so that it gets rebuilt if configure is run with a different --with-tcl value. Remove all references to the superfluous XYZdir makefile vars conventionally set by the autotools (they're just noise in this build). (check-in: 83166510 user: stephan tags: trunk)
06:52
If a file named .default-CFLAGS exists in the build dir, use its contents as the default value of the CFLAGS unless it's overridden by being passed in or in the environment. (check-in: 731d333c user: stephan tags: trunk)
06:38
When --with-wasi-sdk is active, temporarily swap CC and CC_FOR_BUILD for purposes of looking for APIs required by B.cc. (check-in: 435f2ee8 user: stephan tags: trunk)
05:47
Change default CFLAGS to {-g -O2} to match the legacy build. (check-in: 51177494 user: stephan tags: trunk)
01:51
Fix a corner case in automatic TCLLIBDIR detection: if the $auto_path list is not empty but none of them refer to an existing dir, the last dir in that list would have been accepted as the TCLLIBDIR. It will now error out instead. (check-in: 1d2ecae1 user: stephan tags: trunk)
00:56
Reimplement how the TCL-related environment vars are made available to make recipes which need them, reducing the console noise and consolidating it with the has_tclconfig flag file. It now uses a generated shell snippet which it sources, rather than inlining all of that shell code. (check-in: 0cdfd142 user: stephan tags: trunk)
2024-10-30
23:10
Minor cleanups to the linenoise flavor detection test. (check-in: 3be32de1 user: stephan tags: trunk)
22:49
Move the linenoise flavor check from auto.def to proj.tcl for re-use in downstream projects. (check-in: 84e503dc user: stephan tags: trunk)
22:41
Expand [c0048e4482e9] to determine the linenoise API flavor via a compile test rather than guessing based on the filename. (check-in: dbf00791 user: stephan tags: trunk)
22:09
proj.tcl/main.mk doc updates. No functional changes. (check-in: e06574c6 user: stephan tags: trunk)
19:13
Adjust Makefile.in to honor the CC environment variable. Add the "show-variables" target to main.mk, for debugging. (check-in: e5f1a01f user: drh tags: trunk)
14:03
Fix the CLI so that it can use either the canonical Antirez linenoise (with HAVE_LINENOISE=1) or Steve Bennett's enhanced linenoise that works on the Win32 console as well as on Unix (with HAVE_LINENOISE=2). The ./configure script detects which one to use and sets HAVE_LINENOISE accordingly. (check-in: c0048e44 user: drh tags: trunk)
13:47
Require the SQLITE_ENABLE_READONLY_WALJOURNAL pre-processor macro to activate the new feature on this branch. (check-in: 21ed4e78 user: dan tags: readonly-ignore-wal-jrnl)
11:21
Merge latest trunk changes into this branch. (check-in: 403e01b0 user: dan tags: readonly-ignore-wal-jrnl)
11:21
Fix a problem that could occur if a read-only connection switches its journal mode from "persist" to "off" or "memory" when the file-system contains a hot-journal created by a "PRAGMA journal_mode = wal" command. (check-in: 85b5ed02 user: dan tags: readonly-ignore-wal-jrnl)
05:07
Clean up and add docs to the TCL vetting steps. Make warning and error messages bold if stdout isatty. (check-in: 47157dcf user: stephan tags: trunk)
04:07
Remove accommodation of the legacy-named shared libraries from the installation rules, per discussion. Rename install-includes to install-headers. Quote installation target dir names "just in case". (check-in: 80584e16 user: stephan tags: trunk)
03:51
Generic makefile cleanups. (check-in: 6f86ff2e user: stephan tags: trunk)
02:06
Re-enable exporting of TCLLIBDIR at configure-time so that clients can override it once there rather than having to override it on an arbitrary number of make invocations (which they can still do, but now need not). Based on feedback in forum post 38f6988e57b. (check-in: ee6e15f1 user: stephan tags: trunk)
01:47
When calculating the TCLLIBDIR in main.mk, allow the user to override it using an environment var or make var assignment, per feedback in forum post 38f6988e57b. (check-in: 83863318 user: stephan tags: trunk)
2024-10-29
23:42
Split the core-most CFLAGS, which should not be overridable (like -fPIC), into CFLAGS.core, so that went CFLAGS=... is passed on in a make invocation the -fPIC flag is not lost (as reported in forum post 39f8c543). (check-in: f5899d22 user: stephan tags: trunk)
23:19
Try to detect if --with-readline-cflags is passed a non-cflags value, e.g. readline/readline.h, and fail loudly if it is. The legacy configure accepted that formulation but silently did nothing useful with it and that formulation now causes the auto-completion test to fail, as reported in forum post f13b8e8f38402367. (check-in: c97f34d0 user: stephan tags: trunk)
20:27
General auto.def cleanups and docs. (check-in: e2f41c25 user: stephan tags: trunk)
20:27
Add fault-injection tests for the new code on this branch. (check-in: 349b2d89 user: dan tags: readonly-ignore-wal-jrnl)
19:34
Allow read-only connections to ignore hot journals created by "PRAGMA journal_mode = wal". (check-in: d003480d user: dan tags: readonly-ignore-wal-jrnl)
19:03
Reformulate the readline completion signature compatibility test so that -Wunused-variable in the CFLAGS does not cause it to fail. Problem reported via email. (check-in: 3891669a user: stephan tags: trunk)
18:50
Rename an almost-name-colliding auto.def function. Fix a refactoring-induced change which broke implicit lookup of tclConfig.sh. Add msg-debug proc to enable toggling of developer-level debug messages via a configure argument. (check-in: 265ba15d user: stephan tags: trunk)
17:55
Remove some extraneous configure output. (check-in: 2234569e user: stephan tags: trunk)
14:22
Fix a typo in LICENSE.md (check-in: decc6003 user: drh tags: trunk)
08:42
When either --readline or --editline are explicitly provided but the corresponding feature is not found, fail fatally. If not explicitly requested, simply disable that feature if the lib is not found. (check-in: 1d24a29c user: stephan tags: trunk)
08:18
Minor --help text tweak. (check-in: 80ac10ed user: stephan tags: trunk)
08:14
Add proj-assert proc and add a couple of asserts to the editline/readline checks. (check-in: db9870ca user: stephan tags: trunk)
08:01
Teach configure --editline to report itself to shell.c as either HAVE_EDITLINE or HAVE_READLINE, depending on which headers are available (editline/readline.h or readline/readline.h, both of which work and some systems only have the latter), but then link against libedit regardless of which one shell.c thinks it is using. (check-in: 85077b20 user: stephan tags: trunk)
04:21
Remove LDFLAGS_LIBZ from sqlite3.pc.in (pkg-config) because it's not needed by the library, only the shell. Re-enable the notice about --disable-static only being partially true. (check-in: e03c564a user: stephan tags: trunk)
03:29
Remove some dead auto.def code. Link tclsqlite3 shell against the .so instead of .a, analog to [45315f8f275d]. Move some header file tests which are only needed for jimsh into the jimsh compilability check block. (check-in: 9a259026 user: stephan tags: trunk)
2024-10-28
22:35
Enclose the generated "sqlite3.c" and "sqlite3.h" in a single big #ifdef so that if they get truncated by more than a little whitespace, they will not compile and the truncation can be easily detected. (check-in: c3b624e2 user: drh tags: trunk)
19:19
Remove unnecessary install-sh and spec.template files. (check-in: 3acb6d78 user: drh tags: trunk)
18:41
Minor makefile formatting cleanups. No functional changes. (check-in: 10b2cfdc user: stephan tags: trunk)
18:30
Calculate TCLLIBDIR in the makefile targets which use it, rather than via the configure script. This enables its use in static makefiles. (check-in: 6b1494ce user: stephan tags: trunk)
17:30
Remove the ltmain.sh autotools remnant. (check-in: dad5eb93 user: stephan tags: trunk)
17:27
Remove the never-used and never-documented and long-ago deprecated user-authentication feature option. [65884d4f81a4705b]. (check-in: 3a3f7bf4 user: drh tags: trunk)