Path to this page:
Subject: CVS commit: pkgsrc
From: Adam Ciarcinski
Date: 2024-05-24 06:48:54
Message id: 20240524044854.EEB59FA2C@cvs.NetBSD.org
Log Message:
sqlite3: updated to 3.46.0
SQLite Release 3.46.0 On 2024-05-23
Enhance PRAGMA optimize in multiple ways, to make it simpler to use:
PRAGMA optimize automatically implements a temporary analysis limit to prevent \
excess runtime on large databases.
Added the new 0x10000 bitmask option to check for updates on all tables.
Automatically re-analyze tables that do not have sqlite_stat1 entries.
Enhancements to the date and time functions:
The strftime() SQL function now supports %G, %g, %U, and %V.
New modifiers 'ceiling' and 'floor' control the algorithm used to resolve \
ambiguous dates when shifting a date by an integer number of months and/or \
years.
The 'utc' and 'localtime' modifiers are now no-ops if SQLite knows that the time \
is already in UTC or in the localtime, respectively.
Add support for underscore ("_") characters between digits in numeric \
literals.
Add the json_pretty() SQL function.
Query planner improvements:
The "VALUES-as-coroutine" optimization enables INSERT statements with \
thousands of rows in the VALUES clause to parse and run in about half the time \
and using about half as much memory.
Allow the use of an index for queries like "SELECT count(DISTINCT col) FROM \
...", even if the index records are not smaller than the table records.
Improved recognition of cases where the value of an SQL function is constant \
because all its arguments are constant.
Enhance the WHERE-clause push-down optimization so that it is able to push down \
WHERE clause terms containing uncorrelated subqueries.
Allocate additional memory from the heap for the SQL parser stack if that stack \
overflows, rather than reporting a "parser stack overflow" error.
JSON changes:
Allow ASCII control characters within JSON5 string literals.
Fix the -> and ->> operators so that when the right-hand side operand \
is a string that looks like an integer it is still treated as a string, because \
that is what PostgreSQL does.
Allow large hexadecimal literals to be used as the DEFAULT value to a table column.
Files: