Commit: 011f261861eae7d691705f407aed9def3159e02c 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:42:51 +0200 

    README updates.

Commit: b2b8c4b54ac10be771adb3c3326925bdf641e01a 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:37:44 +0200 

    Added a test to extract and run the SYNOPSIS code.

Commit: d0a72e93800d22b937e91a452375bec782ea3667 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:18:58 +0200 

    The SYNOPSIS from SQL::DB is now a fully working example.

Commit: bdf5b8ddb467544bdf94e2eae653aafc4e83aaca 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:18:19 +0200 

    Fixed "index" to allow just the column name as well as an ARRAY ref.

Commit: d0a6f5870ff8b5e751ff9555b9a4c8ccc7a651d1 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:17:18 +0200 

    Make new() and alias for _new() in SQL::DB::ARow. Not yet decided what
    the final api should be.

Commit: 379073cc98768bd2fc38df76b6d077099a7791cf 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:16:26 +0200 

    Fixed ASC and DESC to be returned as SQL::DB::Expr objects.

Commit: 51e6cc803244b946695c9c13c5995eb7a474726a 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 13:13:49 +0200 

    Added "ref" as an alias for "references" when defining columns.

Commit: a473e84314dceffc5c066e0960f97609ad522113 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 11:12:55 +0200 

    Added "column" definition support (singular version of "columns") to
    the SQL::DB::Table creation syntax.

Commit: 180cc3d582ea98caf43ea82aa7cd9f64bb4cdc00 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:49:59 +0200 

    t/live updated to test recent changes.

Commit: 9490c507a90a37f1a580d71e63c02625b245c6d1 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:49:04 +0200 

    Added the start of a SQL::DB::Tutorial.

Commit: a05fac56794211c87e845dd9332e60ad3b04845d 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:48:34 +0200 

    Added temporary set() function to SQL::DB::AColumn so that one can
    write "set => [$arow->acolumn->set($val)]" statements. Considering using
    the modifiable subroutine lvalue (Experimental) support in perl so that
    we can write "set => [$arow->acolumn = $val]" instead, which is much
    more SQL-like.

Commit: 483dcdb6322a38cbcc1bf34f9c5cac154314d026 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:39:06 +0200 

    SQL::DB::Expr: New Expressions: <=, >=, +

Commit: 7a2308396da2a587eb7683d8185dedfdbb95f492 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:36:39 +0200 

    Minor documentation edits to SQL::DB::Schema.

Commit: f08e45dda5356e4afa8352ed1cc4edbb50c91e3a 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:35:27 +0200 

    SQL::DB::Object: Fixes to "columns changed?" related methods.

Commit: 8ab138d050aa899b369fa837fc0a17426378d79a 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:33:22 +0200 

    Added SQL::DB::Query->wantobjects, ->arows, "selecto" methods.

Commit: 96ab59b7dce96fd0fca7bfab8273d03fcee22fe3 
Author: Mark Lawrence <nomad@null.net> Wed, 05 Sep 2007 10:28:53 +0200 

    Major API change and cleanup of DB.pm
     * Objects now created with new()
     * New methods: define(), connect_cached(), qcount(), fetch()
     * Removed: do_query(), so()
     * Removed Tutorial - will go into new SQL::DB::Tutorial.pod
     * Documentation matches code.

Commit: 7258a65796db7c15ff566f4fd367e17540ecb8ef 
Author: Mark Lawrence <nomad@null.net> Wed, 22 Aug 2007 19:02:04 +0200 

    Added method SQL::DB::Table->primary_column_names()

Commit: f60a61b53ff54dd1f118d1944fd14df429a24ca1 
Author: Mark Lawrence <nomad@null.net> Tue, 21 Aug 2007 17:03:55 +0200 

    Added 'bases' (inherit from class) support to SQL::DB::Table

Commit: 12db827f6ea8843c8bb6dacdcc52401c3c3d3eb3 
Author: Mark Lawrence <nomad@null.net> Tue, 21 Aug 2007 11:36:29 +0200 

    Tests & Cleanups

Commit: d4179cd7ff8e466e8defcd8719861b300e28c9fc 
Author: Mark Lawrence <nomad@null.net> Mon, 20 Aug 2007 23:41:54 +0200 

    Removed old t/02-abstract.t

