]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
23 months agoFix a name resolution issue with CTEs. srcitem-opt
drh [Tue, 20 Aug 2024 22:44:40 +0000 (22:44 +0000)] 
Fix a name resolution issue with CTEs.

FossilOrigin-Name: 4fa8235dd59cd683d6c6c97bfe181a9637be7c054d435323c903b9dbd74aff02

23 months agoFix minor comment issues.
drh [Tue, 20 Aug 2024 22:05:01 +0000 (22:05 +0000)] 
Fix minor comment issues.

FossilOrigin-Name: c1bbed19f4348ec31c3cb4723eaa8f1554bb58ef4de7feb3a0f39612785f13d5

23 months agoRemove unreachable code.
drh [Tue, 20 Aug 2024 20:01:21 +0000 (20:01 +0000)] 
Remove unreachable code.

FossilOrigin-Name: 17699329aa8e234c6793a38db5ca05def9395b287bcc8bc05493b824327edb59

23 months agoTighter checking of access constraints on union members in SrcItem.
drh [Tue, 20 Aug 2024 19:09:59 +0000 (19:09 +0000)] 
Tighter checking of access constraints on union members in SrcItem.
Improved invariant checking.

FossilOrigin-Name: fd72d3400a8fe5747f494eee81654698acee350bb95b9db269e87d857af03492

23 months agoFix some stray SrcItem field name fixes.
drh [Tue, 20 Aug 2024 17:41:44 +0000 (17:41 +0000)] 
Fix some stray SrcItem field name fixes.

FossilOrigin-Name: bc5f5ce59e1e4323422bda7d002310923f927a03b4fd42749bf04f6c9853956b

23 months agoFix a memory leak so that now all dev tests (including TH3) are passing.
drh [Tue, 20 Aug 2024 17:24:42 +0000 (17:24 +0000)] 
Fix a memory leak so that now all dev tests (including TH3) are passing.

FossilOrigin-Name: 3995c45fff0e4bd10bcf49cc16eb1050216426723c63ba56d3ae5ba738c34019

23 months agoMemory issues fixes so that mdevtest now passes.
drh [Tue, 20 Aug 2024 16:50:21 +0000 (16:50 +0000)] 
Memory issues fixes so that mdevtest now passes.

FossilOrigin-Name: b249516f6a6650808e035ec219e762bf24dcb7c32a6235984b995d08d07d35d8

23 months agoRefactor the SrcItem object so that information about subqueries is stored
drh [Mon, 19 Aug 2024 22:48:30 +0000 (22:48 +0000)] 
Refactor the SrcItem object so that information about subqueries is stored
in a separately allocated Subquery object.  This reduces the memory requirements
for SrcItem and makes the code run faster.  It also provides an expansion path
for subquery processing that does not burden simple queries.  The current
checking mostly works, but there are still issues that need to be tracked
down and fixed.

FossilOrigin-Name: 8ff5dda8448d7e1a533d7f27db2573ce68fa9956b9d9847ced45e83c1f06bab0

23 months agoGive unique names to fields in the SrcItem object, to facilitate analysis of
drh [Sat, 17 Aug 2024 23:23:23 +0000 (23:23 +0000)] 
Give unique names to fields in the SrcItem object, to facilitate analysis of
how those fields are used using "grep".

FossilOrigin-Name: 9f5aeef3cbc2c95267c8f7bf60d5c66971a76789669fb0e8f853273ff6f616f2

23 months agoReduce the size of the SrcItem object by combining fields into a union.
drh [Sat, 17 Aug 2024 19:46:49 +0000 (19:46 +0000)] 
Reduce the size of the SrcItem object by combining fields into a union.

FossilOrigin-Name: a4c59ac3c6ec979c25b544d29e47b8e39f6439c098eed8f84b3bd506c9adf047

23 months agoAdjust Makefile.in so that it outputs a slightly better error message on an
drh [Sat, 17 Aug 2024 16:17:16 +0000 (16:17 +0000)] 
Adjust Makefile.in so that it outputs a slightly better error message on an
attempt to build something that requires TCL libraries when HAVE_TCL is false.

FossilOrigin-Name: a4043cbeb8a08fca2fdd2ea703e030d3a5574cc6002292ecc6f0e88c116472a3

23 months agoAdjust the "configure" script so that it just disables the ability to
drh [Sat, 17 Aug 2024 15:52:21 +0000 (15:52 +0000)] 
Adjust the "configure" script so that it just disables the ability to
run tests rather than erroring out if tclsh is unable to recommend a
suitable tclConfig.sh.

FossilOrigin-Name: 793ff83d09bea165c8cedc978afd3fcfb1a4cee894c5914aa1d92416afce963d

23 months agoFix a typo in an "ifdef" that broke SQLITE_OMIT_ANALYZE builds.
dan [Sat, 17 Aug 2024 14:59:26 +0000 (14:59 +0000)] 
Fix a typo in an "ifdef" that broke SQLITE_OMIT_ANALYZE builds.

FossilOrigin-Name: c09da26cb6f772a18c595ff0eb55d8345a377c3ef5ed02a5e539ffdbe9d07f85

23 months agoIf a subquery has an ORDER BY clause and that ordering is helpfile in
drh [Fri, 16 Aug 2024 18:51:46 +0000 (18:51 +0000)] 
If a subquery has an ORDER BY clause and that ordering is helpfile in
satisfying the ORDER BY or GROUP BY of the outer query without doing an
extra sort, then omit or reduce the sort in the outer query.  Call
this the "order-by-subquery optimization".

