 
Small. Fast. Reliable.
Choose any three.
 
SQLite Release 3.19.2 On 2017-05-25
Changes in version 3.19.0 (2017-05-22):
-  The SQLITE_READ authorizer callback is invoked once
     with a column name that is an empty string
     for every table referenced in a query from which no columns are extracted.
-  When using an index on an expression, try to use expression values already
     available in the index, rather than loading the original columns and recomputing
     the expression.
-  Enhance the flattening optimization so that it is able to flatten views
     on the right-hand side of a LEFT JOIN.
-  Use replace() instead of char() for escaping newline and carriage-return
     characters embedded in strings in the .dump output from the command-line shell.
-  Avoid unnecessary foreign key processing in UPDATE statements that do not
     touch the columns that are constrained by the foreign keys.
-  On a DISTINCT query that uses an index, try to skip ahead to the next distinct
     entry using the index rather than stepping through rows, when an appropriate
     index is available.
-  Avoid unnecessary invalidation of sqlite3_blob handles when making
     changes to unrelated tables.
-  Transfer any terms of the HAVING clause that use only columns mentioned in
     the GROUP BY clause over to the WHERE clause for faster processing.
-  Reuse the same materialization of a VIEW if that VIEW appears more than
     once in the same query.
-  Enhance PRAGMA integrity_check so that it identifies tables that have two
     or more rows with the same rowid.
-  Enhance the FTS5 query syntax so that column filters
     may be applied to arbitrary expressions.
-  Enhance the json_extract() function to cache and reuse parses of JSON
     input text.
-  Added the anycollseq.c
     loadable extension that allows a generic SQLite database connection to
     read a schema that contains unknown and/or
     application-specific collating sequences.
Bug Fixes:
 
-  Fix a problem in REPLACE that can result in a corrupt database containing
     two or more rows with the same rowid.  Fix for ticket
     f68dc596c4e6018d.
-  Fix a problem in PRAGMA integrity_check that was causing a subsequent
     VACUUM to behave suboptimally.
-  Fix the PRAGMA foreign_key_check command so that it works correctly with
     foreign keys on WITHOUT ROWID tables.
-  Fix a bug in the b-tree logic that can result in incorrect duplicate answers
     for IN operator queries.  Ticket
     61fe9745
-  Disallow leading zeros in numeric constants in JSON.  Fix for ticket
     b93be8729a895a528e2.
-  Disallow control characters inside of strings in JSON.  Fix for ticket
     6c9b5514077fed34551.
-  Limit the depth of recursion for JSON objects and arrays in order to avoid
     excess stack usage in the recursive descent parser.  Fix for ticket
     981329adeef51011052.
Additional changes in version 3.19.1 (2017-05-24):
- Fix a bug in the LEFT JOIN flattening optimization. Ticket
    cad1ab4cb7b0fc.
- Remove a surplus semicolon that was causing problems for older versions of MSVC.
Additional changes in version 3.19.2 (2017-05-25):
- Fix more bugs in the LEFT JOIN flattening optimization. Ticket
    7fde638e94287d2c.
Hashes:
 
- SQLITE_SOURCE_ID: "2017-05-25 16:50:27 edb4e819b0c058c7d74d27ebd14cc5ceb2bad6a6144a486a970182b7afe3f8b9"
- SHA3-256 for sqlite3.c: 1be0c457869c1f7eba58c3b5097b9ec307a15be338308bee8e5be8570bcf5d1e
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.