Commit: 2dfe862c919b7bdb0d95afae3427cebabe3ee176 
Author: Mark Lawrence <nomad@null.net> Mon, 20 Aug 2007 23:00:45 +0200 

    New Schema for tests.

Commit: 47ce13fc4969ec12ad5728509040ebfc3c870188 
Author: Mark Lawrence <nomad@null.net> Mon, 20 Aug 2007 22:59:20 +0200 

    Removed old t/Column.t

Commit: ebc942ba1bddee2810ab3823051038aed8ab655c 
Author: Mark Lawrence <nomad@null.net> Mon, 20 Aug 2007 22:55:00 +0200 

    Added test for SQL::DB::Table

Commit: 9774e98a7f15546f8392ec6eb2f0799a27beaf5d 
Author: Mark Lawrence <nomad@null.net> Mon, 20 Aug 2007 22:33:47 +0200 

    Added test for SQL::DB::Column

Commit: f1ba432caee86da98aafe9cecf626b09d8a667d6 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 23:37:03 +0200 

    Big simplification and cleanup of SQL::DB::AColumn. SQL::DB::AColumn::Func
    has been removed as the func() method now clones and returns a new AColumn.

Commit: 548d34cd429a35ed6a9f87ac5cfd8a96897f9752 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 23:35:25 +0200 

    Added q_delete to SQL::DB::Object.

Commit: b35ed20f6514909de86a8d1067fe92ae798f9dbb 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 23:34:51 +0200 

    Minor cleanups to SQL::DB::Query

Commit: 0c185ee934a41f166c133417f0bb35b8a0842037 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 11:09:15 +0200 

    Can no longer call SQL::DB::Schema->arow. User code must now call
    Class->arow, or Class::Abstract->new directly.

Commit: cf84b62b77e4033bacdf0886fb5bdc67f13ccbf8 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 11:07:32 +0200 

    SQL::DB::ARow is no longer responsible for creating the Abstract classes -
    this is now handled by SQL::DB::Table.
    Also includes a simplification - Removed all 'reference' code.

Commit: 8c254779201404d12e9f44afce6d419628db3f7a 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 11:06:07 +0200 

    SQL::DB::Table now automatically creates the Class, and the Abstract Class
    for each table.

Commit: d24d6cc202ca4e911ce7532f732c3e5a97f0fd18 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 11:03:58 +0200 

    Cleanup and simplification of functions in SQL::DB::Column.

Commit: d70c4bff4d80dc269c59cb0b1faa39099bfb9dfc 
Author: Mark Lawrence <nomad@null.net> Sun, 19 Aug 2007 11:01:43 +0200 

    Removed inc/Module/Install from git/cogito control.

Commit: df8970faa8b913035c3353f2f28164c5f776b687 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 20:32:52 +0200 

    Cleanup and Documentation for SQL::DB::Table

Commit: cb014d11455950c14c391b449546386ee04b307a 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:51:52 +0200 

    Turned SQL::DB::Column->references() into a lazy inflation function. This
    means we don't care about the order in which tables are defined, although
    it is still important because the database (eg PostgreSQL) still cares.

Commit: fba17d2a2364e49f874e3e233d3a523940b40c65 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:46:40 +0200 

    Less verbose debugging in SQL::DB::ARow

Commit: 29973dbca9bfda6232de6d36b75e798f0bc06138 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:37:41 +0200 

    Added basic AS support to SQL::DB::AColumn

Commit: f99f286dc7554b2d132042300b34ccd4964c4eff 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:08:54 +0200 

    SQL::DB::Schema now has only query() method. select(), update() etc are
    gone.

Commit: ddc54037393f5ada7beeffc2e60f3d13bf4c815e 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:08:02 +0200 

    Added not equals '!=' expression type to SQL::DB::Expr.

Commit: de5034cbb93d4e6591aed5fadd79f58a9ddfaebb 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 17:01:05 +0200 

    Folded SQL::DB::Query::* into SQL::DB::Query. SQL::DB has basic support for
    retrieving on-demand objects and SQL::DB::Object-based objects.

Commit: f4685ed0b44928b1ff6fbb8e88720e00981a6bc2 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 16:50:29 +0200 

    SQL::DB::Table now creates object classes based on SQL::DB::Object.

