+25 May 2004 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 2.11.0 released: Full Oracle support. All tests pass
+ * db-oracle/oracle-sql.lisp: Add declaration so that SBCL runs efficiently.
+ * tests/test-init.lisp: capitalize odbc backend name in banner
+ * CONTRIBUTORS: Add note about Marcus' excellent work
+ * sql/oodml.lisp: Removed old stub function
+ * clsql.asd: Use module names in current package rather than keyword package
+ * db-oracle/oracle-sql.lisp: Don't trim trailing spaces. Prevent interrupts
+ in setting sequence position. Make autocommits more efficient.
+ * tests/test-init.lisp: Skip 2 tests on Oracle which have unsupported syntax
+ * sql/oodml.lisp: Get rid of undocumented raw-string type. CommonSQL
+ strings are raw (non-trimmed trailing whitespace). Add database-get-type-specifier
+ and read-sql-value for NUMBER and CHAR.
+ * sql/base-classes.lisp: Add autocommit slot
+ * sql/transaction.lisp: Added autocommit processing, mild cleaning.
+ * doc/intro.xml: Add Oracle
+
+24 May 2004: Marcus Pearce (m.t.pearce@city.ac.uk)
+ * db-postgresql-socket/postgresql-socket-sql.lisp: replace
+ CLSQL-SIMPLE-WARNING with SQL-WARNING.
+ * db-sqlite/sqlite-sql.lisp: replace CLSQL-SIMPLE-WARNING with
+ SQL-WARNING.
+ * db-aodbc/aodbc-sql.lisp: replace CLSQL-ERROR with SQL-ERROR.
+ * clsql.asd: reworked module structure in package definition and
+ file names to better reflect component functionality.
+ * sql/package.lisp: added SQL-FATAL-ERROR and SQL-TIMEOUT-ERROR to
+ exports list. Removed duplicate and obsolete exports. Exported
+ remaining SQL operations: SQL-SOME, SQL-<>, SQL-BETWEEN, SQL-DISTINCT,
+ SQL-NVL and SQL-FUNCTION. Organised exports by functionality/file and
+ according to whether they are specified by CommonSQL or CLSQL
+ extensions.
+ * sql/transaction.lisp: replace CLSQL-SIMPLE-WARNING with
+ SQL-WARNING.
+ * sql/generics.lisp: moved generics for QUERY and EXECUTE-COMMAND
+ here from basic-sql.lisp.
+ * sql/expressions.lisp: NEW FILE: renamed from classes.lisp (deleted).
+ * sql/fddl.lisp: NEW FILE: renamed from table.lisp (deleted).
+ * sql/fdml.lisp: NEW FILE: merger of basic-sql.lisp and sql.lisp
+ (both deleted).
+ * sql/ooddl.lisp: NEW FILE: ooddl from objects.lisp (deleted).
+ * sql/oodml.lisp: NEW FILE: oodml from objects.lisp (deleted).
+
+23 May 2004 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 2.10.22 released
+ * sql/kmr-mop.lisp, sql/objects.lisp: Since SBCL is the only implementation that
+ has reversed class slots, change the default for ordered-class-slots so that slots
+ are now in the same order an in the def-view-class.
+ * sql/sql.lisp: Honor case of string table identifier to INSERT-RECORDS
+ * test/test-fddl.lisp: Add two tests for mixed case names
+ * db-oracle/oracle-sql.lisp: Add missing database qualifier. Return NUMBER (double)
+ for computed fields, this will require some adjustment to the test suite which
+ in many cases expects integers.
+ * test/test-fdml.lisp: Accomodate that Oracle returns doubles for computed columns
+
+22 May 2004 Kevin Rosenberg <kevin@rosenberg.net>
+ * Version 2.10.21 released
+ * sql/sequences.lisp: Move generic sequence functions here from db-sqlite,
+ db-odbc, and db-aodbc.
+ * sql/*.lisp: Add db-type parameter to generic functions READ-SQL-VALUE,
+ DATABASE-GET-TYPE-SPECIFIER, and OUTPUT-SQL-VALUE-AS-TYPE. Update methods to use these.
+ * sql/generic-postgresql.lisp, sql/generic-odbc.lisp: New files
+ * db-odbc/odbc-sql.lisp, db-aodbc/aodbc-sql.lisp: Move common code to
+ sql/generic-odbc.lisp
+ * db-postgresql/postgresql-sql.lisp, db-postgresql-socket/postgresql-socket-sql.lisp:
+ Move common code to sql/generic-postgresql.lisp
+ * sql/classes.lisp: honor case of string tables when outputting queries
+ * sql/objects.lisp: Add database type to default database-get-type-specifier method
+ * sql/sql.lisp: Add database type to default database-abort-transaction method
+ * db-mysql/mysql-objects.lisp: New file
+ * sql/objects.lisp: Move MySQL specific code to mysql-objects.lisp
+ * sql/utils.lisp: Add GETENV function which will be used to get ORACLE_HOME
+ from environment
+ * test/test-fdml.lisp: String table names are now case sensitive, so convert to
+ default db case for FDML/SELECT/25
+
+22 May 2004 Kevin Rosenberg
+ * Version 2.10.20 released: Oracle backend now fails 6 out of 200 tests
+ * TODO: Added 2 variances from CommonSQL. Add tests for owner phrases
+ and string identifiers with non-default case
+ * sql/table.lisp: Don't convert string table name to a symbol.
+ * sql/classes.lisp: Honor case of string identifiers
+ * sql/sql.lisp: Ensure recyclebin is purged for Oracle in
+ TRUNCATE-DATABASE
+ * db-oracle/oracle-sql.lisp: Add sequence functions, fix use of
+ of owner phrases. Obtain server and client versions.
+ * db-oracle/oracle-objects.lisp: Fix type specifiers
+ * tests/test-fddl.lisp: Allow :varchar2 and :number as data types
+ * tests/test-init.lisp: Properly get username from Oracle connection-spec
+
+22 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * sql/generics.lisp: reworked docstrings. Remove generics for
+ ADD-TO-RELATION and REMOVE-FROM-RELATION.
+ * sql/objects.lisp: reworked docstrings. Changed UPDATE-OBJECT-JOINS
+ to UPDATE-OBJECTS-JOINS for CommonSQL compatibility.
+ * sql/package.lisp: Changed UPDATE-OBJECT-JOINS to UPDATE-OBJECTS-JOINS
+ for CommonSQL compatibility. Remove ADD-TO-RELATION and
+ REMOVE-FROM-RELATION.
+ * tests/test-oodml.lisp: Changed UPDATE-OBJECT-JOINS to
+ UPDATE-OBJECTS-JOINS for CommonSQL compatibility.
+ * doc/TODO: added notes about extra slot options to DEF-VIEW-CLASS.
+ * sql/conditions.lisp: add documentation for conditions. Add
+ SQL-TIMEOUT-ERROR and SQL-FATAL-ERROR for CommonSQL compatibility.
+
+21 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * sql/basic-sql.lisp: reworked docstrings.
+ * sql/transactions.lisp: reworked docstrings.
+ * sql/sql.lisp: reworked docstrings.
+ * sql/initialize.lisp: reworked docstrings. INITIALIZE-DATABASE-TYPE
+ sets *DEFAULT-DATABASE-TYPE* for CommonSQL compatibility.
+ * sql/database.lisp: reworked docstrings.
+ * doc/TODO: added notes about START-TRANSACTION and IN-TRANSACTION-P
+ and FDML extensions and database extensions.
+
+20 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * db-oracle/oracle-sql: Use clsql-specific error conditions. Use owner keyword.
+ * db-oracle/make9.sh: add makefile for building with Oracle 9 client
+ libraries
+ * sql/table.lisp: Add logic for dealing with Oracle 10g vs. previous
+ Oracle versions with the PURGE option required for drop table. This needs
+ to be converted to a generic function and moved to db-oracle/oracle-sql.lisp
+
+20 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * sql/classes.lisp: remove unused PARAMS slot in SQL-IDENT-ATTRIBUTE.
+ * sql/syntax.lisp: remove unused PARAMS keyword arg to SQL-EXPRESSION.
+ * sql/table.lisp: reworked docstrings.
+ * sql/objects.lisp: moved *default-update-objects-max-len* here from
+ table.lisp.
+ * doc/TODO: notes about :if-does-not-exist arg to DROP-TABLE,
+ DROP-VIEW and DROP-INDEX and the use of the :transactions and
+ :constraints keyword args to CREATE-TABLE.
+ * sql/classes.lisp: the DESCRIPTION argument to CREATE-TABLE is now
+ CommonSQL compatible with respect to column constraints.
+
+20 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * sql/oracle-sql.lisp: Now compiles and runs on SBCL.
+ Requires UFFI 1.5.0 or higher
+
+20 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * Version 2.10.19
+ * sql/conditions.lisp: Fix cerror
+
+19 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * Version 2.10.18 released: New condition hierarchy to be compatible
+ with CommonSQL -- not backward compatible with previous CLSQL.
+ * sql/db-interface.lisp: Add more default methods
+ * sql/objects.lisp: Add explicit table name to order-by parameters
+ in find-all when only one table to avoid selecting a duplicate row.
+ Fix error in FIND-ALL when using :order-by such as (([foo] :asc))
+ as previous logic was adding two fields (foo asc) to SELECT query.
+ Make :result-types :auto be the default for object selections.
+ Properly handle caching key when using multiple order-by with asc/desc
+ directions.
+ * db-oracle/*.lisp: Much improvements, now passes 90% of test suite
+
+19 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * sql/recording.lisp: reworked docstrings.
+ * sql/syntax.lisp: reworked docstrings.
+ * doc/TODO: added notes about extensions to SQL-RECORDING-P and the
+ SQL syntax state functions being macros.
+
+19 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * sql/package.lisp: Export initialize-database-type and
+ *initialize-database-types* from CLSQL package.
+ * sql/conditions.lisp: Add new CommonSQL compatible conditions,
+ remove old CLSQL conditions.
+ * sql/loop-extensions.lisp: Make errors of type sql-user-error
+ * */*.lisp: Convert to from old to new conditions
+
+18 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * sql/table.lisp: Add PURGE to drop command for oracle 10g backend.
+ To handle this difference, will need to add a new database-drop-table
+ generic function.
+ * db-oracle/oracle-sql.lisp: Move server-version and
+ major-version-number to database object to allow multiple connections
+ to Oracle servers of different versions.
+
+18 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * TODO: moved notes about backends to doc/TODO.
+ * doc/TODO: added notes about backends and select extensions.
+ * sql/base-classes.lisp: remove obsolete schema slot in database
+ class.
+
+16 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * db-oracle/oracle-api: Add OCIServerVersion
+ * db-oracle/oracle-sql: Query and store server version on connect
+ * sql/db-interface.lisp: Add new db-type-has-bigint? generic
+ function to handle OCI's lack of bigint support
+ * test/test-basic.lisp: Separate bigint testing
+ * test/test-utils.lisp: Add oracle to specs and list of backends
+ * doc/TODO: New file
+ * test/test-fdml.lisp: Added FDML/SELECT/34 to test
+ run-time instantiation of variables in reader macros.
+ * TODO: Remove item already complete. Add note about
+ condition variances
+
+16 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * sql/syntax.lisp: added condition to the reader macro to treat [*]
+ as a column identifier (rather than an operation) for CommonSQL
+ compatibility.
+ * tests/test-fdml.lisp: add tests for ORDER-BY and SET-OPERATION
+ keword args to SELECT, [*] as column identifier, new MAP-QUERY
+ behaviour and the ANY and ALL operators in subqueries.
+ * tests/test-init.lisp: add set-operation and subquery tests to
+ appropriate skip lists.
+ * sql/objects.lisp: remove redundant and non CommonSQL compatible
+ ORDER-BY-DESCENDING keyword argument for SELECT.
+ * sql/classes.lisp: remove redundant and non CommonSQL compatible
+ ORDER-BY-DESCENDING keyword argument for SELECT.
+ * tests/test-oodml.lisp: add test for ORDER-BY keyword to SELECT
+ with object queries.
+
15 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
- * Version 2.10.18
* sql/db-interface.lisp: Add new db-type-has-union?
since Mysql 3.23 does not support unions.
* sql/test-init.lisp: Don't try union tests on database