FossilOrigin-Name: 7a0cdc7edb704a88a77b748cd28f6e00c49849cc2c1af838b95b34232ecc21f9

23 months agoEnsure that memory allocations in ANALYZE are always 8-byte aligned in order
drh [Fri, 16 Aug 2024 15:35:20 +0000 (15:35 +0000)] 
Ensure that memory allocations in ANALYZE are always 8-byte aligned in order
to satisfy a new assert() added by [539e4f661767ef90].

FossilOrigin-Name: a1915cbdeccac2ed49fb8a9733abf2c6239396e3174fed2ff275f66b606c48b6

23 months agoFix handling of COLLATE. Add test cases for the same. Code cleanup for order-by-subquery
drh [Fri, 16 Aug 2024 11:26:21 +0000 (11:26 +0000)] 
Fix handling of COLLATE.  Add test cases for the same.  Code cleanup for
improved understandability and maintainability.

FossilOrigin-Name: 41a41c173a9d15d94f23d73a5c04bfb1616cb9223bc81d41808f9b4d00817fbf

23 months agoBug fix in the subquery ORDER BY propagator.
drh [Fri, 16 Aug 2024 02:19:17 +0000 (02:19 +0000)] 
Bug fix in the subquery ORDER BY propagator.

FossilOrigin-Name: 5a9a3b8af7ac0aa1c04ad2d735e341c92d67952acb9a1d30217c0471e92cd468

23 months agoImprovements to the subquery ORDER BY decision algorithm. Fewer false-negatives.
drh [Fri, 16 Aug 2024 00:37:54 +0000 (00:37 +0000)] 
Improvements to the subquery ORDER BY decision algorithm. Fewer false-negatives.

FossilOrigin-Name: b82421e3f5811946e9d60b845fc882b6ea5c53c648695654c6900754427bf9bf

23 months agoIf a subquery is materialized due to an ORDER BY and that ordering is useful
drh [Thu, 15 Aug 2024 23:38:52 +0000 (23:38 +0000)] 
If a subquery is materialized due to an ORDER BY and that ordering is useful
in helping to satisfy the ORDER BY or GROUP BY in the order query without
doing an extra sort, then omit the extra sort.

FossilOrigin-Name: 2fbb4dc2327ee435cb2b7a4adcddf5a9cee6dff7de96e2ecb761166427b5ddea

23 months agoImproved help message for --disable-tcl on the configure script.
drh [Thu, 15 Aug 2024 15:31:46 +0000 (15:31 +0000)] 
Improved help message for --disable-tcl on the configure script.

FossilOrigin-Name: 96e6cfb211f7f1aab50f997f4bc61dfb9701beb720c59bc413a4285c1ae5e20d

23 months agoReinstate the --disable-tcl option on ./configure.
drh [Thu, 15 Aug 2024 15:23:33 +0000 (15:23 +0000)] 
Reinstate the --disable-tcl option on ./configure.
[forum:/forumpost/845d4a57becc7f3c|Forum thread 845d4a57becc7f3c].

FossilOrigin-Name: de927016aadd7ee55d947134e3540907a3ea5ab4015034c5d088e3a84905d98a

23 months agoDoc typo correction reported in the forum.
stephan [Wed, 14 Aug 2024 20:00:03 +0000 (20:00 +0000)] 
Doc typo correction reported in the forum.

FossilOrigin-Name: 48900a867cc4b6d733d2a3533a553af3dfadf96d3ef7ddf4c72bd432e7bf0f76

23 months agoImproved documentation for the sha3() SQL functions in the shathree.c
drh [Wed, 14 Aug 2024 17:58:46 +0000 (17:58 +0000)] 
Improved documentation for the sha3() SQL functions in the shathree.c
extension in ext/misc.

FossilOrigin-Name: 0ce609103eb35cfa26d9b6fa1769679be7e2b9032c37cc8c00a194fe355b06a4

23 months agoFix an assert() in fts5 that might fail with an expression like "... NOT ''".
dan [Wed, 14 Aug 2024 14:26:02 +0000 (14:26 +0000)] 
Fix an assert() in fts5 that might fail with an expression like "... NOT ''".

FossilOrigin-Name: 317c91edfc69d1d47e233bb6ac13934241742fda1ba03a88fd51bdf98fcbc463

23 months agoAdd the sha3_agg() aggregate to the shathree extension.
drh [Tue, 13 Aug 2024 21:04:00 +0000 (21:04 +0000)] 
Add the sha3_agg() aggregate to the shathree extension.

FossilOrigin-Name: c4d7f9996ce4f5f6d08d83fc3abdb81b6825cfb556318f90c6896736a1da5175

23 months agoResolve parameters Bind $int_N and $test_T in fuzzcheck inputs.
drh [Mon, 12 Aug 2024 09:49:02 +0000 (09:49 +0000)] 
Resolve parameters Bind $int_N and $test_T in fuzzcheck inputs.

FossilOrigin-Name: 9c10664416274df6f8da53ddd86f6356c9704ad798fd4034d2784ae433c1c056

23 months agoPrevent the fts5 xPhraseNext() or xPhraseFirst() APIs from returning an out-of-range...
dan [Sat, 10 Aug 2024 19:57:28 +0000 (19:57 +0000)] 
Prevent the fts5 xPhraseNext() or xPhraseFirst() APIs from returning an out-of-range column number, even if the database is corrupt.

