Mail Archives: cygwin/2009/12/14/12:15:11
PACKAGE DESCRIPTION
===================
Homepage: http://sqlite.org/
License : Public Domain (no, really!)
SQLite is a C library providing local database storage with a SQL
interface. Unlike most SQL database systems, SQLite does not accept
connections from remote users. Access to the database requires access
to the file system hosting it; SQLite thus relies on the operating
system's file security for access control. In exchange for this
limitation, you get a smaller, faster database engine that's easy to
embed within a program.
CHANGES SINCE LAST RELEASE
==========================
Changes since previous, 3.6.2-1:
2009 Dec 07 (3.6.21)
* The SQL output resulting from sqlite3_trace() is now modified to
include the values of bound parameters.
* Performance optimizations targetting a specific use case from a
single high-profile user of SQLite. A 12% reduction in the number
of CPU operations is achieved (as measured by valgrind). Actual
performance improvements in practice may vary depending on
workload. Changes include:
o The ifnull() and coalesce() SQL functions are now
implemented using in-line VDBE code rather than calling
external functions, so that unused arguments need never be
evaluated.
o The substr() SQL function does not bother to measure the
length its entire input string if it is only computing a
prefix
o Unnecessary OP_IsNull, OP_Affinity, and OP_MustBeInt VDBE
opcodes are suppressed
o Various code refactorizations for performance
* The FTS3 extension has undergone a major rework and cleanup. New
FTS3 documentation is now available.
* The SQLITE_SECURE_DELETE compile-time option fixed to make sure
that content is deleted even when the truncate optimization
applies.
* Improvements to "dot-command" handling in the Command Line
Interface.
* Other minor bug fixes and documentation enhancements.
2009 Nov 4 (3.6.20)
* Optimizer enhancement: prepared statements are automatically
re-compiled when a binding on the RHS of a LIKE operator changes
or when any range constraint changes under SQLITE_ENABLE_STAT2.
* Various minor bug fixes and documentation enhancements.
2009 Oct 30 (3.6.16.1)
* A small patch to version 3.6.16 to fix the OP_If bug.
2009 Oct 14 (3.6.19)
* Added support for foreign key constraints. Foreign key
constraints are disabled by default. Use the foreign_keys pragma
to turn them on.
* Generalized the IS and IS NOT operators to take arbitrary
expressions on their right-hand side.
* The TCL Interface has been enhanced to use the Non-Recursive
Engine (NRE) interface to the TCL interpreter when linked against
TCL 8.6 or later.
* Fix a bug introduced in 3.6.18 that can lead to a segfault when
an attempt is made to write on a read-only database.
2009 Sep 11 (3.6.18)
* Versioning of the SQLite source code has transitioned from CVS to
Fossil.
* Query planner enhancements.
* The SQLITE_ENABLE_STAT2 compile-time option causes the ANALYZE
command to collect a small histogram of each index, to help
SQLite better select among competing range query indices.
* Recursive triggers can be enabled using the PRAGMA
recursive_triggers statement.
* Delete triggers fire when rows are removed due to a REPLACE
conflict resolution. This feature is only enabled when recursive
triggers are enabled.
* Added the SQLITE_OPEN_SHAREDCACHE and SQLITE_OPEN_PRIVATECACHE
flags for sqlite3_open_v2() used to override the global shared
cache mode settings for individual database connections.
* Added improved version identification features: C-Preprocessor
macro SQLITE_SOURCE_ID, C/C++ interface sqlite3_sourceid(), and
SQL function sqlite_source_id().
* Obscure bug fix on triggers ([efc02f9779]).
2009 Aug 10 (3.6.17)
* Expose the sqlite3_strnicmp() interface for use by extensions and
applications.
* Remove the restriction on virtual tables and shared cache mode.
Virtual tables and shared cache can now be used at the same time.
* Many code simplifications and obscure bug fixes in support of
providing 100% branch test coverage.
2009 June 27 (3.6.16)
* Fix a bug (ticket #3929) that occasionally causes INSERT or
UPDATE operations to fail on an indexed table that has a
self-modifying trigger.
* Other minor bug fixes and performance optimizations.
2009 June 15 (3.6.15)
* Refactor the internal representation of SQL expressions so that
they use less memory on embedded platforms.
* Reduce the amount of stack space used
* Fix an 64-bit alignment bug on HP/UX and Sparc
* The sqlite3_create_function() family of interfaces now return
SQLITE_MISUSE instead of SQLITE_ERROR when passed invalid
parameter combinations.
* When new tables are created using CREATE TABLE ... AS SELECT ...
the datatype of the columns is the simplified SQLite datatype
(TEXT, INT, REAL, NUMERIC, or BLOB) instead of a copy of the
original datatype from the source table.
* Resolve race conditions when checking for a hot rollback journal.
* The sqlite3_shutdown() interface frees all mutexes under windows.
* Enhanced robustness against corrupt database files
* Continuing improvements to the test suite and fixes to obscure
bugs and inconsistencies that the test suite improvements are
uncovering.
2009 May 25 (3.6.14.2)
* Fix a code generator bug introduced in version 3.6.14. This bug
can cause incorrect query results under obscure circumstances.
Ticket #3879.
2009 May 19 (3.6.14.1)
* Fix a bug in group_concat(), ticket #3841
* Fix a performance bug in the pager cache, ticket #3844
* Fix a bug in the sqlite3_backup implementation that can lead to a
corrupt backup database. Ticket #3858.
2009 May 7 (3.6.14)
* Added the optional asynchronous VFS module.
* Enhanced the query optimizer so that virtual tables are able to
make use of OR and IN operators in the WHERE clause.
* Speed improvements in the btree and pager layers.
* Added the SQLITE_HAVE_ISNAN compile-time option which will cause
the isnan() function from the standard math library to be used
instead of SQLite's own home-brew NaN checker.
* Countless minor bug fixes, documentation improvements, new and
improved test cases, and code simplifications and cleanups.
2009 April 13 (3.6.13)
* Fix a bug in version 3.6.12 that causes a segfault when running a
count(*) on the sqlite_master table of an empty database. Ticket
#3774.
* Fix a bug in version 3.6.12 that causes a segfault that when
inserting into a table using a DEFAULT value where there is a
function as part of the DEFAULT value expression. Ticket #3791.
* Fix data structure alignment issues on Sparc. Ticket #3777.
* Other minor bug fixes.
2009 March 31 (3.6.12)
* Fixed a bug that caused database corruption when an
incremental_vacuum is rolled back in an in-memory database.
Ticket #3761.
* Added the sqlite3_unlock_notify() interface.
* Added the reverse_unordered_selects pragma.
* The default page size on windows is automatically adjusted to
match the capabilities of the underlying filesystem.
* Add the new ".genfkey" command in the CLI for generating triggers
to implement foreign key constraints.
* Performance improvements for "count(*)" queries.
* Reduce the amount of heap memory used, especially by TRIGGERs.
2009 Feb 18 (3.6.11)
* Added the hot-backup interface.
* Added new commands ".backup" and ".restore" to the CLI.
* Added new methods backup and restore to the TCL interface.
* Improvements to the syntax bubble diagrams
* Various minor bug fixes
2009 Jan 15 (3.6.10)
* Fix a cache coherency problem that could lead to database
corruption. Ticket #3584.
2009 Jan 14 (3.6.9)
* Fix two bugs, which when combined might result in incorrect query
results. Both bugs were harmless by themselves; only when they
team up do they cause problems. Ticket #3581.
2009 Jan 12 (3.6.8)
* Added support for nested transactions
* Enhanced the query optimizer so that it is able to use multiple
indices to efficiently process OR-connected constraints in a
WHERE clause.
* Added support for parentheses in FTS3 query patterns using the
SQLITE_ENABLE_FTS3_PARENTHESIS compile-time option.
2008 Dec 16 (3.6.7)
* Reorganize the Unix interface in os_unix.c
* Added support for "Proxy Locking" on MacOSX.
* Changed the prototype of the sqlite3_auto_extension() interface
in a way that is backwards compatible but which might cause
warnings in new builds of applications that use that interface.
* Changed the signature of the xDlSym method of the sqlite3_vfs
object in a way that is backwards compatible but which might
cause compiler warnings.
* Added superfluous casts and variable initializations in order to
suppress nuisance compiler warnings.
* Fixes for various minor bugs.
2008 Nov 26 (3.6.6.2)
* Fix a bug in the b-tree delete algorithm that seems like it might
be able to cause database corruption. The bug was first
introduced in version 3.6.6 by check-in [5899] on 2008-11-13.
* Fix a memory leak that can occur following a disk I/O error.
2008 Nov 22 (3.6.6.1)
* Fix a bug in the page cache that can lead database corruption
following a rollback. This bug was first introduced in version
3.6.4.
* Two other very minor bug fixes
2008 Nov 19 (3.6.6)
* Fix a #define that prevented memsys5 from compiling
* Fix a problem in the virtual table commit mechanism that was
causing a crash in FTS3. Ticket #3497.
* Add the application-defined page cache
* Added built-in support for VxWorks
2008 Nov 12 (3.6.5)
* Add the MEMORY option to the journal_mode pragma.
* Added the sqlite3_db_mutex() interface.
* Added the SQLITE_OMIT_TRUNCATE_OPTIMIZATION compile-time option.
* Fixed the truncate optimization so that sqlite3_changes() and
sqlite3_total_changes() interfaces and the count_changes pragma
return the correct values.
* Added the sqlite3_extended_errcode() interface.
* The COMMIT command now succeeds even if there are pending
queries. It returns SQLITE_BUSY if there are pending incremental
BLOB I/O requests.
* The error code is changed to SQLITE_BUSY (instead of
SQLITE_ERROR) when an attempt is made to ROLLBACK while one or
more queries are still pending.
* Drop all support for the experimental memory allocators memsys4
and memsys6.
* Added the SQLITE_ZERO_MALLOC compile-time option.
2008 Oct 15 (3.6.4)
* Add option support for LIMIT and ORDER BY clauses on DELETE and
UPDATE statements. Only works if SQLite is compiled with
SQLITE_ENABLE_UPDATE_DELETE_LIMIT.
* Added the sqlite3_stmt_status() interface for performance
monitoring.
* Add the INDEXED BY clause.
* The LOCKING_STYLE extension is now enabled by default on Mac OS X
* Added the TRUNCATE option to PRAGMA journal_mode
* Performance enhancements to tree balancing logic in the B-Tree
layer.
* Added the source code and documentation for the genfkey program
for automatically generating triggers to enforce foreign key
constraints.
* Added the SQLITE_OMIT_TRUNCATE_OPTIMIZATION compile-time option.
* The SQL language documentation is converted to use syntax
diagrams instead of BNF.
* Other minor bug fixes
2008 Sep 22 (3.6.3)
* Fix for a bug in the SELECT DISTINCT logic that was introduced by
the prior version.
* Other minor bug fixes
INSTALL OR UPGRADE NOTES
========================
Standard install.
CYGWIN INSTALLATION INFORMATION
===============================
To install this package, click on the "Install Cygwin now" link on the
<http://cygwin.com/> web page. This downloads setup.exe to your
system. Then, run setup and answer all of the questions. You'll find
the package listed in the "All" category. After installation, read the
documentation at directories:
/usr/share/doc/<package-version>/*
/usr/share/doc/Cygwin/<package-version>.README
If you have questions or comments, please send them to the Cygwin
mailing list at <cygwin AT cygwin DOT com>.
CYGWIN-ANNOUNCE UNSUBSCRIBE INFO
================================
This message has been sent to cygwin-announce list.
If you want to unsubscribe from the mailing list, look at the
"List-Unsubscribe: " tag in the email header of this message. Send
email to the address specified there. It will be in the format:
cygwin-announce-unsubscribe-you=yourdomain DOT com AT cygwin DOT com
More information on unsubscribing can be found:
http://sources.redhat.com/lists.html#unsubscribe-simple
Please read *all* of the information on unsubscribing that is available
starting at the above URL.
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
- Raw text -