From 63847496f14c813a5d80efd5b7de0f1294ffe1e3 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 13 Apr 2024 16:07:11 +0200 Subject: Adding upstream version 3.45.1. Signed-off-by: Daniel Baumann --- www/releaselog/3_20_0.html | 225 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 225 insertions(+) create mode 100644 www/releaselog/3_20_0.html (limited to 'www/releaselog/3_20_0.html') diff --git a/www/releaselog/3_20_0.html b/www/releaselog/3_20_0.html new file mode 100644 index 0000000..0e85f35 --- /dev/null +++ b/www/releaselog/3_20_0.html @@ -0,0 +1,225 @@ + + + + + +SQLite Release 3.20.0 On 2017-08-01 + + + +
+ + + +
+
+Small. Fast. Reliable.
Choose any three. +
+ + +
+
+ + + +
+
+
+ +

SQLite Release 3.20.0 On 2017-08-01

    +
  1. Update the text of error messages returned by sqlite3_errmsg() for some + error codes. +
  2. Add new pointer passing interfaces. +
  3. Backwards-incompatible changes to some extensions in order to take + advantage of the improved security offered by the new + pointer passing interfaces: +
      +
    1. Extending FTS5 → requires sqlite3_bind_pointer() to find + the fts5_api pointer. +
    2. carray(PTR,N) → requires sqlite3_bind_pointer() to set the PTR parameter. +
    3. remember(V,PTR) + → requires sqlite3_bind_pointer() to set the PTR parameter. +
    +
  4. Added the SQLITE_STMT virtual table extension. +
  5. Added the COMPLETION extension - designed to suggest + tab-completions for interactive user interfaces. This is a work in progress. + Expect further enhancements in future releases. +
  6. Added the UNION virtual table extension. +
  7. The built-in date and time functions have been enhanced so that they can be + used in CHECK constraints, in indexes on expressions, and in the WHERE clauses + of partial indexes, provided that they do not use the 'now', 'localtime', or + 'utc' keywords. More information. +
  8. Added the sqlite3_prepare_v3() and sqlite3_prepare16_v3() interfaces + with the extra "prepFlags" parameters. +
  9. Provide the SQLITE_PREPARE_PERSISTENT flag for sqlite3_prepare_v3() and + use it to limit lookaside memory misuse by FTS3, FTS5, and the + R-Tree extension. +
  10. Added the PRAGMA secure_delete=FAST command. When secure_delete is + set to FAST, old content is overwritten with zeros as long as that does + not increase the amount of I/O. Deleted content might still persist on + the free-page list but will be purged from all b-tree pages. +
  11. Enhancements to the command-line shell: +
      +
    1. Add support for tab-completion using the COMPLETION extension, for + both readline and linenoise. +
    2. Add the ".cd" command. +
    3. Enhance the ".schema" command to show the schema of all attached + databases. +
    4. Enhance ".tables" so that it shows the schema names for all attached + if the name is anything other than "main". +
    5. The ".import" command ignores an initial UTF-8 BOM. +
    6. Added the "--newlines" option to the ".dump" command to cause U+000a and + U+000d characters to be output literally rather than escaped using the + replace() function. +
    +
  12. Query planner enhancements: +
      +
    1. When generating individual loops for each ORed term of an OR scan, + move any constant WHERE expressions outside of the loop, as is + done for top-level loops. +
    2. The query planner examines the values of bound parameters to help + determine if a partial index is usable. +
    3. When deciding between two plans with the same estimated cost, bias + the selection toward the one that does not use the sorter. +
    4. Evaluate WHERE clause constraints involving correlated subqueries + last, in the hope that they never have be evaluated at all. +
    5. Do not use the flattening optimization for a sub-query on the RHS + of a LEFT JOIN if that subquery reads data from a virtual table as + doing so prevents the query planner from creating automatic indexes + on the results of the sub-query, which can slow down the query. +
    +
  13. Add SQLITE_STMTSTATUS_REPREPARE, SQLITE_STMTSTATUS_RUN, + and SQLITE_STMTSTATUS_MEMUSED options for the + sqlite3_stmt_status() interface. +
  14. Provide PRAGMA functions for + PRAGMA integrity_check, PRAGMA quick_check, and + PRAGMA foreign_key_check. +
  15. Add the -withoutnulls option to the TCL interface eval method. +
  16. Enhance the sqlite3_analyzer.exe utility program so that it shows + the number of bytes of metadata on btree pages. +
  17. The SQLITE_DBCONFIG_ENABLE_QPSG run-time option and the + SQLITE_ENABLE_QPSG compile-time option enable the + query planner stability guarantee. See also ticket + 892fc34f173e99d8 +
  18. Miscellaneous optimizations result in a 2% reduction in CPU cycles used. +

    Bug Fixes: +

  19. Fix the behavior of sqlite3_column_name() for queries that use the + flattening optimization so that the result is consistent with other + queries that do not use that optimization, and with PostgreSQL, MySQL, + and SQLServer. Ticket de3403bf5ae. +
  20. Fix the query planner so that it knows not to use automatic indexes + on the right table of LEFT JOIN if the WHERE clause uses the IS operator. + Fix for ce68383bf6aba. +
  21. Ensure that the query planner knows that any column of a + flattened LEFT JOIN can be NULL even + if that column is labeled with "NOT NULL". Fix for ticket + 892fc34f173e99d8. +
  22. Fix rare false-positives in PRAGMA integrity_check when run on a database connection + with attached databases. Ticket + a4e06e75a9ab61a12 +
  23. Fix a bug (discovered by OSSFuzz) that causes an assertion fault if certain + dodgy CREATE TABLE declarations are used. Ticket + bc115541132dad136 +

    Hashes: +

  24. SQLITE_SOURCE_ID: "2017-08-01 13:24:15 9501e22dfeebdcefa783575e47c60b514d7c2e0cad73b2a496c0bc4b680900a8" +
  25. SHA3-256 for sqlite3.c: 79b7f3b977360456350219cba0ba0e5eb55910565eab68ea83edda2f968ebe95 + +

+ +

A complete list of SQLite releases + in a single page and a chronology are both also available. + A detailed history of every + check-in is available at + + SQLite version control site.

+ + -- cgit v1.2.3