FossilOrigin-Name: d4014c87ba9b011a6a04c2bf85879b668dc762ebcbbfb50a2f8a417ce594ef88

23 months agoRevision to check-in [d9f726ade6b258f8] so that OOM and other unrelated failures
drh [Sat, 10 Aug 2024 15:46:57 +0000 (15:46 +0000)] 
Revision to check-in [d9f726ade6b258f8] so that OOM and other unrelated failures
are not overridden by a syntax error in the tokenizer spec.

FossilOrigin-Name: 3778b2a9ca1cc12a88ef6c32a1ee7c58a0a829ed9715a3d32a225d377d7527ef

23 months agoFix harmless compiler warning related to the TCL8-to-TCL9 transition. This
drh [Sat, 10 Aug 2024 15:05:22 +0000 (15:05 +0000)] 
Fix harmless compiler warning related to the TCL8-to-TCL9 transition.  This
change in testing code only and is not relevante to the core SQLite.

FossilOrigin-Name: c86ef65545485eae6aca23b4582e8115d4edfdd6084afa77858e11b21aa270f6

23 months agoFix behavior change in the offset() SQL function introduced by
drh [Sat, 10 Aug 2024 14:53:21 +0000 (14:53 +0000)] 
Fix behavior change in the offset() SQL function introduced by
check-in [f0b671183f44d0ae].

FossilOrigin-Name: c2ac17f183082d6388336338b8d5c0b334095e5f77a27bc08419431f37471d22

23 months agoEnhancements to covering-index prediction. In particular, avoid the
drh [Sat, 10 Aug 2024 10:05:22 +0000 (10:05 +0000)] 
Enhancements to covering-index prediction.  In particular, avoid the
false-positive prediction described by
[forum:/forumpost/e60e4c295d22f8ce|forum post e60e4c295d22f8ce].
Add early detection of over-prediction of covering-indexes so that
sqlite3_prepare() will return an error rather than just generate bad
bytecode.

FossilOrigin-Name: f0b671183f44d0ae294956e7651a1653f47bd6219f9636872d15993f30f28dfb

23 months agoAdd an assert() to fix a harmless compiler warning in the recovery
drh [Sat, 10 Aug 2024 09:56:36 +0000 (09:56 +0000)] 
Add an assert() to fix a harmless compiler warning in the recovery
extension.

FossilOrigin-Name: 2502339339f3c831966479a400c2b1a531fb4d990b1776b4dc4870cf734c3fcd

23 months agoFix a few minor TCL9 compatibilities issues.
drh [Fri, 9 Aug 2024 22:48:11 +0000 (22:48 +0000)] 
Fix a few minor TCL9 compatibilities issues.

FossilOrigin-Name: 69eed19914ef52bc0101f4ae1c7b242df4ee28675b3581e1f4d60a35494f9f76

23 months agoImport the second ALTER TABLE fix from trunk. covering-index-patch
drh [Fri, 9 Aug 2024 18:53:02 +0000 (18:53 +0000)] 
Import the second ALTER TABLE fix from trunk.

FossilOrigin-Name: 1de3e5883613ff6093203720f3cdcf6b3a3e626c99735284fae95a438e1ce24f

23 months agoFix another instance where ALTER TABLE was returning SQLITE_INTERNAL instead
drh [Fri, 9 Aug 2024 18:42:01 +0000 (18:42 +0000)] 
Fix another instance where ALTER TABLE was returning SQLITE_INTERNAL instead
of SQLITE_ERROR one malformed input.

FossilOrigin-Name: b416756320dfb46ad72b843a7fbf18807d3fd1966251c320de626280b5238a5c

23 months agoMerge the error code fix from trunk.
drh [Fri, 9 Aug 2024 18:22:20 +0000 (18:22 +0000)] 
Merge the error code fix from trunk.

FossilOrigin-Name: 81dfb8cd5d59ecf974018b03175ddabd11366d2aca0211dc982f7e14ff314d4d

23 months agoFix the internal routine sqlite3ResolveExprListNames() so that it returns
drh [Fri, 9 Aug 2024 18:18:11 +0000 (18:18 +0000)] 
Fix the internal routine sqlite3ResolveExprListNames() so that it returns
SQLITE_OK or SQLITE_ERROR instead of WRC_Continue or WRC_Abort.  Without this
fix, some times of obscure syntax errors end up returning SQLITE_INTERNAL
rather than SQLITE_ERROR.

FossilOrigin-Name: 9052187efd1f78abd9b285ac94269a3ba4d65b6aa74c9fa34002ee0628c83919

23 months agoDo not attempt to use a covering index based purely on columns-used
drh [Fri, 9 Aug 2024 17:09:18 +0000 (17:09 +0000)] 
Do not attempt to use a covering index based purely on columns-used
when doing an UPDATE or DELETE of a WITHOUT ROWID table.  Raise an
SQLITE_INTERNAL error if there is ever a situation where a table reference
cannot be converted into an index reference when the query planner thinks
that a covering index is appropriate.

FossilOrigin-Name: fae39ae9320c0f4fcc2e3b3baf0a4170ba2b9a04634a0a1fa41dd4918a74b106

