Commit | Line | Data |
3b44ccc6 |
1 | Revision history for DBIx::Class |
64ea0f49 |
2 | |
a31e24c0 |
3 | * New Features |
4 | - Add DBIx::Class::FilterColumn for non-ref filtering |
aa0163d4 |
5 | - ::Storage::DBI now correctly preserves a parent $dbh from |
860e7b5a |
6 | terminating children, even during interpreter-global |
aa0163d4 |
7 | out-of-order destruction |
6ada2587 |
8 | - dbicadmin supports an -I option with the same semantics as |
9 | perl itself |
fb95dc4d |
10 | - InflateColumn::DateTime support for MSSQL via DBD::Sybase |
a07bb26c |
11 | - Millisecond precision support for MSSQL datetimes for |
fb95dc4d |
12 | InflateColumn::DateTime |
a07bb26c |
13 | - Support connecting using $ENV{DBI_DSN} and $ENV{DBI_DRIVER} |
453781a1 |
14 | - current_source_alias method on ResultSet objects to |
15 | determine the alias to use in programatically assembled |
16 | search()es (originally added in 0.08100 but unmentioned) |
860e7b5a |
17 | - Rewrite/unification of all subselecting limit emulations |
18 | (RNO, Top, RowNum) to be much more robust wrt complex joined |
19 | resultsets |
20 | - MSSQL limits now don't require nearly as many applications of |
21 | the unsafe_subselect_ok attribute, due to optimized queries |
75f025cf |
22 | - Support for Generic Subquery limit "emulation" - awfully slow |
23 | and inefficient but works on almost any db, and is preferred |
24 | to a soft-limit |
a31e24c0 |
25 | |
26 | * Fixes |
fef47a8e |
27 | - Fix nasty potentially data-eating bug when deleting/updating |
28 | a limited resultset |
a31e24c0 |
29 | - Fix find() to use result_class set on object |
30 | - Fix result_class setter behaviour to not mistakenly stuff attrs. |
31 | - Don't try and ensure_class_loaded an object. This doesn't work. |
32 | - Fix as_subselect_rs to not inject resultset class-wide where |
33 | conditions outside of the resulting subquery |
fef47a8e |
34 | - update() on row not in_storage no longer throws an exception |
35 | if there are no dirty columns to update (fixes cascaded update |
36 | annoyances) |
887d8da0 |
37 | - update()/delete() on prefetching resultsets no longer results |
38 | in malformed SQL (some $rs attributes were erroneously left in) |
6ada2587 |
39 | - Fix dbicadmin to allow deploy() on non-versioned schema |
40 | - Fix dbicadmin to respect sql_dir on upgrade() (RT#57732) |
65ee2b31 |
41 | - Update Schema::Versioned to respect hashref style of |
42 | connection_info |
43 | - Do not recreate the same related object twice during MultiCreate |
44 | (solves the problem of orphaned IC::FS files) |
4282b6f8 |
45 | - Fully qualify xp_msver selector when using DBD::Sybase with |
46 | MSSQL (RT#57467) |
f76f761c |
47 | - Fix ::DBI::Storage to always be able to present a full set of |
48 | connect() attributes to e.g. Schema::Versioned |
453781a1 |
49 | |
a31e24c0 |
50 | * Misc |
51 | - Add a warning to load_namespaces if a class in ResultSet/ |
52 | is not a subclass of DBIx::Class::ResultSet |
53 | - All DBIC exception-handling switched to Try::Tiny |
54 | - Depend on optimized SQL::Abstract (faster SQL generation) |
55 | |
c77ab576 |
56 | 0.08121 2010-04-11 18:43:00 (UTC) |
28d28903 |
57 | - Support for Firebird RDBMS with DBD::InterBase and ODBC |
734868da |
58 | - Add core support for INSERT RETURNING (for storages that |
59 | supports this syntax, currently PostgreSQL and Firebird) |
3c2a505c |
60 | - Fix spurious warnings on multiple UTF8Columns component loads |
61 | - DBIx::Class::UTF8Columns entered deprecated state |
c2ecf953 |
62 | - DBIx::Class::InflateColumn::File entered deprecated state |
e3fc11e1 |
63 | - DBIx::Class::Optional::Dependencies left experimental state |
64 | - Add req_group_list to Opt::Deps (RT#55211) |
b8391c87 |
65 | - Add support for mysql-specific STRAIGHT_JOIN (RT#55579) |
fb61e30c |
66 | - Cascading delete/update are now wrapped in a transaction |
67 | for atomicity |
c4e5e95d |
68 | - Fix accidental autovivification of ENV vars |
69 | - Fix update_all and delete_all to be wrapped in a transaction |
68888c09 |
70 | - Fix multiple deficiencies when using MultiCreate with |
71 | data-encoder components (e.g. ::EncodedColumn) |
b703fec7 |
72 | - Fix regression where SQL files with comments were not |
73 | handled properly by ::Schema::Versioned. |
263d5dcc |
74 | - Fix regression on not properly throwing when $obj->relationship |
75 | is unresolvable |
1a736efb |
76 | - Fix the join-optimiser to consider unqualified column names |
77 | whenever possible |
faeb2407 |
78 | - Fix an issue with multiple same-table joins confusing the join |
79 | optimizier |
0818c9a7 |
80 | - Add has_relationship method to row objects |
cf856357 |
81 | - Fix regression in set_column on PK-less objects |
455a33cb |
82 | - Better error text on malformed/missing relationships |
c2ecf953 |
83 | - Add POD about the significance of PK columns |
84 | - Fix for SQLite to ignore the (unsupported) { for => ... } |
85 | attribute |
86 | - Fix ambiguity in default directory handling of create_ddl_dir |
87 | (RT#54063) |
157ce0cf |
88 | - Support add_columns('+colname' => { ... }) to augment column |
89 | definitions. |
263d5dcc |
90 | |
033955f9 |
91 | 0.08120 2010-02-24 08:58:00 (UTC) |
2b3c0853 |
92 | - Make sure possibly overwritten deployment_statements methods in |
4fff7913 |
93 | schemas get called on $schema->deploy |
94 | - Fix count() with group_by aliased-function resultsets |
dea1b49e |
95 | - with_deferred_fk_checks() Oracle support |
7ccf4805 |
96 | - Massive refactor and cleanup of primary key handling |
efc8ae6e |
97 | - Fixed regression losing custom result_class (really this time) |
02730621 |
98 | (RT#54697) |
99 | - Fixed regression in DBIC SQLT::Parser failing with a classname |
100 | (as opposed to a schema object) |
270edb2b |
101 | - Changes to Storage::DBI::Oracle to accomodate changes in latest |
102 | SQL::Translator (quote handling) |
dea1b49e |
103 | - Make sure deployment_statements is per-storage overridable |
033955f9 |
104 | - Fix dbicadmin's (lack of) POD |
2b3c0853 |
105 | |
f181e8fe |
106 | 0.08119 2010-02-15 09:36:00 (UTC) |
d1f542db |
107 | - Add $rs->is_ordered to test for existing order_by on a resultset |
af7fbf9f |
108 | - Add as_subselect_rs to DBIC::ResultSet from |
109 | DBIC::Helper::ResultSet::VirtualView::as_virtual_view |
4752726d |
110 | - Refactor dbicadmin adding DDL manipulation capabilities |
aa8b2277 |
111 | - New optional dependency manager to aid extension writers |
84d9d68d |
112 | - Depend on newest bugfixed Moose |
642299a7 |
113 | - Make resultset chaining consistent wrt selection specification |
84d9d68d |
114 | - Storage::DBI::Replicated cleanup |
115 | - Fix autoinc PKs without an autoinc flag on Sybase ASA |
af7fbf9f |
116 | |
a12793fd |
117 | 0.08118 2010-02-08 11:53:00 (UTC) |
13d06949 |
118 | - Fix a bug causing UTF8 columns not to be decoded (RT#54395) |
119 | - Fix bug in One->Many->One prefetch-collapse handling (RT#54039) |
b82c8a28 |
120 | - Cleanup handling of relationship accessor types |
9738897e |
121 | |
6d5dca4e |
122 | 0.08117 2010-02-05 17:10:00 (UTC) |
55087b99 |
123 | - Perl 5.8.1 is now the minimum supported version |
d64a2734 |
124 | - Massive optimization of the join resolution code - now joins |
125 | will be removed from the resulting SQL if DBIC can prove they |
126 | are not referenced by anything |
6dfbe2f8 |
127 | - Subqueries no longer marked experimental |
3197bdf8 |
128 | - Support for Informix RDBMS (limit/offset and auto-inc columns) |
60511375 |
129 | - Support for Sybase SQLAnywhere, both native and via ODBC |
dc571b76 |
130 | - might_have/has_one now warn if applied calling class's column |
131 | has is_nullable set to true. |
a7f4b74c |
132 | - Fixed regression in deploy() with a {sources} table limit applied |
133 | (RT#52812) |
3ad8d9f1 |
134 | - Views without a view_definition will throw an exception when |
135 | parsed by SQL::Translator::Parser::DBIx::Class |
7ac1f782 |
136 | - Stop the SQLT parser from auto-adding indexes identical to the |
137 | Primary Key |
60511375 |
138 | - InflateColumn::DateTime refactoring to allow fine grained method |
139 | overloads |
66e33361 |
140 | - Fix ResultSetColumn improperly selecting more than the requested |
141 | column when +columns/+select is present |
037e8dca |
142 | - Fix failure when update/delete of resultsets with complex WHERE |
143 | SQLA structures |
30ae562b |
144 | - Fix regression in context sensitiveness of deployment_statements |
400c6f34 |
145 | - Fix regression resulting in overcomplicated query on |
146 | search_related from prefetching resultsets |
8baabfd8 |
147 | - Fix regression on all-null returning searches (properly switch |
148 | LEFT JOIN to JOIN in order to distinguish between both cases) |
0ce4ab92 |
149 | - Fix regression in groupedresultset count() used on strict-mode |
150 | MySQL connections |
010f82a0 |
151 | - Better isolation of RNO-limited queries from the rest of a |
152 | prefetching resultset |
153 | - New MSSQL specific resultset attribute to allow hacky ordered |
416e0bc0 |
154 | subquery support |
2ad89bf5 |
155 | - Fix nasty schema/dbhandle leak due to SQL::Translator |
78aef8c4 |
156 | - Initial implementation of a mechanism for Schema::Version to |
157 | apply multiple step upgrades |
3eee36aa |
158 | - Fix regression on externally supplied $dbh with AutoCommit=0 |
159 | - FAQ "Custom methods in Result classes" |
160 | - Cookbook POD fix for add_drop_table instead of add_drop_tables |
161 | - Schema POD improvement for dclone |
400c6f34 |
162 | |
3b5769af |
163 | 0.08115 2009-12-10 09:02:00 (CST) |
9010bab8 |
164 | - Real limit/offset support for MSSQL server (via Row_Number) |
886d0b49 |
165 | - Fix distinct => 1 with non-selecting order_by (the columns |
166 | in order_by also need to be aded to the resulting group_by) |
e3d5a547 |
167 | - Do not attempt to deploy FK constraints pointing to a View |
285dd1d6 |
168 | - Fix count/objects from search_related on limited resultset |
d992eae8 |
169 | - Stop propagating distinct => 1 over search_related chains |
36b59369 |
170 | - Make sure populate() inherits the resultset conditions just |
171 | like create() does |
547b4396 |
172 | - Make get_inflated_columns behave identically to get_columns |
173 | wrt +select/+as (RT#46953) |
4d46dbcf |
174 | - Fix problems with scalarrefs under InflateColumn (RT#51559) |
285dd1d6 |
175 | - Throw exception on delete/update of PK-less resultsets |
176 | - Refactored Sybase storage driver into a central ::DBI::Sybase |
177 | dispatcher, and a sybase-specific ::DBI::Sybase::ASE |
178 | - Fixed an atrocious DBD::ADO bind-value bug |
179 | - Cookbook/Intro POD improvements |
e3d5a547 |
180 | |
57cf1a59 |
181 | 0.08114 2009-11-14 17:45:00 (UTC) |
a1e695ad |
182 | - Preliminary support for MSSQL via DBD::ADO |
57cf1a59 |
183 | - Fix botched 0.08113 release (invalid tarball) |
a1e695ad |
184 | |
4e8ffded |
185 | 0.08113 2009-11-13 23:13:00 (UTC) |
18d80024 |
186 | - Fix populate with has_many bug |
187 | (RT #50828) |
e6dd7b42 |
188 | - Fix Oracle autoincrement broken for Resultsets with scalar refs |
189 | (RT #50874) |
d867eeda |
190 | - Complete Sybase RDBMS support including: |
191 | - Support for TEXT/IMAGE columns |
192 | - Support for the 'money' datatype |
6a9765c1 |
193 | - Transaction savepoints support |
194 | - DateTime inflation support |
195 | - Support for bind variables when connecting to a newer Sybase with |
196 | OpenClient libraries |
197 | - Support for connections via FreeTDS with CASTs for bind variables |
198 | when needed |
199 | - Support for interpolated variables with proper quoting when |
200 | connecting to an older Sybase and/or via FreeTDS |
201 | - bulk API support for populate() |
3ed85561 |
202 | - Transaction support for MSSQL via DBD::Sybase |
7ae6270b |
203 | - Add is_paged method to DBIx::Class::ResultSet so that we can |
dbf5b601 |
204 | check that if we want a pager |
205 | - Skip versioning test on really old perls lacking Time::HiRes |
206 | (RT #50209) |
207 | - Fixed on_connect_do/call regression when used with a coderef |
208 | connector (RT #50003) |
69cd8a7f |
209 | - A couple of fixes to Ordered to remedy subclassing issues |
57eb47b0 |
210 | - Fixed another lingering problem with PostgreSQL |
211 | auto-increment support and its interaction with multiple |
212 | schemas |
3ed85561 |
213 | - Remove some IN workarounds, and require a recent version of |
214 | SQLA instead |
215 | - Improvements to populate's handling of mixed scalarref values |
0fcfe456 |
216 | - Fixed regression losing result_class after $rs->find (introduced |
217 | in 0.08108) |
63bb9738 |
218 | - Fix in_storage() to return 1|0 as per existing documentation |
c9c9297b |
219 | - Centralize handling of _determine_driver calls prior to certain |
220 | ::Storage::DBI methods |
af668ad6 |
221 | - Fix update/delete arbitrary condition handling (RT#51409) |
3ed85561 |
222 | - POD improvements |
763026c1 |
223 | |
51845f96 |
224 | 0.08112 2009-09-21 10:57:00 (UTC) |
be97d16b |
225 | - Remove the recommends from Makefile.PL, DBIx::Class is not |
93c50889 |
226 | supposed to have optional dependencies. ever. |
be97d16b |
227 | - Mangle the DBIx/Class.pm POD to be more clear about |
93c50889 |
228 | copyright and license |
be97d16b |
229 | - Put back PG's multiple autoinc per table support, accidentally |
51845f96 |
230 | dropped during the serial-autodetection rewrite |
be97d16b |
231 | - Make sure ResultSetColumn does not depend on the (undefined) |
232 | return value of ->cursor->reset() |
4e55c3ae |
233 | - Add single() to ResultSetColumn (same semantics as ResultSet) |
be97d16b |
234 | - Make sure to turn off IDENTITY_INSERT after insert() on MSSQL |
235 | tables that needed it |
236 | - More informative exception on failing _resolve_relationship |
8c60e1a7 |
237 | - Allow undef/NULL as the sole grouping value in Ordered |
4e55c3ae |
238 | - Fix unreported rollback exceptions in TxnScopeGuard |
8a3fa4ae |
239 | - Fix overly-eager left-join chain enforcing code |
3c44586e |
240 | - Warn about using distinct with an existing group_by |
241 | - Warn about attempting to $rs->get_column a non-unique column |
242 | when has_many joins are added to resultset |
51845f96 |
243 | - Refactor of the exception handling system (now everything is a |
1bedffac |
244 | DBIx::Class::Exception object) |
01dc6781 |
245 | |
59f27fc3 |
246 | 0.08111 2009-09-06 21:58:00 (UTC) |
7755a91d |
247 | - The hashref to connection_info now accepts a 'dbh_maker' |
248 | coderef, allowing better intergration with Catalyst |
d8ce00f5 |
249 | - Fixed a complex prefetch + regular join regression introduced |
250 | in 0.08108 |
48617009 |
251 | - Fixed insert_bulk rebless handling |
7cfda9a6 |
252 | - Fixed Storable roundtrip regression, and general serialization |
253 | cleanup |
ce35224f |
254 | - SQLT related fixes: |
255 | - sqlt_type is now called on the correct storage object |
006fb68c |
256 | - hooks can now see the correct producer_type (RT#47891) |
7cfda9a6 |
257 | - optional SQLT requirements for e.g. deploy() bumped to 0.11002 |
decb86c0 |
258 | - Really fixed (and greatly cleaned up) postgresql autoinc sequence |
259 | autodetection |
7cfda9a6 |
260 | - Automatically detect MySQL v3 and use INNER JOIN instead of JOIN |
006fb68c |
261 | - POD improvements (including RT#48769) |
262 | - Test suite tweaks (including fixes for recent CPANTS fails) |
59f27fc3 |
263 | - Better support for MSSQL IDENTITY_INSERT ON |
d8ce00f5 |
264 | |
dc5460a7 |
265 | 0.08109 2009-08-18 08:35:00 (UTC) |
294a5282 |
266 | - Replication updates: |
267 | - Improved the replication tests so that they are more reliable |
268 | and accurate, and hopefully solve some cross platform issues. |
269 | - Bugfixes related to naming particular replicants in a |
270 | 'force_pool' attribute. |
271 | - Lots of documentation updates, including a new Introduction.pod |
272 | file. |
273 | - Fixed the way we detect transaction to make this more reliable |
274 | and forward looking. |
275 | - Fixed some trouble with the way Moose Types are used. |
1910c7af |
276 | - Made discard_chages/get_from_storage replication aware (they |
277 | now read from the master storage by default) |
294a5282 |
278 | - Refactor of MSSQL storage drivers, with some new features: |
279 | - Support for placeholders for MSSQL via DBD::Sybase with proper |
280 | autodetection |
281 | - 'uniqueidentifier' support with auto newid() |
282 | - Dynamic cursor support and other MARS options for ODBC |
2b0abe0e |
283 | - savepoints with auto_savepoint => 1 |
294a5282 |
284 | - Support for MSSQL 'money' type |
285 | - Support for 'smalldatetime' type used in MSSQL and Sybase for |
4c46fa18 |
286 | InflateColumn::DateTime |
1f4263eb |
287 | - Support for Postgres 'timestamp without timezone' type in |
294a5282 |
288 | InflateColumn::DateTime (RT#48389) |
97a0a148 |
289 | - Added new MySQL specific on_connect_call macro 'set_strict_mode' |
290 | (also known as make_mysql_not_suck_as_much) |
294a5282 |
291 | - Multiple prefetch-related fixes: |
292 | - Adjust overly agressive subquery join-chain pruning |
293 | - Always preserve the outer join-chain - fixes numerous |
294 | problems with search_related chaining |
295 | - Deal with the distinct => 1 attribute properly when using |
296 | prefetch |
f077b8f5 |
297 | - An extension of the select-hashref syntax, allowing labeling |
298 | SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ] |
13a3e374 |
299 | - Massive optimization of the DBI storage layer - reduce the |
f077b8f5 |
300 | amount of connected() ping-calls |
58e39c86 |
301 | - Some fixes of multi-create corner cases |
294a5282 |
302 | - Multiple POD improvements |
73d47f9f |
303 | - Added exception when resultset is called without an argument |
c0f4f8bb |
304 | - Improved support for non-schema-qualified tables under |
67e894d2 |
305 | Postgres (fixed last_insert_id sequence name auto-detection) |
97a0a148 |
306 | |
2ec1a5c1 |
307 | 0.08108 2009-07-05 23:15:00 (UTC) |
04492bc7 |
308 | - Fixed the has_many prefetch with limit/group deficiency - |
309 | it is now possible to select "top 5 commenters" while |
310 | prefetching all their comments |
311 | - New resultsed method count_rs, returns a ::ResultSetColumn |
312 | which in turn returns a single count value |
313 | - Even better support of count with limit |
6a999241 |
314 | - New on_connect_call/on_disconnect_call functionality (check |
315 | POD of Storage::DBI) |
316 | - Automatic datetime handling environment/session setup for |
317 | Oracle via connect_call_datetime_setup() |
f685632d |
318 | - count/all on related left-joined empty resultsets now correctly |
319 | returns 0/() |
e8b32a6d |
320 | - Fixed regression when both page and offset are specified on |
321 | a resultset |
322 | - Fixed HRI returning too many empty results on multilevel |
323 | nonexisting prefetch |
497d874a |
324 | - make_column_dirty() now overwrites the deflated value with an |
325 | inflated one if such exists |
7ae6270b |
326 | - Fixed set_$rel with where restriction deleting rows outside |
d2d82857 |
327 | the restriction |
04492bc7 |
328 | - populate() returns the created objects or an arrayref of the |
115a7c3b |
329 | created objects depending on scalar vs. list context |
04492bc7 |
330 | - Fixed find_related on 'single' relationships - the former |
331 | implementation would overspecify the WHERE condition, reporting |
332 | no related objects when there in fact is one |
333 | - SQL::Translator::Parser::DBIx::Class now attaches tables to the |
334 | central schema object in relationship dependency order |
335 | - Fixed regression in set_column() preventing sourceless object |
336 | manipulations |
337 | - Fixed a bug in search_related doubling a join if the original |
338 | $rs already joins/prefetches the same relation |
339 | - Storage::DBI::connected() improvements for Oracle and Sybase |
b4fd6882 |
340 | - Fixed prefetch+incomplete select regression introduced in |
341 | 0.08100 |
9ab7fe6a |
342 | - MSSQL limit (TOP emulation) fixes and improvements |
51a296b4 |
343 | |
6d82e103 |
344 | 0.08107 2009-06-14 08:21:00 (UTC) |
345 | - Fix serialization regression introduced in 0.08103 (affects |
346 | Cursor::Cached) |
347 | - POD fixes |
348 | - Fixed incomplete ::Replicated debug output |
349 | |
ea60f9a9 |
350 | 0.08106 2009-06-11 21:42:00 (UTC) |
351 | - Switched SQLite storage driver to DateTime::Format::SQLite |
352 | (proper timezone handling) |
353 | - Fix more test problems |
354 | |
fb022fcf |
355 | 0.08105 2009-06-11 19:04:00 (UTC) |
90499ee4 |
356 | - Update of numeric columns now properly uses != to determine |
357 | dirtyness instead of the usual eq |
358 | - Fixes to IC::DT tests |
04492bc7 |
359 | - Fixed exception when undef_if_invalid and timezone are both set |
360 | on an invalid datetime column |
90499ee4 |
361 | |
536bf52b |
362 | 0.08104 2009-06-10 13:38:00 (UTC) |
1ca68535 |
363 | - order_by now can take \[$sql, @bind] as in |
364 | order_by => { -desc => \['colA LIKE ?', 'somestring'] } |
365 | - SQL::Abstract errors are now properly croak()ed with the |
366 | correct trace |
4242d79d |
367 | - populate() now properly reports the dataset slice in case of |
368 | an exception |
9c094643 |
369 | - Fixed corner case when populate() erroneously falls back to |
4242d79d |
370 | create() |
9c094643 |
371 | - Work around braindead mysql when doing subquery counts on |
b5963465 |
372 | resultsets containing identically named columns from several |
373 | tables |
536bf52b |
374 | - Fixed m2m add_to_$rel to invoke find_or_create on the far |
9c094643 |
375 | side of the relation, to avoid duplicates |
376 | - DBIC now properly handles empty inserts (invoking all default |
377 | values from the DB, normally via INSERT INTO tbl DEFAULT VALUES |
7ae6270b |
378 | - Fix find_or_new/create to stop returning random rows when |
9c094643 |
379 | default value insert is requested (RT#28875) |
380 | - Make IC::DT extra warning state the column name too |
381 | - It is now possible to transparrently search() on columns |
536bf52b |
382 | requiring DBI bind (i.e. PostgreSQL BLOB) |
9c094643 |
383 | - as_query is now a Storage::DBI method, so custom cursors can |
384 | be seamlessly used |
385 | - Fix search_related regression introduced in 0.08103 |
4242d79d |
386 | |
e911e7ff |
387 | 0.08103 2009-05-26 19:50:00 (UTC) |
1ace31c2 |
388 | - Multiple $resultset -> count/update/delete fixes. Now any |
389 | of these operations will succeed, regardless of the complexity |
390 | of $resultset. distinct, group_by, join, prefetch are all |
391 | supported with expected results |
19431116 |
392 | - Return value of $rs->delete is now the storage return value |
393 | and not 1 as it used to be |
a4d8bea5 |
394 | - don't pass SQL functions into GROUP BY |
c8a8b777 |
395 | - Remove MultiDistinctEmulation.pm, effectively deprecating |
396 | { select => { distinct => [ qw/col1 col2/ ] } } |
397 | - Change ->count code to work correctly with DISTINCT (distinct => 1) |
398 | via GROUP BY |
1ace31c2 |
399 | - Removed interpolation of bind vars for as_query - placeholders |
7ae6270b |
400 | are preserved and nested query bind variables are properly |
1ace31c2 |
401 | merged in the correct order |
7ae6270b |
402 | - Refactor DBIx::Class::Storage::DBI::Sybase to automatically |
d4483998 |
403 | load a subclass, namely Microsoft_SQL_Server.pm |
568bde84 |
404 | (similar to DBIx::Class::Storage::DBI::ODBC) |
44a8dcf3 |
405 | - Refactor InflateColumn::DateTime to allow components to |
406 | circumvent DateTime parsing |
9073e906 |
407 | - Support inflation of timestamp datatype |
408 | - Support BLOB and CLOB datatypes on Oracle |
46ad3c86 |
409 | - Storage::DBI::Replicated::Balancer::Random: |
410 | added master_read_weight |
411 | - Storage::DBI::Replicated: storage opts from connect_info, |
412 | connect_info merging to replicants, hashref connect_info support, |
413 | improved trace output, other bug fixes/cleanups |
1ace31c2 |
414 | - distinct => 1 with prefetch now groups by all columns |
415 | - on_connect_do accepts a single string equivalent to a one |
416 | element arrayref (RT#45159) |
417 | - DB2 limit + offset now works correctly |
418 | - Sybase now supports autoinc PKs (RT#40265) |
419 | - Prefetch on joins over duplicate relations now works |
420 | correctly (RT#28451) |
6c99a3ee |
421 | - "timestamp with time zone" columns (for Pg) now get inflated with a |
422 | time zone information preserved |
19431116 |
423 | - MSSQL Top limit-emulation improvements (GROUP BY and subquery support) |
bed3a173 |
424 | - ResultSetColumn will not lose the joins infered from a parent |
425 | resultset prefetch |
d4483998 |
426 | |
90b41762 |
427 | 0.08102 2009-04-30 08:29:00 (UTC) |
9beb2b51 |
428 | - Fixed two subtle bugs when using columns or select/as |
429 | paired with a join (limited prefetch) |
430 | - Fixed breakage of cdbi tests (RT#45551) |
431 | - Some POD improvements |
432 | |
a0f289c8 |
433 | 0.08101 2009-04-27 09:45:00 (UTC) |
434 | - Fix +select, +as, +columns and include_columns being stripped |
435 | by $rs->get_column |
436 | - move load_optional_class from DBIx::Class::Componentised to |
437 | Class::C3::Componentised, bump dependency |
438 | - register_extra_source() now *really* fixed wrt subclassing |
439 | - Added missing POD descriptions (RT#45195) |
440 | - Fix insert() to not store_column() every present object column |
441 | - Multiple Makefile.PL fixes |
121068ec |
442 | |
a0f289c8 |
443 | 0.08100 2009-04-19 11:39:35 (UTC) |
6882de2b |
444 | - Todo out the register_extra_source test until after shipping |
445 | |
6c0e3b46 |
446 | 0.08099_08 2009-03-30 00:00:00 (UTC) |
447 | - Fixed taint mode with load_namespaces |
448 | - Putting IC::DateTime locale, timezone or floating_tz_ok attributes into |
92ed0695 |
449 | extra => {} has been deprecated. The new way is to put these things |
450 | directly into the columns definition |
6c0e3b46 |
451 | - Switched MI code to MRO::Compat |
452 | - Document db-side default_value caveats |
cfcaa8ed |
453 | - Search_like() now warns to indicate deprecation in 0.09. |
6c0e3b46 |
454 | - TxnScopeGuard left experimental state |
455 | |
456 | 0.08099_07 2009-02-27 02:00:00 (UTC) |
de404241 |
457 | - multi-create using find_or_create rather than _related for post-insert |
458 | - fix get_inflated_columns to check has_column_loaded |
6ffb5be5 |
459 | - Add DBIC_MULTICREATE_DEBUG env var (undocumented, quasi-internal) |
460 | - Fix up multi-create to: |
461 | - correctly propagate columns loaded during multi-insert of rels |
462 | - not try and insert things tagged on via new_related unless required |
8d689133 |
463 | - Possible to set locale in IC::DateTime extra => {} config |
6ffb5be5 |
464 | - Calling the accessor of a belongs_to when the foreign_key |
7ae6270b |
465 | was NULL and the row was not stored would unexpectedly fail |
6ffb5be5 |
466 | - Split sql statements for deploy only if SQLT::Producer returned a scalar |
467 | containing all statements to be executed |
468 | - Add as_query() for ResultSet and ResultSetColumn. This makes subqueries |
6882de2b |
469 | possible. See the Cookbook for details. |
bd7ca9e8 |
470 | - Massive rewrite of Ordered to properly handle position constraints and |
471 | to make it more matpath-friendly |
0233fc64 |
472 | - deploy_statements called ddl_filename with the $version and $dir arguments |
6c0e3b46 |
473 | in the wrong order. |
00c937a2 |
474 | - columns/+columns attributes now support { as => select } hahsrefs |
64ea0f49 |
475 | - support for views both in DBIC and via deploy() in SQLT |
eaab653f |
476 | |
477 | 0.08099_06 2009-01-23 07:30:00 (UTC) |
0eb27426 |
478 | - Allow a scalarref to be supplied to the 'from' resultset attribute |
479 | - Classes submitted as result_class for a resultsource are now |
480 | automatically loaded via ensure_loaded() |
481 | - 'result_class' resultset attribute, identical to result_class() |
0da3fea1 |
482 | - add 'undef_on_null_fk' option for relationship accessors of type 'single'. |
cef1bdda |
483 | This will prevent DBIC from querying the database if one or more of |
0e40881e |
484 | the key columns IS NULL |
485 | - for 'belongs_to' rels, 'undef_on_null_fk' defaults to true. |
486 | - fixed scope unaware last_insert_id fetching for MSSQL |
487 | (http://msdn.microsoft.com/en-us/library/ms190315.aspx) |
0da3fea1 |
488 | - an sqlt_deploy_hook can now be shared between result sources using |
489 | a configurable callback trigger |
20ea616f |
490 | - new order_by => { -desc => 'colname' } syntax supported |
491 | - PG array datatype supported |
0e80c4ca |
492 | - insert should use store_column, not set_column to avoid marking |
7ae6270b |
493 | clean just-stored values as dirty. New test for this |
494 | - regression test for source_name |
28e6c8b6 |
495 | |
496 | 0.08099_05 2008-10-30 21:30:00 (UTC) |
cfcaa8ed |
497 | - Rewrite of Storage::DBI::connect_info(), extended with an |
28e6c8b6 |
498 | additional argument format type |
2177f7d2 |
499 | - InflateColumn::DateTime: add warning about floating timezone |
500 | - InflateColumn::DateTime: possible to enforce/skip inflation |
cfcaa8ed |
501 | - delete throws exception if passed arguments to prevent drunken mishaps. |
68f3b0dd |
502 | - Fix storage to copy scalar conds before regexping to avoid |
503 | trying to modify a constant in odd edge cases |
504 | - Related resultsets on uninserted objects are now empty |
370f2ba2 |
505 | - Fixed up related resultsets and multi-create |
2eebd801 |
506 | - Fixed superfluous connection in ODBC::_rebless |
507 | - Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server |
7ae6270b |
508 | - Added virtual method to Versioned so a user can create upgrade |
a354b842 |
509 | path across multiple versions (jgoulah) |
d76e282a |
510 | - Better (and marginally faster) implementation of the HashRefInflator |
511 | hash construction algorithm |
d76e282a |
512 | - Allow explicit specification of ON DELETE/ON UPDATE constraints |
513 | when using the SQLT parser |
af8b962f |
514 | |
8c764dc7 |
515 | 0.08099_04 2008-07-24 01:00:00 |
e96a93df |
516 | - Functionality to storage to enable a sub to be run without FK checks |
7ae6270b |
517 | - Fixed $schema->clone bug which caused clone and source to share |
73529292 |
518 | internal hash refs |
2a4d9487 |
519 | - Added register_extra_source methods for additional sources |
33a126ef |
520 | - Added datetime_undef_if_invalid for InflateColumn::DateTime to |
521 | return undef on invalid date/time values |
262da53c |
522 | - Added search_related_rs method to ResultSet |
6dbea98e |
523 | - add a make_column_dirty method to Row to force updates |
cb136e67 |
524 | - throw a clear exception when user tries multi-has_many prefetch |
525 | - SQLT parser prefixes index names with ${table}_idx_ to avoid clashes |
748ab0dc |
526 | - mark ResultSetManager as deprecated and undocument it |
debccec3 |
527 | - pod fix (RT #32988) |
f947585b |
528 | - add Test::Exception to test requirements (RT #34256) |
fe650234 |
529 | - make ash's build_requires/META.yml fixes work better |
13de943d |
530 | - is_deferable support on relations used by the SQL::Translator |
ad6c4e20 |
531 | parser |
d63be6d0 |
532 | - Refactored DBIx::Class::Schema::Versioned |
a63219bc |
533 | - Syntax errors from resultset components are now reported correctly |
45f1a484 |
534 | - sqltargs respected correctly in deploy et al. |
5dee2dcf |
535 | - Added support for savepoints, and using them automatically in |
536 | nested transactions if auto_savepoint is set in connect_info. |
0da8b7da |
537 | - Changed naming scheme for constraints and keys in the sqlt parser; |
538 | names should now be consistent and collision-free. |
ad6c4e20 |
539 | - Improve handling of explicit key attr in ResultSet::find |
540 | - Add warnings for non-unique ResultSet::find queries |
e515254d |
541 | - Changed Storage::DBI::Replication to Storage::DBI::Replicated and |
542 | refactored support. |
7ae6270b |
543 | - By default now deploy/diff et al. will ignore constraint and index |
d4d46d19 |
544 | names |
e758ffe6 |
545 | - Add ResultSet::_is_deterministic_value, make new_result filter the |
546 | values passed to new to drop values that would generate invalid SQL. |
7ae6270b |
547 | - Use Sub::Name to name closures before installing them. Fixes |
ddc0a6c8 |
548 | incompatibility with Moose method modifiers on generated methods. |
13de943d |
549 | |
dd018f09 |
550 | 0.08010 2008-03-01 10:30 |
551 | - Fix t/94versioning.t so it passes with latest SQL::Translator |
552 | |
95e34604 |
553 | 0.08009 2008-01-20 13:30 |
0ed8d3b6 |
554 | - Made search_rs smarter about when to preserve the cache to fix |
555 | mm prefetch usage |
7ae6270b |
556 | - Added Storage::DBI subclass for MSSQL over ODBC. |
4146e3da |
557 | - Added freeze, thaw and dclone methods to Schema so that thawed |
558 | objects will get re-attached to the schema. |
8cfef6f5 |
559 | - Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API |
67109394 |
560 | (also fixes RT #32393) |
a0826322 |
561 | - introduced DBIx::Class::set_inflated_columns |
562 | - DBIx::Class::Row::copy uses set_inflated_columns |
4146e3da |
563 | |
af8b962f |
564 | 0.08008 2007-11-16 14:30:00 |
7e9b2a24 |
565 | - Fixed join merging bug (test from Zby) |
eba322a7 |
566 | - When adding relationships, it will throw an exception if you get the |
567 | foreign and self parts the wrong way round in the condition |
5d62876f |
568 | - ResultSetColumn::func() now returns all results if called in list |
569 | context; this makes things like func('DISTINCT') work as expected |
7ae6270b |
570 | - Many-to-many relationships now warn if the utility methods would |
35210a5d |
571 | clash |
dda9af55 |
572 | - InflateColumn::DateTime now accepts an extra parameter of timezone |
573 | to set timezone on the DT object (thanks Sergio Salvi) |
7ae6270b |
574 | - Added sqlt_deploy_hook to result classes so that indexes can be |
aaf2403d |
575 | added. |
7ae6270b |
576 | - Added startup checks to warn loudly if we appear to be running on |
11736b4c |
577 | RedHat systems from perl-5.8.8-10 and up that have the bless/overload |
578 | patch applied (badly) which causes 2x -> 100x performance penalty. |
579 | (Jon Schutz) |
7ae6270b |
580 | - ResultSource::reverse_relationship_info can distinguish between |
86636368 |
581 | sources using the same table |
582 | - Row::insert will now not fall over if passed duplicate related objects |
7ae6270b |
583 | - Row::copy will not fall over if you have two relationships to the |
35688220 |
584 | same source with a unique constraint on it |
eba322a7 |
585 | |
c94f64f9 |
586 | 0.08007 2007-09-04 19:36:00 |
8f7e044c |
587 | - patch for Oracle datetime inflation (abram@arin.net) |
6f442eb7 |
588 | - added on_disconnect_do |
589 | - on_connect_do and on_disconnect_do take coderefs and arrayrefs |
590 | |
5c642b15 |
591 | 0.08006 2007-08-12 15:12:00 |
592 | - Move to using Class::C3::Componentised |
593 | - Remove warn statement from DBIx::Class::Row |
594 | |
7ae6270b |
595 | 0.08005 2007-08-06 |
f011970e |
596 | - add timestamp fix re rt.cpan 26978 - no test yet but change |
597 | clearly should cause no regressions |
01d59a6a |
598 | - provide alias for related_resultset via local() so it's set |
599 | correctly at resultset construction time (fixes RestrictWithObject) |
e5d9ee92 |
600 | - fixes bind params in debug statements |
601 | (original test from abraxxa) |
649bfb8c |
602 | - fixed storage->connected fork bug |
603 | (test and fix from Radu Greab) |
fe0e9f67 |
604 | - add 1; to AccessorGroup.pm for stuff that still uses it |
70f39278 |
605 | - refactor Statistics to create debugging filehandle to fix bug with |
606 | closed STDERR, update docs and modify Versioned to use Statistics |
607 | (original fix from diz) |
608 | |
e7827df0 |
609 | 0.08004 2007-08-06 19:00:00 |
7ae6270b |
610 | - fix storage connect code to not trigger bug via auto-viv |
e7827df0 |
611 | (test from aherzog) |
e4eb8ee1 |
612 | - fixup cursor_class to be an 'inherited' attr for per-package defaults |
e6c747fd |
613 | - add default_resultset_attributes entry to Schema |
6296f45b |
614 | - optimisation in DBI::Cursor to check software_limit before falling |
615 | back to base Cursor->all |
2bc3c81e |
616 | - fix bug with create_multi not inserting non-storage objects |
617 | (test and fix from davinchi) |
73281318 |
618 | - DBIx::Class::AccessorGroup made empty subclass of |
619 | Class::Accessor::Grouped |
ec8c7e7f |
620 | - fixed an ugly bug regarding $dbh->{AutoCommit} and transactions |
73281318 |
621 | - ensure_class_loaded handles non-classnames better. |
9a0891be |
622 | - non-destructive hashref handling for connect_info options |
2bd9c7c0 |
623 | - count no longer returns negative values after slice |
624 | (report and test from JOHANL) |
114780ee |
625 | - rebless before building datetime_parser |
626 | (patch from mattlaw / Matt Lawrence) |
627 | |
ab2cf1fb |
628 | 0.08003 2007-07-14 18:01:00 |
629 | - improved populate bulk_insert mode |
a8c98174 |
630 | - fixed up multi_create to be more intelligent about PK<->PK rels |
6cc5b382 |
631 | - fix many-many rels to not use set_columns |
dfccde48 |
632 | - Unmarked deploy as experimental since it isn't anymore |
633 | - Removed Cwd dep since it's not required and causes problems |
634 | with debian packaging |
b4474f31 |
635 | - Patch to fix ? in data for NoBindVars (from Tom Hukins) |
77d518d1 |
636 | - Restored mk_classaccessor method for compatibility |
3f6cc7e4 |
637 | - Fixed group_by problem with oracle limit syntax |
638 | - Fixed attr merging problem |
639 | - Fixed $rs->get_column w/prefetch problem |
77d518d1 |
640 | |
6fa7228e |
641 | 0.08002 2007-06-20 06:10:00 |
9c6d6d93 |
642 | - add scope guard to Row::insert to ensure rollback gets called |
643 | - more heuristics in Row::insert to try and get insert order right |
644 | - eliminate vestigial code in PK::Auto |
2ab60eb9 |
645 | - more expressive DBI errors |
646 | - soften errors during deploy |
291bf95f |
647 | - ensure_connected before txn_begin to catch stomping on transaction |
648 | depth |
b2f408f3 |
649 | - new method "rethrow" for our exception objects |
650 | |
a2800991 |
651 | 0.08001 2007-06-17 21:21:02 |
652 | - Cleaned up on_connect handling for versioned |
653 | - removed DateTime use line from multi_create test |
654 | - hid DBIx::ContextualFetch::st override in CDBICompat |
655 | |
737416a4 |
656 | 0.08000 2007-06-17 18:06:12 |
942cd0c1 |
657 | - Fixed DBIC_TRACE debug filehandles to set ->autoflush(1) |
658 | - Fixed circular dbh<->storage in HandleError with weakref |
659 | |
a0bd8a8c |
660 | 0.07999_06 2007-06-13 04:45:00 |
3fda409f |
661 | - tweaked Row.pm to make last_insert_id take multiple column names |
a0bd8a8c |
662 | - Fixed DBIC::Storage::DBI::Cursor::DESTROY bug that was |
663 | messing up exception handling |
664 | - added exception objects to eliminate stacktrace/Carp::Clan |
665 | output redundancy |
666 | - setting $ENV{DBIC_TRACE} defaults stacktrace on. |
4d4c7bbe |
667 | - added stacktrace option to Schema, makes throw_exception |
668 | use "confess" |
669 | - make database handles use throw_exception by default |
670 | - make database handles supplied by a coderef use our |
671 | standard HandleError/RaiseError/PrintError |
672 | - add "unsafe" connect_info option to suppress our setting |
673 | of HandleError/RaiseError/PrintError |
674 | - removed several redundant evals whose sole purpose was to |
675 | provide extra debugging info |
4d993a62 |
676 | - fixed page-within-page bug (reported by nilsonsfj) |
4d4c7bbe |
677 | - fixed rare bug when database is disconnected inbetween |
678 | "$dbh->prepare_cached" and "$sth->execute" |
4d993a62 |
679 | |
ff132c6f |
680 | 0.07999_05 2007-06-07 23:00:00 |
2c2a01a5 |
681 | - Made source_name rw in ResultSource |
40dce2a5 |
682 | - Fixed up SQL::Translator test/runtime dependencies |
e3d0ecce |
683 | - Fixed t/60core.t in the absence of DateTime::Format::MySQL |
8b621a87 |
684 | - Test cleanup and doc note (ribasushi) |
e3d0ecce |
685 | |
1c1896e8 |
686 | 0.07999_04 2007-06-01 14:04:00 |
f5d3a5de |
687 | - pulled in Replication storage from branch and marked EXPERIMENTAL |
24010dd8 |
688 | - fixup to ensure join always LEFT after first LEFT join depthwise |
f217eaab |
689 | - converted the vendor tests to use schema objects intead of schema |
690 | classes, made cleaned more reliable with END blocks |
42416a0b |
691 | - versioning support via DBIx::Class::Schema::Versioned |
f217eaab |
692 | - find/next now return undef rather than () on fail from Bernhard Graf |
f80f8e2f |
693 | - rewritten collapse_result to fix prefetch |
694 | - moved populate to resultset |
695 | - added support for creation of related rows via insert and populate |
f217eaab |
696 | - transaction support more robust now in the face of varying AutoCommit |
697 | and manual txn_begin usage |
698 | - unbreak back-compat for Row/ResultSet->new_result |
03cc17a5 |
699 | - Added Oracle/WhereJoins.pm for Oracle >= 8 to support |
700 | Oracle <= 9i, and provide Oracle with a better join method for |
701 | later versions. (I use the term better loosely.) |
3d618782 |
702 | - The SQL::T parser class now respects a relationship attribute of |
03cc17a5 |
703 | is_foreign_key_constrain to allow explicit control over wether or |
704 | not a foreign constraint is needed |
fac560c2 |
705 | - resultset_class/result_class now (again) auto loads the specified |
1d4e109a |
706 | class; requires Class::Accessor::Grouped 0.05002+ |
ba4a6453 |
707 | - added get_inflated_columns to Row |
43556c5d |
708 | - %colinfo accessor and inflate_column now work together |
42d96e77 |
709 | - More documentation updates |
710 | - Error messages from ->deploy made more informative |
711 | - connect_info will now always return the arguments it was |
712 | originally given |
713 | - A few small efficiency improvements for load_classes |
714 | and compose_namespace |
715 | |
13f897a0 |
716 | 0.07006 2007-04-17 23:18:00 |
b740ac42 |
717 | - Lots of documentation updates |
718 | - deploy now takes an optional 'source_names' parameter (dec) |
719 | - Quoting for for columns_info_for |
720 | - RT#25683 fixed (multiple open sths on DBD::Sybase) |
721 | - CDBI compat infers has_many from has_a (Schwern) |
e73fced0 |
722 | - Fix ddl_filename transformation (Carl Vincent) |
8b50216e |
723 | |
e9188247 |
724 | 0.07999_02 2007-01-25 20:11:00 |
725 | - add support for binding BYTEA and similar parameters (w/Pg impl) |
726 | - add support to Ordered for multiple ordering columns |
727 | - mark DB.pm and compose_connection as deprecated |
728 | - switch tests to compose_namespace |
737416a4 |
729 | - ResultClass::HashRefInflator added |
e9188247 |
730 | - Changed row and rs objects to not have direct handle to a source, |
731 | instead a (schema,source_name) tuple of type ResultSourceHandle |
c216324a |
732 | |
f00482a5 |
733 | 0.07005 2007-01-10 18:36:00 |
734 | - fixup changes file |
735 | - remove erroneous .orig files - oops |
736 | |
d5efeb56 |
737 | 0.07004 2007-01-09 21:52:00 |
d180c0f3 |
738 | - fix find_related-based queries to correctly grep the unique key |
97c76264 |
739 | - fix InflateColumn to inflate/deflate all refs but scalar refs |
d180c0f3 |
740 | |
e1f1616e |
741 | 0.07003 2006-11-16 11:52:00 |
8de06d81 |
742 | - fix for rt.cpan.org #22740 (use $^X instead of hardcoded "perl") |
25dbe178 |
743 | - Tweaks to resultset to allow inflate_result to return an array |
382b1d53 |
744 | - Fix UTF8Columns to work under Perl <= 5.8.0 |
c6a0dde1 |
745 | - Fix up new_result in ResultSet to avoid alias-related bugs |
a4c8f60d |
746 | - Made new/update/find handle 'single' rel accessor correctly |
747 | - Fix NoBindVars to be safer and handle non-true bind values |
e1f1616e |
748 | - Don't blow up if columns_info_for returns useless results |
749 | - Documentation updates |
382b1d53 |
750 | |
e9188247 |
751 | 0.07999_01 2006-10-05 21:00:00 |
752 | - add connect_info option "disable_statement_caching" |
753 | - create insert_bulk using execute_array, populate uses it |
754 | - added DBIx::Class::Schema::load_namespaces, alternative to |
755 | load_classes |
756 | - added source_info method for source-level metadata (kinda like |
757 | column_info) |
758 | - Some of ::Storage::DBI's code/docs moved to ::Storage |
759 | - DBIx::Class::Schema::txn_do code moved to ::Storage |
760 | - Storage::DBI now uses exceptions instead of ->ping/->{Active} checks |
761 | - Storage exceptions are thrown via the schema class's throw_exception |
762 | - DBIx::Class::Schema::throw_exception's behavior can be modified via |
763 | ->exception_action |
764 | - columns_info_for is deprecated, and no longer runs automatically. |
765 | You can make it work like before via |
766 | __PACKAGE__->column_info_from_storage(1) for now |
767 | - Replaced DBIx::Class::AccessorGroup and Class::Data::Accessor with |
5d583aba |
768 | Class::Accessor::Grouped. Only user noticible change is to |
769 | table_class on ResultSourceProxy::Table (i.e. table objects in |
770 | schemas) and, resultset_class and result_class in ResultSource. |
e9188247 |
771 | These accessors no longer automatically require the classes when |
772 | set. |
773 | |
2292193a |
774 | 0.07002 2006-09-14 21:17:32 |
775 | - fix quote tests for recent versions of SQLite |
776 | - added reference implementation of Manual::Example |
777 | - backported column_info_from_storage accessor from -current, but |
6d2d6160 |
778 | - fixed inflate_datetime.t tests/stringify under older Test::More |
2292193a |
779 | - minor fixes for many-to-many relationship helpers |
36f79eed |
780 | - cleared up Relationship docs, and fixed some typos |
e4cc8257 |
781 | - use ref instead of eval to check limit syntax (to avoid issues with |
782 | Devel::StackTrace) |
2292193a |
783 | - update ResultSet::_cond_for_update_delete to handle more complicated |
784 | queries |
785 | - bugfix to Oracle columns_info_for |
a918d901 |
786 | - remove_columns now deletes columns from _columns |
787 | |
f096a498 |
788 | 0.07001 2006-08-18 19:55:00 |
9dba3059 |
789 | - add directory argument to deploy() |
790 | - support default aliases in many_to_many accessors. |
791 | - support for relationship attributes in many_to_many accessors. |
792 | - stop search_rs being destructive to attrs |
793 | - better error reporting when loading components |
794 | - UTF8Columns changed to use "utf8" instead of "Encode" |
ab8481f5 |
795 | - restore automatic aliasing in ResultSet::find() on nonunique queries |
796 | - allow aliases in ResultSet::find() queries (in cases of relationships |
797 | with prefetch) |
89034887 |
798 | - pass $attrs to find from update_or_create so a specific key can be |
799 | provided |
04786a4c |
800 | - remove anonymous blesses to avoid major speed hit on Fedora Core 5's |
801 | Perl and possibly others; for more information see: |
802 | https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=196836 |
282cccff |
803 | - fix a pathological prefetch case |
804 | - table case fix for Oracle in columns_info_for |
cb3e35d2 |
805 | - stopped search_rs deleting attributes from passed hash |
282cccff |
806 | |
cebfddb3 |
807 | 0.07000 2006-07-23 02:30:00 |
28d25740 |
808 | - supress warnings for possibly non-unique queries, since |
809 | _is_unique_query doesn't infer properly in all cases |
b489f68a |
810 | - skip empty queries to eliminate spurious warnings on ->deploy |
d09c569a |
811 | - fixups to ORDER BY, tweaks to deepen some copies in ResultSet |
eac29141 |
812 | - fixup for RowNum limit syntax with functions |
d09c569a |
813 | |
99eff28a |
814 | 0.06999_07 2006-07-12 20:58:05 |
815 | - fix issue with from attr copying introduced in last release |
816 | |
26cfd055 |
817 | 0.06999_06 2006-07-12 17:16:55 |
818 | - documentation for new storage options, fix S::A::L hanging on to $dbh |
819 | - substantial refactor of search_related code to fix alias numbering |
dcfb635f |
820 | - don't generate partial unique keys in ResultSet::find() when a table |
821 | has more than one unique constraint which share a column and only one |
822 | is satisfied |
404939a4 |
823 | - cleanup UTF8Columns and make more efficient |
26cfd055 |
824 | - rename DBIX_CLASS_STORAGE_DBI_DEBUG to DBIC_TRACE (with compat) |
f9fbd9bb |
825 | - rename _parent_rs to _parent_source in ResultSet |
0793f927 |
826 | - new FAQ.pod! |
f9fbd9bb |
827 | |
2b19c829 |
828 | 0.06999_05 2006-07-04 14:40:01 |
88de38fa |
829 | - fix issue with incorrect $rs->{attrs}{alias} |
c1466191 |
830 | - fix subclassing issue with source_name |
296ef183 |
831 | - tweak quotes test to output text on failure |
f32eb113 |
832 | - fix Schema->txn_do to not fail as a classmethod |
833 | |
39b590c1 |
834 | 0.06999_04 2006-06-29 20:18:47 |
d651c864 |
835 | - disable cdbi-t/02-Film.t warning tests under AS perl |
ca306ecb |
836 | - fixups to MySQL tests (aka "work round mysql being retarded") |
837 | - compat tweaks for Storage debug logging |
838 | |
ef26a392 |
839 | 0.06999_03 2006-06-26 21:04:44 |
840 | - various documentation improvements |
841 | - fixes to pass test suite on Windows |
842 | - rewrote and cleaned up SQL::Translator tests |
843 | - changed relationship helpers to only call ensure_class_loaded when the |
5d583aba |
844 | join condition is inferred |
ef26a392 |
845 | - rewrote many_to_many implementation, now provides helpers for adding |
846 | and deleting objects without dealing with the link table |
6ccc50ab |
847 | - reworked InflateColumn implementation to lazily deflate where |
ef26a392 |
848 | possible; now handles passing an inflated object to new() |
849 | - changed join merging to not create a rel_2 alias when adding a join |
42312aa5 |
850 | that already exists in a parent resultset |
ef26a392 |
851 | - Storage::DBI::deployment_statements now calls ensure_connected |
5d583aba |
852 | if it isn't passed a type |
ef26a392 |
853 | - fixed Componentized::ensure_class_loaded |
5d0a2955 |
854 | - InflateColumn::DateTime supports date as well as datetime |
ef26a392 |
855 | - split Storage::DBI::MSSQL into MSSQL and Sybase::MSSQL |
5d583aba |
856 | - fixed wrong debugging hook call in Storage::DBI |
857 | - set connect_info properly before setting any ->sql_maker things |
42312aa5 |
858 | |
713ca2e2 |
859 | 0.06999_02 2006-06-09 23:58:33 |
9b83fccd |
860 | - Fixed up POD::Coverage tests, filled in some POD holes |
175cff3e |
861 | - Added a warning for incorrect component order in load_components |
bd93520f |
862 | - Fixed resultset bugs to do with related searches |
863 | - added code and tests for Componentized::ensure_class_found and |
864 | load_optional_class |
865 | - NoBindVars + Sybase + MSSQL stuff |
866 | - only rebless S::DBI if it is still S::DBI and not a subclass |
867 | - Added `use' statement for DBD::Pg in Storage::DBI::Pg |
868 | - stopped test relying on order of unordered search |
869 | - bugfix for join-types in nested joins using the from attribute |
870 | - obscure prefetch problem fixed |
871 | - tightened up deep search_related |
872 | - Fixed 'DBIx/Class/DB.pm did not return a true value' error |
873 | - Revert change to test for deprecated find usage and swallow warnings |
874 | - Slight wording change to new_related() POD |
875 | - new specific test for connect_info coderefs |
876 | - POD clarification and content bugfixing + a few code formatting fixes |
877 | - POD::Coverage additions |
878 | - fixed debugfh |
879 | - Fix column_info stomping |
9b83fccd |
880 | |
0de39991 |
881 | 0.06999_01 2006-05-28 17:19:30 |
368a5228 |
882 | - add automatic naming of unique constraints |
1c81f831 |
883 | - marked DB.pm as deprecated and noted it will be removed by 1.0 |
a8db04ca |
884 | - add ResultSetColumn |
ef26a392 |
885 | - refactor ResultSet code to resolve attrs as late as possible |
a8db04ca |
886 | - merge prefetch attrs into join attrs |
cec13963 |
887 | - add +select and +as attributes to ResultSet |
e7cafd06 |
888 | - added InflateColumn::DateTime component |
4c248161 |
889 | - refactor debugging to allow for profiling using Storage::Statistics |
6aaa8ea2 |
890 | - removed Data::UUID from deps, made other optionals required |
38e48163 |
891 | - modified SQLT parser to skip dupe table names |
002a359a |
892 | - added remove_column(s) to ResultSource/ResultSourceProxy |
893 | - added add_column alias to ResultSourceProxy |
bab77431 |
894 | - added source_name to ResultSource |
1bc0b925 |
895 | - load_classes now uses source_name and sets it if necessary |
896 | - add update_or_create_related to Relationship::Base |
897 | - add find_or_new to ResultSet/ResultSetProxy and find_or_new_related |
898 | to Relationship::Base |
899 | - add accessors for unique constraint names and coulums to |
900 | ResultSource/ResultSourceProxy |
901 | - rework ResultSet::find() to search unique constraints |
9387c904 |
902 | - CDBICompat: modify retrieve to fix column casing when ColumnCase is |
903 | loaded |
904 | - CDBICompat: override find_or_create to fix column casing when |
905 | ColumnCase is loaded |
62eb8fe8 |
906 | - reorganized and simplified tests |
907 | - added Ordered |
8046a6d1 |
908 | - added the ability to set on_connect_do and the various sql_maker |
909 | options as part of Storage::DBI's connect_info. |
002a359a |
910 | |
0de39991 |
911 | 0.06003 2006-05-19 15:37:30 |
9c2c91ea |
912 | - make find_or_create_related check defined() instead of truth |
8417f5ee |
913 | - don't unnecessarily fetch rels for cascade_update |
d3c946a0 |
914 | - don't set_columns explicitly in update_or_create; instead use |
915 | update($hashref) so InflateColumn works |
0823196c |
916 | - fix for has_many prefetch with 0 related rows |
917 | - make limit error if rows => 0 |
a917fb06 |
918 | - added memory cycle tests and a long-needed weaken call |
919 | |
a2f6c15f |
920 | 0.06002 2006-04-20 00:42:41 |
2c037e6b |
921 | - fix set_from_related to accept undef |
bd054cb4 |
922 | - fix to Dumper-induced hash iteration bug |
83419ec6 |
923 | - fix to copy() with non-composed resultsource |
765f5b7b |
924 | - fix to ->search without args to clone rs but maintain cache |
a32e8402 |
925 | - grab $self->dbh once per function in Storage::DBI |
428c2b82 |
926 | - nuke ResultSource caching of ->resultset for consistency reasons |
16b4fd26 |
927 | - fix for -and conditions when updating or deleting on a ResultSet |
928 | |
d56d8619 |
929 | 0.06001 |
6346a152 |
930 | - Added fix for quoting with single table |
182fee36 |
931 | - Substantial fixes and improvements to deploy |
932 | - slice now uses search directly |
933 | - fixes for update() on resultset |
934 | - bugfix to Cursor to avoid error during DESTROY |
986e4fca |
935 | - transaction DBI operations now in debug trace output |
6346a152 |
936 | |
41741748 |
937 | 0.06000 2006-03-25 18:03:46 |
eaefb953 |
938 | - Lots of documentation improvements |
939 | - Minor tweak to related_resultset to prevent it storing a searched rs |
8fcf21b3 |
940 | - Fixup to columns_info_for when database returns type(size) |
eeb34228 |
941 | - Made do_txn respect void context (on the off-chance somebody cares) |
5bd6785c |
942 | - Fix exception text for nonexistent key in ResultSet::find() |
8fcf21b3 |
943 | |
41741748 |
944 | 0.05999_04 2006-03-18 19:20:49 |
7ed3d6dc |
945 | - Fix for delete on full-table resultsets |
936332ea |
946 | - Removed caching on count() and added _count for pager() |
3ec067db |
947 | - ->connection does nothing if ->storage defined and no args |
948 | (and hence ->connect acts like ->clone under the same conditions) |
949 | - Storage::DBI throws better exception if no connect info |
950 | - columns_info_for made more robust / informative |
1346e22d |
951 | - ithreads compat added, fork compat improved |
bcd26419 |
952 | - weaken result_source in all resultsets |
bd93520f |
953 | - Make pg seq extractor less sensitive. |
3b44ccc6 |
954 | |
c42d8358 |
955 | 0.05999_03 2006-03-14 01:58:10 |
956 | - has_many prefetch fixes |
85dea9a9 |
957 | - deploy now adds drop statements before creates |
f109ee4a |
958 | - deploy outputs debugging statements if DBIX_CLASS_STORAGE_DBI_DEBUG |
959 | is set |
85dea9a9 |
960 | |
f109ee4a |
961 | 0.05999_02 2006-03-10 13:31:37 |
e9100ff7 |
962 | - remove test dep on YAML |
963 | - additional speed tweaks for C3 |
e535069e |
964 | - allow scalarefs passed to order_by to go straight through to SQL |
9b465d00 |
965 | - renamed insert_or_update to update_or_insert (with compat alias) |
f43b2744 |
966 | - hidden lots of packages from the PAUSE Indexer |
561bd5f6 |
967 | |
968 | 0.05999_01 2006-03-09 18:31:44 |
5e8b1b2a |
969 | - renamed cols attribute to columns (cols still supported) |
970 | - added has_column_loaded to Row |
90ec6cad |
971 | - Storage::DBI connect_info supports coderef returning dbh as 1st arg |
aa972396 |
972 | - load_components() doesn't prepend base when comp. prefixed with + |
074a366d |
973 | - $schema->deploy |
974 | - HAVING support |
975 | - prefetch for has_many |
eaefb953 |
976 | - cache attr for resultsets |
074a366d |
977 | - PK::Auto::* no longer required since Storage::DBI::* handle auto-inc |
0e35aa05 |
978 | - minor tweak to tests for join edge case |
979 | - added cascade_copy relationship attribute |
980 | (sponsored by Airspace Software, http://www.airspace.co.uk/) |
981 | - clean up set_from_related |
982 | - made copy() automatically null out auto-inc columns |
62cb84ec |
983 | - added txn_do() method to Schema, which allows a coderef to be |
984 | executed atomically |
70ecd5a1 |
985 | |
975c65b5 |
986 | 0.05007 2006-02-24 00:59:00 |
971c0085 |
987 | - tweak to Componentised for Class::C3 0.11 |
988 | - fixes for auto-inc under MSSQL |
989 | |
f8d97a01 |
990 | 0.05006 2006-02-17 15:32:40 |
991 | - storage fix for fork() and workaround for Apache::DBI |
fc27a867 |
992 | - made update(\%hash) work on row as well as rs |
d3231653 |
993 | - another fix for count with scalar group_by |
994 | - remove dependency on Module::Find in 40resultsetmanager.t (RT #17598) |
4834d8ac |
995 | |
d0bb3812 |
996 | 0.05005 2006-02-13 21:24:51 |
997 | - remove build dependency on version.pm |
998 | |
dec2517f |
999 | 0.05004 2006-02-13 20:59:00 |
002a359a |
1000 | - allow specification of related columns via cols attr when primary |
f3b05bad |
1001 | keys of the related table are not fetched |
1002 | - fix count for group_by as scalar |
f66596f9 |
1003 | - add horrific fix to make Oracle's retarded limit syntax work |
3b24f6ea |
1004 | - remove Carp require |
60283c2e |
1005 | - changed UUIDColumns to use new UUIDMaker classes for uuid creation |
1006 | using whatever module may be available |
f66596f9 |
1007 | |
85b4a1c5 |
1008 | 0.05003 2006-02-08 17:50:20 |
1009 | - add component_class accessors and use them for *_class |
1010 | - small fixes to Serialize and ResultSetManager |
85b4a1c5 |
1011 | - rollback on disconnect, and disconnect on DESTROY |
85b4a1c5 |
1012 | |
cc6504dc |
1013 | 0.05002 2006-02-06 12:12:03 |
1014 | - Added recommends for Class::Inspector |
fac560c2 |
1015 | - Added skip_all to t/40resultsetmanager.t if no Class::Inspector |
1016 | available |
cc6504dc |
1017 | |
1018 | 0.05001 2006-02-05 15:28:10 |
6ee299bf |
1019 | - debug output now prints NULL for undef params |
887ce227 |
1020 | - multi-step prefetch along the same rel (e.g. for trees) now works |
489709af |
1021 | - added multi-join (join => [ 'foo', 'foo' ]), aliases second to foo_2 |
5ec6bc2e |
1022 | - hack PK::Auto::Pg for "table" names referencing a schema |
1023 | - find() with attributes works |
5ac6a044 |
1024 | - added experimental Serialize and ResultSetManager components |
19345968 |
1025 | - added code attribute recording to DBIx::Class |
5ac6a044 |
1026 | - fix to find() for complex resultsets |
1027 | - added of $storage->debugcb(sub { ... }) |
1028 | - added $source->resultset_attributes accessor |
1029 | - added include_columns rs attr |
1030 | |
fc69fea6 |
1031 | 0.05000 2006-02-01 16:48:30 |
1032 | - assorted doc fixes |
602afcfa |
1033 | - remove ObjectCache, not yet working in 0.05 |
1034 | - let many_to_many rels have attrs |
1035 | - fix ID method in PK.pm to be saner for new internals |
132f3b89 |
1036 | - fix t/30dbicplain.t to use ::Schema instead of |
1037 | Catalyst::Model::DBIC::Plain |
cd67f809 |
1038 | |
7a1fe534 |
1039 | 0.04999_06 2006-01-28 21:20:32 |
de5e2fe9 |
1040 | - fix Storage/DBI (tried to load deprecated ::Exception component) |
1041 | |
1042 | 0.04999_05 2006-01-28 20:13:52 |
00018e9d |
1043 | - count will now work for grouped resultsets |
1044 | - added accessor => option to column_info to specify accessor name |
a37a4697 |
1045 | - added $schema->populate to load test data (similar to AR fixtures) |
5e8b1b2a |
1046 | - removed cdbi-t dependencies, only run tests if installed |
1047 | - Removed DBIx::Class::Exception |
1048 | - unified throw_exception stuff, using Carp::Clan |
1049 | - report query when sth generation fails. |
a14d1055 |
1050 | - multi-step prefetch! |
1051 | - inheritance fixes |
1052 | - test tweaks |
1053 | |
09aeebca |
1054 | 0.04999_04 2006-01-24 21:48:21 |
1055 | - more documentation improvements |
fac560c2 |
1056 | - add columns_info_for for vendor-specific column info (Zbigniew |
1057 | Lukasiak) |
1058 | - add SQL::Translator::Producer for DBIx::Class table classes (Jess |
1059 | Robinson) |
09aeebca |
1060 | - add unique constraint declaration (Daniel Westermann-Clark) |
1061 | - add new update_or_create method (Daniel Westermann-Clark) |
e46a66f2 |
1062 | - rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance |
1063 | to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table |
09aeebca |
1064 | - minor fixes to UUIDColumns |
6565b410 |
1065 | - add debugfh method and ENV magic for tracing SQL (Nigel Metheringham) |
09aeebca |
1066 | |
151fc9ad |
1067 | 0.04999_03 2006-01-20 06:05:27 |
09aeebca |
1068 | - imported Jess Robinson's SQL::Translator::Parser::DBIx::Class |
fac560c2 |
1069 | - lots of internals cleanup to eliminate result_source_instance |
1070 | requirement |
8bfc3d48 |
1071 | - added register_column and register_relationship class APIs |
1072 | - made Storage::DBI use prepare_cached safely (thanks to Tim Bunce) |
1073 | - many documentation improvements (thanks guys!) |
fac560c2 |
1074 | - added ->connection, ->connect, ->register_source and ->clone schema |
1075 | methods |
5e8b1b2a |
1076 | - Use croak instead of die for user errors. |
8bfc3d48 |
1077 | |
9ce9ec10 |
1078 | 0.04999_02 2006-01-14 07:17:35 |
1079 | - Schema is now self-contained; no requirement for co-operation |
1080 | - add_relationship, relationships, relationship_info, has_relationship |
1081 | - relationship handling on ResultSource |
1082 | - all table handling now in Table.pm / ResultSource.pm |
475978db |
1083 | - added GROUP BY and DISTINCT support |
1084 | - hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract |
1085 | (this may have fixed complex quoting) |
1086 | - moved inflation to inflate_result in Row.pm |
1087 | - added $rs->search_related |
1088 | - split compose_namespace out of compose_connection in Schema |
fea3d045 |
1089 | - ResultSet now handles find |
1090 | - various *_related methods are now ->search_related->* |
1091 | - added new_result to ResultSet |
475978db |
1092 | |
82b1cd1f |
1093 | 0.04999_01 2005-12-27 03:33:42 |
1094 | - search and related methods moved to ResultSet |
1095 | - select and as added to ResultSet attrs |
1096 | - added DBIx::Class::Table and TableInstance for table-per-class |
1097 | - added DBIx::Class::ResultSetInstance which handles proxying |
1098 | search etc. as a superclass of DBIx::Class::DB |
1099 | - assorted test and code cleanup work |
1100 | |
de5d1955 |
1101 | 0.04001 2005-12-13 22:00:00 |
47bd0267 |
1102 | - Fix so set_inflated_column calls set_column |
de5d1955 |
1103 | - Syntax errors in relationship classes are now reported |
c2074366 |
1104 | - Better error detection in set_primary_key and columns methods |
1105 | - Documentation improvements |
1106 | - Better transaction support with txn_* methods |
1107 | - belongs_to now works when $cond is a string |
1108 | - PK::Auto::Pg updated, only tries primary keys instead of all cols |
47bd0267 |
1109 | |
1110 | 0.04 2005-11-26 |
484c9dda |
1111 | - Moved get_simple and set_simple into AccessorGroup |
1112 | - Made 'new' die if given invalid columns |
103647d5 |
1113 | - Added has_column and column_info to Table.pm |
1114 | - Refactored away from direct use of _columns and _primaries |
47bd0267 |
1115 | - Switched from NEXT to Class::C3 |
484c9dda |
1116 | |
2441e56f |
1117 | 0.03004 |
1118 | - Added an || '' to the CDBICompat stringify to avoid null warnings |
5e8b1b2a |
1119 | - Updated name section for manual pods |
3b44ccc6 |
1120 | 0.03003 2005-11-03 17:00:00 |
1121 | - POD fixes. |
1122 | - Changed use to require in Relationship/Base to avoid import. |
1123 | |
1124 | 0.03002 2005-10-20 22:35:00 |
1125 | - Minor bugfix to new (Row.pm) |
1126 | - Schema doesn't die if it can't load a class (Schema.pm) |
1127 | - New UUID columns plugin (UUIDColumns.pm) |
1128 | - Documentation improvements. |
1129 | |
1130 | 0.03001 2005-09-23 14:00:00 |
1131 | - Fixes to relationship helpers |
1132 | - IMPORTANT: prefetch/schema combination bug fix |
1133 | |
1134 | 0.03 2005-09-19 19:35:00 |
1135 | - Paging support |
1136 | - Join support on search |
1137 | - Prefetch support on search |
1138 | |
1139 | 0.02 2005-08-12 18:00:00 |
1140 | - Test fixes. |
1141 | - Performance improvements. |
1142 | - Oracle primary key support. |
1143 | - MS-SQL primary key support. |
1144 | - SQL::Abstract::Limit integration for database-agnostic limiting. |
1145 | |
1146 | 0.01 2005-08-08 17:10:00 |
1147 | - initial release |
fac560c2 |
1148 | |