[Catalyst] DBIx-Class 0.05000 on its way to CPAN
Matt S Trout
dbix-class at trout.me.uk
Wed Feb 1 22:00:04 CET 2006
Yep, this is the big refactor, finally ready. Better still, HUGE numbers
of documentation improvements (thanks to Daniel TWC, Jess Robinson, Will
Hawes and all the others mentioned in the CONTRIBUTORS POD section - and
still others I forgot to add and who never reminded me :)
Important changes for this release -
(1) Everything is now Schema-based. If you're still using DB.pm, don't worry,
it'll still work - but there'll be an extra method called schema_instance
that actually does the work :)
(2) Querying and object inflation should *not* require the destination class
to use the DBIC components provided your class has an inflate_result
constructor that can handle the data format (so if anybody fancies trying
to write a Class::Std-based result class, be my guest ...)
(3) Multiple connections without needing an extra namespace via
my $schema = MySchema->connect(...)
(4) ResultSet support for GROUP BY, aggregate functions, distinct etc.
(5) arbitrary-depth prefetch (across many-one or one-one relationships)
(6) autoloading of column types
(7) accessor name selection
(8) initial support for SQL::Abstract, both parser and producer (the .sql
file for the test suite is now generated using this)
(9) $schema->populate method for easier app installation and testing
(10) native many-many support
Full changelog since 0.04001 -
0.05000 2006-02-01 16:48:30
- assorted doc fixes
- remove ObjectCache, not yet working in 0.05
- let many_to_many rels have attrs
- fix ID method in PK.pm to be saner for new internals
- fix t/30dbicplain.t to use ::Schema instead of
Catalyst::Model::DBIC::Plain
0.04999_06 2006-01-28 21:20:32
- fix Storage/DBI (tried to load deprecated ::Exception component)
0.04999_05 2006-01-28 20:13:52
- count will now work for grouped resultsets
- added accessor => option to column_info to specify accessor name
- added $schema->populate to load test data (similar to AR fixtures)
- removed cdbi-t dependencies, only run tests if installed
- Removed DBIx::Class::Exception
- unified throw_exception stuff, using Carp::Clan
- report query when sth generation fails.
- multi-step prefetch!
- inheritance fixes
- test tweaks
0.04999_04 2006-01-24 21:48:21
- more documentation improvements
- add columns_info_for for vendor-specific column info (Zbigniew Lukasiak)
- add SQL::Translator::Producer for DBIx::Class table classes (Jess Robinson)
- add unique constraint declaration (Daniel Westermann-Clark)
- add new update_or_create method (Daniel Westermann-Clark)
- rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance
to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table
- minor fixes to UUIDColumns
- add debugfh method and ENV magic for tracing SQL (Nigel Metheringham)
0.04999_03 2006-01-20 06:05:27
- imported Jess Robinson's SQL::Translator::Parser::DBIx::Class
- lots of internals cleanup to eliminate result_source_instance requirement
- added register_column and register_relationship class APIs
- made Storage::DBI use prepare_cached safely (thanks to Tim Bunce)
- many documentation improvements (thanks guys!)
- added ->connection, ->connect, ->register_source and ->clone schema methods
- Use croak instead of die for user errors.
0.04999_02 2006-01-14 07:17:35
- Schema is now self-contained; no requirement for co-operation
- add_relationship, relationships, relationship_info, has_relationship
- relationship handling on ResultSource
- all table handling now in Table.pm / ResultSource.pm
- added GROUP BY and DISTINCT support
- hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract
(this may have fixed complex quoting)
- moved inflation to inflate_result in Row.pm
- added $rs->search_related
- split compose_namespace out of compose_connection in Schema
- ResultSet now handles find
- various *_related methods are now ->search_related->*
- added new_result to ResultSet
0.04999_01 2005-12-27 03:33:42
- search and related methods moved to ResultSet
- select and as added to ResultSet attrs
- added DBIx::Class::Table and TableInstance for table-per-class
- added DBIx::Class::ResultSetInstance which handles proxying
search etc. as a superclass of DBIx::Class::DB
- assorted test and code cleanup work
--
Matt S Trout Offering custom development, consultancy and support
Technical Director contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd. mst (at) shadowcatsystems.co.uk for more information
+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +
More information about the Catalyst
mailing list