23 months agoBind the new debug parameters in fuzzinvariants.c.
drh [Fri, 9 Aug 2024 12:35:27 +0000 (12:35 +0000)] 
Bind the new debug parameters in fuzzinvariants.c.

FossilOrigin-Name: 7e1dc263051cf50db04643d1a2aa9f91559b2b121859b750ce4446012d5f3c3e

23 months agoRemove unused static var cBadGroup from ext/consio/console_io.c to resolve a compiler...
stephan [Fri, 9 Aug 2024 12:19:11 +0000 (12:19 +0000)] 
Remove unused static var cBadGroup from ext/consio/console_io.c to resolve a compiler warning reported in the fossil forum. This is a build fix, not a functional change.

FossilOrigin-Name: fa047c3ea7a03d76afd6a11f58ef7b84c653f583ed795e0de5be2a6b986e558e

23 months agoEnsure sqlite3expert.c unregisters any SQL user-functions it registers with the datab...
dan [Thu, 8 Aug 2024 15:26:11 +0000 (15:26 +0000)] 
Ensure sqlite3expert.c unregisters any SQL user-functions it registers with the database handle before returning.

FossilOrigin-Name: 123b154ce3b6fee1bbf483704812bd6f8538966f9687520b4470d700f0270719

23 months agoAdd assert() statements and reorganize code slightly in fts3 and fts5 to make it...
dan [Thu, 8 Aug 2024 15:07:27 +0000 (15:07 +0000)] 
Add assert() statements and reorganize code slightly in fts3 and fts5 to make it easier to follow.

FossilOrigin-Name: 797b0a13fd7a42b0a48ecbf0cd1961aa932da3e9c9ccffd903a3a4d963d0cc54

