r9253: Add *db-auto-sync* special var for controlling creation/updating of db records...
[clsql.git] / ChangeLog
index 223de7d3fd0f47a8a4f20f59955f229427b4bfe1..5139287cc726c260b1a3907c153fa6e5e1414145 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,12 +1,61 @@
+6 May 2004 Marcus Pearce (m.t.pearce@city.ac.uk) 
+        * sql/objects.lisp: replace *update-records-on-make-instance* with 
+        *db-auto-sync* which also controls both automatic creation of 
+        new records on creation of new instance and updating of record 
+        fields on setting of instance slots (as suggested by Edi Weitz). 
+        * tests/test-init.lisp: replace *update-records-on-make-instance* 
+        with *db-auto-sync*. 
+        * sql/package.lisp: replace *update-records-on-make-instance* 
+        with *db-auto-sync*. 
+        * TODO: replace *update-records-on-make-instance* with *db-auto-sync*. 
+        * sql/objects.lisp: remove redundant rebindings of *db-initializing* 
+        and *default-database* in FIND-ALL. 
+       * sql/package.lisp: import time functions from CLSQL-BASE. 
+       * tests/test-time.lisp: replace CLSQl-BASE package qualifier with CLSQL. 
+       * tests/test-fdml.lisp: replace CLSQl-BASE package qualifier with CLSQL. 
+       * tests/test-init.lisp: replace CLSQl-BASE package qualifier with CLSQL. 
+       * tests/test-ooddl.lisp: replace CLSQl-BASE package qualifier with 
+       CLSQL. 
+
+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.
+        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