Re: [ANNOUNCEMENT] DB_Table-1.3.0RC2 (beta) Released.
| From: | Justin Patrin | Date: | Fri, 07 Apr 2006 22:12:46 +0000 |
| Subject: | Re: [ANNOUNCEMENT] DB_Table-1.3.0RC2 (beta) Released. | ||
| References: | 1 | Groups: | php.pear.dev php.pear.general |
| Request: | Send a blank email to pear-dev+get-42127@lists.php.net to get a copy of this message | ||
On 7 Apr 2006 16:55:28 -0000, PEAR Announce <pear-dev@lists.php.net> wrote:
> The new PEAR package DB_Table-1.3.0RC2 (beta) has been released at
> http://pear.php.net/.
>
> Release notes
> -------------
> Changes since 1.3.0RC1:
> * Bug #7297: create() was called when using the new creation modes
> 'verify' or 'alter'. This can be seen as a BC break (especially
> when somebody extends DB_Table), and therefore, there are new
> methods verify() and alter() in DB_Table class.
> (thanks to vdb at mail dot ru)
> Short summary:
> * New table creation modes 'verify' and 'alter'
> * Primary keys are now supported
> * MDB2 is now supported as database backend
> * Firebird DBMS is now supported (but Interbase isn't)
> * Auto-creation of QuickForm rules can be disabled now
> * Usage of custom QuickForm elements is now more flexible
> * Internationalizing/customizing of error messages now easier
> Minor changes in detail:
> * Improvement related to bug report #5679: many arrays (in the
> table definition and as function parameters) may now be null
> (of course, an empty array is still allowed).
> * The column definition array $col may not be empty because it
> isn't possible to create empty database tables and because
> the work with DB_Table makes only sense with at least one
> column.
> * Fixed several return by reference problems (that caused
> notices in PHP 4.4.x and 5.x).
> * Fixed several "undefined index" problems (causing notices).
> * Bugfix: select() and selectResult() didn't return error
> objects caused due to problems in $sql array.
> * Bugfix: static usage of DB_Table_QuickForm::createForm()
> resulted in fatal error when 'formName' wasn't specified
> in the $args parameter.
> * Request #5965: Turn off automatic setting of default QF rules
> like 'numeric' or 'required' (can be done by setting
> $cols[...]['qf_set_default_rules'] = false).
> (thanks to Arne Bippes)
> * Bug #6025: DB_Table no longer tries to create a table if a
> table with the same name but with different use of lower and
> upper letters.
> * Request #6036: new qf_type 'callback' which allows to add
> custom QF elements that need more than the standard
> parameters. You need to specify a key named 'qf_callback',
> filled with either the name of a class (this class needs to
> have a method 'createElement') or the name of a method.
> Both method types must return true if the element was created
> successfully. (thanks to Arne Bippes)
> * The dependency on the Date package was removed.
> * In addition to the option to internationalize some error messages
> via $GLOBALS['_DB_TABLE']['error'], you can now use
> setErrorMessage() like this (assuming $obj is your DB_Table instance):
> $obj->setErrorMessage(DB_TABLE_ERR_PHPTYPE, 'localized message');
> or to set more than one message:
> $obj->setErrorMessage(array(DB_TABLE_ERR_PHPTYPE => 'message 1',
> DB_TABLE_ERR_NOT_DB_OBJECT => 'message 2'));
> Static calls (DB_Table::setErrorMessage(...)) are also valid.
> Setting the error messages via a static call or $GLOBALS is
> especially needed for errors that can occur with-in the
> constructor call (i.e. e.g. creating or altering the database table).
> Major changes / enhancements in detail:
> * Request #5478: Verification/check, whether the table exists,
> whether all the columns exist, whether the columns have the
> right type, and whether the indexes exists. This can be used
> by setting $create in the constructor of your extended class
> to 'verify' instead of false/'safe'/'drop'. In case of an
> error in the schema, you will find the PEAR_Error object in
> $obj->error (assuming $obj is your DB_Table instance).
> - This is not available for 'fbsql' and 'mssql' phptypes.
> ('fbsql' is likely to be not supported in the future, while
> 'mssql' will be added when MDB2 has support for index and
> constraint information for this DBMS.)
> * New creation mode 'alter': If the table does not exist, it will
> be created. Otherwise, table fields' existance and types will be
> checked and, if needed, the field(s) will be added or changed. The
> same applies for indexes' and constraints' existance and types.
> Columns/indexes/constraints that don't exist anymore in the table
> definition class, will NOT be removed.
> - This is a new and powerful feature, use it with caution -- changing
> a string datatype into a numeric datatype in your table definition
> class may lead to data loss.
> - Using " $_DB_TABLE['debug'] = true; " in your scripts will
> output what will be changed. If something unexpected is changed,
> please report it via PEAR's bug tracker (please include the
> debug message and the column and/or index definition from your
> table definition class, thanks).
> - This is not available for 'fbsql' and 'mssql' phptypes.
> ('fbsql' is likely to be not supported in the future, while
> 'mssql' will be added when MDB2 has support for index and
> constraint information for this DBMS.)
> (thanks to Arne Bippes for the initial idea)
> * Support for primary keys: In the $idx array one index can be
> marked as 'primary' and will be created as the primary key of
> the chosen table.
> - This not available for 'sqlite' phptype, as SQLite does not
> support primary keys.
> * Request #6384: DB_Table now supports also MDB2 as the database
> backend. Just pass an MDB2 instance instead of a DB instance to
> the constructor. (thanks to Lukas Smith for the initial patch)
> * DB_Table now supports the Firebird DBMS (version >= 1.5
> required). Because of the limited features of Interbase
> (its ancestor), only Firebird is supported. Therefore,
> 'dbsyntax' must be set to 'firebird' in your DSN. Please note
> that the ibase extension is very buggy in PHP 4, while it works
> good with PHP 5.
>
> Only relevant if you are using localized error messages:
> * Please note that there are eleven new error messages and that the
> messages for DB_TABLE_ERR_NOT_DB_OBJECT and DB_TABLE_ERR_PHPTYPE
> slightly differ from the old messages.
>
>
> Package Info
> -------------
> Builds on PEAR DB to abstract datatypes and automate table creation, data validation, insert,
> update, delete, and select; combines these with PEAR HTML_QuickForm to automatically generate input
> forms that match the table column definitions.
>
>
> Related Links
> -------------
> Package home: http://pear.php.net/package/DB_Table
> Changelog:
> http://pear.php.net/package/DB_Table/download/1.3.0RC2
> Download: http://pear.php.net/get/DB_Table-1.3.0RC2.tgz
>
> Authors
> -------------
> Paul Jones <pmjones@ciaweb.net> (lead)
> Mark Wiesemann <wiesemann@php.net> (lead)
>
> --
> PEAR General Mailing List (http://pear.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
Geez, guys. You may want to consider making releaes more often, this
is a lot of changes.
--
Justin Patrin