Commit: 4a79e6c2ffeb6f8e6f07bdfebdb60dab77df3ed3 
Author: Mark Lawrence <nomad@null.net> Sat, 18 Aug 2007 16:49:27 +0200 

    Added new SQL::DB::Object class.

Commit: f6e3b2f5136537d232e86d13b4b4fd8e3a803e47 
Author: Mark Lawrence <nomad@null.net> Tue, 26 Jun 2007 15:10:07 +0200 

    * Added Fans (of which an Artist has many) Link-table to the test schema
    * Added hard dependency on DBI

Commit: 40e77ac1ec09887be04509ad2ebef45c7f0d81b5 
Author: Mark Lawrence <nomad@null.net> Fri, 22 Jun 2007 01:59:29 +0200 

    * Properly implement ->func: now works for multiple function calls on
    the same column.
    * Removed one "weaken" too many in ARow.pm.

Commit: 25bc634ba5847284998f1cd9cc6cfa97017dc62a 
Author: Mark Lawrence <nomad@null.net> Thu, 21 Jun 2007 10:58:17 +0200 

    Added GROUP BY support.

Commit: 38c5a95ca67ccd5179425a8f6d820359df3525a1 
Author: Mark Lawrence <nomad@null.net> Wed, 20 Jun 2007 14:47:53 +0200 

    Converted SQL::DB::sth_to_simple_objects from Class::Struct =>
    Class::Accessor::Fast. Removed dependency on Class::Struct.

Commit: ba606fbbb6acf8db66ba47f2b2ed48e5f482ffc4 
Author: Mark Lawrence <nomad@null.net> Wed, 20 Jun 2007 13:59:17 +0200 

    Converted SQL::DB::Column from Class::Struct to Class::Accessor::Fast
    New dependency on Class::Accessor

Commit: 593ba883145ce1cf4bd429041b9679f14f43c0e6 
Author: Mark Lawrence <nomad@null.net> Wed, 20 Jun 2007 13:16:41 +0200 

    * Support for multiple 'unique' or 'index' statements in table definition.
    This makes the schema definition syntax much cleaner as it does away with
    some of the array refs.
    * Fixed a PRIMARY KEY bug in CREATE TABLE statements.

Commit: 77651e8b419f067feabdc4692ed056b184e70f29 
Author: Mark Lawrence <nomad@null.net> Wed, 20 Jun 2007 13:13:32 +0200 

    Test Schema: Moved table unique and index command to be multiple ARRAYREFs

Commit: 61c1a014cdc150e0dfc61ca8542199704d3d645f 
Author: Mark Lawrence <nomad@null.net> Wed, 20 Jun 2007 00:25:19 +0200 

    Added brackets to UNION statements

Commit: 799bf0fbd52d92b4efbd2f9e80d23c0c2af504a5 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 23:33:26 +0200 

    Support for arbitrary database functions (count, max, min, etc)

Commit: 7638cfb9b0e9f1d26925bcfe74538233aa72ab31 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 21:26:39 +0200 

    Fixed a rather broken SQL::DB->schema method.

Commit: d723d3798029834d6642ab9b98d36beff3f784c0 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 20:48:09 +0200 

    Module::Install::Build no longer necessary and removed.

Commit: 7fb60ce1932cdf7cd0fa1cacc16460dc74e3cf3a 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 20:22:24 +0200 

    SELECT UNION Support.

Commit: 60cff74c7679104eb4ed73967c71a85e372cd05f 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 19:04:33 +0200 

    Added vim defaults to every module: # vim: set tabstop=4 expandtab:

Commit: a6f49bf880862def54c6b3ef0faf96af7299663a 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 18:16:18 +0200 

    Column.pm: Make Class::Struct class definition at compile time.

Commit: b5161ad74522bb17481f39c827fe744fd94293a0 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 18:05:00 +0200 

    Change references to SQL::Builder => SQL::Abstract since Builder is almost
    invisible - ie not on CPAN.

Commit: ab78471a6657bbbadf71d6992a132a58da6e46bf 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 17:58:15 +0200 

    * Removed META.yml from git/cogito control
    * Added t/live.t that uses a real database. First working example.

Commit: 62fd440d223a3e561d74f88cea43810468d7c8d6 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 17:07:38 +0200 

    Moved Insert.pm, Select.pm... to Query/Insert.pm, Query/Select.pm.

