X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=ChangeLog;h=5139287cc726c260b1a3907c153fa6e5e1414145;hb=aced01441ccf8a826de544ed34bed4d8616a14ee;hp=22b926276da7089cad33f49472a1207f928ceab2;hpb=550cc94ed84c6cfc61830c25fac2b39e92393b06;p=clsql.git diff --git a/ChangeLog b/ChangeLog index 22b9262..5139287 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,26 +1,93 @@ +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.10-pre + * 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/objects.lisp: Use specified type when invocating - database-get-type-specifier. Return class for def-view-class. + * 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 - * 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. * 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. - * sql/query.lisp: Set default for :result-types to :auto in - FDML QUERY. - * test/test-oodml.lisp: Enable OO loop iteration test with - slight change. + * 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