# # Run this script to generated a changes.html output file # source common.tcl header {SQLite changes} puts {

This page provides a high-level summary of changes to SQLite. For more detail, refer the the checkin logs generated by CVS at http://www.sqlite.org/cvstrac/timeline.

} proc chng {date desc} { if {[regexp {\(([0-9.]+)\)} $date all vers]} { set label [string map {. _} $vers] puts "" } puts "
$date
" regsub -all {[Tt]icket #(\d+)} $desc \ {
\0} desc puts "

" puts "
" } chng {2007 June 18 (3.4.0)} {
  • Fix a bug that can lead to database corruption if an SQLITE_BUSY error occurs in the middle of an explicit transaction and that transaction is later committed. Ticket #2409. See the CorruptionFollowingBusyError wiki page for details.
  • Fix a bug that can lead to database corruption if autovacuum mode is on and a malloc() failure follows a CREATE TABLE or CREATE INDEX statement which itself follows a cache overflow inside a transaction. See ticket #2418.
  • Added explicit upper bounds on the sizes and quantities of things SQLite can process. This change might cause compatibility problems for applications that use SQLite in the extreme, which is why the current release is 3.4.0 instead of 3.3.18.
  • Added support for Incremental BLOB I/O.
  • Added the zeroblob API and the zeroblob() SQL function.
  • Added support for Incremental Vacuum.
  • Added the SQLITE_MIXED_ENDIAN_64BIT_FLOAT compile-time option to suppport ARM7 processors with goofy endianness.
  • Removed all instances of sprintf() and strcpy() from the core library.
  • Added support for International Components for Unicode (ICU) to the full-text search extensions.

  • } footer {$Id:}