Subject: CVS commit: pkgsrc
From: Adam Ciarcinski
Date: 2023-02-24 09:34:38
Message id: 20230224083439.0044CFA90@cvs.NetBSD.org

Log Message:
sqlite3: updated to 3.41.0

SQLite Release 3.41.0 On 2023-02-21

Query planner improvements:
Make use of indexed expressions within an aggregate query that includes a GROUP \ 
BY clause.
The query planner has improved awareness of when an index is a covering index \ 
and adjusts predicted runtimes accordingly.
The query planner is more aggressive about using co-routines rather than \ 
materializing subqueries and views.
Queries against the built-in table-valued functions json_tree() and json_each() \ 
will now usually treat "ORDER BY rowid" as a no-op.
Enhance the ability of the query planner to use indexed expressions even if the \ 
expression has been modified by the constant-propagation optimization. (See \ 
forum thread 0a539c7.)
Add the built-in unhex() SQL function.
Add the base64 and base85 application-defined functions as an extension and \ 
include that extension in the CLI.
Add the sqlite3_stmt_scanstatus_v2() interface. (This interface is only \ 
available if SQLite is compiled using SQLITE_ENABLE_STMT_SCANSTATUS.)
In-memory databases created using sqlite3_deserialize() now report their \ 
filename as an empty string, not as 'x'.
Changes to the CLI:
Add the new base64() and base85() SQL functions
Enhanced EXPLAIN QUERY PLAN output using the new sqlite3_stmt_scanstatus_v2() \ 
interface when compiled using SQLITE_ENABLE_STMT_SCANSTATUS.
The ".scanstats est" command provides query planner estimates in profiles.
The continuation prompt indicates if the input is currently inside of a string \ 
literal, identifier literal, comment, trigger definition, etc.
Enhance the --safe command-line option to disallow dangerous SQL functions.
The double-quoted string misfeature is now disabled by default for CLI builds. \ 
Legacy use cases can reenable the misfeature at run-time using the \ 
".dbconfig dqs_dml on" and ".dbconfig dqs_ddl on" commands.
Enhance the PRAGMA integrity_check command so that it detects when text strings \ 
in a table are equivalent to but not byte-for-byte identical to the same strings \ 
in the index.
Enhance the carray table-valued function so that it is able to bind an array of \ 
BLOB objects.
Added the sqlite3_is_interrupted() interface.
Long-running calls to sqlite3_prepare() and similar now invoke the progress \ 
handler callback and react to sqlite3_interrupt().
The sqlite3_vtab_in_first() and sqlite3_vtab_in_next() functions are enhanced so \ 
that they reliably detect if they are invoked on a parameter that was not \ 
selected for multi-value IN processing using sqlite3_vtab_in(). They return \ 
SQLITE_ERROR instead of SQLITE_MISUSE in this case.
The parser now ignores excess parentheses around a subquery on the right-hand \ 
side of an IN operator, so that SQLite now works the same as PostgreSQL in this \ 
regard. Formerly, SQLite treated the subquery as an expression with an implied \ 
"LIMIT 1".
Added the SQLITE_FCNTL_RESET_CACHE option to the sqlite3_file_control() API.
Makefile improvements:
The new makefile target "sqlite3r.c" builds an amalgamation that \ 
includes the recovery extension.
New makefile targets "devtest" and "releasetest" for running \ 
a quick developmental test prior to doing a check-in and for doing a full \ 
release test, respectively.
Miscellaneous performance enhancements.

Files:
RevisionActionfile
1.98modifypkgsrc/databases/sqlite3/Makefile.common
1.191modifypkgsrc/databases/sqlite3/distinfo
1.121modifypkgsrc/databases/sqlite3-docs/PLIST
1.124modifypkgsrc/databases/sqlite3-docs/distinfo
1.136modifypkgsrc/databases/sqlite3-tcl/distinfo
1.65modifypkgsrc/devel/lemon/distinfo
1.1removepkgsrc/databases/sqlite3-tcl/patches/patch-configure