Changes for version 0.95
- Pre-Requisites
- Now requires Perl 5.6 or greater
- New Functionality
- constrain_column() adds simple per-column constraints
- has_many now attempts to work out the reference column by examining the foreign class's has_a() declarations, making the 3rd argument to has_many mostly obsolete.
- __TABLE(Other::Class)__ now interpolates the table from the other class, allowing avoidance of hard-coding other table names.
- __ESSENTIAL(alias)__ now prepends the table alias supplied to the start of each column name, for avoiding column name clashes.
- __JOIN(alias alias)__ now inserts the SQL to join the two tables.
- might_have now allows creating the remote object through a simple set of the accessor. [David Jack Olrik]
- Iterators can now be reset() [Tatsuhiko Miyagawa]
- Documentation
- count_all, maximum_value_of and minimum_value_of are now documented (along with how to implement similar methods)
- Bug Fixes
- Allow retrieve() to take unnormalised columns, as with search [Connie]
- Handle stringification before Primary Key(s) are filled
- search() can take an overridden accessor name as a key
- MultiColumn primary keys working better with ColumnGrouper [Perrin Hawkins, Paul Makepeace, and Charles Bailey]
- Deprecations
- _single_value_select and _single_row_select deprecated in favour of new select_val and select_row methods in Ima::DBI
- Other
- Class::Accessor can no longer be used directly to add other attributes. TEMP columns should be used for this.
- Ensure all croaks internally go through _croak() [Richard Piacentini]
- deleted objects now blessed into Class::DBI::Object::Has::Been::Deleted
- Lots of doc patches [Jesse Sheidlower, Paul Makepeace]
- All internal attribute accesses now go through helper methods, as first step to changing how all this works.
- set_sql now passes all arguments up to Ima::DBI (so you can turn off caching if required) [gfalck]
- We now warn about column names clashing with any inherited methods, not just ones defined in Class::DBI itself [Dan Thill]
- Silence some test warnings reported by Paul Makepeace
Modules
Simple Database Abstraction
A column in a table
Columns and Column Groups
Iterate over Class::DBI search results
Manage SQL for Class::DBI