Commit | Line | Data |
3b44ccc6 |
1 | Revision history for DBIx::Class |
64ea0f49 |
2 | |
16e77134 |
3 | * New Features / Changes |
4 | - A new zero-to-DBIC style manual: DBIx::Class::Manual::QuickStart |
5 | |
f9b5239a |
6 | * Fixes |
9e7525a2 |
7 | - More robust handling of circular relationship declarations by loading |
8 | foreign classes less frequently (should resolve issues like |
9 | http://lists.scsys.co.uk/pipermail/dbix-class/2013-June/011374.html) |
f9b5239a |
10 | - Setting quote_names propagates to SQL::Translator when producing |
11 | SQLite DDL (it is one of the few producers *NOT* quoting by default) |
04ab4eb1 |
12 | - Fix incorrect binding of large integers on old versions of |
13 | DBD::SQLite (now DBIC simply always binds SQLite ints as BIGINT) |
14 | - Silence (harmless) warnings on recent DBD::SQLite versions, when |
15 | inserting/updating large integers on 32bit ivsize systems (RT#76395) |
16e77134 |
16 | - Back out self-cleaning from DBIx::Class::Carp for the time being |
17 | (as a side effect fixes RT#86267) |
a9da9b6a |
18 | - Fix incorrect internal use of implicit list context in copy() |
444f799b |
19 | - Tests no longer fail if $ENV{DBI_DSN} is set |
3f8affda |
20 | - Throw clearer exception on ->new_related() with a non-existent |
21 | relationship. |
617474ab |
22 | - Fix t/storage/replicated.t class loading problem |
d401ab6b |
23 | - Stop using the deprecated Class::MOP::load_class() |
f9b5239a |
24 | |
47d7b769 |
25 | * Misc |
26 | - Replace $row with $result in all docs to be consistent and to |
27 | clarify various return values |
28 | |
c36f8d8d |
29 | 0.08250 2013-04-29 22:00 (UTC) |
6dd43920 |
30 | * New Features / Changes |
f3c8fa02 |
31 | - Rewrite from scratch the result constructor codepath - many bugfixes |
32 | and performance improvements (the current codebase is now capable of |
33 | outperforming both DBIx::DataModel and Rose::DB::Object on some |
34 | workloads). Some notable benefits: |
35 | - Multiple has_many prefetch |
36 | - Partial prefetch - you now can select only columns you are |
37 | interested in, while preserving the collapse functionality |
38 | (collapse is now exposed as a first-class API attribute) |
39 | - Prefetch of resultsets with arbitrary order |
40 | (RT#54949, RT#74024, RT#74584) |
41 | - Prefetch no longer inserts right-side table order_by clauses |
42 | (massively helps the deficient MySQL optimizer) |
43 | - Prefetch with limit on right-side ordered resultsets now works |
44 | correctly (via aggregated grouping) |
45 | - No longer order the insides of a complex prefetch subquery, |
46 | unless required to satisfy a limit |
47 | - Stop erroneously considering order_by criteria from a join under |
48 | distinct => 1 (the distinct should apply to the main source only) |
49 | - Massively optimize codepath around ->cursor(), over 10x speedup |
50 | on some iterating workloads. |
1b5ddf23 |
51 | - Support standalone \[ $sql, $value ] in literal SQL with bind |
52 | specifications: \[ '? + ?', 42, 69 ] is now equivalent to |
53 | \[ '? + ?', [ {} => 42 ], [ {} => 69 ] ] |
f3c8fa02 |
54 | - Changing the result_class of a ResultSet in progress is now |
55 | explicitly forbidden. The behavior was undefined before, and |
56 | would result in wildly differing outcomes depending on $rs |
57 | attributes. |
6dd43920 |
58 | - Deprecate returning of prefetched 'filter' rels as part of |
59 | get_columns() and get_inflated_columns() data |
60 | - Invoking get_inflated_columns() no longer fires get_columns() but |
61 | instead retrieves data from individual non-inflatable columns via |
62 | get_column() |
f3c8fa02 |
63 | - Emit a warning on incorrect use of nullable columns within a |
64 | primary key |
02a73c96 |
65 | - Limited checks are performed on whether columns without declared |
66 | is_nullable => 1 metadata do in fact sometimes fetch NULLs from |
67 | the database (the check is currently very limited and is performed |
68 | only on resultset collapse when the alternative is rather worse) |
6dd43920 |
69 | |
f4fdfd69 |
70 | * Fixes |
723f25e0 |
71 | - Fix _dbi_attrs_for_bind() being called befor DBI has been loaded |
72 | (regression in 0.08210) |
f4fdfd69 |
73 | - Fix update/delete operations on resultsets *joining* the updated |
74 | table failing on MySQL. Resolves oversights in the fixes for |
75 | RT#81378 and RT#81897 |
f3c8fa02 |
76 | - Fix open cursors silently resetting when inherited across a fork |
77 | or a thread |
78 | - Properly support "MySQL-style" left-side group_by with prefetch |
79 | - Fix $grouped_rs->get_column($col)->func($func) producing incorrect |
80 | SQL (RT#81127) |
048c2440 |
81 | - Stop Sybase ASE storage from generating invalid SQL in subselects |
82 | when a limit without offset is encountered |
f3c8fa02 |
83 | - Even more robust behavior of GenericSubQuery limit dialect |
1759f82f |
84 | - Make sure deployment_statements() and cursor_class() are called on |
85 | a resolved storage subclass |
f4fdfd69 |
86 | |
fb88ca2c |
87 | * Misc |
88 | - Fix tests failing due to unspecified resultset retrieval order |
89 | (test suite now will pass with newest SQLite libs) |
90 | |
5a1dea85 |
91 | 0.08210 2013-04-04 15:30 (UTC) |
11343b34 |
92 | * New Features / Changes |
93 | - Officially deprecate the 'cols' and 'include_columns' resultset |
94 | attributes |
9930caaf |
95 | - Remove ::Storage::DBI::sth() deprecated in 0.08191 |
11343b34 |
96 | |
d77ee505 |
97 | * Fixes |
75a1d824 |
98 | - Work around a *critical* bug with potential for data loss in |
99 | DBD::SQLite - RT#79576 |
d77ee505 |
100 | - Audit and correct potential bugs associated with braindead reuse |
101 | of $1 on unsuccessful matches |
5e0e5426 |
102 | - Fix incorrect warning/exception originator reported by carp*() and |
103 | throw_exception() |
d77ee505 |
104 | |
4f364257 |
105 | 0.08209 2013-03-01 12:56 (UTC) |
e0de554e |
106 | * New Features / Changes |
107 | - Debugging aid - warn on invalid result objects created by what |
108 | seems like an invalid inheritance hierarchy |
109 | |
9ae300a4 |
110 | * Fixes |
111 | - Fix another embarrassing regression preventing correct refining of |
112 | the search criteria on a prefetched relation (broken in 0.08205) |
569b96bb |
113 | - Fix incorrect callsite reporting by DBIC::Carp |
9ae300a4 |
114 | |
cc3654a1 |
115 | 0.08208 2013-02-20 09:56 (UTC) |
a07ae2aa |
116 | * New Features / Changes |
117 | - A bunch of nonsensically named arguments to the SQL::Translator |
118 | parser have been marked as deprecated (while still fully |
119 | supported) |
120 | |
913b4bae |
121 | * Fixes |
122 | - Fix duplicated selected columns when calling 'count' when a same |
123 | aggregate function is used more than once in a 'having' clause |
124 | (RT#83305) |
31399b48 |
125 | - Prevent SQL::Translator::Producer::YAML from seeing the $dbh |
126 | in a potentially connected $schema instance (RT#75394) |
913b4bae |
127 | |
ad944588 |
128 | * Misc |
129 | - Fixup our distbuilding process to stop creating world-writable |
130 | tarball contents (implicitly fixes RT#83084) |
4a233f30 |
131 | - Added strict and warnings tests for all lib and test files |
ad944588 |
132 | |
08d7807b |
133 | 0.08206 2013-02-08 |
8c21eef7 |
134 | * Fixes |
8f6986ac |
135 | - Fix dbh_do() failing to properly reconnect (regression in 0.08205) |
8c21eef7 |
136 | - Extra sanity check of a fresh DBI handle ($dbh). Fixes |
137 | connection coderefs returning garbage (seen in the wild) |
138 | |
60fd7c30 |
139 | * Misc |
140 | - Only allow known globals in SQL::Translator leak allowance |
a5ef1371 |
141 | - General cleanup of error message texts - quote names/identifiers |
142 | for easier reading |
143 | - Stop t/52leaks.t from failing when AUTOMATED_TESTING=1 |
60fd7c30 |
144 | |
f4fe67e2 |
145 | 0.08205 2013-01-22 |
67341081 |
146 | * New Features / Changes |
147 | - The emulate_limit() arbitrary limit dialect emulation mechanism is |
148 | now deprecated, and will be removed when DBIx::Class migrates to |
149 | Data::Query |
97202028 |
150 | - Support for the source_bind_attributes() storage method has been |
151 | removed after a lengthy deprecation cycle |
218b7c12 |
152 | * Fixes |
fd8076c8 |
153 | - When performing resultset update/delete only strip condition |
154 | qualifiers - leave the source name alone (RT#80015, RT#78844) |
31073ac7 |
155 | - Fix incorrect behavior on resultset update/delete invoked on |
156 | composite resultsets (e.g. as_subselect_rs) |
45150bc4 |
157 | - Fix update/delete operations referencing the updated table failing |
158 | on MySQL, due to its refusal to modify a table being directly |
159 | queried. As a workaround induce in-memory temp-table creation |
160 | (RT#81378, RT#81897) |
218b7c12 |
161 | - More robust behavior under heavily threaded environments - make |
162 | sure we do not have refaddr reuse in the global storage registry |
dfd722ef |
163 | - Fix failing test on 5.8 under Win32 (RT#81114) |
b563960f |
164 | - Fix hash-randomization test issues (RT#81638) |
1fccee7b |
165 | - Disallow erroneous calling of connect_info on a replicated storage |
166 | (RT#78436) |
44e95db4 |
167 | * Misc |
168 | - Improve the populate docs in ::Schema and ::ResultSet |
97202028 |
169 | - ::Storage::DBI::source_bind_attributes() removed as announced |
170 | on Jan 2011 in 0e773352a |
218b7c12 |
171 | |
8b4fa23f |
172 | 0.08204 2012-11-08 |
8249c09b |
173 | * New Features / Changes |
174 | - SQLMaker now accepts \'literal' with the 'for' rs attribute as an |
175 | override to the builtin FOR options |
897f4ac8 |
176 | * Fixes |
375c84bb |
177 | - Fix unique constraint violations in Ordered.pm blanket movement |
178 | (RT#79773, rolls back short-sighted 5e6fde33e) |
81e4dc3d |
179 | - Fix API mismatch between new_result() and new_related() (originally |
180 | broken by fea3d045) |
897f4ac8 |
181 | - Fix test failure on perl 5.8 |
75d3bdb2 |
182 | * Misc |
183 | - Much more extensive diagnostics when a new RDBMS/DSN combination is |
184 | encountered (RT#80431) |
897f4ac8 |
185 | |
80e1ff14 |
186 | 0.08203 2012-10-18 |
2aeb3c7f |
187 | * Fixes |
188 | - Really fix inadequate $dbh->ping SQLite implementation (what shipped |
189 | in 0.08201 tickled other deficiencies in DBD::SQLite itself) |
190 | |
524fc24c |
191 | 0.08202 2012-10-06 |
8d1fb3e2 |
192 | * Fixes |
193 | - Replace inadequate $dbh->ping SQLite implementation with our own, |
194 | fixes RT#78420 |
195 | |
058a18cc |
196 | 0.08200 2012-08-24 (UTC) |
277b225f |
197 | * Fixes |
198 | - Change one of the new tests for the previous release to not require |
199 | SQL::Translator |
200 | |
6adcb211 |
201 | 0.08199 2012-08-22 (UTC) |
5007739d |
202 | * Fixes |
203 | - Roll back incomplete (and broken) internal changes - restore prefetch functionality |
204 | |
0a7eddc0 |
205 | 0.08198 2012-07-11 03:43 (UTC) |
206 | * Fixes |
207 | - Fix a number of Win32 Test issues |
208 | - Fix silent Oracle connection failures |
209 | |
5e2a9177 |
210 | 0.08197 2012-07-10 10:32 (UTC) |
07d6018a |
211 | * New Features / Changes |
212 | - Issue a warning when DateTime objects are passed to ->search |
52cef7e3 |
213 | - Fast populate() in void context is now even more efficient by |
214 | going directly through execute_for_fetch bypassing execute_array |
be64931c |
215 | - Fix update()/delete() on complex resultsets to no longer fall back |
216 | to silly row-by-row deletion, construct a massive OR statement |
217 | instead |
81bf295c |
218 | - Allow complex update/delete operations on sources without a |
219 | primary key, as long as they have at least one non-nullable |
220 | unique constraint |
7b71391b |
221 | - dbicadmin now better supports catalyst-style config files, by |
222 | unrolling 'config_info' hashkeys |
2edf3352 |
223 | - Multiple Improvements MSSQL over DBD::ADO |
224 | - Transaction support |
225 | - Support for VARCHAR(MAX)/VARBINARY(MAX)/NVARCHAR(MAX) datatypes |
226 | - Nomalization of retrieved GUID values |
81bf295c |
227 | |
228 | * Fixes |
27e0370d |
229 | - Fix complex has_many prefetch with resultsets not selecting identity |
230 | columns from the root result source |
8b31f62e |
231 | - Fix SkipFirst and FirstSkip limit dialects (Informix and Firebird) |
86bb5a27 |
232 | - Fix "Skimming limit" dialects (Top, FetchFirst) to properly check |
233 | the order_by criteria for stability |
234 | - Fix "Skimming limit" dialects (Top, FetchFirst) to propagate |
235 | non-selected order criteria when part of a larger subquery |
27a7c422 |
236 | - Fix RowNumberOver and all "skimming limits" to correctly assemble |
237 | bind values when supplied for both select and order_by |
238 | - Fix all subquery-based dialects to not lose a subquery fragment |
239 | when we both select and order by the result of the same subquery |
240 | - Fix the Sybase hubrid limit dialect (RowCountOrGenericSubQ) losing |
241 | Group/Having/Order clauses when called without an offset (RT#73244) |
038b8126 |
242 | - No longer generate incorrect SQL on ->as_query called on resultsets |
243 | with software_limit enabled |
a9bac98f |
244 | - A number of corner case fixes of void context populate() with \[] |
66441708 |
245 | - Fix corner case of forked children disconnecting the parents DBI |
246 | handle |
fabbd5cc |
247 | - Improve identity/autoinc retrieval code in MSSQL and Sybase - |
248 | should reduce weird side-effects especially with populate() |
25d3127d |
249 | - Explicitly disable DBD::ODBC batch operations (as of DBD::ODBC 1.35) |
3edfebff |
250 | for the following drivers too buggy to handle the optimized path: |
251 | - FreeTDS ODBC driver (when used with MSSQL) |
252 | - The Firebird ODBC driver |
1d8a370f |
253 | - The MSAccess ODBC driver |
25d3127d |
254 | - Explicitly disable DBD::ODBC dynamic_cursors when using freetds 0.83 |
0d6c550e |
255 | or later - they made enough ODBC incompatible changes making it |
256 | impossible to support sanely |
257 | - Explicitly disable SCOPE_IDENTITY queries and statement caching for |
bfec318f |
258 | MSSQL on DBD::Sybase compiled against freetds 0.83 or later - way too |
259 | buggy |
260 | - Disable statement caching when using Sybase ASE and DBD::Sybase |
261 | compiled against freetds 0.83 or later |
0a03206a |
262 | - Fix leakage of $schema on in-memory new_related() calls |
48775dd1 |
263 | - Fix more cases of $schema leakage in SQLT::Parser::DBIC |
a6ae092b |
264 | - Fix leakage of $storage in ::Storage::DBI::Oracle |
cccd1876 |
265 | - Fix pessimization of Oracle RowNum limit dialect query when no |
266 | offset has been specified |
aea59b74 |
267 | - Remove useless vestigial pessimization in Ordered.pm for cases |
5e6fde33 |
268 | when the position column is part of a unique constraint |
7b71391b |
269 | - Fix dbicadmin to no longer ignore the documented 'config' option |
a4367b26 |
270 | - The schema-resultsource entanglement is now much more robust |
271 | under threads |
aea59b74 |
272 | - Fix ::Schema::ddl_filename() failing miserably on paths containing |
273 | certain numeric sequences |
6fec58ca |
274 | - t/53lean_startup.t adjusted for new 5.15.x base.pm behavior |
8b31f62e |
275 | |
8273e845 |
276 | * Misc |
65d35121 |
277 | - Centralized leak-checks for all instances of DBICTest::Schema |
278 | from within any test |
7be5717e |
279 | - Now passes all tests with Test::Builder 1.005 |
8273e845 |
280 | - Codebase is now trailing-whitespace-free |
be64931c |
281 | - Cleanup of complex resultset update/delete oprations - storage |
282 | specific code moved back to ResultSet and replaced by checks |
283 | of storage capabilities |
8fda97d5 |
284 | - Fixed carp_once only emitting one single warning per package |
285 | regardless of warning content |
8d6b1478 |
286 | - Test suite now can be safely executed in parallel (prove -jN |
287 | or HARNESS_OPTIONS=jN) |
8273e845 |
288 | |
30cfb462 |
289 | 0.08196 2011-11-29 05:35 (UTC) |
bc57c92c |
290 | * Fixes |
291 | - Fix tests for DBD::SQLite >= 1.34. |
6ddb4ac0 |
292 | - Fix test failures with DBICTEST_SQLITE_USE_FILE set |
b0408e26 |
293 | - Fix the find() condition heuristics being invoked even when the |
294 | call defaults to 'primary' (i.e. when invoked with bare values) |
ce9f555e |
295 | - Throw much clearer error on incorrect inflation spec |
2324c42c |
296 | - Fix incorrect storage behavior when first call on a fresh schema |
297 | is with_deferred_fk_checks |
c7bc500e |
298 | - Fix incorrect dependency on Test::Simple/Builder (RT#72282) |
aadfe180 |
299 | - Fix uninitialized warning in ::Storage::Sybase::ASE |
8892d8e5 |
300 | - Improve/cache DBD-specific datatype bind checks (also solves a |
301 | nasty memleak with version.pm on multiple ->VERSION invocations) |
386c61f6 |
302 | - The internal carp module now correctly skips CAG frames when |
303 | reporting a callsite |
45638aed |
304 | - Fix test failures on perl < 5.8.7 and new Package::Stash::XS |
f62c5724 |
305 | - Fix TxnScopeGuard not behaving correctly when $@ is set at the |
306 | time of $guard instantiation |
8bc47467 |
307 | - Fix the join/prefetch resolver when dealing with ''/undef/() |
308 | relation specifications |
bc57c92c |
309 | |
cd122820 |
310 | * Misc |
311 | - No longer depend on Variable::Magic now that a pure-perl |
312 | namespace::clean is available |
26022fb5 |
313 | - Drop Oracle's Math::BigInt req down to 1.80 - no fixes concerning |
314 | us were made since |
cd122820 |
315 | |
58a4b69c |
316 | 0.08195 2011-07-27 16:20 (UTC) |
e12571af |
317 | * Fixes |
318 | - Fix horrible oversight in the Oracle sqlmaker when dealing with |
319 | queries updating blobs (RT#69829) |
320 | |
43d10c98 |
321 | 0.08194 2011-07-20 16:10 (UTC) |
8c49ff1a |
322 | * Fixes |
ce855fff |
323 | - Fix $rs->populate([]) to be a no-op rather than an exception |
17877ef0 |
324 | - Overhaul t/53lean_startup.t to better dodge false positives |
325 | - Stop Data::Compare from loading random plugins |
00819de0 |
326 | - Oracle: Recalculate LOB bind indices for UPDATE with LOBs in WHERE |
327 | (RT#69548) |
8c49ff1a |
328 | |
cfd773c2 |
329 | 0.08193 2011-07-14 17:00 (UTC) |
71829446 |
330 | * New Features / Changes |
c6b7885f |
331 | - Allow schema cloning to mutate attributes |
3170049a |
332 | - DBIC now attempts more aggressive de-duplication of where |
333 | conditions on resultset chaining |
5ef76b8b |
334 | - The Ordered component is now smarter wrt reordering of dirty |
335 | objects, and does its job with less storage queries |
64b3598f |
336 | - Logging via DBIC_TRACE=1=<filename> no longer overwrites the |
337 | logfile on every program startup, appending loglines instead |
71829446 |
338 | |
339 | * Fixes |
f74d22e2 |
340 | - Fix issue where the query was becoming overly mangled when trying |
341 | to use pagination with a query that has a sub-select in the WHERE |
c6b7885f |
342 | clause |
6a6394f1 |
343 | - Fix possible incorrect pagination on Oracle, when a resultset |
344 | is not ordered by a unique column |
7f3fd262 |
345 | - Revert "Fix incorrect signature of the default sqlt_deploy_hook" |
346 | from 0.08191 - documentation was in fact incorrect, not the code |
c6b7885f |
347 | - Fix Sybase ASE IC::DateTime support (::Storage going out of sync |
348 | with new default format expected by DateTime::Format::Sybase) |
8d2da21a |
349 | - Fix a bug in update_all() resulting in the first row receiving a |
350 | different dataset than the subsequent ones |
696ba760 |
351 | - Accomodate MSAccess supporting only 'INNER JOIN' (not plain 'JOIN') |
24f5cbcb |
352 | - InflateColumn::DateTime option datetime_undef_if_invalid no longer |
353 | masks missing dependency exceptions (RT#66823) |
701c9693 |
354 | - Fix bug in Schema::Versioned failing to insert a schema version row |
355 | during upgrades at the turn of the second |
67b35a45 |
356 | - Fix incorrect bind of integers >= 2^^32 (bigint columns) to |
357 | SQL_INTEGER, resulting in silent conversion to '-1' |
88b1530a |
358 | - Fix pre 5.10 failures of t/55namespaces_cleaned.t due to buggy |
359 | require() (RT#68814) |
e6f3272b |
360 | - Oracle autoinc inserts no longer leave open cursors behind |
f74d22e2 |
361 | |
4cc6b752 |
362 | 0.08192 2011-05-10 04:20 (UTC) |
632d1e0f |
363 | * Fixes |
364 | - Fix serious regression on SQLite, corrupting data when an alphanum |
365 | value does not correspond to a stale numeric datatype in colinfo |
867a7241 |
366 | |
632d1e0f |
367 | 0.08191 2011-05-02 00:45 (UTC) (deleted from CPAN) |
2b8cc2f2 |
368 | * New Features / Changes |
369 | - Add quote_names connection option. When set to true automatically |
370 | sets quote_char and name_sep appropriate for your RDBMS |
8b9473f5 |
371 | - Add retrieve_on_insert column info flag, allowing to retrieve any |
372 | column value instead of just autoinc primary keys |
f7f53a89 |
373 | - Bring back strict ordering of selectors in complex search chains |
374 | (an ill-fated attempt was made in 0.08127 to order intelligently) |
fcb7fcbb |
375 | - All limit dialects (except for the older Top and FetchFirst) are |
376 | now using bind parameters for the limits/offsets, making DBI's |
377 | prepare_cached useful across paged resutsets |
86a51471 |
378 | - Support for savepoints for SQLite |
726c8f65 |
379 | - Support for MS Access databases via DBD::ODBC and DBD::ADO (only |
380 | Win32 support currently tested) |
f7e5fd18 |
381 | - Support for the Firebird RDBMS over the new DBD::Firebird driver |
56dca25f |
382 | - IC::DateTime support for MSSQL over DBD::ADO |
ab17c175 |
383 | - Both the ::ODBC and ::ADO dispatchers now warn if a rdbms-specific |
384 | driver is not found for this connection before falling back to |
385 | plain ::Storage::DBI |
402ac1c9 |
386 | - ::Storage::DBI::sth was mistakenly marked/documented as public, |
387 | privatize and warn on deprecated use |
0e773352 |
388 | - Massive overhaul of bind values/attributes handling - slightly |
389 | changes the output of as_query (should not cause compat issues) |
96eacdb7 |
390 | - Support ancient DB2 versions (5.4 and older), with proper limit |
391 | dialect |
a870aa85 |
392 | - Support sub-second precision for TIMESTAMPs for Firebird over ODBC |
00a28188 |
393 | - Support BLOBs and CLOBs in WHERE clauses for Oracle, including LIKE |
394 | queries for CLOBs. |
2b8cc2f2 |
395 | |
f98120e4 |
396 | * Fixes |
87bf71d5 |
397 | - Fix ::Storage::DBI::* MRO problems on 5.8.x perls |
f98120e4 |
398 | - Disable mysql_auto_reconnect for MySQL - depending on the ENV |
399 | it sometimes defaults to on and causes major borkage on older |
400 | DBD::mysql versions |
55d02972 |
401 | - Fix dropped bind values in select/group_by on Oracle (omission |
402 | from 0542ec57 and 4c2b30d6) |
19c4cc62 |
403 | - Fix remaining errors with Oracle and identifiers longer than the |
404 | Oracle-imposed maximum of 30 characters (RT#66390) |
f116ff4e |
405 | - Fix older oracle-specific "WhereJoins" to work properly with |
406 | name quoting |
66917da3 |
407 | - Fix problems with M.A.D. under CGI::SpeedyCGI (RT#65131) |
74719352 |
408 | - Reenable paging of cached resultsets - breakage erroneously added |
409 | in 0.08127 |
e1a97e24 |
410 | - Better error handling when prepare() fails silently |
91d0c99f |
411 | - Fixes skipped lines when a comment is followed by a statement |
412 | when deploying a schema via sql file |
1e0daa97 |
413 | - Fix reverse_relationship_info on prototypical result sources |
414 | (sources not yet registered with a schema) |
51c9ead2 |
415 | - Warn and skip relationships missing from a partial schema during |
416 | dbic cascade_delete |
db29433c |
417 | - Automatically require the requested cursor class before use |
418 | (RT#64795) |
e02b39b4 |
419 | - Work around a Firebird ODBC driver bug exposed by DBD::ODBC 1.29 |
c1e5a9ac |
420 | - Fix (to the extent allowed by the driver) transaction support in |
421 | DBD::Sybase compiled against FreeTDS |
51c9ead2 |
422 | - Fix exiting via next warnings in ResultSource::sequence() |
61f031bf |
423 | - Fix stripping of table qualifiers in update/delete in arrayref |
424 | condition elements |
2ea6032a |
425 | - Change SQLMaker carp-monkeypatch to be compatible with versions |
426 | of SQL::Abstract >= 1.73 |
1bffc6b8 |
427 | - Fix using \[] literals in the from resultset attribute |
f6faeab8 |
428 | - Fix populate() with \[], arrays (datatype) and other exotic values |
90d7422f |
429 | - Fix handling of rollbacks in nested transactions |
69d3c270 |
430 | - Fix complex limits (RNO/RowNum/FetchFirst/Top/GenSubq) with |
431 | sub-selects in the selectors list (correlated subqueries) |
fd4b0742 |
432 | - Fix inconsistency between $rs->next with and without HRI when all |
433 | the "root" columns are in fact injected from the right rs side |
a4812caa |
434 | - Fix the join optimizer to correctly preserve the non-multi path to |
435 | a multi relationship ( x -> might_have y -> has_many z ) |
93508f48 |
436 | - Fix object-derived custom-relationship resultsets to resultsources |
437 | with multilevel monikers (e.g. $schema->source('Foo::Bar') ) |
fed15b91 |
438 | - Fix incorrect signature of the default sqlt_deploy_hook - it now |
439 | matches the documentation of passing in the result source object |
5b4f3fd0 |
440 | - Fix inadequate handling of internal storage methods within |
441 | ::Storage::Replicated (RT#66295) |
f98120e4 |
442 | |
87bf71d5 |
443 | * Misc |
70c28808 |
444 | - Rewire all warnings to a new Carp-like implementation internal |
445 | to DBIx::Class, and remove the Carp::Clan dependency |
87bf71d5 |
446 | - Only load Class::C3 and friends if necessary ($] < 5.010) |
3b80fa31 |
447 | - Greatly reduced loading of non-essential modules to aid startup |
448 | time (mainly benefiting CGI users) |
9c1700e3 |
449 | - Make sure all namespaces are clean of rogue imports |
997a3638 |
450 | - Dropped DBI req 2 years back - everything works with 1.57, no |
451 | point requiring something newer |
87bf71d5 |
452 | |
86b9a583 |
453 | 0.08190-TRIAL 2011-01-24 15:35 (UTC) |
454 | |
455 | * New Features / Changes |
456 | - Support for completely arbitrary SQL::Abstract-based conditions |
457 | in all types of relationships |
458 | |
f4591846 |
459 | 0.08127 2011-01-19 16:40 (UTC) |
6c925c72 |
460 | * New Features / Changes |
628c2218 |
461 | - Schema/resultsource instances are now crossreferenced via a new |
462 | system guaranteeing leak-free mutually assured destruction |
6c925c72 |
463 | - DBIx::Class now warns when the user erroneously supplies |
464 | AutoCommit => 0 to connect() |
465 | - A warning is also issued before forcing the RaiseError |
466 | setting of externally supplied DBI handles |
65c1217d |
467 | - Switch to a warning when find() is invoked with both a 'key' |
468 | argument and a NULL-containing condition to satisfy the named |
469 | constraint. Previously (starting with 0.08124) an exception was |
f107730c |
470 | thrown |
471 | - Switch to a warning when a commit is attempted with an out-of-sync |
472 | transaction_depth (someone issued a begin externally to DBIC). |
473 | Previously (starting with 0.08124) an exception was thrown |
50261284 |
474 | |
0542ec57 |
475 | * Fixes |
384b8bce |
476 | - A number of improvements/diagnostics of multiple active resultset |
477 | handling on MSSQL over DBD::ODBC |
eb37b376 |
478 | - Revert default selection to being lazy again (eagerness introduced |
dc81dba3 |
479 | in 0.08125) - fixes DBIx::Class::Helper::ResultSet::RemoveColumns |
480 | - Fix losing order of columns provided in select/as (regression from |
481 | 0.08125) |
36fd7f07 |
482 | - Unaliased "dark" selectors no longer throw off prefetch |
0542ec57 |
483 | - Fix proper composition of bind values across all possible |
484 | SQL areas ( group_by => \[ ... ] now works properly ) |
d6170b26 |
485 | - Allow populate to skip empty has_many relationships which makes |
486 | it easier to pass HashRefInflator data directly to ->populate |
4376a157 |
487 | - Improve freeze/thaw semantics and error messages (RT#62546) |
a9e8284f |
488 | - Fix inconsistency in Manual::Features (RT#64500) |
4e0a89e4 |
489 | - Fix incorrect SQL when using for => 'shared' with MySQL (RT#64590) |
628c2218 |
490 | - Throw comprehensible exception on erroneous $schema->source() |
491 | invocation |
492 | - Fix sloppy refactor of ResultSource::sequence back from 89170201 |
493 | (RT#64839) |
494 | - Fix incorrect error detection during populate() on Oracle |
495 | - Better handling of result_source-less row objects by |
496 | auto-calling result_source_instance when necessary |
497 | - Fix reverse_relationship_info and sqlt deploy on partially |
498 | loaded schemas (relationships point to non-existent sources) |
0542ec57 |
499 | |
1239d14e |
500 | * Misc |
501 | - Fix test warning on win32 - at this point the test suite is |
502 | warning-free on all known OSes |
4549ba49 |
503 | - Require newest namespace::clean which in turn depends on new |
504 | installable Package::Stash |
1239d14e |
505 | |
40b2218d |
506 | 0.08126 2010-12-28 18:10 (UTC) |
b8d22f13 |
507 | * Fixes |
508 | - Bump forgotten Class::Accessor::Grouped core dependency |
509 | - Promote forgotten Hash::Merge optdep to a hard requirement |
cc1924ac |
510 | - Skip t/storage/error.t on smokers with leaking perls |
02050e77 |
511 | - Fix t/storage/txn.t deadlocks on slower machines |
4557be61 |
512 | - Do not run on smokers if a trial Package::Stash is found |
b8d22f13 |
513 | |
e139bd60 |
514 | 0.08125 2010-12-27 04:30 (UTC) |
6cad253b |
515 | * New Features / Changes |
52416317 |
516 | - New method ResultSource columns_info method, returning multiple |
517 | pairs of column name/info at once |
0e7a447e |
518 | - $rs->search now throws when called in void context, as it makes |
519 | no sense (and is nearly always a sign of a bug/misdesign) |
00336453 |
520 | - Restore long-lost ability to supply unbalanced select/as pairs |
521 | e.g. +select => \'DISTINCT(foo, bar)', +as => ['foo', 'bar'] |
522 | - +columns now behaves just like columns by not stripping a |
523 | fully-qualified 'as' spec (i.e. foo.bar results in $obj->foo->bar) |
43da768f |
524 | - Deprecate legacy $rs->search( %condition ) syntax (warn once per |
525 | callsite) |
6cad253b |
526 | - NULL is now supplied unquoted to all debug-objects, in order to |
527 | differentiate between a real NULL and the string 'NULL' |
41519379 |
528 | - New search() condition operator -value used to pass complex bind |
529 | values to DBI: search({ array_col => { -value => [1,2,3] }}) |
bf51641f |
530 | - Add full INSERT...RETURNING support for Oracle |
b1d821de |
531 | - Deprecate use of -nest in search conditions (warn once per |
532 | callsite) |
1b6fe47d |
533 | - Deprecate the completely useless DBIx::Class::Serialize::Storable |
534 | result component |
6cad253b |
535 | |
64ae1667 |
536 | * Fixes |
537 | - Fixed read-only attribute set attempt in ::Storage::Replicated |
538 | (RT#62642) |
6f5f880d |
539 | - Fix incomplete logic while detecting correct Oracle sequence |
540 | on insert |
a6646e1b |
541 | - Fix detection of Oracle sequences for tables without an explicitly |
542 | specified schema (RT#63493) |
07cda1c5 |
543 | - Major overhaul of Storage::Oracle to handle enabled quoting |
37aafa2e |
544 | - Fixed incorrect composition of select/as/columns attributes during |
545 | chaining (RT#61235) |
052b8ce2 |
546 | - Proper serialization of resultsets with open cursors |
a85b7ebe |
547 | - Refactor handling of RDBMS-side values during insert() - fix |
548 | regression of inserts into a Postgres / ::Replicated combination |
cb566613 |
549 | - Missing dependency check in t/60core.t (RT#62635) |
49bceca3 |
550 | - Fix regressions in IC::DT registration logic |
4c2b30d6 |
551 | - Fix regression in select-associated bind value handling (RT#61025) |
887a0aef |
552 | - Simplify SQL generated by some LIMITed prefetching queries |
14e26c5f |
553 | - Throw an exception when a required group_by on a complex prefetch |
554 | can not be auto-constructed, instead of continuing to eventually |
555 | produce invalid SQL |
052b8ce2 |
556 | - Fix infinite loops on old perls with a recent Try::Tiny |
ec6415a9 |
557 | - Improve "fork()" on Win32 by reimplementing a more robust DBIC |
558 | thread support (still problematic, pending a DBI fix) |
20595c02 |
559 | - Properly quote table name on INSERT with no values |
8e9b9ce5 |
560 | - Work around possible Storage destruction warnings |
e493ecb2 |
561 | - Fix count of grouped resultsets using HAVING with aliases |
35f5c265 |
562 | - Setting belongs_to columns/relationships no longer leaves the |
563 | FK value and related object out of sync |
d7632687 |
564 | - Stop stripping newlines from SQL statements in the limit emulators |
565 | as it is possible that custom sql with comments was provided |
f3386204 |
566 | - Add forgotten attributes to Admin.pm |
47a435d2 |
567 | - Fix incorrect 'having' attribute documentation (RT#64129) |
8592e2d1 |
568 | - Improve fallback-to-master/return-to-slave reporting in |
569 | ::Replicated::Balancer |
e69b5335 |
570 | - Adjust txn_scope_guard code/tests to changes in $@ handling on |
571 | recent blead (RT#64251) |
052b8ce2 |
572 | |
573 | * Misc |
be68095d |
574 | - Add extra option groups to DBIC::Optional::Depencencies, to aid |
575 | users in requesting the prerequisites for a particular RDBMS |
26148d36 |
576 | - Switch all serialization to use Storable::nfreeze for portable |
577 | architecture independent ice |
2f5a6e87 |
578 | - Fix the bogus META.yml dependency injection issue for good |
c6fa3170 |
579 | - Refactor DBIx::Class::Storage::Statistics::debugfh() to be lazy |
64ae1667 |
580 | |
ca734bc9 |
581 | 0.08124 2010-10-28 14:23 (UTC) |
eec182b6 |
582 | * New Features / Changes |
e6600283 |
583 | - Add new -ident "function" indicating rhs is a column name |
584 | { col => { -ident => 'othercol' } } vs { col => \'othercol' } |
97c96475 |
585 | - Extend 'proxy' relationship attribute |
d9672fb9 |
586 | - Use DBIx::Class::Storage::Debug::PrettyPrint when the |
587 | environment variable DBIC_TRACE_PROFILE is set, see |
588 | DBIx::Class::Storage for more information |
d9da98ab |
589 | - Implemented add_unique_constraints() which delegates to |
590 | add_unique_constraint() as appropriate |
591 | - add_unique_constraint() now poparly throws if called with |
592 | multiple constraint definitions |
593 | - No longer depend on SQL::Abstract::Limit - DBIC has been doing |
594 | most of the heavy lifting for a while anyway |
eec182b6 |
595 | - FilterColumn now passes data through when transformations |
596 | are not specified rather than throwing an exception. |
d9672fb9 |
597 | - Optimized RowNum based Oracle limit-dialect (RT#61277) |
65245220 |
598 | - Requesting a pager on a resultset with cached entries now |
599 | throws an exception, instead of returning a 1-page object |
600 | since the amount of rows is always equal to the "pagesize" |
601 | - $rs->pager now uses a lazy count to determine the amount of |
602 | total entries only when really needed, instead of doing it |
603 | at instantiation time |
9ba33dac |
604 | - New documentation map organized by features |
605 | (DBIx::Class::Manual::Features) |
b7743dab |
606 | - find( { ... }, { key => $constraint } ) now throws an exception |
607 | when the supplied data does not fully specify $constraint |
49ca473e |
608 | - find( col1 => $val1, col2 => $val2, ... ) is no longer supported |
609 | (it has been in deprecated state for more than 4 years) |
f5ef5fa1 |
610 | - Make sure exception_action does not allow exception-hiding |
611 | due to badly-written handlers (the mechanism was never meant |
612 | to be able to suppress exceptions) |
d9da98ab |
613 | |
f8583f8f |
614 | * Fixes |
574d9b69 |
615 | - Fix memory leak during populate() on 5.8.x perls |
1f870d5a |
616 | - Temporarily fixed 5.13.x failures (RT#58225) |
617 | (perl-core fix still pending) |
a8c2c746 |
618 | - Fix result_soutrce_instance leaks on compose_namespace |
f5ef5fa1 |
619 | - Fix $_ volatility on load_namespaces (a class changing $_ |
620 | at compile time no longer causes a massive fail) |
b7743dab |
621 | - Fix find() without a key attr. choosing constraints even if |
622 | some of the supplied values are NULL (RT#59219) |
f8583f8f |
623 | - Fixed rels ending with me breaking subqueried limit realiasing |
59ac6523 |
624 | - Fixed $rs->update/delete on resutsets constrained by an |
625 | -or condition |
53c29913 |
626 | - Remove rogue GROUP BY on non-multiplying prefetch-induced |
627 | subqueries |
0a3441ee |
628 | - Fix incorrect order_by handling with prefetch on |
629 | $ordered_rs->search_related ('has_many_rel') resultsets |
72044892 |
630 | - Oracle sequence detection now *really* works across schemas |
631 | (fixed some ommissions from 0.08123) |
f54428ab |
632 | - dbicadmin now uses a /usr/bin/env shebang to work better with |
633 | perlbrew and other local perl builds |
6c3e6bf6 |
634 | - bulk-inserts via $dbh->bind_array (void $rs->populate) now |
635 | display properly in DBIC_TRACE |
7f505c17 |
636 | - Incomplete exception thrown on relationship auto-fk-inference |
637 | failures |
d955e938 |
638 | - Fixed distinct with order_by to not double-specify the same |
639 | column in the GROUP BY clause |
7653fdac |
640 | - Properly support column names with symbols (e.g. single quote) |
641 | via custom accessors |
c271eec3 |
642 | - Fixed ::Schema::Versioned to work properly with quoting on |
643 | (RT#59619) |
9f72d93a |
644 | - Fixed t/54taint fails under local-lib |
e5372da4 |
645 | - Fixed SELECT ... FOR UPDATE with LIMIT regression (RT#58554) |
b818efd7 |
646 | - Fixed CDBICompat to preserve order of column-group additions, |
647 | so that test relying on the order of %{} will no longer fail |
4cb6dfa2 |
648 | - Fixed mysterious ::Storage::DBI goto-shim failures on older |
649 | perl versions |
c6d30d5e |
650 | - Non-blessed reference exceptions are now correctly preserved |
651 | when thrown from udner DBIC (e.g. from txn_do) |
a458e9e3 |
652 | - No longer disconnecting database handles supplied to connect |
653 | via a coderef |
ab35aeab |
654 | - Fixed t/inflate/datetime_pg.t failures due to a low dependency |
655 | on DateTime::Format::Pg (RT#61503) |
d52d4d6e |
656 | - Fix dirtyness detection on source-less objects |
f3e9f010 |
657 | - Fix incorrect limit_dialect assignment on Replicated pool members |
d2fcb9b3 |
658 | - Fix invalid sql on relationship attr order_by with prefetch |
ab4f4e4c |
659 | - Fix primary key sequence detection for Oracle |
660 | (first trigger instead of trigger for column) |
ca734bc9 |
661 | - Add various missing things to Optional::Dependencies |
662 | - Skip a test that breaks due to serious bugs in current DBD::SQLite |
663 | - Fix tests related to leaks and leaky perls (5.13.5, 5.13.6) |
f8583f8f |
664 | |
347275d1 |
665 | * Misc |
0007aedf |
666 | - Entire test suite now passes under DBIC_TRACE=1 |
6c3e6bf6 |
667 | - Makefile.PL no longer imports GetOptions() to interoperate |
668 | better with Catalyst installers |
47a4aa51 |
669 | - Bumped minimum Module::Install for developers |
b9df8e39 |
670 | - Bumped DBD::SQLite dependency and removed some TODO markers |
d9da98ab |
671 | from tests (RT#59565) |
d096e13f |
672 | - Do not execute t/zzzzzzz_sqlite_deadlock.t for regular module |
673 | installs - test is prone to spontaneous blow up |
68de9438 |
674 | - DT-related tests now require a DateTime >= 0.55 (RT#60324) |
ccebe1f1 |
675 | - Makefile.PL now provides a pre-parsed DBIC version to the |
676 | Opt::Dep pod generator |
a8c2c746 |
677 | - t/52leaks.t now performs very aggressive leak detection in |
678 | author/smoker mode |
347275d1 |
679 | |
9aa2ba09 |
680 | 0.08123 2010-06-12 14:46 (UTC) |
449c7034 |
681 | * Fixes |
682 | - Make sure Oracle identifier shortener applies to auto-generated |
f1577a8d |
683 | column names, so we stay within the 30-char limit (RT#58271) |
df6e3f5c |
684 | - Oracle sequence detection now works across schemas |
9aa2ba09 |
685 | - Fix a Storage/$dbh leak introduced by the migration to |
ddfd085d |
686 | Try::Tiny (this is *not* a Try::Tiny bug) |
9f775126 |
687 | - Fix corner case of count with group-by over a 1:1 join column |
688 | where the selector ends up with column name clashes |
aa9bcbfb |
689 | - POD fixes (RT#58247) |
ddfd085d |
690 | |
a258bfc7 |
691 | * Misc |
692 | - Test suite default on-disk database now checks for Win32 |
693 | fail-conditions even when running on other OSes |
449c7034 |
694 | |
9aa2ba09 |
695 | 0.08122 2010-06-03 17:41 (UTC) |
a31e24c0 |
696 | * New Features |
697 | - Add DBIx::Class::FilterColumn for non-ref filtering |
aa0163d4 |
698 | - ::Storage::DBI now correctly preserves a parent $dbh from |
860e7b5a |
699 | terminating children, even during interpreter-global |
aa0163d4 |
700 | out-of-order destruction |
6ada2587 |
701 | - dbicadmin supports an -I option with the same semantics as |
702 | perl itself |
fb95dc4d |
703 | - InflateColumn::DateTime support for MSSQL via DBD::Sybase |
a07bb26c |
704 | - Millisecond precision support for MSSQL datetimes for |
fb95dc4d |
705 | InflateColumn::DateTime |
49afd714 |
706 | - Oracle-specific hierarchical query syntax support: |
868a7b26 |
707 | CONNECT BY (NOCYCLE) / START WITH / ORDER SIBLINGS BY |
a07bb26c |
708 | - Support connecting using $ENV{DBI_DSN} and $ENV{DBI_DRIVER} |
453781a1 |
709 | - current_source_alias method on ResultSet objects to |
710 | determine the alias to use in programatically assembled |
711 | search()es (originally added in 0.08100 but unmentioned) |
860e7b5a |
712 | - Rewrite/unification of all subselecting limit emulations |
713 | (RNO, Top, RowNum) to be much more robust wrt complex joined |
714 | resultsets |
715 | - MSSQL limits now don't require nearly as many applications of |
716 | the unsafe_subselect_ok attribute, due to optimized queries |
75f025cf |
717 | - Support for Generic Subquery limit "emulation" - awfully slow |
718 | and inefficient but works on almost any db, and is preferred |
5106b8a9 |
719 | to software limit emulation |
720 | - Sybase ASE driver now uses SET ROWCOUNT where possible, and |
721 | Generic Subquery otherwise for limit support instead of always |
722 | using software limit emulation |
076be7c4 |
723 | - create_ddl_dir (and derivatives) now attempt to create the given |
724 | $ddl_dir if it does not already exist |
96736321 |
725 | - deployment_statements now automatically supplies the current RDBMS |
726 | version to SQLT producer_args for MySQL, Pg, SQLite and Oracle |
a31e24c0 |
727 | |
728 | * Fixes |
fef47a8e |
729 | - Fix nasty potentially data-eating bug when deleting/updating |
730 | a limited resultset |
a31e24c0 |
731 | - Fix find() to use result_class set on object |
732 | - Fix result_class setter behaviour to not mistakenly stuff attrs. |
733 | - Don't try and ensure_class_loaded an object. This doesn't work. |
734 | - Fix as_subselect_rs to not inject resultset class-wide where |
735 | conditions outside of the resulting subquery |
acc01554 |
736 | - Fix count() failing with {for} resultset attribute (RT#56257) |
737 | - Fixed incorrect detection of Limit dialect on unconnected $schema |
fef47a8e |
738 | - update() on row not in_storage no longer throws an exception |
739 | if there are no dirty columns to update (fixes cascaded update |
740 | annoyances) |
887d8da0 |
741 | - update()/delete() on prefetching resultsets no longer results |
742 | in malformed SQL (some $rs attributes were erroneously left in) |
6ada2587 |
743 | - Fix dbicadmin to allow deploy() on non-versioned schema |
744 | - Fix dbicadmin to respect sql_dir on upgrade() (RT#57732) |
65ee2b31 |
745 | - Update Schema::Versioned to respect hashref style of |
746 | connection_info |
747 | - Do not recreate the same related object twice during MultiCreate |
748 | (solves the problem of orphaned IC::FS files) |
4282b6f8 |
749 | - Fully qualify xp_msver selector when using DBD::Sybase with |
750 | MSSQL (RT#57467) |
f76f761c |
751 | - Fix ::DBI::Storage to always be able to present a full set of |
752 | connect() attributes to e.g. Schema::Versioned |
acc01554 |
753 | - Fix Oracle auto-inc trigger detection of "INSERT OR UPDATE"-type |
754 | triggers |
453781a1 |
755 | |
a31e24c0 |
756 | * Misc |
0424d17a |
757 | - Reformatted Changelog \o/ |
e21297d3 |
758 | - DBIC goes git://git.shadowcat.co.uk/dbsrgits/DBIx-Class.git |
0424d17a |
759 | - Allow developers to skip optional dependency forcing when working |
760 | from a checkout |
761 | - Add a warning to load_namespaces if a class in ResultSet/ is not |
762 | a subclass of DBIx::Class::ResultSet |
a31e24c0 |
763 | - All DBIC exception-handling switched to Try::Tiny |
acc01554 |
764 | - All DBIC modules are now free of imports via namespace::clean |
a31e24c0 |
765 | - Depend on optimized SQL::Abstract (faster SQL generation) |
acc01554 |
766 | - Depend on new Class::Accessor::Grouped reintroducing optional use |
767 | of Class::XSAccessor (just install C::XSA and get lightning fast |
768 | column accessors) |
a31e24c0 |
769 | |
c77ab576 |
770 | 0.08121 2010-04-11 18:43:00 (UTC) |
28d28903 |
771 | - Support for Firebird RDBMS with DBD::InterBase and ODBC |
734868da |
772 | - Add core support for INSERT RETURNING (for storages that |
773 | supports this syntax, currently PostgreSQL and Firebird) |
3c2a505c |
774 | - Fix spurious warnings on multiple UTF8Columns component loads |
775 | - DBIx::Class::UTF8Columns entered deprecated state |
c2ecf953 |
776 | - DBIx::Class::InflateColumn::File entered deprecated state |
e3fc11e1 |
777 | - DBIx::Class::Optional::Dependencies left experimental state |
778 | - Add req_group_list to Opt::Deps (RT#55211) |
b8391c87 |
779 | - Add support for mysql-specific STRAIGHT_JOIN (RT#55579) |
fb61e30c |
780 | - Cascading delete/update are now wrapped in a transaction |
781 | for atomicity |
c4e5e95d |
782 | - Fix accidental autovivification of ENV vars |
783 | - Fix update_all and delete_all to be wrapped in a transaction |
68888c09 |
784 | - Fix multiple deficiencies when using MultiCreate with |
785 | data-encoder components (e.g. ::EncodedColumn) |
b703fec7 |
786 | - Fix regression where SQL files with comments were not |
787 | handled properly by ::Schema::Versioned. |
263d5dcc |
788 | - Fix regression on not properly throwing when $obj->relationship |
789 | is unresolvable |
1a736efb |
790 | - Fix the join-optimiser to consider unqualified column names |
791 | whenever possible |
faeb2407 |
792 | - Fix an issue with multiple same-table joins confusing the join |
793 | optimizier |
0818c9a7 |
794 | - Add has_relationship method to row objects |
cf856357 |
795 | - Fix regression in set_column on PK-less objects |
455a33cb |
796 | - Better error text on malformed/missing relationships |
c2ecf953 |
797 | - Add POD about the significance of PK columns |
798 | - Fix for SQLite to ignore the (unsupported) { for => ... } |
799 | attribute |
800 | - Fix ambiguity in default directory handling of create_ddl_dir |
801 | (RT#54063) |
157ce0cf |
802 | - Support add_columns('+colname' => { ... }) to augment column |
803 | definitions. |
263d5dcc |
804 | |
033955f9 |
805 | 0.08120 2010-02-24 08:58:00 (UTC) |
2b3c0853 |
806 | - Make sure possibly overwritten deployment_statements methods in |
4fff7913 |
807 | schemas get called on $schema->deploy |
808 | - Fix count() with group_by aliased-function resultsets |
dea1b49e |
809 | - with_deferred_fk_checks() Oracle support |
7ccf4805 |
810 | - Massive refactor and cleanup of primary key handling |
efc8ae6e |
811 | - Fixed regression losing custom result_class (really this time) |
02730621 |
812 | (RT#54697) |
813 | - Fixed regression in DBIC SQLT::Parser failing with a classname |
814 | (as opposed to a schema object) |
270edb2b |
815 | - Changes to Storage::DBI::Oracle to accomodate changes in latest |
816 | SQL::Translator (quote handling) |
dea1b49e |
817 | - Make sure deployment_statements is per-storage overridable |
033955f9 |
818 | - Fix dbicadmin's (lack of) POD |
2b3c0853 |
819 | |
f181e8fe |
820 | 0.08119 2010-02-15 09:36:00 (UTC) |
d1f542db |
821 | - Add $rs->is_ordered to test for existing order_by on a resultset |
af7fbf9f |
822 | - Add as_subselect_rs to DBIC::ResultSet from |
823 | DBIC::Helper::ResultSet::VirtualView::as_virtual_view |
4752726d |
824 | - Refactor dbicadmin adding DDL manipulation capabilities |
aa8b2277 |
825 | - New optional dependency manager to aid extension writers |
84d9d68d |
826 | - Depend on newest bugfixed Moose |
642299a7 |
827 | - Make resultset chaining consistent wrt selection specification |
84d9d68d |
828 | - Storage::DBI::Replicated cleanup |
829 | - Fix autoinc PKs without an autoinc flag on Sybase ASA |
af7fbf9f |
830 | |
a12793fd |
831 | 0.08118 2010-02-08 11:53:00 (UTC) |
13d06949 |
832 | - Fix a bug causing UTF8 columns not to be decoded (RT#54395) |
833 | - Fix bug in One->Many->One prefetch-collapse handling (RT#54039) |
b82c8a28 |
834 | - Cleanup handling of relationship accessor types |
9738897e |
835 | |
6d5dca4e |
836 | 0.08117 2010-02-05 17:10:00 (UTC) |
55087b99 |
837 | - Perl 5.8.1 is now the minimum supported version |
d64a2734 |
838 | - Massive optimization of the join resolution code - now joins |
839 | will be removed from the resulting SQL if DBIC can prove they |
840 | are not referenced by anything |
6dfbe2f8 |
841 | - Subqueries no longer marked experimental |
3197bdf8 |
842 | - Support for Informix RDBMS (limit/offset and auto-inc columns) |
60511375 |
843 | - Support for Sybase SQLAnywhere, both native and via ODBC |
dc571b76 |
844 | - might_have/has_one now warn if applied calling class's column |
845 | has is_nullable set to true. |
a7f4b74c |
846 | - Fixed regression in deploy() with a {sources} table limit applied |
847 | (RT#52812) |
3ad8d9f1 |
848 | - Views without a view_definition will throw an exception when |
849 | parsed by SQL::Translator::Parser::DBIx::Class |
7ac1f782 |
850 | - Stop the SQLT parser from auto-adding indexes identical to the |
851 | Primary Key |
60511375 |
852 | - InflateColumn::DateTime refactoring to allow fine grained method |
853 | overloads |
66e33361 |
854 | - Fix ResultSetColumn improperly selecting more than the requested |
855 | column when +columns/+select is present |
037e8dca |
856 | - Fix failure when update/delete of resultsets with complex WHERE |
857 | SQLA structures |
30ae562b |
858 | - Fix regression in context sensitiveness of deployment_statements |
400c6f34 |
859 | - Fix regression resulting in overcomplicated query on |
860 | search_related from prefetching resultsets |
8baabfd8 |
861 | - Fix regression on all-null returning searches (properly switch |
862 | LEFT JOIN to JOIN in order to distinguish between both cases) |
0ce4ab92 |
863 | - Fix regression in groupedresultset count() used on strict-mode |
864 | MySQL connections |
010f82a0 |
865 | - Better isolation of RNO-limited queries from the rest of a |
866 | prefetching resultset |
867 | - New MSSQL specific resultset attribute to allow hacky ordered |
416e0bc0 |
868 | subquery support |
2ad89bf5 |
869 | - Fix nasty schema/dbhandle leak due to SQL::Translator |
78aef8c4 |
870 | - Initial implementation of a mechanism for Schema::Version to |
871 | apply multiple step upgrades |
3eee36aa |
872 | - Fix regression on externally supplied $dbh with AutoCommit=0 |
873 | - FAQ "Custom methods in Result classes" |
874 | - Cookbook POD fix for add_drop_table instead of add_drop_tables |
875 | - Schema POD improvement for dclone |
400c6f34 |
876 | |
3b5769af |
877 | 0.08115 2009-12-10 09:02:00 (CST) |
9010bab8 |
878 | - Real limit/offset support for MSSQL server (via Row_Number) |
886d0b49 |
879 | - Fix distinct => 1 with non-selecting order_by (the columns |
880 | in order_by also need to be aded to the resulting group_by) |
e3d5a547 |
881 | - Do not attempt to deploy FK constraints pointing to a View |
285dd1d6 |
882 | - Fix count/objects from search_related on limited resultset |
d992eae8 |
883 | - Stop propagating distinct => 1 over search_related chains |
36b59369 |
884 | - Make sure populate() inherits the resultset conditions just |
885 | like create() does |
547b4396 |
886 | - Make get_inflated_columns behave identically to get_columns |
887 | wrt +select/+as (RT#46953) |
4d46dbcf |
888 | - Fix problems with scalarrefs under InflateColumn (RT#51559) |
285dd1d6 |
889 | - Throw exception on delete/update of PK-less resultsets |
890 | - Refactored Sybase storage driver into a central ::DBI::Sybase |
891 | dispatcher, and a sybase-specific ::DBI::Sybase::ASE |
892 | - Fixed an atrocious DBD::ADO bind-value bug |
893 | - Cookbook/Intro POD improvements |
e3d5a547 |
894 | |
57cf1a59 |
895 | 0.08114 2009-11-14 17:45:00 (UTC) |
a1e695ad |
896 | - Preliminary support for MSSQL via DBD::ADO |
57cf1a59 |
897 | - Fix botched 0.08113 release (invalid tarball) |
a1e695ad |
898 | |
4e8ffded |
899 | 0.08113 2009-11-13 23:13:00 (UTC) |
18d80024 |
900 | - Fix populate with has_many bug |
901 | (RT #50828) |
e6dd7b42 |
902 | - Fix Oracle autoincrement broken for Resultsets with scalar refs |
903 | (RT #50874) |
d867eeda |
904 | - Complete Sybase RDBMS support including: |
905 | - Support for TEXT/IMAGE columns |
906 | - Support for the 'money' datatype |
6a9765c1 |
907 | - Transaction savepoints support |
908 | - DateTime inflation support |
909 | - Support for bind variables when connecting to a newer Sybase with |
910 | OpenClient libraries |
911 | - Support for connections via FreeTDS with CASTs for bind variables |
912 | when needed |
913 | - Support for interpolated variables with proper quoting when |
914 | connecting to an older Sybase and/or via FreeTDS |
915 | - bulk API support for populate() |
3ed85561 |
916 | - Transaction support for MSSQL via DBD::Sybase |
7ae6270b |
917 | - Add is_paged method to DBIx::Class::ResultSet so that we can |
dbf5b601 |
918 | check that if we want a pager |
919 | - Skip versioning test on really old perls lacking Time::HiRes |
920 | (RT #50209) |
921 | - Fixed on_connect_do/call regression when used with a coderef |
922 | connector (RT #50003) |
69cd8a7f |
923 | - A couple of fixes to Ordered to remedy subclassing issues |
57eb47b0 |
924 | - Fixed another lingering problem with PostgreSQL |
925 | auto-increment support and its interaction with multiple |
926 | schemas |
3ed85561 |
927 | - Remove some IN workarounds, and require a recent version of |
928 | SQLA instead |
929 | - Improvements to populate's handling of mixed scalarref values |
0fcfe456 |
930 | - Fixed regression losing result_class after $rs->find (introduced |
931 | in 0.08108) |
63bb9738 |
932 | - Fix in_storage() to return 1|0 as per existing documentation |
c9c9297b |
933 | - Centralize handling of _determine_driver calls prior to certain |
934 | ::Storage::DBI methods |
af668ad6 |
935 | - Fix update/delete arbitrary condition handling (RT#51409) |
3ed85561 |
936 | - POD improvements |
763026c1 |
937 | |
51845f96 |
938 | 0.08112 2009-09-21 10:57:00 (UTC) |
be97d16b |
939 | - Remove the recommends from Makefile.PL, DBIx::Class is not |
93c50889 |
940 | supposed to have optional dependencies. ever. |
be97d16b |
941 | - Mangle the DBIx/Class.pm POD to be more clear about |
93c50889 |
942 | copyright and license |
be97d16b |
943 | - Put back PG's multiple autoinc per table support, accidentally |
51845f96 |
944 | dropped during the serial-autodetection rewrite |
be97d16b |
945 | - Make sure ResultSetColumn does not depend on the (undefined) |
946 | return value of ->cursor->reset() |
4e55c3ae |
947 | - Add single() to ResultSetColumn (same semantics as ResultSet) |
be97d16b |
948 | - Make sure to turn off IDENTITY_INSERT after insert() on MSSQL |
949 | tables that needed it |
950 | - More informative exception on failing _resolve_relationship |
8c60e1a7 |
951 | - Allow undef/NULL as the sole grouping value in Ordered |
4e55c3ae |
952 | - Fix unreported rollback exceptions in TxnScopeGuard |
8a3fa4ae |
953 | - Fix overly-eager left-join chain enforcing code |
3c44586e |
954 | - Warn about using distinct with an existing group_by |
955 | - Warn about attempting to $rs->get_column a non-unique column |
956 | when has_many joins are added to resultset |
51845f96 |
957 | - Refactor of the exception handling system (now everything is a |
1bedffac |
958 | DBIx::Class::Exception object) |
01dc6781 |
959 | |
59f27fc3 |
960 | 0.08111 2009-09-06 21:58:00 (UTC) |
7755a91d |
961 | - The hashref to connection_info now accepts a 'dbh_maker' |
962 | coderef, allowing better intergration with Catalyst |
d8ce00f5 |
963 | - Fixed a complex prefetch + regular join regression introduced |
964 | in 0.08108 |
48617009 |
965 | - Fixed insert_bulk rebless handling |
7cfda9a6 |
966 | - Fixed Storable roundtrip regression, and general serialization |
967 | cleanup |
ce35224f |
968 | - SQLT related fixes: |
969 | - sqlt_type is now called on the correct storage object |
006fb68c |
970 | - hooks can now see the correct producer_type (RT#47891) |
7cfda9a6 |
971 | - optional SQLT requirements for e.g. deploy() bumped to 0.11002 |
decb86c0 |
972 | - Really fixed (and greatly cleaned up) postgresql autoinc sequence |
973 | autodetection |
7cfda9a6 |
974 | - Automatically detect MySQL v3 and use INNER JOIN instead of JOIN |
006fb68c |
975 | - POD improvements (including RT#48769) |
976 | - Test suite tweaks (including fixes for recent CPANTS fails) |
59f27fc3 |
977 | - Better support for MSSQL IDENTITY_INSERT ON |
d8ce00f5 |
978 | |
dc5460a7 |
979 | 0.08109 2009-08-18 08:35:00 (UTC) |
294a5282 |
980 | - Replication updates: |
981 | - Improved the replication tests so that they are more reliable |
982 | and accurate, and hopefully solve some cross platform issues. |
983 | - Bugfixes related to naming particular replicants in a |
984 | 'force_pool' attribute. |
985 | - Lots of documentation updates, including a new Introduction.pod |
986 | file. |
987 | - Fixed the way we detect transaction to make this more reliable |
988 | and forward looking. |
989 | - Fixed some trouble with the way Moose Types are used. |
1910c7af |
990 | - Made discard_chages/get_from_storage replication aware (they |
991 | now read from the master storage by default) |
294a5282 |
992 | - Refactor of MSSQL storage drivers, with some new features: |
993 | - Support for placeholders for MSSQL via DBD::Sybase with proper |
994 | autodetection |
995 | - 'uniqueidentifier' support with auto newid() |
996 | - Dynamic cursor support and other MARS options for ODBC |
2b0abe0e |
997 | - savepoints with auto_savepoint => 1 |
294a5282 |
998 | - Support for MSSQL 'money' type |
999 | - Support for 'smalldatetime' type used in MSSQL and Sybase for |
4c46fa18 |
1000 | InflateColumn::DateTime |
1f4263eb |
1001 | - Support for Postgres 'timestamp without timezone' type in |
294a5282 |
1002 | InflateColumn::DateTime (RT#48389) |
97a0a148 |
1003 | - Added new MySQL specific on_connect_call macro 'set_strict_mode' |
1004 | (also known as make_mysql_not_suck_as_much) |
294a5282 |
1005 | - Multiple prefetch-related fixes: |
1006 | - Adjust overly agressive subquery join-chain pruning |
1007 | - Always preserve the outer join-chain - fixes numerous |
1008 | problems with search_related chaining |
1009 | - Deal with the distinct => 1 attribute properly when using |
1010 | prefetch |
f077b8f5 |
1011 | - An extension of the select-hashref syntax, allowing labeling |
1012 | SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ] |
13a3e374 |
1013 | - Massive optimization of the DBI storage layer - reduce the |
f077b8f5 |
1014 | amount of connected() ping-calls |
58e39c86 |
1015 | - Some fixes of multi-create corner cases |
294a5282 |
1016 | - Multiple POD improvements |
73d47f9f |
1017 | - Added exception when resultset is called without an argument |
c0f4f8bb |
1018 | - Improved support for non-schema-qualified tables under |
67e894d2 |
1019 | Postgres (fixed last_insert_id sequence name auto-detection) |
97a0a148 |
1020 | |
2ec1a5c1 |
1021 | 0.08108 2009-07-05 23:15:00 (UTC) |
04492bc7 |
1022 | - Fixed the has_many prefetch with limit/group deficiency - |
1023 | it is now possible to select "top 5 commenters" while |
1024 | prefetching all their comments |
1025 | - New resultsed method count_rs, returns a ::ResultSetColumn |
1026 | which in turn returns a single count value |
1027 | - Even better support of count with limit |
6a999241 |
1028 | - New on_connect_call/on_disconnect_call functionality (check |
1029 | POD of Storage::DBI) |
1030 | - Automatic datetime handling environment/session setup for |
1031 | Oracle via connect_call_datetime_setup() |
f685632d |
1032 | - count/all on related left-joined empty resultsets now correctly |
1033 | returns 0/() |
e8b32a6d |
1034 | - Fixed regression when both page and offset are specified on |
1035 | a resultset |
1036 | - Fixed HRI returning too many empty results on multilevel |
1037 | nonexisting prefetch |
497d874a |
1038 | - make_column_dirty() now overwrites the deflated value with an |
1039 | inflated one if such exists |
7ae6270b |
1040 | - Fixed set_$rel with where restriction deleting rows outside |
d2d82857 |
1041 | the restriction |
04492bc7 |
1042 | - populate() returns the created objects or an arrayref of the |
115a7c3b |
1043 | created objects depending on scalar vs. list context |
04492bc7 |
1044 | - Fixed find_related on 'single' relationships - the former |
1045 | implementation would overspecify the WHERE condition, reporting |
1046 | no related objects when there in fact is one |
1047 | - SQL::Translator::Parser::DBIx::Class now attaches tables to the |
1048 | central schema object in relationship dependency order |
1049 | - Fixed regression in set_column() preventing sourceless object |
1050 | manipulations |
1051 | - Fixed a bug in search_related doubling a join if the original |
1052 | $rs already joins/prefetches the same relation |
1053 | - Storage::DBI::connected() improvements for Oracle and Sybase |
b4fd6882 |
1054 | - Fixed prefetch+incomplete select regression introduced in |
1055 | 0.08100 |
9ab7fe6a |
1056 | - MSSQL limit (TOP emulation) fixes and improvements |
51a296b4 |
1057 | |
6d82e103 |
1058 | 0.08107 2009-06-14 08:21:00 (UTC) |
1059 | - Fix serialization regression introduced in 0.08103 (affects |
1060 | Cursor::Cached) |
1061 | - POD fixes |
1062 | - Fixed incomplete ::Replicated debug output |
1063 | |
ea60f9a9 |
1064 | 0.08106 2009-06-11 21:42:00 (UTC) |
1065 | - Switched SQLite storage driver to DateTime::Format::SQLite |
1066 | (proper timezone handling) |
1067 | - Fix more test problems |
1068 | |
fb022fcf |
1069 | 0.08105 2009-06-11 19:04:00 (UTC) |
90499ee4 |
1070 | - Update of numeric columns now properly uses != to determine |
1071 | dirtyness instead of the usual eq |
1072 | - Fixes to IC::DT tests |
04492bc7 |
1073 | - Fixed exception when undef_if_invalid and timezone are both set |
1074 | on an invalid datetime column |
90499ee4 |
1075 | |
536bf52b |
1076 | 0.08104 2009-06-10 13:38:00 (UTC) |
1ca68535 |
1077 | - order_by now can take \[$sql, @bind] as in |
1078 | order_by => { -desc => \['colA LIKE ?', 'somestring'] } |
1079 | - SQL::Abstract errors are now properly croak()ed with the |
1080 | correct trace |
4242d79d |
1081 | - populate() now properly reports the dataset slice in case of |
1082 | an exception |
9c094643 |
1083 | - Fixed corner case when populate() erroneously falls back to |
4242d79d |
1084 | create() |
9c094643 |
1085 | - Work around braindead mysql when doing subquery counts on |
b5963465 |
1086 | resultsets containing identically named columns from several |
1087 | tables |
536bf52b |
1088 | - Fixed m2m add_to_$rel to invoke find_or_create on the far |
9c094643 |
1089 | side of the relation, to avoid duplicates |
1090 | - DBIC now properly handles empty inserts (invoking all default |
1091 | values from the DB, normally via INSERT INTO tbl DEFAULT VALUES |
7ae6270b |
1092 | - Fix find_or_new/create to stop returning random rows when |
9c094643 |
1093 | default value insert is requested (RT#28875) |
1094 | - Make IC::DT extra warning state the column name too |
1095 | - It is now possible to transparrently search() on columns |
536bf52b |
1096 | requiring DBI bind (i.e. PostgreSQL BLOB) |
9c094643 |
1097 | - as_query is now a Storage::DBI method, so custom cursors can |
1098 | be seamlessly used |
1099 | - Fix search_related regression introduced in 0.08103 |
4242d79d |
1100 | |
e911e7ff |
1101 | 0.08103 2009-05-26 19:50:00 (UTC) |
1ace31c2 |
1102 | - Multiple $resultset -> count/update/delete fixes. Now any |
1103 | of these operations will succeed, regardless of the complexity |
1104 | of $resultset. distinct, group_by, join, prefetch are all |
1105 | supported with expected results |
19431116 |
1106 | - Return value of $rs->delete is now the storage return value |
1107 | and not 1 as it used to be |
a4d8bea5 |
1108 | - don't pass SQL functions into GROUP BY |
c8a8b777 |
1109 | - Remove MultiDistinctEmulation.pm, effectively deprecating |
1110 | { select => { distinct => [ qw/col1 col2/ ] } } |
1111 | - Change ->count code to work correctly with DISTINCT (distinct => 1) |
1112 | via GROUP BY |
1ace31c2 |
1113 | - Removed interpolation of bind vars for as_query - placeholders |
7ae6270b |
1114 | are preserved and nested query bind variables are properly |
1ace31c2 |
1115 | merged in the correct order |
7ae6270b |
1116 | - Refactor DBIx::Class::Storage::DBI::Sybase to automatically |
d4483998 |
1117 | load a subclass, namely Microsoft_SQL_Server.pm |
568bde84 |
1118 | (similar to DBIx::Class::Storage::DBI::ODBC) |
44a8dcf3 |
1119 | - Refactor InflateColumn::DateTime to allow components to |
1120 | circumvent DateTime parsing |
9073e906 |
1121 | - Support inflation of timestamp datatype |
1122 | - Support BLOB and CLOB datatypes on Oracle |
46ad3c86 |
1123 | - Storage::DBI::Replicated::Balancer::Random: |
1124 | added master_read_weight |
1125 | - Storage::DBI::Replicated: storage opts from connect_info, |
1126 | connect_info merging to replicants, hashref connect_info support, |
1127 | improved trace output, other bug fixes/cleanups |
1ace31c2 |
1128 | - distinct => 1 with prefetch now groups by all columns |
1129 | - on_connect_do accepts a single string equivalent to a one |
1130 | element arrayref (RT#45159) |
1131 | - DB2 limit + offset now works correctly |
1132 | - Sybase now supports autoinc PKs (RT#40265) |
1133 | - Prefetch on joins over duplicate relations now works |
1134 | correctly (RT#28451) |
6c99a3ee |
1135 | - "timestamp with time zone" columns (for Pg) now get inflated with a |
1136 | time zone information preserved |
19431116 |
1137 | - MSSQL Top limit-emulation improvements (GROUP BY and subquery support) |
bed3a173 |
1138 | - ResultSetColumn will not lose the joins infered from a parent |
1139 | resultset prefetch |
d4483998 |
1140 | |
90b41762 |
1141 | 0.08102 2009-04-30 08:29:00 (UTC) |
9beb2b51 |
1142 | - Fixed two subtle bugs when using columns or select/as |
1143 | paired with a join (limited prefetch) |
1144 | - Fixed breakage of cdbi tests (RT#45551) |
1145 | - Some POD improvements |
1146 | |
a0f289c8 |
1147 | 0.08101 2009-04-27 09:45:00 (UTC) |
1148 | - Fix +select, +as, +columns and include_columns being stripped |
1149 | by $rs->get_column |
1150 | - move load_optional_class from DBIx::Class::Componentised to |
1151 | Class::C3::Componentised, bump dependency |
1152 | - register_extra_source() now *really* fixed wrt subclassing |
1153 | - Added missing POD descriptions (RT#45195) |
1154 | - Fix insert() to not store_column() every present object column |
1155 | - Multiple Makefile.PL fixes |
121068ec |
1156 | |
a0f289c8 |
1157 | 0.08100 2009-04-19 11:39:35 (UTC) |
6882de2b |
1158 | - Todo out the register_extra_source test until after shipping |
1159 | |
6c0e3b46 |
1160 | 0.08099_08 2009-03-30 00:00:00 (UTC) |
1161 | - Fixed taint mode with load_namespaces |
1162 | - Putting IC::DateTime locale, timezone or floating_tz_ok attributes into |
92ed0695 |
1163 | extra => {} has been deprecated. The new way is to put these things |
1164 | directly into the columns definition |
6c0e3b46 |
1165 | - Switched MI code to MRO::Compat |
1166 | - Document db-side default_value caveats |
cfcaa8ed |
1167 | - Search_like() now warns to indicate deprecation in 0.09. |
6c0e3b46 |
1168 | - TxnScopeGuard left experimental state |
1169 | |
1170 | 0.08099_07 2009-02-27 02:00:00 (UTC) |
de404241 |
1171 | - multi-create using find_or_create rather than _related for post-insert |
1172 | - fix get_inflated_columns to check has_column_loaded |
6ffb5be5 |
1173 | - Add DBIC_MULTICREATE_DEBUG env var (undocumented, quasi-internal) |
1174 | - Fix up multi-create to: |
1175 | - correctly propagate columns loaded during multi-insert of rels |
1176 | - not try and insert things tagged on via new_related unless required |
8d689133 |
1177 | - Possible to set locale in IC::DateTime extra => {} config |
6ffb5be5 |
1178 | - Calling the accessor of a belongs_to when the foreign_key |
7ae6270b |
1179 | was NULL and the row was not stored would unexpectedly fail |
6ffb5be5 |
1180 | - Split sql statements for deploy only if SQLT::Producer returned a scalar |
1181 | containing all statements to be executed |
1182 | - Add as_query() for ResultSet and ResultSetColumn. This makes subqueries |
6882de2b |
1183 | possible. See the Cookbook for details. |
bd7ca9e8 |
1184 | - Massive rewrite of Ordered to properly handle position constraints and |
1185 | to make it more matpath-friendly |
0233fc64 |
1186 | - deploy_statements called ddl_filename with the $version and $dir arguments |
6c0e3b46 |
1187 | in the wrong order. |
00c937a2 |
1188 | - columns/+columns attributes now support { as => select } hahsrefs |
64ea0f49 |
1189 | - support for views both in DBIC and via deploy() in SQLT |
eaab653f |
1190 | |
1191 | 0.08099_06 2009-01-23 07:30:00 (UTC) |
0eb27426 |
1192 | - Allow a scalarref to be supplied to the 'from' resultset attribute |
1193 | - Classes submitted as result_class for a resultsource are now |
1194 | automatically loaded via ensure_loaded() |
1195 | - 'result_class' resultset attribute, identical to result_class() |
0da3fea1 |
1196 | - add 'undef_on_null_fk' option for relationship accessors of type 'single'. |
cef1bdda |
1197 | This will prevent DBIC from querying the database if one or more of |
0e40881e |
1198 | the key columns IS NULL |
1199 | - for 'belongs_to' rels, 'undef_on_null_fk' defaults to true. |
1200 | - fixed scope unaware last_insert_id fetching for MSSQL |
1201 | (http://msdn.microsoft.com/en-us/library/ms190315.aspx) |
0da3fea1 |
1202 | - an sqlt_deploy_hook can now be shared between result sources using |
1203 | a configurable callback trigger |
20ea616f |
1204 | - new order_by => { -desc => 'colname' } syntax supported |
1205 | - PG array datatype supported |
0e80c4ca |
1206 | - insert should use store_column, not set_column to avoid marking |
7ae6270b |
1207 | clean just-stored values as dirty. New test for this |
1208 | - regression test for source_name |
28e6c8b6 |
1209 | |
1210 | 0.08099_05 2008-10-30 21:30:00 (UTC) |
cfcaa8ed |
1211 | - Rewrite of Storage::DBI::connect_info(), extended with an |
28e6c8b6 |
1212 | additional argument format type |
2177f7d2 |
1213 | - InflateColumn::DateTime: add warning about floating timezone |
1214 | - InflateColumn::DateTime: possible to enforce/skip inflation |
cfcaa8ed |
1215 | - delete throws exception if passed arguments to prevent drunken mishaps. |
68f3b0dd |
1216 | - Fix storage to copy scalar conds before regexping to avoid |
1217 | trying to modify a constant in odd edge cases |
1218 | - Related resultsets on uninserted objects are now empty |
370f2ba2 |
1219 | - Fixed up related resultsets and multi-create |
2eebd801 |
1220 | - Fixed superfluous connection in ODBC::_rebless |
1221 | - Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server |
7ae6270b |
1222 | - Added virtual method to Versioned so a user can create upgrade |
a354b842 |
1223 | path across multiple versions (jgoulah) |
d76e282a |
1224 | - Better (and marginally faster) implementation of the HashRefInflator |
1225 | hash construction algorithm |
d76e282a |
1226 | - Allow explicit specification of ON DELETE/ON UPDATE constraints |
1227 | when using the SQLT parser |
af8b962f |
1228 | |
8c764dc7 |
1229 | 0.08099_04 2008-07-24 01:00:00 |
e96a93df |
1230 | - Functionality to storage to enable a sub to be run without FK checks |
7ae6270b |
1231 | - Fixed $schema->clone bug which caused clone and source to share |
73529292 |
1232 | internal hash refs |
2a4d9487 |
1233 | - Added register_extra_source methods for additional sources |
33a126ef |
1234 | - Added datetime_undef_if_invalid for InflateColumn::DateTime to |
1235 | return undef on invalid date/time values |
262da53c |
1236 | - Added search_related_rs method to ResultSet |
6dbea98e |
1237 | - add a make_column_dirty method to Row to force updates |
cb136e67 |
1238 | - throw a clear exception when user tries multi-has_many prefetch |
1239 | - SQLT parser prefixes index names with ${table}_idx_ to avoid clashes |
748ab0dc |
1240 | - mark ResultSetManager as deprecated and undocument it |
debccec3 |
1241 | - pod fix (RT #32988) |
f947585b |
1242 | - add Test::Exception to test requirements (RT #34256) |
fe650234 |
1243 | - make ash's build_requires/META.yml fixes work better |
13de943d |
1244 | - is_deferable support on relations used by the SQL::Translator |
ad6c4e20 |
1245 | parser |
d63be6d0 |
1246 | - Refactored DBIx::Class::Schema::Versioned |
a63219bc |
1247 | - Syntax errors from resultset components are now reported correctly |
45f1a484 |
1248 | - sqltargs respected correctly in deploy et al. |
5dee2dcf |
1249 | - Added support for savepoints, and using them automatically in |
1250 | nested transactions if auto_savepoint is set in connect_info. |
0da8b7da |
1251 | - Changed naming scheme for constraints and keys in the sqlt parser; |
1252 | names should now be consistent and collision-free. |
ad6c4e20 |
1253 | - Improve handling of explicit key attr in ResultSet::find |
1254 | - Add warnings for non-unique ResultSet::find queries |
e515254d |
1255 | - Changed Storage::DBI::Replication to Storage::DBI::Replicated and |
1256 | refactored support. |
7ae6270b |
1257 | - By default now deploy/diff et al. will ignore constraint and index |
d4d46d19 |
1258 | names |
e758ffe6 |
1259 | - Add ResultSet::_is_deterministic_value, make new_result filter the |
1260 | values passed to new to drop values that would generate invalid SQL. |
7ae6270b |
1261 | - Use Sub::Name to name closures before installing them. Fixes |
ddc0a6c8 |
1262 | incompatibility with Moose method modifiers on generated methods. |
13de943d |
1263 | |
dd018f09 |
1264 | 0.08010 2008-03-01 10:30 |
1265 | - Fix t/94versioning.t so it passes with latest SQL::Translator |
1266 | |
95e34604 |
1267 | 0.08009 2008-01-20 13:30 |
0ed8d3b6 |
1268 | - Made search_rs smarter about when to preserve the cache to fix |
1269 | mm prefetch usage |
7ae6270b |
1270 | - Added Storage::DBI subclass for MSSQL over ODBC. |
4146e3da |
1271 | - Added freeze, thaw and dclone methods to Schema so that thawed |
1272 | objects will get re-attached to the schema. |
8cfef6f5 |
1273 | - Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API |
67109394 |
1274 | (also fixes RT #32393) |
a0826322 |
1275 | - introduced DBIx::Class::set_inflated_columns |
1276 | - DBIx::Class::Row::copy uses set_inflated_columns |
4146e3da |
1277 | |
af8b962f |
1278 | 0.08008 2007-11-16 14:30:00 |
7e9b2a24 |
1279 | - Fixed join merging bug (test from Zby) |
eba322a7 |
1280 | - When adding relationships, it will throw an exception if you get the |
1281 | foreign and self parts the wrong way round in the condition |
5d62876f |
1282 | - ResultSetColumn::func() now returns all results if called in list |
1283 | context; this makes things like func('DISTINCT') work as expected |
7ae6270b |
1284 | - Many-to-many relationships now warn if the utility methods would |
35210a5d |
1285 | clash |
dda9af55 |
1286 | - InflateColumn::DateTime now accepts an extra parameter of timezone |
1287 | to set timezone on the DT object (thanks Sergio Salvi) |
7ae6270b |
1288 | - Added sqlt_deploy_hook to result classes so that indexes can be |
aaf2403d |
1289 | added. |
7ae6270b |
1290 | - Added startup checks to warn loudly if we appear to be running on |
11736b4c |
1291 | RedHat systems from perl-5.8.8-10 and up that have the bless/overload |
1292 | patch applied (badly) which causes 2x -> 100x performance penalty. |
1293 | (Jon Schutz) |
7ae6270b |
1294 | - ResultSource::reverse_relationship_info can distinguish between |
86636368 |
1295 | sources using the same table |
1296 | - Row::insert will now not fall over if passed duplicate related objects |
7ae6270b |
1297 | - Row::copy will not fall over if you have two relationships to the |
35688220 |
1298 | same source with a unique constraint on it |
eba322a7 |
1299 | |
c94f64f9 |
1300 | 0.08007 2007-09-04 19:36:00 |
8f7e044c |
1301 | - patch for Oracle datetime inflation (abram@arin.net) |
6f442eb7 |
1302 | - added on_disconnect_do |
1303 | - on_connect_do and on_disconnect_do take coderefs and arrayrefs |
1304 | |
5c642b15 |
1305 | 0.08006 2007-08-12 15:12:00 |
1306 | - Move to using Class::C3::Componentised |
1307 | - Remove warn statement from DBIx::Class::Row |
1308 | |
7ae6270b |
1309 | 0.08005 2007-08-06 |
f011970e |
1310 | - add timestamp fix re rt.cpan 26978 - no test yet but change |
1311 | clearly should cause no regressions |
01d59a6a |
1312 | - provide alias for related_resultset via local() so it's set |
1313 | correctly at resultset construction time (fixes RestrictWithObject) |
e5d9ee92 |
1314 | - fixes bind params in debug statements |
1315 | (original test from abraxxa) |
649bfb8c |
1316 | - fixed storage->connected fork bug |
1317 | (test and fix from Radu Greab) |
fe0e9f67 |
1318 | - add 1; to AccessorGroup.pm for stuff that still uses it |
70f39278 |
1319 | - refactor Statistics to create debugging filehandle to fix bug with |
1320 | closed STDERR, update docs and modify Versioned to use Statistics |
1321 | (original fix from diz) |
1322 | |
e7827df0 |
1323 | 0.08004 2007-08-06 19:00:00 |
7ae6270b |
1324 | - fix storage connect code to not trigger bug via auto-viv |
e7827df0 |
1325 | (test from aherzog) |
e4eb8ee1 |
1326 | - fixup cursor_class to be an 'inherited' attr for per-package defaults |
e6c747fd |
1327 | - add default_resultset_attributes entry to Schema |
6296f45b |
1328 | - optimisation in DBI::Cursor to check software_limit before falling |
1329 | back to base Cursor->all |
2bc3c81e |
1330 | - fix bug with create_multi not inserting non-storage objects |
1331 | (test and fix from davinchi) |
73281318 |
1332 | - DBIx::Class::AccessorGroup made empty subclass of |
1333 | Class::Accessor::Grouped |
ec8c7e7f |
1334 | - fixed an ugly bug regarding $dbh->{AutoCommit} and transactions |
73281318 |
1335 | - ensure_class_loaded handles non-classnames better. |
9a0891be |
1336 | - non-destructive hashref handling for connect_info options |
2bd9c7c0 |
1337 | - count no longer returns negative values after slice |
1338 | (report and test from JOHANL) |
114780ee |
1339 | - rebless before building datetime_parser |
1340 | (patch from mattlaw / Matt Lawrence) |
1341 | |
ab2cf1fb |
1342 | 0.08003 2007-07-14 18:01:00 |
1343 | - improved populate bulk_insert mode |
a8c98174 |
1344 | - fixed up multi_create to be more intelligent about PK<->PK rels |
6cc5b382 |
1345 | - fix many-many rels to not use set_columns |
dfccde48 |
1346 | - Unmarked deploy as experimental since it isn't anymore |
1347 | - Removed Cwd dep since it's not required and causes problems |
1348 | with debian packaging |
b4474f31 |
1349 | - Patch to fix ? in data for NoBindVars (from Tom Hukins) |
77d518d1 |
1350 | - Restored mk_classaccessor method for compatibility |
3f6cc7e4 |
1351 | - Fixed group_by problem with oracle limit syntax |
1352 | - Fixed attr merging problem |
1353 | - Fixed $rs->get_column w/prefetch problem |
77d518d1 |
1354 | |
6fa7228e |
1355 | 0.08002 2007-06-20 06:10:00 |
9c6d6d93 |
1356 | - add scope guard to Row::insert to ensure rollback gets called |
1357 | - more heuristics in Row::insert to try and get insert order right |
1358 | - eliminate vestigial code in PK::Auto |
2ab60eb9 |
1359 | - more expressive DBI errors |
1360 | - soften errors during deploy |
291bf95f |
1361 | - ensure_connected before txn_begin to catch stomping on transaction |
1362 | depth |
b2f408f3 |
1363 | - new method "rethrow" for our exception objects |
1364 | |
a2800991 |
1365 | 0.08001 2007-06-17 21:21:02 |
1366 | - Cleaned up on_connect handling for versioned |
1367 | - removed DateTime use line from multi_create test |
1368 | - hid DBIx::ContextualFetch::st override in CDBICompat |
1369 | |
737416a4 |
1370 | 0.08000 2007-06-17 18:06:12 |
942cd0c1 |
1371 | - Fixed DBIC_TRACE debug filehandles to set ->autoflush(1) |
1372 | - Fixed circular dbh<->storage in HandleError with weakref |
1373 | |
a0bd8a8c |
1374 | 0.07999_06 2007-06-13 04:45:00 |
3fda409f |
1375 | - tweaked Row.pm to make last_insert_id take multiple column names |
a0bd8a8c |
1376 | - Fixed DBIC::Storage::DBI::Cursor::DESTROY bug that was |
1377 | messing up exception handling |
1378 | - added exception objects to eliminate stacktrace/Carp::Clan |
1379 | output redundancy |
1380 | - setting $ENV{DBIC_TRACE} defaults stacktrace on. |
4d4c7bbe |
1381 | - added stacktrace option to Schema, makes throw_exception |
1382 | use "confess" |
1383 | - make database handles use throw_exception by default |
1384 | - make database handles supplied by a coderef use our |
1385 | standard HandleError/RaiseError/PrintError |
1386 | - add "unsafe" connect_info option to suppress our setting |
1387 | of HandleError/RaiseError/PrintError |
1388 | - removed several redundant evals whose sole purpose was to |
1389 | provide extra debugging info |
4d993a62 |
1390 | - fixed page-within-page bug (reported by nilsonsfj) |
4d4c7bbe |
1391 | - fixed rare bug when database is disconnected inbetween |
1392 | "$dbh->prepare_cached" and "$sth->execute" |
4d993a62 |
1393 | |
ff132c6f |
1394 | 0.07999_05 2007-06-07 23:00:00 |
2c2a01a5 |
1395 | - Made source_name rw in ResultSource |
40dce2a5 |
1396 | - Fixed up SQL::Translator test/runtime dependencies |
e3d0ecce |
1397 | - Fixed t/60core.t in the absence of DateTime::Format::MySQL |
8b621a87 |
1398 | - Test cleanup and doc note (ribasushi) |
e3d0ecce |
1399 | |
1c1896e8 |
1400 | 0.07999_04 2007-06-01 14:04:00 |
f5d3a5de |
1401 | - pulled in Replication storage from branch and marked EXPERIMENTAL |
24010dd8 |
1402 | - fixup to ensure join always LEFT after first LEFT join depthwise |
f217eaab |
1403 | - converted the vendor tests to use schema objects intead of schema |
1404 | classes, made cleaned more reliable with END blocks |
42416a0b |
1405 | - versioning support via DBIx::Class::Schema::Versioned |
f217eaab |
1406 | - find/next now return undef rather than () on fail from Bernhard Graf |
f80f8e2f |
1407 | - rewritten collapse_result to fix prefetch |
1408 | - moved populate to resultset |
1409 | - added support for creation of related rows via insert and populate |
f217eaab |
1410 | - transaction support more robust now in the face of varying AutoCommit |
1411 | and manual txn_begin usage |
1412 | - unbreak back-compat for Row/ResultSet->new_result |
03cc17a5 |
1413 | - Added Oracle/WhereJoins.pm for Oracle >= 8 to support |
1414 | Oracle <= 9i, and provide Oracle with a better join method for |
1415 | later versions. (I use the term better loosely.) |
3d618782 |
1416 | - The SQL::T parser class now respects a relationship attribute of |
03cc17a5 |
1417 | is_foreign_key_constrain to allow explicit control over wether or |
1418 | not a foreign constraint is needed |
fac560c2 |
1419 | - resultset_class/result_class now (again) auto loads the specified |
1d4e109a |
1420 | class; requires Class::Accessor::Grouped 0.05002+ |
ba4a6453 |
1421 | - added get_inflated_columns to Row |
43556c5d |
1422 | - %colinfo accessor and inflate_column now work together |
42d96e77 |
1423 | - More documentation updates |
1424 | - Error messages from ->deploy made more informative |
1425 | - connect_info will now always return the arguments it was |
1426 | originally given |
1427 | - A few small efficiency improvements for load_classes |
1428 | and compose_namespace |
1429 | |
13f897a0 |
1430 | 0.07006 2007-04-17 23:18:00 |
b740ac42 |
1431 | - Lots of documentation updates |
1432 | - deploy now takes an optional 'source_names' parameter (dec) |
1433 | - Quoting for for columns_info_for |
1434 | - RT#25683 fixed (multiple open sths on DBD::Sybase) |
1435 | - CDBI compat infers has_many from has_a (Schwern) |
e73fced0 |
1436 | - Fix ddl_filename transformation (Carl Vincent) |
8b50216e |
1437 | |
e9188247 |
1438 | 0.07999_02 2007-01-25 20:11:00 |
1439 | - add support for binding BYTEA and similar parameters (w/Pg impl) |
1440 | - add support to Ordered for multiple ordering columns |
1441 | - mark DB.pm and compose_connection as deprecated |
1442 | - switch tests to compose_namespace |
737416a4 |
1443 | - ResultClass::HashRefInflator added |
e9188247 |
1444 | - Changed row and rs objects to not have direct handle to a source, |
1445 | instead a (schema,source_name) tuple of type ResultSourceHandle |
c216324a |
1446 | |
f00482a5 |
1447 | 0.07005 2007-01-10 18:36:00 |
1448 | - fixup changes file |
1449 | - remove erroneous .orig files - oops |
1450 | |
d5efeb56 |
1451 | 0.07004 2007-01-09 21:52:00 |
d180c0f3 |
1452 | - fix find_related-based queries to correctly grep the unique key |
97c76264 |
1453 | - fix InflateColumn to inflate/deflate all refs but scalar refs |
d180c0f3 |
1454 | |
e1f1616e |
1455 | 0.07003 2006-11-16 11:52:00 |
8de06d81 |
1456 | - fix for rt.cpan.org #22740 (use $^X instead of hardcoded "perl") |
25dbe178 |
1457 | - Tweaks to resultset to allow inflate_result to return an array |
382b1d53 |
1458 | - Fix UTF8Columns to work under Perl <= 5.8.0 |
c6a0dde1 |
1459 | - Fix up new_result in ResultSet to avoid alias-related bugs |
a4c8f60d |
1460 | - Made new/update/find handle 'single' rel accessor correctly |
1461 | - Fix NoBindVars to be safer and handle non-true bind values |
e1f1616e |
1462 | - Don't blow up if columns_info_for returns useless results |
1463 | - Documentation updates |
382b1d53 |
1464 | |
e9188247 |
1465 | 0.07999_01 2006-10-05 21:00:00 |
1466 | - add connect_info option "disable_statement_caching" |
1467 | - create insert_bulk using execute_array, populate uses it |
1468 | - added DBIx::Class::Schema::load_namespaces, alternative to |
1469 | load_classes |
1470 | - added source_info method for source-level metadata (kinda like |
1471 | column_info) |
1472 | - Some of ::Storage::DBI's code/docs moved to ::Storage |
1473 | - DBIx::Class::Schema::txn_do code moved to ::Storage |
1474 | - Storage::DBI now uses exceptions instead of ->ping/->{Active} checks |
1475 | - Storage exceptions are thrown via the schema class's throw_exception |
1476 | - DBIx::Class::Schema::throw_exception's behavior can be modified via |
1477 | ->exception_action |
1478 | - columns_info_for is deprecated, and no longer runs automatically. |
1479 | You can make it work like before via |
1480 | __PACKAGE__->column_info_from_storage(1) for now |
1481 | - Replaced DBIx::Class::AccessorGroup and Class::Data::Accessor with |
5d583aba |
1482 | Class::Accessor::Grouped. Only user noticible change is to |
1483 | table_class on ResultSourceProxy::Table (i.e. table objects in |
1484 | schemas) and, resultset_class and result_class in ResultSource. |
e9188247 |
1485 | These accessors no longer automatically require the classes when |
1486 | set. |
1487 | |
2292193a |
1488 | 0.07002 2006-09-14 21:17:32 |
1489 | - fix quote tests for recent versions of SQLite |
1490 | - added reference implementation of Manual::Example |
1491 | - backported column_info_from_storage accessor from -current, but |
6d2d6160 |
1492 | - fixed inflate_datetime.t tests/stringify under older Test::More |
2292193a |
1493 | - minor fixes for many-to-many relationship helpers |
36f79eed |
1494 | - cleared up Relationship docs, and fixed some typos |
e4cc8257 |
1495 | - use ref instead of eval to check limit syntax (to avoid issues with |
1496 | Devel::StackTrace) |
2292193a |
1497 | - update ResultSet::_cond_for_update_delete to handle more complicated |
1498 | queries |
1499 | - bugfix to Oracle columns_info_for |
a918d901 |
1500 | - remove_columns now deletes columns from _columns |
1501 | |
f096a498 |
1502 | 0.07001 2006-08-18 19:55:00 |
9dba3059 |
1503 | - add directory argument to deploy() |
1504 | - support default aliases in many_to_many accessors. |
1505 | - support for relationship attributes in many_to_many accessors. |
1506 | - stop search_rs being destructive to attrs |
1507 | - better error reporting when loading components |
1508 | - UTF8Columns changed to use "utf8" instead of "Encode" |
ab8481f5 |
1509 | - restore automatic aliasing in ResultSet::find() on nonunique queries |
1510 | - allow aliases in ResultSet::find() queries (in cases of relationships |
1511 | with prefetch) |
89034887 |
1512 | - pass $attrs to find from update_or_create so a specific key can be |
1513 | provided |
04786a4c |
1514 | - remove anonymous blesses to avoid major speed hit on Fedora Core 5's |
1515 | Perl and possibly others; for more information see: |
1516 | https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=196836 |
282cccff |
1517 | - fix a pathological prefetch case |
1518 | - table case fix for Oracle in columns_info_for |
cb3e35d2 |
1519 | - stopped search_rs deleting attributes from passed hash |
282cccff |
1520 | |
cebfddb3 |
1521 | 0.07000 2006-07-23 02:30:00 |
28d25740 |
1522 | - supress warnings for possibly non-unique queries, since |
1523 | _is_unique_query doesn't infer properly in all cases |
b489f68a |
1524 | - skip empty queries to eliminate spurious warnings on ->deploy |
d09c569a |
1525 | - fixups to ORDER BY, tweaks to deepen some copies in ResultSet |
eac29141 |
1526 | - fixup for RowNum limit syntax with functions |
d09c569a |
1527 | |
99eff28a |
1528 | 0.06999_07 2006-07-12 20:58:05 |
1529 | - fix issue with from attr copying introduced in last release |
1530 | |
26cfd055 |
1531 | 0.06999_06 2006-07-12 17:16:55 |
1532 | - documentation for new storage options, fix S::A::L hanging on to $dbh |
1533 | - substantial refactor of search_related code to fix alias numbering |
dcfb635f |
1534 | - don't generate partial unique keys in ResultSet::find() when a table |
1535 | has more than one unique constraint which share a column and only one |
1536 | is satisfied |
404939a4 |
1537 | - cleanup UTF8Columns and make more efficient |
26cfd055 |
1538 | - rename DBIX_CLASS_STORAGE_DBI_DEBUG to DBIC_TRACE (with compat) |
f9fbd9bb |
1539 | - rename _parent_rs to _parent_source in ResultSet |
0793f927 |
1540 | - new FAQ.pod! |
f9fbd9bb |
1541 | |
2b19c829 |
1542 | 0.06999_05 2006-07-04 14:40:01 |
88de38fa |
1543 | - fix issue with incorrect $rs->{attrs}{alias} |
c1466191 |
1544 | - fix subclassing issue with source_name |
296ef183 |
1545 | - tweak quotes test to output text on failure |
f32eb113 |
1546 | - fix Schema->txn_do to not fail as a classmethod |
1547 | |
39b590c1 |
1548 | 0.06999_04 2006-06-29 20:18:47 |
d651c864 |
1549 | - disable cdbi-t/02-Film.t warning tests under AS perl |
ca306ecb |
1550 | - fixups to MySQL tests (aka "work round mysql being retarded") |
1551 | - compat tweaks for Storage debug logging |
1552 | |
ef26a392 |
1553 | 0.06999_03 2006-06-26 21:04:44 |
1554 | - various documentation improvements |
1555 | - fixes to pass test suite on Windows |
1556 | - rewrote and cleaned up SQL::Translator tests |
1557 | - changed relationship helpers to only call ensure_class_loaded when the |
5d583aba |
1558 | join condition is inferred |
ef26a392 |
1559 | - rewrote many_to_many implementation, now provides helpers for adding |
1560 | and deleting objects without dealing with the link table |
6ccc50ab |
1561 | - reworked InflateColumn implementation to lazily deflate where |
ef26a392 |
1562 | possible; now handles passing an inflated object to new() |
1563 | - changed join merging to not create a rel_2 alias when adding a join |
42312aa5 |
1564 | that already exists in a parent resultset |
ef26a392 |
1565 | - Storage::DBI::deployment_statements now calls ensure_connected |
5d583aba |
1566 | if it isn't passed a type |
ef26a392 |
1567 | - fixed Componentized::ensure_class_loaded |
5d0a2955 |
1568 | - InflateColumn::DateTime supports date as well as datetime |
ef26a392 |
1569 | - split Storage::DBI::MSSQL into MSSQL and Sybase::MSSQL |
5d583aba |
1570 | - fixed wrong debugging hook call in Storage::DBI |
1571 | - set connect_info properly before setting any ->sql_maker things |
42312aa5 |
1572 | |
713ca2e2 |
1573 | 0.06999_02 2006-06-09 23:58:33 |
9b83fccd |
1574 | - Fixed up POD::Coverage tests, filled in some POD holes |
175cff3e |
1575 | - Added a warning for incorrect component order in load_components |
bd93520f |
1576 | - Fixed resultset bugs to do with related searches |
1577 | - added code and tests for Componentized::ensure_class_found and |
1578 | load_optional_class |
1579 | - NoBindVars + Sybase + MSSQL stuff |
1580 | - only rebless S::DBI if it is still S::DBI and not a subclass |
1581 | - Added `use' statement for DBD::Pg in Storage::DBI::Pg |
1582 | - stopped test relying on order of unordered search |
1583 | - bugfix for join-types in nested joins using the from attribute |
1584 | - obscure prefetch problem fixed |
1585 | - tightened up deep search_related |
1586 | - Fixed 'DBIx/Class/DB.pm did not return a true value' error |
1587 | - Revert change to test for deprecated find usage and swallow warnings |
1588 | - Slight wording change to new_related() POD |
1589 | - new specific test for connect_info coderefs |
1590 | - POD clarification and content bugfixing + a few code formatting fixes |
1591 | - POD::Coverage additions |
1592 | - fixed debugfh |
1593 | - Fix column_info stomping |
9b83fccd |
1594 | |
0de39991 |
1595 | 0.06999_01 2006-05-28 17:19:30 |
368a5228 |
1596 | - add automatic naming of unique constraints |
1c81f831 |
1597 | - marked DB.pm as deprecated and noted it will be removed by 1.0 |
a8db04ca |
1598 | - add ResultSetColumn |
ef26a392 |
1599 | - refactor ResultSet code to resolve attrs as late as possible |
a8db04ca |
1600 | - merge prefetch attrs into join attrs |
cec13963 |
1601 | - add +select and +as attributes to ResultSet |
e7cafd06 |
1602 | - added InflateColumn::DateTime component |
4c248161 |
1603 | - refactor debugging to allow for profiling using Storage::Statistics |
6aaa8ea2 |
1604 | - removed Data::UUID from deps, made other optionals required |
38e48163 |
1605 | - modified SQLT parser to skip dupe table names |
002a359a |
1606 | - added remove_column(s) to ResultSource/ResultSourceProxy |
1607 | - added add_column alias to ResultSourceProxy |
bab77431 |
1608 | - added source_name to ResultSource |
1bc0b925 |
1609 | - load_classes now uses source_name and sets it if necessary |
1610 | - add update_or_create_related to Relationship::Base |
1611 | - add find_or_new to ResultSet/ResultSetProxy and find_or_new_related |
1612 | to Relationship::Base |
1613 | - add accessors for unique constraint names and coulums to |
1614 | ResultSource/ResultSourceProxy |
1615 | - rework ResultSet::find() to search unique constraints |
9387c904 |
1616 | - CDBICompat: modify retrieve to fix column casing when ColumnCase is |
1617 | loaded |
1618 | - CDBICompat: override find_or_create to fix column casing when |
1619 | ColumnCase is loaded |
62eb8fe8 |
1620 | - reorganized and simplified tests |
1621 | - added Ordered |
8046a6d1 |
1622 | - added the ability to set on_connect_do and the various sql_maker |
1623 | options as part of Storage::DBI's connect_info. |
002a359a |
1624 | |
0de39991 |
1625 | 0.06003 2006-05-19 15:37:30 |
9c2c91ea |
1626 | - make find_or_create_related check defined() instead of truth |
8417f5ee |
1627 | - don't unnecessarily fetch rels for cascade_update |
d3c946a0 |
1628 | - don't set_columns explicitly in update_or_create; instead use |
1629 | update($hashref) so InflateColumn works |
0823196c |
1630 | - fix for has_many prefetch with 0 related rows |
1631 | - make limit error if rows => 0 |
a917fb06 |
1632 | - added memory cycle tests and a long-needed weaken call |
1633 | |
a2f6c15f |
1634 | 0.06002 2006-04-20 00:42:41 |
2c037e6b |
1635 | - fix set_from_related to accept undef |
bd054cb4 |
1636 | - fix to Dumper-induced hash iteration bug |
83419ec6 |
1637 | - fix to copy() with non-composed resultsource |
765f5b7b |
1638 | - fix to ->search without args to clone rs but maintain cache |
a32e8402 |
1639 | - grab $self->dbh once per function in Storage::DBI |
428c2b82 |
1640 | - nuke ResultSource caching of ->resultset for consistency reasons |
16b4fd26 |
1641 | - fix for -and conditions when updating or deleting on a ResultSet |
1642 | |
d56d8619 |
1643 | 0.06001 |
6346a152 |
1644 | - Added fix for quoting with single table |
182fee36 |
1645 | - Substantial fixes and improvements to deploy |
1646 | - slice now uses search directly |
1647 | - fixes for update() on resultset |
1648 | - bugfix to Cursor to avoid error during DESTROY |
986e4fca |
1649 | - transaction DBI operations now in debug trace output |
6346a152 |
1650 | |
41741748 |
1651 | 0.06000 2006-03-25 18:03:46 |
eaefb953 |
1652 | - Lots of documentation improvements |
1653 | - Minor tweak to related_resultset to prevent it storing a searched rs |
8fcf21b3 |
1654 | - Fixup to columns_info_for when database returns type(size) |
eeb34228 |
1655 | - Made do_txn respect void context (on the off-chance somebody cares) |
5bd6785c |
1656 | - Fix exception text for nonexistent key in ResultSet::find() |
8fcf21b3 |
1657 | |
41741748 |
1658 | 0.05999_04 2006-03-18 19:20:49 |
7ed3d6dc |
1659 | - Fix for delete on full-table resultsets |
936332ea |
1660 | - Removed caching on count() and added _count for pager() |
3ec067db |
1661 | - ->connection does nothing if ->storage defined and no args |
1662 | (and hence ->connect acts like ->clone under the same conditions) |
1663 | - Storage::DBI throws better exception if no connect info |
1664 | - columns_info_for made more robust / informative |
1346e22d |
1665 | - ithreads compat added, fork compat improved |
bcd26419 |
1666 | - weaken result_source in all resultsets |
bd93520f |
1667 | - Make pg seq extractor less sensitive. |
3b44ccc6 |
1668 | |
c42d8358 |
1669 | 0.05999_03 2006-03-14 01:58:10 |
1670 | - has_many prefetch fixes |
85dea9a9 |
1671 | - deploy now adds drop statements before creates |
f109ee4a |
1672 | - deploy outputs debugging statements if DBIX_CLASS_STORAGE_DBI_DEBUG |
1673 | is set |
85dea9a9 |
1674 | |
f109ee4a |
1675 | 0.05999_02 2006-03-10 13:31:37 |
e9100ff7 |
1676 | - remove test dep on YAML |
1677 | - additional speed tweaks for C3 |
e535069e |
1678 | - allow scalarefs passed to order_by to go straight through to SQL |
9b465d00 |
1679 | - renamed insert_or_update to update_or_insert (with compat alias) |
f43b2744 |
1680 | - hidden lots of packages from the PAUSE Indexer |
561bd5f6 |
1681 | |
1682 | 0.05999_01 2006-03-09 18:31:44 |
5e8b1b2a |
1683 | - renamed cols attribute to columns (cols still supported) |
1684 | - added has_column_loaded to Row |
90ec6cad |
1685 | - Storage::DBI connect_info supports coderef returning dbh as 1st arg |
aa972396 |
1686 | - load_components() doesn't prepend base when comp. prefixed with + |
074a366d |
1687 | - $schema->deploy |
1688 | - HAVING support |
1689 | - prefetch for has_many |
eaefb953 |
1690 | - cache attr for resultsets |
074a366d |
1691 | - PK::Auto::* no longer required since Storage::DBI::* handle auto-inc |
0e35aa05 |
1692 | - minor tweak to tests for join edge case |
1693 | - added cascade_copy relationship attribute |
1694 | (sponsored by Airspace Software, http://www.airspace.co.uk/) |
1695 | - clean up set_from_related |
1696 | - made copy() automatically null out auto-inc columns |
62cb84ec |
1697 | - added txn_do() method to Schema, which allows a coderef to be |
1698 | executed atomically |
70ecd5a1 |
1699 | |
975c65b5 |
1700 | 0.05007 2006-02-24 00:59:00 |
971c0085 |
1701 | - tweak to Componentised for Class::C3 0.11 |
1702 | - fixes for auto-inc under MSSQL |
1703 | |
f8d97a01 |
1704 | 0.05006 2006-02-17 15:32:40 |
1705 | - storage fix for fork() and workaround for Apache::DBI |
fc27a867 |
1706 | - made update(\%hash) work on row as well as rs |
d3231653 |
1707 | - another fix for count with scalar group_by |
1708 | - remove dependency on Module::Find in 40resultsetmanager.t (RT #17598) |
4834d8ac |
1709 | |
d0bb3812 |
1710 | 0.05005 2006-02-13 21:24:51 |
1711 | - remove build dependency on version.pm |
1712 | |
dec2517f |
1713 | 0.05004 2006-02-13 20:59:00 |
002a359a |
1714 | - allow specification of related columns via cols attr when primary |
f3b05bad |
1715 | keys of the related table are not fetched |
1716 | - fix count for group_by as scalar |
f66596f9 |
1717 | - add horrific fix to make Oracle's retarded limit syntax work |
3b24f6ea |
1718 | - remove Carp require |
60283c2e |
1719 | - changed UUIDColumns to use new UUIDMaker classes for uuid creation |
1720 | using whatever module may be available |
f66596f9 |
1721 | |
85b4a1c5 |
1722 | 0.05003 2006-02-08 17:50:20 |
1723 | - add component_class accessors and use them for *_class |
1724 | - small fixes to Serialize and ResultSetManager |
85b4a1c5 |
1725 | - rollback on disconnect, and disconnect on DESTROY |
85b4a1c5 |
1726 | |
cc6504dc |
1727 | 0.05002 2006-02-06 12:12:03 |
1728 | - Added recommends for Class::Inspector |
fac560c2 |
1729 | - Added skip_all to t/40resultsetmanager.t if no Class::Inspector |
1730 | available |
cc6504dc |
1731 | |
1732 | 0.05001 2006-02-05 15:28:10 |
6ee299bf |
1733 | - debug output now prints NULL for undef params |
887ce227 |
1734 | - multi-step prefetch along the same rel (e.g. for trees) now works |
489709af |
1735 | - added multi-join (join => [ 'foo', 'foo' ]), aliases second to foo_2 |
5ec6bc2e |
1736 | - hack PK::Auto::Pg for "table" names referencing a schema |
1737 | - find() with attributes works |
5ac6a044 |
1738 | - added experimental Serialize and ResultSetManager components |
19345968 |
1739 | - added code attribute recording to DBIx::Class |
5ac6a044 |
1740 | - fix to find() for complex resultsets |
1741 | - added of $storage->debugcb(sub { ... }) |
1742 | - added $source->resultset_attributes accessor |
1743 | - added include_columns rs attr |
1744 | |
fc69fea6 |
1745 | 0.05000 2006-02-01 16:48:30 |
1746 | - assorted doc fixes |
602afcfa |
1747 | - remove ObjectCache, not yet working in 0.05 |
1748 | - let many_to_many rels have attrs |
1749 | - fix ID method in PK.pm to be saner for new internals |
132f3b89 |
1750 | - fix t/30dbicplain.t to use ::Schema instead of |
1751 | Catalyst::Model::DBIC::Plain |
cd67f809 |
1752 | |
7a1fe534 |
1753 | 0.04999_06 2006-01-28 21:20:32 |
de5e2fe9 |
1754 | - fix Storage/DBI (tried to load deprecated ::Exception component) |
1755 | |
1756 | 0.04999_05 2006-01-28 20:13:52 |
00018e9d |
1757 | - count will now work for grouped resultsets |
1758 | - added accessor => option to column_info to specify accessor name |
a37a4697 |
1759 | - added $schema->populate to load test data (similar to AR fixtures) |
5e8b1b2a |
1760 | - removed cdbi-t dependencies, only run tests if installed |
1761 | - Removed DBIx::Class::Exception |
1762 | - unified throw_exception stuff, using Carp::Clan |
1763 | - report query when sth generation fails. |
a14d1055 |
1764 | - multi-step prefetch! |
1765 | - inheritance fixes |
1766 | - test tweaks |
1767 | |
09aeebca |
1768 | 0.04999_04 2006-01-24 21:48:21 |
1769 | - more documentation improvements |
fac560c2 |
1770 | - add columns_info_for for vendor-specific column info (Zbigniew |
1771 | Lukasiak) |
1772 | - add SQL::Translator::Producer for DBIx::Class table classes (Jess |
1773 | Robinson) |
09aeebca |
1774 | - add unique constraint declaration (Daniel Westermann-Clark) |
1775 | - add new update_or_create method (Daniel Westermann-Clark) |
e46a66f2 |
1776 | - rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance |
1777 | to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table |
09aeebca |
1778 | - minor fixes to UUIDColumns |
6565b410 |
1779 | - add debugfh method and ENV magic for tracing SQL (Nigel Metheringham) |
09aeebca |
1780 | |
151fc9ad |
1781 | 0.04999_03 2006-01-20 06:05:27 |
09aeebca |
1782 | - imported Jess Robinson's SQL::Translator::Parser::DBIx::Class |
fac560c2 |
1783 | - lots of internals cleanup to eliminate result_source_instance |
1784 | requirement |
8bfc3d48 |
1785 | - added register_column and register_relationship class APIs |
1786 | - made Storage::DBI use prepare_cached safely (thanks to Tim Bunce) |
1787 | - many documentation improvements (thanks guys!) |
fac560c2 |
1788 | - added ->connection, ->connect, ->register_source and ->clone schema |
1789 | methods |
5e8b1b2a |
1790 | - Use croak instead of die for user errors. |
8bfc3d48 |
1791 | |
9ce9ec10 |
1792 | 0.04999_02 2006-01-14 07:17:35 |
1793 | - Schema is now self-contained; no requirement for co-operation |
1794 | - add_relationship, relationships, relationship_info, has_relationship |
1795 | - relationship handling on ResultSource |
1796 | - all table handling now in Table.pm / ResultSource.pm |
475978db |
1797 | - added GROUP BY and DISTINCT support |
1798 | - hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract |
1799 | (this may have fixed complex quoting) |
1800 | - moved inflation to inflate_result in Row.pm |
1801 | - added $rs->search_related |
1802 | - split compose_namespace out of compose_connection in Schema |
fea3d045 |
1803 | - ResultSet now handles find |
1804 | - various *_related methods are now ->search_related->* |
1805 | - added new_result to ResultSet |
475978db |
1806 | |
82b1cd1f |
1807 | 0.04999_01 2005-12-27 03:33:42 |
1808 | - search and related methods moved to ResultSet |
1809 | - select and as added to ResultSet attrs |
1810 | - added DBIx::Class::Table and TableInstance for table-per-class |
1811 | - added DBIx::Class::ResultSetInstance which handles proxying |
1812 | search etc. as a superclass of DBIx::Class::DB |
1813 | - assorted test and code cleanup work |
1814 | |
de5d1955 |
1815 | 0.04001 2005-12-13 22:00:00 |
47bd0267 |
1816 | - Fix so set_inflated_column calls set_column |
de5d1955 |
1817 | - Syntax errors in relationship classes are now reported |
c2074366 |
1818 | - Better error detection in set_primary_key and columns methods |
1819 | - Documentation improvements |
1820 | - Better transaction support with txn_* methods |
1821 | - belongs_to now works when $cond is a string |
1822 | - PK::Auto::Pg updated, only tries primary keys instead of all cols |
47bd0267 |
1823 | |
1824 | 0.04 2005-11-26 |
484c9dda |
1825 | - Moved get_simple and set_simple into AccessorGroup |
1826 | - Made 'new' die if given invalid columns |
103647d5 |
1827 | - Added has_column and column_info to Table.pm |
1828 | - Refactored away from direct use of _columns and _primaries |
47bd0267 |
1829 | - Switched from NEXT to Class::C3 |
484c9dda |
1830 | |
2441e56f |
1831 | 0.03004 |
1832 | - Added an || '' to the CDBICompat stringify to avoid null warnings |
5e8b1b2a |
1833 | - Updated name section for manual pods |
3b44ccc6 |
1834 | 0.03003 2005-11-03 17:00:00 |
1835 | - POD fixes. |
1836 | - Changed use to require in Relationship/Base to avoid import. |
1837 | |
1838 | 0.03002 2005-10-20 22:35:00 |
1839 | - Minor bugfix to new (Row.pm) |
1840 | - Schema doesn't die if it can't load a class (Schema.pm) |
1841 | - New UUID columns plugin (UUIDColumns.pm) |
1842 | - Documentation improvements. |
1843 | |
1844 | 0.03001 2005-09-23 14:00:00 |
1845 | - Fixes to relationship helpers |
1846 | - IMPORTANT: prefetch/schema combination bug fix |
1847 | |
1848 | 0.03 2005-09-19 19:35:00 |
1849 | - Paging support |
1850 | - Join support on search |
1851 | - Prefetch support on search |
1852 | |
1853 | 0.02 2005-08-12 18:00:00 |
1854 | - Test fixes. |
1855 | - Performance improvements. |
1856 | - Oracle primary key support. |
1857 | - MS-SQL primary key support. |
1858 | - SQL::Abstract::Limit integration for database-agnostic limiting. |
1859 | |
1860 | 0.01 2005-08-08 17:10:00 |
1861 | - initial release |
fac560c2 |
1862 | |