Commit: 6ffd03a8805a131a387bcf10c4dc1b8a81367529 
Author: Mark Lawrence <nomad@null.net> Tue, 19 Jun 2007 16:44:22 +0200 

    * Removed 'Changes' file from cogito/git control.
    * INSERT, SELECT, UPDATE, DELETE all do something!

Commit: c760740570c2f8a5ceb4b1d602228512061df917 
Author: Mark Lawrence <nomad@null.net> Mon, 18 Jun 2007 16:38:18 +0200 

    VERSION to 0.02

Commit: 0643a835dc2413e843a041019e41199a4dff04a0 
Author: Mark Lawrence <nomad@null.net> Mon, 18 Jun 2007 16:34:48 +0200 

    New class SQL::DB to glue SQL::DB::Schema with DBI. Fully documented.

Commit: 85567556ec241b35b60903eb6670e6f716f596bc 
Author: Mark Lawrence <nomad@null.net> Mon, 18 Jun 2007 16:31:13 +0200 

    * Column.pm now based on Class::Struct which removed some lines.
    * Schema definition is now completely based on ARRAY REFs.
    * new test: t/Column.t
    * new 'NOT IN' expression method
    * Queries now all use 'columns' method, better inheritance.
    * new 'EXISTS' method for query objects.
    * Schema.pm: row() has become arow() 'any', 'abstact', 'a' row.
    * Schema.pm: query() replaced by select(), insert(), delete(), update()

Commit: 3832282a9e4c32bba39215e612127321890d9f3c 
Author: Mark Lawrence <nomad@null.net> Fri, 15 Jun 2007 18:50:24 +0200 

    * SQL::API::* renamed to SQL::DB::*
    * SQL::API.pm renamed to SQL::DB::Schema.pm

Commit: c2f52970463af8d00abed84602cf25941a07b7c0 
Author: Mark Lawrence <nomad@null.net> Fri, 15 Jun 2007 18:29:43 +0200 

    * Lots of cleanups.
    * Avoid memory leaks from circular references using Scalar::Util::weaken
      in the right places.
    * SELECT .... LIMIT
    * Stringifcation for pretty printing/debugging.

Commit: 9b6517b3eb74d356cc3b061c8a7dc4c020b7bc86 
Author: Mark Lawrence <nomad@null.net> Sat, 09 Jun 2007 23:50:08 +0200 

    Now have automatic joins (matching up reference keys with primary columns)
    INSERT and SELECT probably good for 90% of queries.

Commit: 667303900595982625b062f3af20bbbac1804da7 
Author: Mark Lawrence <nomad@null.net> Fri, 08 Jun 2007 01:51:04 +0200 

    Big documentation write-up for SQL::API.
    Testing of the SQL::API interface almost complete. No tests yet
    for any of the subclasses.

Commit: 1ccf41060a623a7c8c1652f4c0c740b337d56abc 
Author: Mark Lawrence <nomad@null.net> Thu, 07 Jun 2007 15:51:17 +0200 

    Big simplification of the api.
    INSERT and SELECT working.
    WHERE statements automatically produce correct FROM table aliases.

Commit: 523be54f484c31a53de1e0bdf36e158db2343bcc 
Author: Mark Lawrence <nomad@null.net> Sat, 02 Jun 2007 23:19:28 +0200 

    Table and Column classes now handle UNIQUE and FOREIGN KEY statements.

Commit: 179815c9e7013668d99bd075b186db86cb65ddeb 
Author: Mark Lawrence <nomad@null.net> Sat, 02 Jun 2007 18:04:18 +0200 

    Table and Column classes can produce CREATE TABLE statements.
    SELECT statements are broken due to new Table/Column classes.

Commit: 6dddb63569b272f4dc79f490c09af7d6b0eb31fc 
Author: Mark Lawrence <nomad@null.net> Fri, 01 Jun 2007 22:29:13 +0200 

    Support for SELECT statements (incomplete)
    First test program (test.pl)

Commit: 7e447fb263acc1c747acb36c0e7a1f37f3f68cb0 
Author: Mark Lawrence <nomad@null.net> Fri, 01 Jun 2007 15:38:46 +0200 

    Initial Commit.