+4 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * sql/classes.lisp: Add SQL-OBJECT-QUERY type. Have [select 'class]
+ now return a sql-object-query type rather than directly performing a query.
+ This improves CommonSQL conformance.
+ * sql/sql.lisp: Add new QUERY method for SQL-OBJECT-QUERY. Move
+ from basic/basic-sql.lisp the DO-QUERY and MAP-QUERY since they now
+ depend on sql-object-query-type.
+ * sql/loop-extensions.lisp: Move from base package
+ * classic/package.lisp: remove references to map-query and do-query
+
+4 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * TODO: New section on optimizations, especially optimizing JOINs.
+ * sql/objects.lisp: Have :target-slot return of list of lists rather
+ than a list of cons pairs to be conformant with CommonSQL.
+ Make :target-slot much more efficient by using a SQL inner join
+ statement and just requiring one SQL query. Add :retrieval :deferrred
+ to target-slot joins. Add placeholder for update-objects-join.
+ * sql/classes.lisp: Add :inner-join and :on slots to sql-query class
+ and process them for query output-sql.
+
+4 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * Version 2.10.11
+ * base/basic-sql.lisp: Avoid multiple evaluation
+ of query-expression in DO-QUERY
+ * sql/objects.lisp: Make SELECT a normal function.
+ SELECT now accepts type-modified database identifiers, such as
+ [foo :string] which means that the values in column foo are returned
+ as Lisp strings. Add new *update-records-on-make-instance* special
+ variable controlling automatic creation of new instances. Add missing
+ RESULT-TYPES keyword to FIND-ALL. Add :target-slot support.
+ * sql/packages.lisp: Export *update-records-on-make-instance*
+ * test/test-oodml.lisp: Add tests for :target-slot and many-to-many
+ selections.
+ * test/test-fdml.lisp: Add tests for type-modified
+ database identifiers.
+ * test/test-init.lisp: Stop using add-relation since implementing
+ many-to-many joins. Use *update-records-on-make-instance*
+ to automatically store records on instance creation. Add many-to-many
+ employee-address view-class.
+
+4 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * Version 2.10.10
+ * base/loop.lisp: Add object iteration. Use :result-type
+ :auto for result-set. Remove
+ duplicate (and non-correct) code for non-list variables by
+ simply making an atom variable into a list.
+ * sql/package.lisp: Remove unnecessary clsql-sys package
+ and replace it with clsql.
+ * sql/metaclasses.lisp: Properly store specified-type from
+ direct-slot-definition and then store translated type in
+ effective-slot-definition
+ * sql/classes.lisp: Don't output type in sql-output
+ for SQL-IDENT-ATTRIBUTE. This is in preparation for supporting
+ [foo :integer] as fields in SELECT.
+ * sql/query.lisp: Set default for :result-types to :auto in
+ FDML QUERY.
+ * sql/objects.lisp: Use specified-type when invocating
+ database-get-type-specifier. def-view-class macro now returns
+ the class instance.
+ * base/basic-sql.lisp: Make :AUTO the default value for
+ :RESULT-TYPES for MAP-QUERY and DO-QUERY.
+ * sql/objects.lisp: Add bigint type
+ * test/tests-basic.lisp: Add tests for :result-types for
+ MAP-QUERY and DO-QUERY
+ * test/test-fdml.lisp: Add test for result-types in LOOP
+ and also using single symbol rather than a list for variables.
+ Add test that default :result-types is auto for FDML QUERY.
+ * test/test-syntax.lisp: Don't expect TYPE in the SQL-OUTPUT
+ of SQL-IDENT-ATTRIBUTE.
+ * test/test-oodml.lisp: Enable OO loop iteration test,
+ modify it so it doesn't depend on boolean where.
+
+4 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk)
+ * Version 2.10.9
+ * sql/objects.lisp: added derived type specifier for universal time.
+ * sql/package.lisp: added #:universal-time to clsql-sys exports.
+ * tests/test-oodml.lisp: added test for translation of boolean slots
+ in SELECT with object queries.
+
+3 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
+ * db-odbc/odbc-api.lisp: Fix changing nil to "NIL"
+ for odbc/postgresql backend.
+ * db-odbc/odbc-sql.lisp: Fix ATTRIBUTE-TYPE so that
+ it can handle NIL values from the ODBC driver
+ * tests/benchmarks.lisp: New file with initial
+ benchmark suite
+ * sql/relations.lisp: fix to add subclassing support,
+ minor optimizations [Edi Weitz]
+
3 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
- * Version 2.10.8
+ * Version 2.10.8
* base/conditions.lisp: Add *backend-warning-behavior*
special variable.
* db-postgresql-socket/postgresql-socket-sql.lisp:
Honor value of *backend-warning-behavior*
* tests/test-fdml.lisp: Remove test of raw boolean value
- since different backends handle this differently.
- * tests/test-oodml.lisp: Add test for boolean slot value
+ since different backends handle this differently. Add
+ test for :column attribute.
+ * tests/test-oodml.lisp: Add tests for boolean slot value
+ and for :void-value attribute
* tests/test-init.lisp: Use *backend-warning-behavior*
to suppress warnings from postgresql about implicitly
- creating primary key in tables.
+ creating primary key in tables. Add new address table.
3 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
* Version 2.10.7