+04 Sep 2009 Kevin Rosenberg <kevin@rosenberg.net>
+ * 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)
+
+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)
+
+22 Oct 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.2
+ * db-postgresql/postgresql-sql.lisp: Patch from Gabriele Favalessa based on
+ Andrew Golding suggestion for more informative :error-id slot.
+
+17 Sep 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.1
+ * db-mysql/mysql-sql.lisp: Convert query to uffi cstring (thanks to
+ Albert Krewinkel).
+ * doc/Makefile, doc/html.xsl: Change output encoding from ISO-8859-1 to UTF-8
+
+14 Sep 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 4.0.0: Major version increase to warn of potential
+ backwards incompatibility.
+ * NEWS: Document potentional backward incompatible changes
+ * db-mysql/mysql-sql.lisp: Changes session SQL mode to ANSI immediately
+ after connecting. This may break compatibility with some applications
+ who are using non-ANSI features with MySQL. This change is required to
+ properly support view-classes using a string as their :base-table
+ attribute. This allows users to specify the case of table names.
+ This is feature is even more essential for MySQL itself since MySQL
+ uses case-sensitive table names. Use connection-based database-create
+ and database-destroy rather than trying to invoke command-line mysql
+ utility. Remove automatic upcasing of strings from list-indices.
+ * db-postgresql/postgresql-sql.lisp: Use connection-based
+ database-create and database-destroy rather than trying to invoke
+ command-line utilities.
+ * db-postgresql-socket/postgresql-socket-sql.lisp: Use
+ database-execute-command rather than execute-command for
+ database-{create,destroy}. Connect to postgres database
+ rather than template1 for those database creation/deletion.
+ * sql/metaclasses.lisp: Store the string value of :base-table if a
+ string is provided. Perform sql-escape at time of view-table name
+ creation.
+ * tests/test-init.lisp: Use "ej_join" as a string, rather than a
+ symbol, since "ej_join" is specified as :base-table. Clear the
+ expression output-cache in case the code for generating sql output
+ has changed.
+ * test/test-oodml.lisp: whitespace fix
+ * sql/ooddl.lisp: Use quoted string for primary key constraint if
+ table name is specified as a string.
+ * sql/oodml.lisp: Don't convert a string view-table name to database's
+ default case.
+ * sql/expressions.lisp: Properly handle table and attribute identifiers
+ when they are a string. Do not change case of symbols to match database
+ default case.
+ * sql/operations.lisp: Change multiword symbols to upper case.
+ * sql/fddl.lisp: Quote base-table if a string to preserve case
+ for drop-table and create-table.
+ * tests/test-syntax.lisp: Add tests of low-level string attribute
+ identifiers.
+
+20 Jul 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.6
+ * db-oracle/oracle-loader.lisp: Rework use of ORACLE_HOME directory
+ (problem noted on clsql-devel by icardo Boccato Alves)
+ * sql/pool.lisp: Remove incorrect keyword
+ * sql/database.lisp: Rework WITH-DATABASE to not make the database the
+ default database (reported by Saurabh Nanda and Chaitanya Gupta)
+ * doc/ref-connect.lisp: Update the documentation to WITH-DATABASE to
+ emphasis that make-default has a default value of nil.
+ * sql/transaction.lisp: Adjust commit/rollback messages for Microsoft
+ SQL Server. (patch from Nathan Bird)
+ * sql/metaclasses.lisp: Use finalize-inheritance hack on SBCL because
+ of trouble with def-view-class compilations (patch from Nathan Bird)
+
+15 Jul 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.5
+ * db-mysql/mysql-loader.lisp: Revert previous change since libmysql is
+ not dynamically loaded on Windows
+
+22 Jun 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.4
+ * db-mysql/mysql-loader.lisp: Do not bother loading libmysqlclient since
+ that library is dymically linked to clsql-mysql library. Thus, the mysql
+ library will be automatically loaded. This has only been tested on Linux,
+ thus far.
+
+29 May 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * tests/test-fddl.lisp: Add :order-by for :fddl/big/1 as
+ reported by Ricardo Boccato Alves
+
+02 May 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/database.lisp: Add ability of WITH-DATABASE to return
+ multiple values (patch from Liam Healy)
+
+25 Apr 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.3
+ * doc/connect.xml: variable description fix by Liam Healy
+ * db-sqlite3/sqlite3-api.lisp, uffi/clsql-uffi-loader.lisp:
+ Apply patches from Marcus Pierce to reduce load-time warnings
+ * sql/package.lisp: Export iso-timestring as requested by Kevin Blaisdell
+
+23 Mar 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.2
+ * sql/db-postgresql-socket-api.lisp: Change read-socket-sequence to
+ disable wide characters for crypt salt sequence on SBCL, based
+ on patch from Lars Nostdal.
+
+26 Jan 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.1
+ * sql/pool.lisp: Test pooled connection when popped from
+ the pool to ensure the connection still works. Currently, implemented
+ only for MySQL.
+
+17 Jan 2007 Kevin Rosenberg <kevin@rosenberg.net>
+ * db-mysql/Makefile: Add potential mysql directories
+
+31 Dec 2006 Kevin Rosenberg <kevin@rosenberg.net>
+ * sql/metaclasses.lisp: Remove usused saved-initargs
+ * clsql.asd: Also check ~/.clsql-init.lisp at load-time (usually used to
+ push search libraries)
+
+30 Dec 2006 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 3.8.0: BACKWARD INCOMPATABLE CHANGE!
+ * db-postgresql/postgresql-{api,loader,sql,package}.lisp:
+ Apply patch from Edi Weitz to avoid conflict with new Lispworks 5
+ POSTGRESQL package name. CLSQL's new package will be PGSQL, however
+ on non-Lispworks platforms, the nickname POSTGRESQL will still be
+ available. Applications directly using low-level POSTGRESQL package
+ are recommended to use the new PGSQL name.
+ * db-oracle/oracle-{api,sql}.lisp, sql/{expressions,loop-extension}.lisp,
+ Apply patch from Edi Weitz to reduce compiler warnings.
+
28 Dec 2006 Kevin Rosenberg <kevin@rosenberg.net>
* Version 3.7.9
* sql/expressions.lisp: Commit patch from Edi Weitz to
use *default-database* for SQL-OUTPUT if no database is
explicitly passed to function.
+ * uffi/clsql-uffi-loader.lisp: Change load order to first try
+ plain name/type before attempting user-specified paths (patch
+ from Edi Weitz)
+ * uffi/ptrbits.c: New file to return number of bits in an pointer
+ * uffi/Makefile: use intbits to name .so file based on bit size.
+ Build both 32-bit and 64-bit libraries on 64-bit platform.
30 Nov 2006 Kevin Rosenberg <kevin@rosenberg.net>
* Version 3.7.8