Package: libalzabo-perl Version: 0.87-1 Severity: wishlist there are two years worth of bugfixes and enhancements available:
0.91 Mar 25, 2007 BUG FIXES: - Alzabo checked whether a particular variable was an array reference with a construct like this "eval { @$thing } ? @$thing : $thing". Under most circumstances, this is ok, but Mason installs a $SIG{__DIE__} handler that turns all string exceptions into exception objects. This meant that under Mason, for any eval where the reference in question was _not_ an array reference, a string exception was caught and turned into a full-blown exception object. This could cause a massive performance hit in some cases. 0.90 Mar 9, 2007 ENHANCEMENTS: - Added handling of multi-column indexes which include one function when reverse-engineering Pg schemas. BUG FIXES: - When a row was deleted, it was not being deleted from the cache. If you then inserted a row with the same primary key, you got back the row from the cache, which was marked as deleted, instead of the new row. - Newer versions of MySQL may return fully qualified and quoted table names (`Schema`.`Table`) from $dbh->tables. This broke reverse-engineering. - The Alzabo::Column->is_time() method was totally broken for MySQL. 0.8904 Nov 17, 2006 BUG FIXES: - The t/21-row_by_pk-exception test blew up if no test config was provided, instead of just skipping its tests gracefully. Reported by Andy Lester. 0.8903 Nov 16, 2006 BUG FIXES: - The change in 0.8902 to not use UNIVERSAL::isa exposed a bug in the handling of an attempt to load a row which doesn't exist in the DBMS. Reported by Jon Prettyman. 0.8902 Nov 9, 2006 BUG FIXES: - Make Alzabo "safe" to use with UNIVERSAL::can (the module), which spits out lots of warning if you use Alzabo after it has been loaded. - Fixed a warning from DBI in the 03-runtime.t tests. - Fixed reverse engineering of nextval() as a column default with Pg. 0.8901 Jul 19, 2006 BUG FIXES: - Fix reverse engineering of "now()" as default for a column with Pg. 0.89 Jun 20, 2006 ENHANCEMENTS: - Improved schema diffs for Postgres, particularly in the area of comparing two columns. Now we attempt to determine if two columns are logically equivalent, even if they might have minor variations (INT vs INTEGER type name, 'f' versus 'false' for BOOLEAN default, etc.). - Added Alzabo::SQLMaker->distinct_requires_order_by_in_select for the benefit of Pg, which requires that anything in the ORDER BY clause show up in the SELECT when you SELECT DISTINCT. This change is experimental, and may go away in future versions. - Removed support for passing order_by and group_by as a hash reference. This was deprecated in 0.59. BUG FIXES: - When reverse engineering a Postgres schema, Alzabo did not look for its own sequences to determine if a column should be marked as sequenced. - Defer FK creation until all other DDL has been executed. This ensures that the table to which we're referring will be available. - When recreating a table during a SQL diff, make this an exception so we don't do other column diff/add/drop operations on the same table. - Fixed a test failure in 07-methodmaker.t when testing with Postgres. This failure may not have showed up often because it came from a test that depended on the DBMS returning rows in a speific order by without specifying an ORDER BY. - When a Postgres table is renamed, its sequences are also renamed. 0.8801 Mar 13, 2006 BUG FIXES: - Quoting of PostgreSQL column defaults in DDL SQL was completely broken. 0.88 Mar 13, 2006 ENHANCEMENTS: - Added a new option when creating a column, "default_is_raw", which can be used to allow for a function like NOW() as a column default. - Added an "--automated" option for Build.PL, to force it to just use default prereqs. Also added other options to be used with this one, see "perl Build.PL --help" for detalis. - The Alzabo::Driver classes will now transparently reconnect to the DBMS if you attempt to use them in a child process after a fork. This prevents various problems that can occur if you attempt to share a DBI handle between two processes. One notable problem is that the parent's DBI handle is closed when the child exits. - Added support for (VAR)BINARY type columns in MySQL. Request by Martin Groenemeyer. RT Ticket #16338. BUG FIXES: - Alzabo::Table->foreign_keys_by_table() and foreign_keys_by_column() could return the same object more than once when using multiple-column foreign keys. Reported by Rainer Rohmfeld. RT Ticket #13885. - Calling connect() on a driver object (via a schema object) with different parameters did not reconnect if the existing handle was still good. This was explicitly opposite what the docs said the code was doing. RT Ticket #17942. - Fix bug in reverse engineering function indexes in Postgres. The reverse engineering code always ended up thinking all of the columns in the table were used in the index. - Fix failing MySQL test in 03-runtime.t. The problem was the test, not the Alzabo core. Reported by Alex McLintock. - Fixed adding too many "=cut" directives in docs generated by Alzabo::MethodMaker. - Fixed SQL generation for the Postgres functions CURRENT_DATE, CURRENT_TIME, and CURRENT_TIMESTAMP, which should not have parentheses after them. - Documented that DATE_TRUNC() is a support Pg function in Alzabo::SQLMaker::PostgreSQL. RT Ticket #13843. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]