23 months agoDo not let the number of terms on a VALUES clause be limited by
drh [Thu, 8 Aug 2024 14:45:50 +0000 (14:45 +0000)] 
Do not let the number of terms on a VALUES clause be limited by
SQLITE_LIMIT_COMPOUND_SELECT, even if the VALUES clause contains elements
that appear to be variables due to the use of double-quoted string literals.
[https://issues.chromium.org/issues/358174302|Chromium issue 358174302].

FossilOrigin-Name: 670beb133eb203065a75022f0c6db7c605a4e0e22c8ef6d6b4724be2663ff3dc

23 months agoBack out the --memory option to ".parameter init" in the CLI, as the
drh [Thu, 8 Aug 2024 12:14:07 +0000 (12:14 +0000)] 
Back out the --memory option to ".parameter init" in the CLI, as the
capability is no longer needed for testing due to the new "$int_N" and
"$text_T" automatic bindings, and the "init --memory" is hence just
added complication.

FossilOrigin-Name: 3b1b0c141993eb0f8749f54ea40d6014f9bdccbe0fdb3ccccad971a0baea8d3c

23 months agoIn the CLI, recognize magic parameter names "$int_NNN" and "$text_TTT" and
drh [Thu, 8 Aug 2024 12:08:36 +0000 (12:08 +0000)] 
In the CLI, recognize magic parameter names "$int_NNN" and "$text_TTT" and
bind them with integer value NNN and text value TTT respectively.  Intended
for testing and debugging use only.

FossilOrigin-Name: a929cdb00ff74d77cdf55087d32abf53578f7127b36276f89b64ccbef1d4a9a4

23 months agoMove a misplaced va_end, as reported in [forum:702c79e9da|forum post 702c79e9da].
stephan [Thu, 8 Aug 2024 10:51:56 +0000 (10:51 +0000)] 
Move a misplaced va_end, as reported in [forum:702c79e9da|forum post 702c79e9da].

FossilOrigin-Name: daa25fb35fd7bdd482d51214439f38b0b9a7df93f689a2b3d30a113daa9f2a1a

23 months agoAdd the --memory option to the ".parameter init" CLI command. When present,
drh [Thu, 8 Aug 2024 10:10:38 +0000 (10:10 +0000)] 
Add the --memory option to the ".parameter init" CLI command.  When present,
the --memory option causes the sqlite_parameters table to be created in a
completely independent :memory: database.  This can be done to avoid
parameter binding queries from being affected by debug settings such as
".wheretrace", ".treetrace", "PRAGMA vdbe_addoptrace=on", and similar.

FossilOrigin-Name: 4e69dce2093b75b7db4fbdca4953b664b907be15d991ed352ea1d87c64fbf9d2

23 months agoFix a broken assert in fts5_expr.c.
dan [Wed, 7 Aug 2024 21:20:08 +0000 (21:20 +0000)] 
Fix a broken assert in fts5_expr.c.

FossilOrigin-Name: 08cc5488404d068e59378b82988460793710df43ec21b4a83a794b497abd035f

23 months agoAdd a new assert() to help static analyzers understand that a pointer is
drh [Wed, 7 Aug 2024 15:17:37 +0000 (15:17 +0000)] 
Add a new assert() to help static analyzers understand that a pointer is
never NULL.

FossilOrigin-Name: 433f2b942ee6f79d50ebe9b08fa3ea8162db6a10ce9d80e2bc193124baa1b083

23 months agoFix a harmless compiler warning in an assert().
drh [Wed, 7 Aug 2024 14:54:54 +0000 (14:54 +0000)] 
Fix a harmless compiler warning in an assert().

FossilOrigin-Name: 5e4c9a74b2efa74ace67f644fb6bb37e07f5982f8faaca9463e3daa50b0469d7

2 years agoRemove unused test cases from FTS5, as they interfere with "grep".
drh [Tue, 6 Aug 2024 23:09:37 +0000 (23:09 +0000)] 
Remove unused test cases from FTS5, as they interfere with "grep".

FossilOrigin-Name: 048a71bae48aacdfc91e59330db4d4b3d663f00665f51a7110ea82e0508758ec

2 years agoImproved robustness of parsing of tokenize= arguments in FTS5.
drh [Tue, 6 Aug 2024 22:49:01 +0000 (22:49 +0000)] 
Improved robustness of parsing of tokenize= arguments in FTS5.
[forum:/forumpost/171bcc2bcd|Forum post 171bcc2bcd].

FossilOrigin-Name: d9f726ade6b258f8723f90d0b04a4682e885e30939eb29773913e4dfc8e85503

2 years agoImprovements to ./configure that will hopefully break fewer builds.
drh [Tue, 6 Aug 2024 20:00:10 +0000 (20:00 +0000)] 
Improvements to ./configure that will hopefully break fewer builds.

FossilOrigin-Name: 769e32a69b7b7c04225afa0371f139b2ed29aaee5a7a4159a30d600ed9f25c57

2 years agoChange the AggInfoColumnReg() and AggInfoFuncReg() macros for
drh [Tue, 6 Aug 2024 10:29:41 +0000 (10:29 +0000)] 
Change the AggInfoColumnReg() and AggInfoFuncReg() macros for
compilers that cannot parse empty elements of a comma expression.
[forum:/forumpost/8fd21998dc|Forum post 8fd21998dc].

FossilOrigin-Name: 533a6251f188805363f0e39613ea03b1bfd758eaea00e0855803238585bdfec7

2 years agoRestore legacy "tcl_install" makefile target, as an interim measure until
drh [Sun, 4 Aug 2024 10:13:01 +0000 (10:13 +0000)] 
Restore legacy "tcl_install" makefile target, as an interim measure until
I can figure out what is going on.

FossilOrigin-Name: 931ad7d9e3aedb6d466fffc0af1f8d6b20d57a35dec644f28585f3e84f22d1ce

2 years agoFix to the previous checkin: The colUsed parameter should have high-order bit
drh [Sat, 3 Aug 2024 23:00:17 +0000 (23:00 +0000)] 
Fix to the previous checkin:  The colUsed parameter should have high-order bit
set if any of the 64-th or greater columns of the virtual table is used.  The
lower 63 bits of colUsed always show the usage of the first 63 columns of the
virtual table.

FossilOrigin-Name: 90ac8457750ace1d76d7bc957af7877e86e6301bb07361e19beaf5c7b3b6085a

2 years agoEnsure that the sqlite3_index_info.colUsed mask always includes the PK fields of...
drh [Sat, 3 Aug 2024 21:45:46 +0000 (21:45 +0000)] 
Ensure that the sqlite3_index_info.colUsed mask always includes the PK fields of WITHOUT ROWID virtual tables.

FossilOrigin-Name: ff4ac279b02190cc2107b0b110806dd7abcea47a6589d827b5ee39d4b80fb719

2 years agoFix a typo in [c327c0c0] preventing the shell tool from running ".dump" scripts that...
dan [Sat, 3 Aug 2024 18:58:25 +0000 (18:58 +0000)] 
Fix a typo in [c327c0c0] preventing the shell tool from running ".dump" scripts that feature virtual tables.

FossilOrigin-Name: 10e97abb878debb67410902ea1af4df75a9ced1e38fec710b1796c5143aff48e

2 years agoEnsure the sqlite3_index_info.colUsed mask always includes the PK fields of WITHOUT... vtab-pk-colUsed-fix
dan [Sat, 3 Aug 2024 18:45:48 +0000 (18:45 +0000)] 
Ensure the sqlite3_index_info.colUsed mask always includes the PK fields of WITHOUT ROWID vtabs in cases where they may be used.

FossilOrigin-Name: c327c0c02cfefdba373cfb15933a9cdfddb578b6582f2ce7c08929203743ffe9

2 years agoAdd the --status option to the test runs using testrunner.tcl. Only works
drh [Sat, 3 Aug 2024 15:55:25 +0000 (15:55 +0000)] 
Add the --status option to the test runs using testrunner.tcl.  Only works
on Unix platforms.  The "exec" command appears to interfere with VT100
escape codes on windows.

FossilOrigin-Name: 94015cda4ceb4292ceceadb951fe5d9cb3e4e20403719b7254ad094a5b749ab3

2 years agoMake sure the input buffer is big enough for an memcpy() when doing the
drh [Fri, 2 Aug 2024 18:20:10 +0000 (18:20 +0000)] 
Make sure the input buffer is big enough for an memcpy() when doing the
restore autodetection in the shell.

FossilOrigin-Name: 1637d29d518b3b4534a1b4c0dc0eddcb770f6f71763e4177812a3e79b97d2365

2 years agoAdd the "-d SECS" option to the "status" command of testrunner.tcl
drh [Fri, 2 Aug 2024 17:36:34 +0000 (17:36 +0000)] 
Add the "-d SECS" option to the "status" command of testrunner.tcl

FossilOrigin-Name: 2151ea31632f7aa363c7d4b7205e1174a45d710783a8efad8176049d356cfc70

2 years agoNew MSVC makefile targets: tclextension, tclextension-install,
drh [Fri, 2 Aug 2024 15:28:40 +0000 (15:28 +0000)] 
New MSVC makefile targets:  tclextension, tclextension-install,
tclextension-uninstall, and tclextension-list.

FossilOrigin-Name: c38734f57509c50dd28029738dd602600950703b773d9b7b60fdb1dcb06e8fd8

2 years agoFix typo in a progress message in the builttclext.tcl script.
drh [Fri, 2 Aug 2024 13:56:55 +0000 (13:56 +0000)] 
Fix typo in a progress message in the builttclext.tcl script.

FossilOrigin-Name: 5e7c94645632b736e805428ff4c135666ab525fac99c29c12d5127b06f39fc6e

2 years agoFix problems in the configure/Makefile system caused by recent enhancements
drh [Fri, 2 Aug 2024 11:32:28 +0000 (11:32 +0000)] 
Fix problems in the configure/Makefile system caused by recent enhancements
and report by [forum:/forumpost/242ebd0c81|forum post 242ebd0c81].

FossilOrigin-Name: a59319fe4adc094381c46e490289b3e0cda8f804edaea6984571c47a68a23eef

2 years agoNew configuration option: --with-tclsh=FILE. New makefile targets:
drh [Fri, 2 Aug 2024 00:59:32 +0000 (00:59 +0000)] 
New configuration option:  --with-tclsh=FILE.  New makefile targets:
tclextension, tclextension-install, tclextension-uninstall,
tclextension-list.

FossilOrigin-Name: 888284d1d47269e66e23627e2519cd2cf83ef65a777a679af20c288453f092e2

2 years agoPrevious Makefile.in change broke the tclextension-install target. autoconf-revamp
drh [Fri, 2 Aug 2024 00:56:31 +0000 (00:56 +0000)] 
Previous Makefile.in change broke the tclextension-install target.

FossilOrigin-Name: 7748367c78a1f480ec9e892ba77652e3c31a4b387b89221ae584891818804851

2 years agoContinuing refinements of the tclextension-install makefile target.
drh [Fri, 2 Aug 2024 00:51:52 +0000 (00:51 +0000)] 
Continuing refinements of the tclextension-install makefile target.

FossilOrigin-Name: 871c20a848e0e9b7f3d5661bd076fde16e9ec1e445a7ee657ef267978988ad56

2 years agoExtra robustness for the SQLite Tcl Extension builder, so that it works
drh [Fri, 2 Aug 2024 00:19:59 +0000 (00:19 +0000)] 
Extra robustness for the SQLite Tcl Extension builder, so that it works
on Debian Linux.

FossilOrigin-Name: 2f0738daaff48c51a60f063af6e453443bd7eedf6936daab325b2a36927c7a2b

2 years agoSimplification the ./configure script. Carry Makefile CFLAGS and OPTS through
drh [Thu, 1 Aug 2024 23:30:29 +0000 (23:30 +0000)] 
Simplification the ./configure script.  Carry Makefile CFLAGS and OPTS through
into builttclext.tcl.  Fix a bug in tclsqlite.c introduced by the previous
check-in.

FossilOrigin-Name: 72a80aa0abb121a23f8cc1eb1af04ba06c733a7a40c06f1fe9e62f2a0a26ca6e

2 years agoAdd the tclextension-list makefile target. The the makefile running on Mac.
drh [Thu, 1 Aug 2024 23:00:37 +0000 (23:00 +0000)] 
Add the tclextension-list makefile target.  The the makefile running on Mac.

FossilOrigin-Name: 2f667cc8e54167342e17e63e1a017388365ebf4cd379f9c16c12e4603b34a326

2 years agoNew makefile targets: tclextension-install and tclextension-uninstall. Seem
drh [Thu, 1 Aug 2024 20:26:22 +0000 (20:26 +0000)] 
New makefile targets: tclextension-install and tclextension-uninstall.  Seem
to work on Linux.

FossilOrigin-Name: 534f8344abbda78e841edafe84c27ea8b1dfdecb9ab51271772a7f7264ef5b8c

2 years agoWork on a TCL script that will compile and install the TCL extension.
drh [Thu, 1 Aug 2024 20:18:10 +0000 (20:18 +0000)] 
Work on a TCL script that will compile and install the TCL extension.
Works on Linux only, so far.  This is an incremental check-in.

FossilOrigin-Name: 58babd2aa4b5c9c70e1169cdf09f05eb95d7b13f50bb2ec0e487182288172678

2 years agoClean up and restructure the TCL configuration sections in autoconf.
drh [Thu, 1 Aug 2024 18:10:00 +0000 (18:10 +0000)] 
Clean up and restructure the TCL configuration sections in autoconf.
The new --with-tclsh=FILE option lets you select the specific tclsh
that you want to run.

FossilOrigin-Name: 8fafc679d91e857602fbbe203144ca98242246660ede5a49c5fec8aaff571151

2 years agoInclude a test case summary in the output of "errors" in testrunner.tcl.
drh [Thu, 1 Aug 2024 14:43:27 +0000 (14:43 +0000)] 
Include a test case summary in the output of "errors" in testrunner.tcl.

FossilOrigin-Name: 173df1478e89996126e172656e35da8026d4ef145b2341ef56213f00ade14f48

2 years agoAdd the "errors" command to testrunner.tcl.
drh [Thu, 1 Aug 2024 14:16:36 +0000 (14:16 +0000)] 
Add the "errors" command to testrunner.tcl.

FossilOrigin-Name: 03b7f99229cfcffde024915e6812d75ae11318db9dc93a00838e4588a79b1243

2 years agoFix the tclsqlite.c TCL interface module so that it works with both Tcl8 and
drh [Wed, 31 Jul 2024 22:36:14 +0000 (22:36 +0000)] 
Fix the tclsqlite.c TCL interface module so that it works with both Tcl8 and
Tcl9.  Make changes across the TCL-based test harness to enable SQLite to
be tested with either Tcl8 or Tcl9.  Get the --with-tcl= argument on the
configure script working. Testing changes only - no changes to the SQLite core.
I believe the previous merge attempt didn't work because of errors in the
merge itself, not because of faults in the code.  Trying again...

FossilOrigin-Name: ea9d88f9ca3399bca83bf03893689a927b73e481604b94527e42de43f103eb46

2 years agotestrunner.db should be in WAL mode for improved concurrency while running tcl9
drh [Wed, 31 Jul 2024 22:26:04 +0000 (22:26 +0000)] 
testrunner.db should be in WAL mode for improved concurrency while running
"watch sqlite3 test/testrunner.tcl status".

FossilOrigin-Name: f23ad0979865f3c11a3dbd0598ee7c4e2eabeaf1863d000fc0242e18890a4a11

2 years agoMake the #include section of tclsqlite.c the same as tclsqlite.h.
drh [Wed, 31 Jul 2024 22:25:25 +0000 (22:25 +0000)] 
Make the #include section of tclsqlite.c the same as tclsqlite.h.

FossilOrigin-Name: 2afadbeb124d6d7bb81d473379269014ebd8601f98f231e2218f54350a2e5fd3

2 years agoFix typo in testrunner.tcl for the "status" command that was causing it
drh [Wed, 31 Jul 2024 22:17:26 +0000 (22:17 +0000)] 
Fix typo in testrunner.tcl for the "status" command that was causing it
to fail if any errors were seen.

FossilOrigin-Name: 8327c5ed535c57c4082211a50bfb1c32ea5d5fe1cf71f37798d8b58e88948ac2

2 years agoUse `<tcl.h>` instead of `"tcl.h"` to include the TCL interface.
drh [Wed, 31 Jul 2024 21:59:29 +0000 (21:59 +0000)] 
Use `<tcl.h>` instead of `"tcl.h"` to include the TCL interface.

FossilOrigin-Name: 4e32d4aed7c487ee9ed39a7e4486c2989a01781a3edbe9cdce52c6ed357f6366

2 years agoFix the tclsqlite.c TCL interface module so that it works with both Tcl8 and
drh [Wed, 31 Jul 2024 21:46:46 +0000 (21:46 +0000)] 
Fix the tclsqlite.c TCL interface module so that it works with both Tcl8 and
Tcl9.  Make changes across the TCL-based test harness to enable SQLite to
be tested with either Tcl8 or Tcl9.  Get the --with-tcl= argument on the
configure script working.  Testing changes only - no changes to the SQLite core.

FossilOrigin-Name: 2a04b1bea12b0b4c3387d675f487337533ac0813248f70085398485e4cacd691

2 years agoMore tweaks to testfixture-implemented TCL commands to make them safe for Tcl9.
drh [Wed, 31 Jul 2024 19:57:22 +0000 (19:57 +0000)] 
More tweaks to testfixture-implemented TCL commands to make them safe for Tcl9.

FossilOrigin-Name: 67897ca97d8c98e119a498a3adb39548a579e12ee477e9dd74e9564a6f5e4c2b

2 years agoUnder Tcl9, the %x format letter truncates to 32-bits. Must use %llx in order
drh [Wed, 31 Jul 2024 19:56:14 +0000 (19:56 +0000)] 
Under Tcl9, the %x format letter truncates to 32-bits.  Must use %llx in order
to get a 64-bit rendering.

FossilOrigin-Name: a3044e0ae65c099d76bf04536e223e70d89971688627c342252951f6c65f49d1

2 years agoFixes to testfixture routines needed to test snapshots.
drh [Wed, 31 Jul 2024 17:15:24 +0000 (17:15 +0000)] 
Fixes to testfixture routines needed to test snapshots.

FossilOrigin-Name: 66f61c3b35383b2575774d309043a722cc87a53d03518d339d6dbdcf342adc93

2 years agoFix a typo in testrunner_data.tcl that prevented --with-tcl specifications
drh [Wed, 31 Jul 2024 16:37:02 +0000 (16:37 +0000)] 
Fix a typo in testrunner_data.tcl that prevented --with-tcl specifications
from being carried through into sub-builds.  Adjust test cases to account
for new floating-point differences discovered when --with-tcl was fixed.

FossilOrigin-Name: b8f81351914deac99b14be6bb5e4096c1efed9bdb057750825760f09dae04656

2 years agoRemove obsolete testfixture TCL commands formerly required by Windows
drh [Wed, 31 Jul 2024 15:04:37 +0000 (15:04 +0000)] 
Remove obsolete testfixture TCL commands formerly required by Windows
but now handled by Tcl itself.  Update tests case accordingly.

FossilOrigin-Name: 4f065fb638b24b33283518af8ad55f28a49cfac4086fa5e4568e2f3a6814962d

2 years agoFix problems uncovered while testing Tcl9 on Windows.
drh [Wed, 31 Jul 2024 13:00:18 +0000 (13:00 +0000)] 
Fix problems uncovered while testing Tcl9 on Windows.

FossilOrigin-Name: d5523c77fd0bcdc8344971a116d6ce9657f2b6daddeb7d936cd7607163a36744

2 years agoMinor adjustments to get Tcl9-based testing working on Macs.
drh [Wed, 31 Jul 2024 12:19:16 +0000 (12:19 +0000)] 
Minor adjustments to get Tcl9-based testing working on Macs.

FossilOrigin-Name: 066c8672ee85a6ce972de38fcd3793fc2c1ef4f21c3de2379746d0ff18df8dc0

2 years agoAdjust the configure script so that the --with-tcl option is used to
drh [Wed, 31 Jul 2024 11:42:47 +0000 (11:42 +0000)] 
Adjust the configure script so that the --with-tcl option is used to
find the appropriate tclsh.

FossilOrigin-Name: 6fb9e37c751cd1a411c77f792794e1abafa5c40ad4dda8d433600d44d525a97c

2 years agoPatch to testrunner.tcl so that it works with Tcl9's pedantic UTF-8 checking.
drh [Wed, 31 Jul 2024 11:12:13 +0000 (11:12 +0000)] 
Patch to testrunner.tcl so that it works with Tcl9's pedantic UTF-8 checking.

FossilOrigin-Name: 8d4a23d32dc16b115153e6e100ba3ba15273c3e37310e8a1b4bace885c5383a8

2 years agoFixes to tclsqlite.c to facilitate TEA installs.
drh [Wed, 31 Jul 2024 10:59:19 +0000 (10:59 +0000)] 
Fixes to tclsqlite.c to facilitate TEA installs.

FossilOrigin-Name: 7157c3c910565c9385a028793a0c0106c5064ab6a8a6efbe29dd1f1cdb2bd48d

2 years agoFix a problem with strictly conforming UTF8 in shell1.test.
drh [Wed, 31 Jul 2024 02:01:19 +0000 (02:01 +0000)] 
Fix a problem with strictly conforming UTF8 in shell1.test.

FossilOrigin-Name: 8ee187f98d310e1e7cf6c3fdf000c19e98a9f11e01436c3c407df04da79aa7c0

2 years agoAdjust a few tests that don't work even with the new floating point
drh [Wed, 31 Jul 2024 01:53:48 +0000 (01:53 +0000)] 
Adjust a few tests that don't work even with the new floating point
comparison routine.

FossilOrigin-Name: 895125a4895099df7c3841ca7c34697ba17fd667bddbc2fd7148f7aa9d6d2b9d

2 years agoImplement a new comparison routine to compare text renderings of
drh [Wed, 31 Jul 2024 01:45:14 +0000 (01:45 +0000)] 
Implement a new comparison routine to compare text renderings of
floating point values.  This gets the number of failures down to just 5.
But the routine needs work, and probably refactoring.

FossilOrigin-Name: 71f2ee5db01150707401804b136641170e7ed44760fccec20de19184e4d0a840

2 years agoAll tests in "make test" now pass with Tcl9, except for about 198 cases where
drh [Tue, 30 Jul 2024 20:39:05 +0000 (20:39 +0000)] 
All tests in "make test" now pass with Tcl9, except for about 198 cases where
the error involves small differences in the rendering to floating point
values.

FossilOrigin-Name: 8e27f5326c69aa4fb6f3f1f42668ab1b08140ab0a614ac4a9d94679c8fb9734e

2 years agoMore adjustments to the incrblob channel: Apparently you need to wait
drh [Tue, 30 Jul 2024 18:49:20 +0000 (18:49 +0000)] 
More adjustments to the incrblob channel:  Apparently you need to wait
until the close2Proc is called with a flag of 0 before actually shutting
down the channel.

FossilOrigin-Name: fa549a5507b5f805b469b4360c11155aa9d22043f01f6d9428bf44d0f2351eb0

2 years agoAdjustments to test cases for session so that they work with Tcl9.
drh [Tue, 30 Jul 2024 18:42:31 +0000 (18:42 +0000)] 
Adjustments to test cases for session so that they work with Tcl9.

FossilOrigin-Name: d417415b967e62d41667e14ebf5455932ebf38d218a941f13878f0aba6d19bc8

2 years agoTcl_ChannelType implementations for Tcl9 apparently require that
drh [Tue, 30 Jul 2024 18:15:59 +0000 (18:15 +0000)] 
Tcl_ChannelType implementations for Tcl9 apparently require that
wideSeekProc be implemented.  Also adjust minor test script issues for
fts5 tests so that they can be run sequentially and so that they do not
depend on the specific floating point output formats generated by Tcl.

FossilOrigin-Name: 19fda979c5dc1a385ed3f8ab8df34388c1acfc7ff951fe1b183a79186bd20cdb

2 years agoGet rid of "-encoding binary" across all test cases, as that is no longer
drh [Tue, 30 Jul 2024 17:09:51 +0000 (17:09 +0000)] 
Get rid of "-encoding binary" across all test cases, as that is no longer
supported in Tcl9.  Use "-translation binary" instead.

FossilOrigin-Name: e0d9670dd98a22d2e22aac8ba8720787a05e280e18ec9b2d4323f947c83718f5