SQLITE_SCM_BRANCH → the name of the branch from which the source code is taken.
SQLITE_SCM_TAGS → space-separated list of tags on the source code check-in.
SQLITE_SCM_DATETIME → ISO-8601 date and time of the source code check-in.
Two new JSON functions, jsonb_each() and jsonb_tree() work the same as the existing
json_each() and json_tree() functions except that they return JSONB for the "value" column
when the "type" is 'array' or 'object'.
Increase the precision of ".timer" to microseconds.
Enhance the "box" and "column" formatting modes to deal
with double-wide characters.
The ".imposter" command provides read-only imposter tables
that work with VACUUM and do not require the --unsafe-testing
option.
Add the --ifexists option to the CLI command-line option and to
the .open command.
Limit columns widths set by the ".width" command to 30,000 or less,
as there is not good reason to have wider columns, but supporting
wider columns provides opportunity to malefactors.
Performance enhancements:
Use fewer CPU cycles to commit a read transaction.
Early detection of joins that return no rows due to one or more
of the tables containing no rows.
Avoid evaluation of scalar subqueries if the result of the subquery
does not change the result of the overall expression.
Faster window function queries when using
"BETWEEN :x FOLLOWING AND :y FOLLOWING" with a large :y.
For the built-in printf() and the format() SQL function,
omit the leading '-' from negative floating point numbers if the
'+' flag is omitted and the "#" flag is present and all displayed digits are '0'.
Use '%#f' or similar to avoid outputs like '-0.00' and instead show just '0.00'.
JavaScript/WASM now supports 64-bit WASM. The canonical builds continue to be
32-bit but creating one's own 64-bit build is now as simple
as running "make".