+2011-06-20 Nathan Bird <nathan@acceleration.net>
+ * Version 5.3.4
+ * db-postgresql-socket/postgresql-socket-api.lisp: Addendum
+ to Otto Diesenbacher's patch that had a spurious write a 0
+ byte (to terminate string) that should have been just CCL.
+
+2011-06-12 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.3.3
+ * db-postgresql-socket/postgresql-socket-api.lisp:
+ Patch from Otto Diesenbacher for UTF8 encoded strings
+ for CCL. FIXME: The best patch would be to use the
+ user-set encoding from the database object and use
+ UFFI's encoding strings to/from octet vectors rather
+ than SB-UNICODE and CCL specific code in this file.
+
+2011-04-21 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/generics.lisp: Add defgeneric for new
+ database-last-auto-increment-id
+
+2011-04-01 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.3.2
+ * db-mysql/mysql-client-info.lisp: Add recognition of
+ version 6 of MySQL client library.
+ * sql/metaclass.lisp: Fix the fix in the reader conditional
+
+2011-03-30 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.3.1
+ * sql/metaclasses.lisp: Fix previous patch to work
+ on non-SBCL systems
+
+2011-03-29 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.3.0
+ * sql/metaclasses.lisp: Apply one-line patch to fix
+ for newer SBCL (thanks to Nikodemus Siivola)
+ * many_files: Applied multiple patches from Holger Schauer
+ to improve autoincrement capability.
+
+2010-10-24 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.2.0
+ * db-odbc/odbc-api.lisp: Change from SBCL-specific
+ to UFFI version of octets-to-strings. Reported by
+ Daniel Brunner <daniel@dbrunner.de>
+ * sql/oodml.lisp: Apply patch from Rupert Swarbrick
+ <rswarbrick@gmail.com>: Fix behaviour with auto-inc
+ primary keys.
+ * sql/expressions.lisp, tests/test-syntax.lisp: Apply
+ patch from Russ Tyndall to quote identifiers with space
+ or special character.
+
+2010-09-20 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.1.4
+ * sql/{pool,database}.lisp: Pass encoding argument to
+ connections made from pool and with reconnect.
+
+2010-08-16 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.1.3
+ * db-odbc/odbc-{api,dbi}.lisp: Commit patch from
+ Memet Bilgin to fix issue with unicode and ODBC.
+
+2010-08-16 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.1.2
+ * uffi/clsql-uffi.lisp: Commit patch from JT Klein fixing
+ invocation of uffi:convert-from-foreign-string macro. When
+ time allows, I'll investigate changing UFFI's macro to
+ a function call and then revert this patch.
+
+2010-06-15 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.1.1
+ * clsql-{uffi,mysql}.asd: Modify operation-done-p functions
+ to guard against change introduced in new ASDF traversing.
+
+2010-04-20 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.1.0 [DEPENDENCY UPGRADE: UFFI 2.x needed]
+ * clsql-uffi.asd: Depend on UFFI version >= 2.0
+ to support foreign encoding of strings.
+
+2010-04-16 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.6
+ * db-postgresql.lisp, sql/fddl.lisp: Fix typos [Thanks to
+ Walter C. Pelissero]
+ * sql/metaclasses.lisp: Work around type-check-function being set
+ during defclass expansion in SBCL [Thanks to Walter C. Pelissero]
+ * uffi/clsql-uffi.lisp: In call to uffi:convert-from-foreign-string,
+ Set null-terminated-p to T when length not specified.
+ [Thanks to Walter C. Pelissero]
+
+2010-03-21 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.5
+ * sql/fdml.lisp: Fix DO-QUERY to actually return the last value of
+ the body.
+
+2010-03-02 Nathan Bird <nathan@acceleration.net>
+ * doc/: Added a README on how to build doc; now builds on Ubuntu.
+ * sql/oodml.lisp: READ-SQL-VALUE now has explicit method for
+ handling double-floats and the default method will no longer
+ attempt to convert values that have already been converted.
+ * sql/syntax.lisp: Introduce file-enable-sql-reader-syntax which
+ enables the syntax for the scope of the file without trying to
+ keep track of the current syntax state.
+ * sql/pool.lisp: Introduce
+ clsql-sys:*db-pool-max-free-connections* which is a heuristic
+ threshold for when to disconnect a connection rather than
+ returning it to the pool.
+ * sql/pool.lisp: Check connections for validity before returning
+ to the user.
+
+2010-03-01 Kevin Rosenberg <kevin@rosenberg.net>
+ * db-mysql/mysql-api.lisp: Remove spurious enumeration
+
+2010-02-16 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.4
+ * db-mysql/mysql-api.lisp: Fix mysql_options UFFI parameter list
+ * doc/ref-connect.xml: Document the MySQL options parameter as
+ part of the connection-spec.
+
+2010-02-15 Kevin Rosenberg <kevin@rosenberg.net>
+ * db-mysql/mysql-{api,sql}.lisp: Support sending options
+ to MySQL using mysql_options, which occurs between the API calls
+ of mysql_init and mysql_real_connect.
+
+2010-02-11 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.3
+ * multiple-files: Further internationalization. Change
+ UFFI:CONVERT-RAW-FIELD and UFFI:CONVERT-FROM-FOREIGN-STRINGS
+ invocations to use the foreign character set encoding of the
+ database object. Requires UFFI v.1.8.6
+ * Makefile.common: Fix OS_DARWIN64 setting
+
+2010-02-11 Nathan Bird <nathan@acceleration.net>
+ * MSSQL: better support for fddl 'date type.
+
+2010-02-11 Kevin Rosenberg <kevin@rosenberg.net>
+ * Makefile.common, uffi/Makefile, db-mysql/Makefile:
+ Better support OS X Snow Leopard by building universal
+ (x86_64,i386) dylib bundles
+
+2010-02-08 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.2
+ * sql/database.lisp: Fix missing slot-accessor
+ (Thanks to Stelian Ionescu)
+ * sql/generics.lisp: Add missing keyword to defgeneric
+ (Thanks to Stelian Ionescu)
+
+2010-02-07 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.1
+ * sql/{base-classes,database}.lisp: Add encoding slot for
+ non-ASCII strings.
+ * db-mysql/mysql-sql.lisp: Use UFFI:FOREIGN-ENCODED-OCTET-COUNT.
+ Requires UFFI version 1.8.2 or above.
+
+2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 5.0.0: First release of CLSQL to formally and
+ consistently support non-ASCII strings with encoding of external
+ formats for SQL strings. UFFI version 1.8.1 is higher is required.
+
+ This change may introduce some differences in string handling for
+ people who are using non-ASCII encoded characters. Thus, because
+ of the risk of BACKWARD INCOMPATIBILITY, the major version number
+ was incremented with this release.
+
+2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
+ * tests/test-i18n.lisp: Bind UFFI:*DEFAULT-EXTERNAL-FORMAT*
+ for testing multibyte encodings.
+ * uffi/clsql-uffi.lisp: Changes for UFFI 1.7.4's new support
+ for encoding foreign strings with a specified external format.
+
+2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/metaclasses.lisp: If no declared slot type in
+ compute-lisp-type-from-specified-type, then use t as lisp type.
+ Issue noted when testing Clozure CL 1.4.
+
+2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
+ * tests/test-init.lisp: Turn off the benign console notices for
+ testing on postgres.
+
+2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
+ * clsql-test.asd, tests/{test-i18n,test-init}.lisp:
+ Load test-i18n.lisp and use its tests as long as 'uffi:no-i18n is
+ not present in cl:*features*. This requires UFFI 1.7.2 or above.
+
+2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/utils.lisp: Reading #\no-break_space causes an
+ error for non-unicode SBCL. Conditionalize read of
+ #\no-break_space for non-unicode SBCL and 8-bit string
+ Allegro.
+
+2010-02-03 Kevin Rosenberg <kevin@rosenberg.net>
+ * tests/test-init.lisp: Add *test-report-width* variable
+ and word-wrap skipped test reason field.
+
+2010-01-29 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.3.3
+ * clsql-cffi.asd: New file that causes CLSQL to use
+ CFFI-UFFI-COMPAT library rather than UFFI. Perform 'asdf:load-op
+ on CLSQL-CFFI rather than CLSQL system to use CFFI-UFFI-COMPAT.
+
+2010-01-29 Nathan Bird <nathan@acceleration.net>
+ * tests/*.lisp: A lot more tests and test setup tweaks.
+ * sql/expressions.lisp: output-sql on sql-relational-exp does
+ better arity checking now. (apply #'sql-and some-list) gives
+ better results.
+
+29 Jan 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/oodml.lisp: Fix for UPDATE-RECORD-FROM-SLOTS for normalized
+ view classes
+
+28 Jan 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.3.2
+ * Change "normalise" from British spelling for consistency with
+ other American spellings in CLSQL.
+
+28 Jan 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * db-mysql/Makefile: Add directory for Fedora 11/12 on 64-bit
+ platform (Thanks to Michael Pheasant) and remove a 32-bit directory
+
+28 Jan 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.3.1
+ * sql/utils.lisp: Ensure Lispworks 6 lock is created in sharing mode
+
+20 Jan 2009 Nathan Bird <nathan@acceleration.net>
+ * Version 4.3.0
+ * Rewrite tests to use datasets
+
+07 Jan 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/utils.lisp: Changes to support Lispworks 6
+
+10 Dec 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.2.0
+ * doc/ref-ooddl.lisp: Add needed CDATA escapes
+ * doc/clsql.pdf, doc/html.tar.gz: Build new manuals with
+ normalized view classes.
+
+10 Dec 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ Large patch from Thijs Oppermann <thijso+clsql@gmail.com> to add
+ support for normalized view classes. When having view class that
+ inherit from others, CLSQL by default builds tab all the columns
+ from the parent in the child. This patch is meant to normali so
+ that a join is done on the primary keys of the concerned tables to
+ get a set.
+
+10 Dec 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/time.lisp: Patch from Oleg Tihonov to SYNTAX-PARSE-ISO-8601
+ to properly parse fractions of seconds.
+
+10 Dec 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/time.lisp: Patch from Oleg Tihonov to roll function
+ to properly use USEC argument.
+
+21 Nov 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.1.2
+ * Makefiles: On 64-bit Linux systems, try to build both 32 and 64-bit
+ interface libraries. This requires the installation of multiarch build tools
+ as well as 32-bit support libraries (libc, libz and libmysqlclient).
+
+04 Sep 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.1.1
+ * sql/fdml.lisp: Rework do-query to use supplied database
+ parameter when passed a sql-object-query
+ (thanks to JTK <jetmonk@gmail.com>)
+ * sql/generic-postgresql.lisp: Allow optional connect
+ parameters for postgresql databases (thanks to Stephen Compall)
+ * doc/ref-{clsql,connect}.xml, sql/db-interfaces.lisp:
+ Fix transposed letters (thanks to Stephen Compall)
+ * db-mysql/Makefile: Add directory for MacPorts mysql5 port
+ (thanks to Stephen Compall)
+ * sql/database.lisp: Have database-type default be
+ *default-database-type* (thanks to Desmond O. Chang)
+ * sql/transactions.lisp: Improved handlining of nested
+ transactions (thanks to Eli Naeher)
+ * sql/time.lisp: Commit patch to fix parse-iso-8601-duration
+ (thanks to Stephen Compall)
+ * sql/database.lisp: Use :verbose nil for asdf:operate
+ invocation (Thanks to Mackram Raydan)
+ * sql/metaclasses.lisp: Rework initialize-instance for
+ view-class-direct-slot-definition (thanks to Stephen Compall)
+
+31 Aug 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/db-interface.lisp: Fix spelling error (thanks to
+ David Thompson)
+ * clsql-mysql.asd/db-mysql/mysql-loader.lisp: Commit
+ patch from Andreas Franke to honor windows drive letter
+ when loading clsql_mysql C library.
+
+31 Aug 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.1.0
+ * db-mysql/mysql-{sql,api}.lisp,db-mysql/clsql_mysql.c:
+ Latest version of mysqlclient once again changed the C
+ structures from which the mysql backend reads data.
+ Rather than adding yet another structure definition which
+ is enabled by the client version as read by mysql-client-info.lisp,
+ the mysql backend has been re-written to ignore in the internal
+ C structures. Instead, C wrapper functions for slot access have
+ been added to clsql_mysql.c and are used by mysql-sql.lisp to
+ access the internals of C structures. This adds a bit of overhead,
+ but completely separates the lisp code from trying to keep up
+ with the continually changing internal C structure of mysql.
+ All tests in the test suite executed correctly with this change.
+
+31 Aug 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.6
+ * sql/database.lisp: Fix syntax on process-lock (thanks to
+ Stian Sletner)
+ * db-mysql/mysql-sql.lisp: Allow use of database parameter
+ in database-list function (thanks to Michael Pheasant)
+ * sql/oodml.lisp: Allow NULL values for floating-point fields
+ (thanks to Jan Rychter)
+
+02 Jun 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.5
+ * sql/database.lisp: Add process-lock for deleting database from
+ a pool (thanks to Ralf Mattes).
+
+25 Feb 2008 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.4
+ * sql/expressions.lisp: Remove stray form (thanks to Samuel Ward)
+
+12 Dec 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/expressions.lisp: Bind *in-subselect* when outputting
+ selections (patch from unknown source).
+
+11 Dec 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.3
+ * sql/metaclasses.lisp: Unify base-table processing by extracting
+ the correct code from initialize-instance :around into the helper
+ function set-view-table-slot. Call that function also in
+ reinitialize-instance :around replacing erroneous code discovered
+ by Josh Feinstein.
+
17 Nov 2007 Kevin Rosenberg <kevin@rosenberg.net>
* BUGS: Add note about benefit of using configure file to create
Makefiles (suggestion from Joe Corneli)