Revision history for CXC-DB-DDL

0.14      2024-06-23 13:25:54-04:00 America/New_York

  [DEPRECATION]

    * field constraints are treated by SQLT as table constraints, and
      CDD's attempt to mask that was too primitive to accomodate real
      world applications, so they are now deprecated in favor of table
      constraints.

  [BUG FIX]

    * constraints must include a type attribute; this was not enforced.

    * Constraint attributes 'fields', and 'referenced_fields' did not
      coerce from a string to an arrayref.

    * automatic names for table constraints tried to use attributes
      which may not be present.

  [ENHANCEMENT]

    * CHECK_C constraint expressions may now be provided via a coderef

    * the DSL (CXC::DB:DDL::Util) now supports DBD specific types.
      The interface it is still evolving and the documentation
      lacking.  See CXC::DB::DDL::Field::Pg and t/DDL/Field/Pg.t.


0.13 2024-04-04 12:23:58-04:00 America/New_York

  [API BREAKAGE]

    * signature for CXC::DB::DDL::table->add_to_schema has changed

  [ENHANCEMENT]

    * CREATE_IF_NOT_EXISTS now creates only the tables which are missing,
      rather than dropping everything.

  [MISC]

    * CPAN release


0.12      2023-11-22 22:22:14-05:00 America/New_York

  [ENHANCEMENT]

    * foreign key on_delete and on_update attributes are now supported

0.11      2023-09-17 17:41:02-04:00 America/New_York

  [BUG FIX]

    * properly catch and report db errors and the sql statement which
      generated them.

    * don't run empty sql (with just comments)

0.10      2023-08-06 23:30:28-04:00 America/New_York


  [ENHANCEMENT]

    * CXC::DB::DDL::sql now sports new options to pass on to the
      SQL::Translator constructor, such as to turn on debug, trace, or
      quote identifiers

0.09      2023-07-25 13:51:20-04:00 America/New_York

  [BUG FIX]

    * really fix the bug that 0.08 tried to fix.

0.08      2023-07-25 13:26:41-04:00 America/New_York

  [BUG FIX]

    * table names are used to generate constraint/index/check names, but must not
      include a schema (which results in an unacceptable name in PostgreSQL)

0.07      2023-07-21 17:22:00-04:00 America/New_York


  [BUG FIX]

    * fix typo in subroutine name

0.06      2023-07-21 16:26:50-04:00 America/New_York

  [ENHANCEMENT]

    * ::Table now knows a little bit about database schema

    * Field data_type is now an array to be able to match against multiple
      sql types to be more database agnostic

    * DDL->drop drops tables in reverse order of addition to try and avoid
      the need for a DROP CASCADE.

  [BUG FIXES]

    * SQLT's producer may not have the same name as the DBD module (e.g. Pg vs PostgreSQL

0.05      2023-07-20 23:36:47-04:00 America/New_York

  [ENHANCEMENT]

    * CXC::DB::DDL::Util: All of the SQL types recognized by DBI are
      now available as CXC::DB::DDL::Field generators.

0.04      2023-01-10 17:52:31-05:00 America/New_York

  [BUILD]

    * require at least SQL::Translator 1.61 to fix issue with Sybase Producer


0.03      2022-12-22 22:42:06-05:00 America/New_York

  [BUG FIX]

    * add table schema to top-level schema before adding fields so
      that field schema which require the table schema can find it.

0.02      2022-11-04 19:22:41-04:00 America/New_York

  [BUG FIX]

    * add fields to table before adding constraints/indices.

0.01      2022-10-24 23:53:24-04:00 America/New_York

* First release upon an unsuspecting world.