X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=316308f945caa4556462965a996fa5526c1f95dc;hb=2ad89bf5245096ebf2f9a9df53525c323dd6e44b;hp=b33bc295d98c5a2f37bbb2ca9e87c31b8ae69394;hpb=1f4263ebe497f0a4a7dbde8850a8d1736946740d;p=dbsrgits%2FDBIx-Class.git diff --git a/Changes b/Changes index b33bc29..316308f 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,120 @@ Revision history for DBIx::Class + - Perl 5.8.1 is now the minimum supported version + - might_have/has_one now warn if applied calling class's column + has is_nullable set to true. + - Fixed regression in deploy() with a {sources} table limit applied + (RT#52812) + - Cookbook POD fix for add_drop_table instead of add_drop_tables + - Views without a view_definition will throw an exception when + parsed by SQL::Translator::Parser::DBIx::Class + - Schema POD improvement for dclone + - Fix regression in context sensitiveness of deployment_statements + - Fix nasty schema/dbhandle leak due to SQL::Translator + +0.08115 2009-12-10 09:02:00 (CST) + - Real limit/offset support for MSSQL server (via Row_Number) + - Fix distinct => 1 with non-selecting order_by (the columns + in order_by also need to be aded to the resulting group_by) + - Do not attempt to deploy FK constraints pointing to a View + - Fix count/objects from search_related on limited resultset + - Stop propagating distinct => 1 over search_related chains + - Make sure populate() inherits the resultset conditions just + like create() does + - Make get_inflated_columns behave identically to get_columns + wrt +select/+as (RT#46953) + - Fix problems with scalarrefs under InflateColumn (RT#51559) + - Throw exception on delete/update of PK-less resultsets + - Refactored Sybase storage driver into a central ::DBI::Sybase + dispatcher, and a sybase-specific ::DBI::Sybase::ASE + - Fixed an atrocious DBD::ADO bind-value bug + - Cookbook/Intro POD improvements + +0.08114 2009-11-14 17:45:00 (UTC) + - Preliminary support for MSSQL via DBD::ADO + - Fix botched 0.08113 release (invalid tarball) + +0.08113 2009-11-13 23:13:00 (UTC) + - Fix populate with has_many bug + (RT #50828) + - Fix Oracle autoincrement broken for Resultsets with scalar refs + (RT #50874) + - Complete Sybase RDBMS support including: + - Support for TEXT/IMAGE columns + - Support for the 'money' datatype + - Transaction savepoints support + - DateTime inflation support + - Support for bind variables when connecting to a newer Sybase with + OpenClient libraries + - Support for connections via FreeTDS with CASTs for bind variables + when needed + - Support for interpolated variables with proper quoting when + connecting to an older Sybase and/or via FreeTDS + - bulk API support for populate() + - Transaction support for MSSQL via DBD::Sybase + - Add is_paged method to DBIx::Class::ResultSet so that we can + check that if we want a pager + - Skip versioning test on really old perls lacking Time::HiRes + (RT #50209) + - Fixed on_connect_do/call regression when used with a coderef + connector (RT #50003) + - A couple of fixes to Ordered to remedy subclassing issues + - Fixed another lingering problem with PostgreSQL + auto-increment support and its interaction with multiple + schemas + - Remove some IN workarounds, and require a recent version of + SQLA instead + - Improvements to populate's handling of mixed scalarref values + - Fixed regression losing result_class after $rs->find (introduced + in 0.08108) + - Fix in_storage() to return 1|0 as per existing documentation + - Centralize handling of _determine_driver calls prior to certain + ::Storage::DBI methods + - Fix update/delete arbitrary condition handling (RT#51409) + - POD improvements + +0.08112 2009-09-21 10:57:00 (UTC) + - Remove the recommends from Makefile.PL, DBIx::Class is not + supposed to have optional dependencies. ever. + - Mangle the DBIx/Class.pm POD to be more clear about + copyright and license + - Put back PG's multiple autoinc per table support, accidentally + dropped during the serial-autodetection rewrite + - Make sure ResultSetColumn does not depend on the (undefined) + return value of ->cursor->reset() + - Add single() to ResultSetColumn (same semantics as ResultSet) + - Make sure to turn off IDENTITY_INSERT after insert() on MSSQL + tables that needed it + - More informative exception on failing _resolve_relationship + - Allow undef/NULL as the sole grouping value in Ordered + - Fix unreported rollback exceptions in TxnScopeGuard + - Fix overly-eager left-join chain enforcing code + - Warn about using distinct with an existing group_by + - Warn about attempting to $rs->get_column a non-unique column + when has_many joins are added to resultset + - Refactor of the exception handling system (now everything is a + DBIx::Class::Exception object) + +0.08111 2009-09-06 21:58:00 (UTC) + - The hashref to connection_info now accepts a 'dbh_maker' + coderef, allowing better intergration with Catalyst + - Fixed a complex prefetch + regular join regression introduced + in 0.08108 + - Fixed insert_bulk rebless handling + - Fixed Storable roundtrip regression, and general serialization + cleanup + - SQLT related fixes: + - sqlt_type is now called on the correct storage object + - hooks can now see the correct producer_type (RT#47891) + - optional SQLT requirements for e.g. deploy() bumped to 0.11002 + - Really fixed (and greatly cleaned up) postgresql autoinc sequence + autodetection + - Automatically detect MySQL v3 and use INNER JOIN instead of JOIN + - POD improvements (including RT#48769) + - Test suite tweaks (including fixes for recent CPANTS fails) + - Better support for MSSQL IDENTITY_INSERT ON + +0.08109 2009-08-18 08:35:00 (UTC) - Replication updates: - Improved the replication tests so that they are more reliable and accurate, and hopefully solve some cross platform issues. @@ -10,6 +125,8 @@ Revision history for DBIx::Class - Fixed the way we detect transaction to make this more reliable and forward looking. - Fixed some trouble with the way Moose Types are used. + - Made discard_chages/get_from_storage replication aware (they + now read from the master storage by default) - Refactor of MSSQL storage drivers, with some new features: - Support for placeholders for MSSQL via DBD::Sybase with proper autodetection @@ -20,16 +137,7 @@ Revision history for DBIx::Class - Support for 'smalldatetime' type used in MSSQL and Sybase for InflateColumn::DateTime - Support for Postgres 'timestamp without timezone' type in - InflateColumn::DateTime - - Much improved Sybase support, including support for TEXT/IMAGE - columns and connecting via FreeTDS - - Replication updates: Improved the replication tests so that they are - more reliable and accurate, and hopefully solve some cross platform - issues. Bugfixes related to naming particular replicants in a - 'force_pool' attribute. Lots of documentation updates, including a - new Introduction.pod file. Fixed the way we detect transaction to - make this more reliable and forward looking. Fixed some trouble with - the way Moose Types are used. + InflateColumn::DateTime (RT#48389) - Added new MySQL specific on_connect_call macro 'set_strict_mode' (also known as make_mysql_not_suck_as_much) - Multiple prefetch-related fixes: @@ -38,8 +146,15 @@ Revision history for DBIx::Class problems with search_related chaining - Deal with the distinct => 1 attribute properly when using prefetch + - An extension of the select-hashref syntax, allowing labeling + SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ] + - Massive optimization of the DBI storage layer - reduce the + amount of connected() ping-calls + - Some fixes of multi-create corner cases - Multiple POD improvements - + - Added exception when resultset is called without an argument + - Improved support for non-schema-qualified tables under + Postgres (fixed last_insert_id sequence name auto-detection) 0.08108 2009-07-05 23:15:00 (UTC) - Fixed the has_many prefetch with limit/group deficiency - @@ -60,7 +175,7 @@ Revision history for DBIx::Class nonexisting prefetch - make_column_dirty() now overwrites the deflated value with an inflated one if such exists - - Fixed set_$rel with where restriction deleting rows outside + - Fixed set_$rel with where restriction deleting rows outside the restriction - populate() returns the created objects or an arrayref of the created objects depending on scalar vs. list context @@ -112,7 +227,7 @@ Revision history for DBIx::Class side of the relation, to avoid duplicates - DBIC now properly handles empty inserts (invoking all default values from the DB, normally via INSERT INTO tbl DEFAULT VALUES - - Fix find_or_new/create to stop returning random rows when + - Fix find_or_new/create to stop returning random rows when default value insert is requested (RT#28875) - Make IC::DT extra warning state the column name too - It is now possible to transparrently search() on columns @@ -134,9 +249,9 @@ Revision history for DBIx::Class - Change ->count code to work correctly with DISTINCT (distinct => 1) via GROUP BY - Removed interpolation of bind vars for as_query - placeholders - are preserved and nested query bind variables are properly + are preserved and nested query bind variables are properly merged in the correct order - - Refactor DBIx::Class::Storage::DBI::Sybase to automatically + - Refactor DBIx::Class::Storage::DBI::Sybase to automatically load a subclass, namely Microsoft_SQL_Server.pm (similar to DBIx::Class::Storage::DBI::ODBC) - Refactor InflateColumn::DateTime to allow components to @@ -199,7 +314,7 @@ Revision history for DBIx::Class - not try and insert things tagged on via new_related unless required - Possible to set locale in IC::DateTime extra => {} config - Calling the accessor of a belongs_to when the foreign_key - was NULL and the row was not stored would unexpectedly fail + was NULL and the row was not stored would unexpectedly fail - Split sql statements for deploy only if SQLT::Producer returned a scalar containing all statements to be executed - Add as_query() for ResultSet and ResultSetColumn. This makes subqueries @@ -227,8 +342,8 @@ Revision history for DBIx::Class - new order_by => { -desc => 'colname' } syntax supported - PG array datatype supported - insert should use store_column, not set_column to avoid marking - clean just-stored values as dirty. New test for this - - regression test for source_name + clean just-stored values as dirty. New test for this + - regression test for source_name 0.08099_05 2008-10-30 21:30:00 (UTC) - Rewrite of Storage::DBI::connect_info(), extended with an @@ -242,7 +357,7 @@ Revision history for DBIx::Class - Fixed up related resultsets and multi-create - Fixed superfluous connection in ODBC::_rebless - Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server - - Added virtual method to Versioned so a user can create upgrade + - Added virtual method to Versioned so a user can create upgrade path across multiple versions (jgoulah) - Better (and marginally faster) implementation of the HashRefInflator hash construction algorithm @@ -251,7 +366,7 @@ Revision history for DBIx::Class 0.08099_04 2008-07-24 01:00:00 - Functionality to storage to enable a sub to be run without FK checks - - Fixed $schema->clone bug which caused clone and source to share + - Fixed $schema->clone bug which caused clone and source to share internal hash refs - Added register_extra_source methods for additional sources - Added datetime_undef_if_invalid for InflateColumn::DateTime to @@ -277,11 +392,11 @@ Revision history for DBIx::Class - Add warnings for non-unique ResultSet::find queries - Changed Storage::DBI::Replication to Storage::DBI::Replicated and refactored support. - - By default now deploy/diff et al. will ignore constraint and index + - By default now deploy/diff et al. will ignore constraint and index names - Add ResultSet::_is_deterministic_value, make new_result filter the values passed to new to drop values that would generate invalid SQL. - - Use Sub::Name to name closures before installing them. Fixes + - Use Sub::Name to name closures before installing them. Fixes incompatibility with Moose method modifiers on generated methods. 0.08010 2008-03-01 10:30 @@ -290,7 +405,7 @@ Revision history for DBIx::Class 0.08009 2008-01-20 13:30 - Made search_rs smarter about when to preserve the cache to fix mm prefetch usage - - Added Storage::DBI subclass for MSSQL over ODBC. + - Added Storage::DBI subclass for MSSQL over ODBC. - Added freeze, thaw and dclone methods to Schema so that thawed objects will get re-attached to the schema. - Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API @@ -304,20 +419,20 @@ Revision history for DBIx::Class foreign and self parts the wrong way round in the condition - ResultSetColumn::func() now returns all results if called in list context; this makes things like func('DISTINCT') work as expected - - Many-to-many relationships now warn if the utility methods would + - Many-to-many relationships now warn if the utility methods would clash - InflateColumn::DateTime now accepts an extra parameter of timezone to set timezone on the DT object (thanks Sergio Salvi) - - Added sqlt_deploy_hook to result classes so that indexes can be + - Added sqlt_deploy_hook to result classes so that indexes can be added. - - Added startup checks to warn loudly if we appear to be running on + - Added startup checks to warn loudly if we appear to be running on RedHat systems from perl-5.8.8-10 and up that have the bless/overload patch applied (badly) which causes 2x -> 100x performance penalty. (Jon Schutz) - - ResultSource::reverse_relationship_info can distinguish between + - ResultSource::reverse_relationship_info can distinguish between sources using the same table - Row::insert will now not fall over if passed duplicate related objects - - Row::copy will not fall over if you have two relationships to the + - Row::copy will not fall over if you have two relationships to the same source with a unique constraint on it 0.08007 2007-09-04 19:36:00 @@ -329,7 +444,7 @@ Revision history for DBIx::Class - Move to using Class::C3::Componentised - Remove warn statement from DBIx::Class::Row -0.08005 2007-08-06 +0.08005 2007-08-06 - add timestamp fix re rt.cpan 26978 - no test yet but change clearly should cause no regressions - provide alias for related_resultset via local() so it's set @@ -344,7 +459,7 @@ Revision history for DBIx::Class (original fix from diz) 0.08004 2007-08-06 19:00:00 - - fix storage connect code to not trigger bug via auto-viv + - fix storage connect code to not trigger bug via auto-viv (test from aherzog) - fixup cursor_class to be an 'inherited' attr for per-package defaults - add default_resultset_attributes entry to Schema