X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=ChangeLog;h=07295e4c2b6cd814293627ce236ca6ab4ae26264;hp=c3435af8d023dbcf10ba56ecf23bcf6a7f61d003;hb=23a10375f83c89c138369e05c8f57f679bb43ec9;hpb=a45efdc4b94ed2ce0d70c8bd1f4c0b0b71a827db diff --git a/ChangeLog b/ChangeLog index c3435af..07295e4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,10 +1,274 @@ +04 Jun 2004 Kevin Rosenberg + * tests/README: Fix filename [reported by Bill Clementson] + * sql/transactions.lisp: Apply return value patch from + Edi Weitz for WITH-TRANSACTION + * tests/README: Remove ptester package requirement (as noted + by Bill Clementson) + +03 Jun 2004 Kevin Rosenberg + * Version 2.11.5 released + * examples/clsql-tutorial.lisp: Remove obsolete :nulls-ok attribute, + Select connection-spec based on connection type. Bugs reported by + Bill Clementson. + * uffi/uffi.dll, uffi/uffi.lib: Recompile with Visual Studio 2003 + * db-mysql/mysql-loader.lisp: Update check for zlibwapi library + name on Windows, add \bin\ directory to search path + +31 May 2004 Marcus Pearce + * db-odbc/odbc-sql.lisp: DB-TYPE replaced with DATABASE-TYPE in + DATABASE-CONNECT. + * sql/operations.lisp: substr now generates SUBSTR for use on + Oracle; added a new operator SUBSTRING for use elsewhere. minus + now generates MINUS for use on Oracle. Nvl signals an error if + not called with exactly 2 arguments. Add concat function for use + instead of the || operator on MySQL and Oracle. + * sql/syntax.lisp: changed internal symbol for the || operator to + CONCAT-OP. + * sql/expressions.lisp: removed redundant and unused functions + GENERATE-SQL (cf. SQL-OUTPUT) and DATABASE-CONSTRAINT-DESCRIPTION + (cf. MAKE-CONSTRAINTS-DESCRIPTION). + * sql/generics.lisp: removed generic function for + DATABASE-CONSTRAINT-DESCRIPTION (see above). + * tests/test-syntax.lisp: modified/added tests according to changes + in sql/operations.lisp. + * tests/test-fdml.lisp: changed SUBSTR to SUBSTRING in test + :fdml/select/21. + * sql/package.lisp: added the operators SQL-SUBSTRING, SQL-CONCAT-OP + and SQL-USERENV to the shared exports list. Removed + ROLLBACK-TRANSACTION, COMMIT-TRANSACTION, DATABASE-START-TRANSACTION, + DATABASE-ABORT-TRANSACTION, DATABASE-COMMIT-TRANSACTION, + TRANSACTION-LEVEL, TRANSACTION, RECORD-SQL-COMMAND and + RECORD-SQL-RESULT from shared exports list. + +30 May 2004 Kevin Rosenberg + * db-postgresql/postgresl-sql.lisp: Avoid computing + result-types lisp when nil result-types. Return only + one value when field-types nil. + * db-mysql/mysql-sql.lisp: Simple queries now + working with prepared statements. + +30 May 2004 Kevin Rosenberg + * Version 2.11.4: MySQL 4.1 now passes all tests + * sql/package.lisp: Add API for prepared statments. + * sql/fdml.lisp: Change implicit flatp processing + for string map-query for greater CommonSQL conformance. + Add high-high API for prepared statements. + * tests/test-basic.lisp: Add test for map-query and + single argument. + * sql/transactions.lisp: Change name/semantics of + autocommit to set-autocommit. + * sql/generic-postgresql.lisp: Add support for + prepared statements. + * tests/test-internal.lisp: New file + * sql/odbc-api.lisp: Update to using ODBC V3 protocol + * clsql-mysql.asd, clsql-uffi.asd: Remove check and Common Lisp + Controller invocation. + * db-mysql/mysql-api.lisp: Add support for MySQL 4.1 field structure + * sql/expressions.lisp: Avoid emitting double parenthesis when a + function contains a subselect. + +27 May 2004 Kevin Rosenberg + * Version 2.11.3 + * sql/ooddl.lisp: Commit patch from Edi Weitz fixing return + type (setf slot-value-using-class) + * TODO: add not that need a test case for the above fix + * db-sqlite: Remove clisp support since clisp can not run CLSQL + with its MOP usage + * db-oracle/oracle-sql.lisp: By default, use OCIEnvCreate as + introduced in Oracle8. Leave older code selectable by a reader macro + for Oracle7 and prior. Avoid use of OCIServerAttach since CLSQL + uses OCILogon and does not the more complex session management. + +26 May 2004 Kevin Rosenberg + * sql/oodml.lisp: Commit universal-time typo patch from Edi Weitz + * test/test-init.lisp: Add universal-time slot to person. + * test/test-fddl.lisp: Add tests of universal-time slot + * test/test-ooddl.lisp: Test universal-time slot in an object + * TODO: Remove need for universal-time test + * debian/rules, debian/control: Add cl-sql-oracle binary package + * doc/appendix.xml: Add Oracle backend information + * db-oracle/oracle-objects.lisp: Add database-get-type-specifier for + universal-time. Convert BIGINT CLSQL type to CHAR SQL type + * db-mysql/mysql-sql.lisp: Fix condition name to sql-connection-error + * doc/ref-clsql.xml: Renamed from ref_clsql.xml. Change the documentation + for map-query to reflect changed in arguments to be CommonSQL compatible. + Updated old clsql conditions to new CommonSQL compatible conditions. + +25 May 2004 Kevin Rosenberg + * sql/oodml.lisp: (string n) now produces a CHAR field. Add new VARCHAR + type. Added *default-varchar-length* rather than previous hard-coded + varchar length. Remove 'simple-string and 'simple-base-string since they + are subtypes of 'string. + * db-oracle/oracle-sql.lisp: Use *default-varchar-length* rather than + local hard-coded value. + * sql/metaclasses.lisp: Convert specified type VARCHAR and (VARCHAR n) to Lisp + type string. Convert specified-type (CHAR n) to string. Convert specified-type + CHAR to lisp type character. + * sql/generic-postgresql.lisp: (string n) => (CHAR n) + * sql/operations.lisp: Add userenv + * doc/TODO: Add AUTOCOMMIT. Remove need for large table and bigint + slot tests + * sql/oracle-sql.lisp: Add 64-bit bigint direct conversion + * uffi/clsql-uffi.lisp: Handle signed 64-bit integers + * test/test-init.lisp: Add large table with bigint slot + +25 May 2004 Kevin Rosenberg + * Version 2.11.1 released: Much simpler Oracle client library loading. + Now uses ORACLE_HOME environmental variable as well as tests default + path for Oracle Instant Client. + +25 May 2004 Kevin Rosenberg + * 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 + * 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 + * 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)