X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=aa53c2ef254f7d9860564bd53990f2b2b42b0cd3;hb=a458e9e3a522099867e27e4c84cd94ca37e1355b;hp=f87489e1311fb8d11231838ae45f19d1a2d3d019;hpb=6c0e3b46dda9856ca19dd952825e80bf2882487b;p=dbsrgits%2FDBIx-Class.git diff --git a/Changes b/Changes index f87489e..aa53c2e 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,543 @@ Revision history for DBIx::Class + * New Features / Changes + - Use DBIx::Class::Storage::Debug::PrettyPrint when the + environment variable DBIC_TRACE_PROFILE is set, see + DBIx::Class::Storage for more information + - Implemented add_unique_constraints() which delegates to + add_unique_constraint() as appropriate + - add_unique_constraint() now poparly throws if called with + multiple constraint definitions + - No longer depend on SQL::Abstract::Limit - DBIC has been doing + most of the heavy lifting for a while anyway + - FilterColumn now passes data through when transformations + are not specified rather than throwing an exception. + - Optimized RowNum based Oracle limit-dialect (RT#61277) + + * Fixes + - Make sure exception_action does not allow exception-hiding + due to badly-written handlers (the mechanism was never meant + to be able to suppress exceptions) + - Fixed rels ending with me breaking subqueried limit realiasing + - Oracle sequence detection now *really* works across schemas + (fixed some ommissions from 0.08123) + - dbicadmin now uses a /usr/bin/env shebang to work better with + perlbrew and other local perl builds + - bulk-inserts via $dbh->bind_array (void $rs->populate) now + display properly in DBIC_TRACE + - Incomplete exception thrown on relationship auto-fk-inference + failures + - Fixed distinct with order_by to not double-specify the same + column in the GROUP BY clause + - Properly support column names with symbols (e.g. single quote) + via custom accessors + - Fixed ::Schema::Versioned to work properly with quoting on + (RT#59619) + - Fixed t/54taint fails under local-lib + - Fixed SELECT ... FOR UPDATE with LIMIT regression (RT#58554) + - Fixed CDBICompat to preserve order of column-group additions, + so that test relying on the order of %{} will no longer fail + - Fixed mysterious ::Storage::DBI goto-shim failures on older + perl versions + - Non-blessed reference exceptions are now correctly preserved + when thrown from udner DBIC (e.g. from txn_do) + - No longer disconnecting database handles supplied to connect + via a coderef + + * Misc + - Refactored capability handling in Storage::DBI, allows for + standardized capability handling wrt query/enable/disable + - Makefile.PL no longer imports GetOptions() to interoperate + better with Catalyst installers + - Bumped minimum Module::Install for developers + - Bumped DBD::SQLite dependency and removed some TODO markers + from tests (RT#59565) + - Do not execute t/zzzzzzz_sqlite_deadlock.t for regular module + installs - test is prone to spontaneous blow up + - DT-related tests now require a DateTime >= 0.55 (RT#60324) + - Makefile.PL now provides a pre-parsed DBIC version to the + Opt::Dep pod generator + +0.08123 2010-06-12 14:46 (UTC) + * Fixes + - Make sure Oracle identifier shortener applies to auto-generated + column names, so we stay within the 30-char limit (RT#58271) + - Oracle sequence detection now works across schemas + - Fix a Storage/$dbh leak introduced by the migration to + Try::Tiny (this is *not* a Try::Tiny bug) + - Fix corner case of count with group-by over a 1:1 join column + where the selector ends up with column name clashes + - POD fixes (RT#58247) + + * Misc + - Test suite default on-disk database now checks for Win32 + fail-conditions even when running on other OSes + +0.08122 2010-06-03 17:41 (UTC) + * New Features + - Add DBIx::Class::FilterColumn for non-ref filtering + - ::Storage::DBI now correctly preserves a parent $dbh from + terminating children, even during interpreter-global + out-of-order destruction + - dbicadmin supports an -I option with the same semantics as + perl itself + - InflateColumn::DateTime support for MSSQL via DBD::Sybase + - Millisecond precision support for MSSQL datetimes for + InflateColumn::DateTime + - Oracle-specific hierarchical query syntax support: + CONNECT BY (NOCYCLE) / START WITH / ORDER SIBLINGS BY + - Support connecting using $ENV{DBI_DSN} and $ENV{DBI_DRIVER} + - current_source_alias method on ResultSet objects to + determine the alias to use in programatically assembled + search()es (originally added in 0.08100 but unmentioned) + - Rewrite/unification of all subselecting limit emulations + (RNO, Top, RowNum) to be much more robust wrt complex joined + resultsets + - MSSQL limits now don't require nearly as many applications of + the unsafe_subselect_ok attribute, due to optimized queries + - Support for Generic Subquery limit "emulation" - awfully slow + and inefficient but works on almost any db, and is preferred + to software limit emulation + - Sybase ASE driver now uses SET ROWCOUNT where possible, and + Generic Subquery otherwise for limit support instead of always + using software limit emulation + - create_ddl_dir (and derivatives) now attempt to create the given + $ddl_dir if it does not already exist + - deployment_statements now automatically supplies the current RDBMS + version to SQLT producer_args for MySQL, Pg, SQLite and Oracle + + * Fixes + - Fix nasty potentially data-eating bug when deleting/updating + a limited resultset + - Fix find() to use result_class set on object + - Fix result_class setter behaviour to not mistakenly stuff attrs. + - Don't try and ensure_class_loaded an object. This doesn't work. + - Fix as_subselect_rs to not inject resultset class-wide where + conditions outside of the resulting subquery + - Fix count() failing with {for} resultset attribute (RT#56257) + - Fixed incorrect detection of Limit dialect on unconnected $schema + - update() on row not in_storage no longer throws an exception + if there are no dirty columns to update (fixes cascaded update + annoyances) + - update()/delete() on prefetching resultsets no longer results + in malformed SQL (some $rs attributes were erroneously left in) + - Fix dbicadmin to allow deploy() on non-versioned schema + - Fix dbicadmin to respect sql_dir on upgrade() (RT#57732) + - Update Schema::Versioned to respect hashref style of + connection_info + - Do not recreate the same related object twice during MultiCreate + (solves the problem of orphaned IC::FS files) + - Fully qualify xp_msver selector when using DBD::Sybase with + MSSQL (RT#57467) + - Fix ::DBI::Storage to always be able to present a full set of + connect() attributes to e.g. Schema::Versioned + - Fix Oracle auto-inc trigger detection of "INSERT OR UPDATE"-type + triggers + + * Misc + - Reformatted Changelog \o/ + - DBIC goes git://git.shadowcat.co.uk/dbsrgits/DBIx-Class.git + - Allow developers to skip optional dependency forcing when working + from a checkout + - Add a warning to load_namespaces if a class in ResultSet/ is not + a subclass of DBIx::Class::ResultSet + - All DBIC exception-handling switched to Try::Tiny + - All DBIC modules are now free of imports via namespace::clean + - Depend on optimized SQL::Abstract (faster SQL generation) + - Depend on new Class::Accessor::Grouped reintroducing optional use + of Class::XSAccessor (just install C::XSA and get lightning fast + column accessors) + +0.08121 2010-04-11 18:43:00 (UTC) + - Support for Firebird RDBMS with DBD::InterBase and ODBC + - Add core support for INSERT RETURNING (for storages that + supports this syntax, currently PostgreSQL and Firebird) + - Fix spurious warnings on multiple UTF8Columns component loads + - DBIx::Class::UTF8Columns entered deprecated state + - DBIx::Class::InflateColumn::File entered deprecated state + - DBIx::Class::Optional::Dependencies left experimental state + - Add req_group_list to Opt::Deps (RT#55211) + - Add support for mysql-specific STRAIGHT_JOIN (RT#55579) + - Cascading delete/update are now wrapped in a transaction + for atomicity + - Fix accidental autovivification of ENV vars + - Fix update_all and delete_all to be wrapped in a transaction + - Fix multiple deficiencies when using MultiCreate with + data-encoder components (e.g. ::EncodedColumn) + - Fix regression where SQL files with comments were not + handled properly by ::Schema::Versioned. + - Fix regression on not properly throwing when $obj->relationship + is unresolvable + - Fix the join-optimiser to consider unqualified column names + whenever possible + - Fix an issue with multiple same-table joins confusing the join + optimizier + - Add has_relationship method to row objects + - Fix regression in set_column on PK-less objects + - Better error text on malformed/missing relationships + - Add POD about the significance of PK columns + - Fix for SQLite to ignore the (unsupported) { for => ... } + attribute + - Fix ambiguity in default directory handling of create_ddl_dir + (RT#54063) + - Support add_columns('+colname' => { ... }) to augment column + definitions. + +0.08120 2010-02-24 08:58:00 (UTC) + - Make sure possibly overwritten deployment_statements methods in + schemas get called on $schema->deploy + - Fix count() with group_by aliased-function resultsets + - with_deferred_fk_checks() Oracle support + - Massive refactor and cleanup of primary key handling + - Fixed regression losing custom result_class (really this time) + (RT#54697) + - Fixed regression in DBIC SQLT::Parser failing with a classname + (as opposed to a schema object) + - Changes to Storage::DBI::Oracle to accomodate changes in latest + SQL::Translator (quote handling) + - Make sure deployment_statements is per-storage overridable + - Fix dbicadmin's (lack of) POD + +0.08119 2010-02-15 09:36:00 (UTC) + - Add $rs->is_ordered to test for existing order_by on a resultset + - Add as_subselect_rs to DBIC::ResultSet from + DBIC::Helper::ResultSet::VirtualView::as_virtual_view + - Refactor dbicadmin adding DDL manipulation capabilities + - New optional dependency manager to aid extension writers + - Depend on newest bugfixed Moose + - Make resultset chaining consistent wrt selection specification + - Storage::DBI::Replicated cleanup + - Fix autoinc PKs without an autoinc flag on Sybase ASA + +0.08118 2010-02-08 11:53:00 (UTC) + - Fix a bug causing UTF8 columns not to be decoded (RT#54395) + - Fix bug in One->Many->One prefetch-collapse handling (RT#54039) + - Cleanup handling of relationship accessor types + +0.08117 2010-02-05 17:10:00 (UTC) + - Perl 5.8.1 is now the minimum supported version + - Massive optimization of the join resolution code - now joins + will be removed from the resulting SQL if DBIC can prove they + are not referenced by anything + - Subqueries no longer marked experimental + - Support for Informix RDBMS (limit/offset and auto-inc columns) + - Support for Sybase SQLAnywhere, both native and via ODBC + - 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) + - Views without a view_definition will throw an exception when + parsed by SQL::Translator::Parser::DBIx::Class + - Stop the SQLT parser from auto-adding indexes identical to the + Primary Key + - InflateColumn::DateTime refactoring to allow fine grained method + overloads + - Fix ResultSetColumn improperly selecting more than the requested + column when +columns/+select is present + - Fix failure when update/delete of resultsets with complex WHERE + SQLA structures + - Fix regression in context sensitiveness of deployment_statements + - Fix regression resulting in overcomplicated query on + search_related from prefetching resultsets + - Fix regression on all-null returning searches (properly switch + LEFT JOIN to JOIN in order to distinguish between both cases) + - Fix regression in groupedresultset count() used on strict-mode + MySQL connections + - Better isolation of RNO-limited queries from the rest of a + prefetching resultset + - New MSSQL specific resultset attribute to allow hacky ordered + subquery support + - Fix nasty schema/dbhandle leak due to SQL::Translator + - Initial implementation of a mechanism for Schema::Version to + apply multiple step upgrades + - Fix regression on externally supplied $dbh with AutoCommit=0 + - FAQ "Custom methods in Result classes" + - Cookbook POD fix for add_drop_table instead of add_drop_tables + - Schema POD improvement for dclone + +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. + - 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. + - 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 + - 'uniqueidentifier' support with auto newid() + - Dynamic cursor support and other MARS options for ODBC + - savepoints with auto_savepoint => 1 + - Support for MSSQL 'money' type + - Support for 'smalldatetime' type used in MSSQL and Sybase for + InflateColumn::DateTime + - Support for Postgres 'timestamp without timezone' type in + 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: + - Adjust overly agressive subquery join-chain pruning + - Always preserve the outer join-chain - fixes numerous + 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 - + it is now possible to select "top 5 commenters" while + prefetching all their comments + - New resultsed method count_rs, returns a ::ResultSetColumn + which in turn returns a single count value + - Even better support of count with limit + - New on_connect_call/on_disconnect_call functionality (check + POD of Storage::DBI) + - Automatic datetime handling environment/session setup for + Oracle via connect_call_datetime_setup() + - count/all on related left-joined empty resultsets now correctly + returns 0/() + - Fixed regression when both page and offset are specified on + a resultset + - Fixed HRI returning too many empty results on multilevel + 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 + the restriction + - populate() returns the created objects or an arrayref of the + created objects depending on scalar vs. list context + - Fixed find_related on 'single' relationships - the former + implementation would overspecify the WHERE condition, reporting + no related objects when there in fact is one + - SQL::Translator::Parser::DBIx::Class now attaches tables to the + central schema object in relationship dependency order + - Fixed regression in set_column() preventing sourceless object + manipulations + - Fixed a bug in search_related doubling a join if the original + $rs already joins/prefetches the same relation + - Storage::DBI::connected() improvements for Oracle and Sybase + - Fixed prefetch+incomplete select regression introduced in + 0.08100 + - MSSQL limit (TOP emulation) fixes and improvements + +0.08107 2009-06-14 08:21:00 (UTC) + - Fix serialization regression introduced in 0.08103 (affects + Cursor::Cached) + - POD fixes + - Fixed incomplete ::Replicated debug output + +0.08106 2009-06-11 21:42:00 (UTC) + - Switched SQLite storage driver to DateTime::Format::SQLite + (proper timezone handling) + - Fix more test problems + +0.08105 2009-06-11 19:04:00 (UTC) + - Update of numeric columns now properly uses != to determine + dirtyness instead of the usual eq + - Fixes to IC::DT tests + - Fixed exception when undef_if_invalid and timezone are both set + on an invalid datetime column + +0.08104 2009-06-10 13:38:00 (UTC) + - order_by now can take \[$sql, @bind] as in + order_by => { -desc => \['colA LIKE ?', 'somestring'] } + - SQL::Abstract errors are now properly croak()ed with the + correct trace + - populate() now properly reports the dataset slice in case of + an exception + - Fixed corner case when populate() erroneously falls back to + create() + - Work around braindead mysql when doing subquery counts on + resultsets containing identically named columns from several + tables + - Fixed m2m add_to_$rel to invoke find_or_create on the far + 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 + 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 + requiring DBI bind (i.e. PostgreSQL BLOB) + - as_query is now a Storage::DBI method, so custom cursors can + be seamlessly used + - Fix search_related regression introduced in 0.08103 + +0.08103 2009-05-26 19:50:00 (UTC) + - Multiple $resultset -> count/update/delete fixes. Now any + of these operations will succeed, regardless of the complexity + of $resultset. distinct, group_by, join, prefetch are all + supported with expected results + - Return value of $rs->delete is now the storage return value + and not 1 as it used to be + - don't pass SQL functions into GROUP BY + - Remove MultiDistinctEmulation.pm, effectively deprecating + { select => { distinct => [ qw/col1 col2/ ] } } + - 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 + merged in the correct order + - 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 + circumvent DateTime parsing + - Support inflation of timestamp datatype + - Support BLOB and CLOB datatypes on Oracle + - Storage::DBI::Replicated::Balancer::Random: + added master_read_weight + - Storage::DBI::Replicated: storage opts from connect_info, + connect_info merging to replicants, hashref connect_info support, + improved trace output, other bug fixes/cleanups + - distinct => 1 with prefetch now groups by all columns + - on_connect_do accepts a single string equivalent to a one + element arrayref (RT#45159) + - DB2 limit + offset now works correctly + - Sybase now supports autoinc PKs (RT#40265) + - Prefetch on joins over duplicate relations now works + correctly (RT#28451) + - "timestamp with time zone" columns (for Pg) now get inflated with a + time zone information preserved + - MSSQL Top limit-emulation improvements (GROUP BY and subquery support) + - ResultSetColumn will not lose the joins infered from a parent + resultset prefetch + +0.08102 2009-04-30 08:29:00 (UTC) + - Fixed two subtle bugs when using columns or select/as + paired with a join (limited prefetch) + - Fixed breakage of cdbi tests (RT#45551) + - Some POD improvements + +0.08101 2009-04-27 09:45:00 (UTC) + - Fix +select, +as, +columns and include_columns being stripped + by $rs->get_column + - move load_optional_class from DBIx::Class::Componentised to + Class::C3::Componentised, bump dependency + - register_extra_source() now *really* fixed wrt subclassing + - Added missing POD descriptions (RT#45195) + - Fix insert() to not store_column() every present object column + - Multiple Makefile.PL fixes + +0.08100 2009-04-19 11:39:35 (UTC) + - Todo out the register_extra_source test until after shipping + 0.08099_08 2009-03-30 00:00:00 (UTC) - Fixed taint mode with load_namespaces - Putting IC::DateTime locale, timezone or floating_tz_ok attributes into @@ -7,7 +545,7 @@ Revision history for DBIx::Class directly into the columns definition - Switched MI code to MRO::Compat - Document db-side default_value caveats - - Search_like() now warns to indicate deprecation in 0.09. (robkinyon) + - Search_like() now warns to indicate deprecation in 0.09. - TxnScopeGuard left experimental state 0.08099_07 2009-02-27 02:00:00 (UTC) @@ -19,11 +557,11 @@ 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 - possible. See the Cookbook for details. (robkinyon, michaelr) + possible. See the Cookbook for details. - Massive rewrite of Ordered to properly handle position constraints and to make it more matpath-friendly - deploy_statements called ddl_filename with the $version and $dir arguments @@ -47,22 +585,22 @@ 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) - - Rewritte of Storage::DBI::connect_info(), extended with an + - Rewrite of Storage::DBI::connect_info(), extended with an additional argument format type - InflateColumn::DateTime: add warning about floating timezone - InflateColumn::DateTime: possible to enforce/skip inflation - - delete throws exception if passed arguments to prevent drunken mishaps. (purge) + - delete throws exception if passed arguments to prevent drunken mishaps. - Fix storage to copy scalar conds before regexping to avoid trying to modify a constant in odd edge cases - Related resultsets on uninserted objects are now empty - 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 @@ -71,7 +609,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 @@ -97,11 +635,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 @@ -110,7 +648,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 @@ -124,20 +662,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 @@ -149,7 +687,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 @@ -164,7 +702,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