Alzabo

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

- Don't try to include dropped columns when reverse engineering
  Postgres 7.3+.  Implemented by Ken Williams.

- Do a better job of detecting SERIAL type columns when reverse
  engineering Postgres schemas.  Based on a patch from Ken Williams.

- Treat Postgres data types SERIAL4, SERIAL8, BIGSERIAL, and BIGINT as
  valid types.  Implemented by Josh Jore.

- NotNullable exception now include the table and schema name.  Based
  on a patch from Ken Williams.

- Primary keys are updateable.

- Debugging output from Alzabo::MethodMaker is clearer about what
  methods are being made.  Implemented by Ken Williams.

- Alzabo::MethodMaker will now create foreign key methods when two
  tables have multiple relationships, as long as the name generation
  callback returns different names for each of them.  Implemented by
  Ken Williams.

- A join parameter can now specify an outer join with a single array
  reference, such as:

    [ left_outer_join => $table_A, $table_B ]

  Previously, this could only be done as a double array reference, like:

    [ [ left_outer_join => $table_A, $table_B ] ]

- Various doc fixes and rewriting, most notably in Alzabo.pm.

BUG FIXES:

- A join using multiple aliases to the same table would fail with an
  error message like "Cannot use column (Foo.bar_id) in select unless
  its table is included in the FROM clause".

- Remove the long-ago deprecated next_row() and next_rows() methods.

- Postgres 7.3 allows identifiers to be up to 63 characters.  This
  broke the code that handled sequenced columns for Postgres.  Patch
  by Josh Jore.

- If you tried to create a relationship between two tables, and the
  "table_to" table already had a column of the same name as the
  "column_from" column, then Alzabo died with an error.  Reported by
  Ping Liang.

- If you had previously installed Alzabo, and then provided a new
  Alzabo root directory or a new directory for the Mason components,
  this was not respected during the installation process.

- Alzabo's referential integrity checks will no longer complain if you
  attempt to set a foreign key column to NULL.  Previously it would
  throw an exception if the column was part of the dependent table in
  a foreign key relationship.  Now, it just assumes you really meant
  to allow the column to be NULLable.

- The schema class's load_from_file() method now blesses the loaded
  schema into the calling class.  So if you use MethodMaker to
  generate classes, and then call My::Schema->load_from_file, it
  should always return an object blessed into the My::Schema class.
  Reported by Ken Williams.

- When checking for the MySQL variable sql_mode, the value may be
  simply '' as opposed to 0.  Patch by Andrew Baumhauer.

BACKWARDS INCOMPATIBILITIES:

- Alzabo now requires at least Perl 5.6.0 (5.6.1+ recommended).

- The old caching system has been removed, as it had way too much
  overhead.  There is a new, much simpler caching system provided by
  the Alzabo::UniqueRowCache module.

- The Alzabo::Runtime::Table->row_by_pk() method no longer dies if it
  cannot find a matching row.  Instead it simply returns false.

- Some deprecated MethodMaker options were removed: insert, update,
  lookup_table

- The Alzabo::Runtime::Row->delete() method now works for potential
  rows.

---------------------------------------------------------------------------

0.73  October 5, 2003

BACKWARDS INCOMPATIBILITIES:

- This release no longer includes the Mason schema creation GUI.  It
  can be installed separately via the Alzabo::GUI::Mason package.

BUG FIXES:

- Fixed a bug in Alzabo::Create::Schema that only seems to be
  triggered by newer Perls.  The symptom was an error like "Alzabo
  does not support the 'MySQL' RDBMS" when trying to create a new
  schema.

- Fixed a warning in Alzabo::RDBMSRules.

- The 01-driver.t test ignored any user-supplied RDBMS connection
  parameters.  Reported by Barry Hoggard.

- Newer versions of MySQL may return quoted table names, which broke
  reverse engineering.

- Added a quick and nasty hack to remove the schema name from table
  names when reverse engineering Postgres schemas.

- Reverse engineering of indexes for MySQL 4.0+ was broken.

---------------------------------------------------------------------------

0.72  April 12, 2003

ENHANCEMENTS:

- Rewrote the complex build/install system to use Module::Build, which
  simplified quite a bit of code.  Additionally, this should eliminate
  problems reported by Win32 users with the generated Makefile,



( run in 2.744 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )