0d28eb575bac60003a586370d3b91384e3512b4b
[dbsrgits/DBIx-Class-Schema-Loader.git] / Changes
1 Revision history for Perl extension DBIx::Class::Schema::Loader
2
3         - Fix many_to_many bridges with overlapping foreign keys
4         - Add option to allow extra columns in many_to_many link tables
5         - Document how to add perltidy markers via filter_generated_code
6         - Fix DB2 foreign-key introspection
7         - Remove dependency on List::MoreUtils and Sub::Name
8         - Ensure schema files are generated as binary files on Windows
9         - Fix overwrite_modifications not overwriting if the table hasn't changed
10
11 0.07042  2014-08-20
12         - Fix unescaped left braces in regexes in tests
13         - Use undef instead of '%' for the table and type arguments
14           to $dbh->tables (fixes breakage with DBD::Pg 3.4.0)
15
16 0.07041  2014-08-09
17         - Fix many_to_many bridges going back to the same table
18         - Don't disconnect after ->load in static mode
19           (fixes Pg test failure with the upcoming DBIC 0.082800)
20         - Set up Travis smoking (mostly stolen from DBIC)
21
22 0.07040  2014-05-27
23         - Add options to omit the version and timestamp from the
24           generated code (RT#92300)
25         - Skip dumping unique indexes with expressions (RT#93613)
26         - Fix dumping unique indexes with DBD::Pg < 1.50
27         - Fix inconsistent naming of duplicate unique constraints
28         - Avoid clobbering caller's $_ (RT#96010)
29
30 0.07039  2014-01-06
31         - Fix table listing with DBD::DB2 >= 1.85 (RT#91764)
32         - Add accessor for the list of (re)generated classes
33         - Add dry-run mode for static schema creation
34
35 0.07038  2013-11-20
36         - Allow coderef maps to call back into the hashref mapping code
37         - Fix MySQL column info detection with multiple schemas (RT#82358)
38         - Fix skip count for Oracle multi-schema tests
39         - Actually test data types that require separate tables
40         - Fix national character type sizes on DBD::Oracle >= 1.52
41         - Fix detection of qualified sequence names for Oracle (RT#90341)
42
43 0.07037  2013-10-30
44         - Allow overriding individual moniker parts
45
46 0.07036_04 2013-10-24
47         - Set table_class to DBIx::Class::ResultSource::View for views, in
48           supported backends (SQLite, MySQL, and Pg) (arc@cpan.org)
49
50 0.07036_03 2013-10-22
51         - Restore support for PostgreSQL 8.3 (RT#87291)
52         - Fix t/23dumpmore on perl 5.8.8 and earlier
53         - Silence warnings from pure-perl Cwd::abs_path()
54
55 0.07036_02 2013-09-25
56         - Skip many_to_many bridges involving might_have relationships
57
58 0.07036_01 2013-08-11
59         - Fix typos in POD and comments (RT#87644)
60         - Don't ship MYMETA.* files (RT#87713)
61         - Fix many_to_many bridges involving might_have relationships
62         - Allow specifying custom attributes for many_to_many bridges
63         - Allow specifying the separator when joining database, schema
64           and table names to form a moniker
65         - Allow using all the moniker parts in hashref moniker_map
66         - Allow matching all the moniker parts in constraint/exclude
67
68 0.07036  2013-07-08
69         - Fix stray comma in Pg on_delete/on_update => CASCADE (RT#84706)
70         - Fix MySQL enums with empty strings and leading/trailing quotes (RT#86091)
71         - Fix "table" parameter in col_accessor_map callback (RT#84050)
72         - Fix ordering issues in Pg loader
73
74 0.07035  2013-02-26
75         - Release 0.07034_01 with a stable version number. 0.07034 is
76           skipped due to the improper dev release versioning.
77
78 0.07034_01  2013-01-21
79         - Fix fixture generation helper to work with older DBD::SQLite versions
80
81 0.07034_01  2013-01-16
82         - MSSQL: on > 2000 use schema_name() instead of user_name() to detect
83           current schema and query sys.schemas instead of sysusers.
84         - SQL Anywhere: introspect ON DELETE/UPDATE rules, default is now
85           RESTRICT. is_deferrable still defaults to 1
86         - rewrite pg fk introspection to use catalog views instead of
87           information_schema as information_schema does not work for readonly
88           users
89         - add rel_type param for relationship_attrs coderef
90         - pass link table details to rel_name_map for many_to_many bridges (RT#81091)
91
92 0.07033  2012-09-09 16:11:47
93         - more thoroughly document the new behavior for relationship attributes
94           under "relationship_attrs" in ::Base POD
95         - add a loud WARNING to Makefile.PL about the new behavior for
96           relationship attributes
97
98 0.07032  2012-09-09 13:17:20
99         - SQLite: detect is_deferrable for inline FKs
100         - support coderefs for relationship_attrs
101
102 0.07031  2012-09-06 15:07:08
103         - fix 02pod.t failure due to lack of =encoding utf8 statement (patch by
104           Marcel Gruenauer) (RT#79481)
105
106 0.07030  2012-09-06 03:27:09
107         - allow user to set qualify_objects=0 in multischema configurations
108           (andrewalker)
109
110 0.07029  2012-09-05 16:41:56
111         - Oracle: introspect ON DELETE and DEFERRABLE FK clauses
112         - Oracle WARNING: on_delete is now 'NO ACTION' by default, not
113           'CASCADE'. on_update is now 'NO ACTION' by default (Oracle does not
114           have update rules, this was done to preserve the behavior of the
115           schema when cross-deploying to SQLite.) is_deferrable is now
116           0 by default, not 1.
117         - DB2: introspect ON DELETE/UPDATE FK clauses
118         - DB2 WARNING: the default for on_delete/on_update is now 'NO ACTION'
119           not 'CASCADE', the default for is_deferrable is still 1 because DB2
120           does not have deferrable constraints.
121         - SQLite: introspect ON DELETE/UPDATE and DEFERRABLE FK clauses
122         - SQLite WARNING: the default for on_delete/on_update is now 'NO ACTION'
123           not 'CASCADE', and the default for is_deferrable is now 0 not 1.
124
125 0.07028  2012-08-30 05:32:42
126         - MSSQL: introspect ON DELETE/UPDATE clauses for foreign keys
127         - MSSQL WARNING: the default for on_delete/on_update is now 'NO ACTION'
128           not 'CASCADE'.
129
130 0.07027  2012-08-26 22:39:45
131         - PostgreSQL: introspect ON DELETE/UPDATE clauses for foreign keys and
132           the DEFERRABLE clause.
133         - PostgreSQL WARNING: the default for on_delete/on_update attributes for
134           belongs_to relationships is now 'NO ACTION' not 'CASCADE! The default
135           for is_deferrable is now 0 not 1.
136
137 0.07026  2012-08-26 01:01:26
138         - MySQL: introspect ON DELETE/UPDATE clauses for foreign keys.
139         - MySQL WARNING: the default on_delete/on_update attributes for
140           belongs_to relationships is now RESTRICT, *NOT* CASCADE! This is
141           overridable via the relationship_attrs option.
142
143 0.07025  2012-06-08 22:48:05
144         - support SQL Server 2000 again (broken in 0.07011)
145         - some slight optimization for SQL Server driver
146
147 0.07024  2012-05-08 15:35:16
148         - work around broken keyseq in DBD::Pg foreign_key_info (RT#77062)
149
150 0.07023  2012-05-05 11:44:15
151         - properly order FK columns when using base ::DBI loader (SineSwiper)
152         - bump Class::Inspector dep to 1.27 due to test failures with earlier
153           versions on perl >= 5.15.7 (RT#74236)
154
155 0.07022  2012-04-08 12:11:00
156         - do separate queries for default_value on Sybase ASE as some servers
157           can't join to that table (pcmantz) (RT#74170)
158         - set correct size for nchar/nvarchar columns for Sybase ASE,
159           depending on @@ncharsize
160
161 0.07021  2012-04-04 23:47:34
162         - use ::Schema::connect instead of ::Schema::connection in
163           make_schema_at (RT#74175)
164         - register sources on the schema class, never the instance, regardless
165           of how the connection is made for dynamic schemas
166
167 0.07020  2012-03-31 21:34:06
168         - fix some mro issues under perl 5.8
169
170 0.07019  2012-03-28 17:23:09
171         - fix some errors due to case issues (RT#75805)
172
173 0.07018  2012-03-27 05:55:10
174         - skip dbicdump tests on Win32 due to test fails (RT#75732)
175         - fix undefined warnings for DBDs without schemas
176         - work around ORA-24345 from $dbh->column_info
177         - fix spelling mistake in Base POD (RT#74796)
178
179 0.07017  2012-02-07 07:23:48
180         - *EXPERIMENTAL* support for dumping PostgreSQL schemas inside of a
181           transaction
182         - use DBI table_info/column_info REMARKS field if/where available for
183           table/column comments (SineSwiper)
184         - better compatibility with more DBDs (SineSwiper)
185
186 0.07015  2011-12-09 10:36:17
187         - generate many_to_many bridges for targets of link tables
188
189 0.07014  2011-11-18 17:06:34
190         - fix a bug in the automatic multischema clashing moniker disambiguation
191           code that overwrote $loader->moniker_parts
192
193 0.07013  2011-11-17 23:12:47
194         - automatically prefix database/schema to clashing monikers for
195           the same table name in multischema configurations
196
197 0.07012  2011-11-09 15:16:29
198         - as of 0.07011 all callbacks receive a ::Loader::Table or
199           interface-compatible object instead of the table name, this object
200           stringifies to the table name (RT#72260)
201         - fix a bug in dynamic schema_base_class/schema_components
202           implementation that ran the connection method twice on subsequent
203           connects
204         - use a temp file for filter_generated_code with a string program name
205           instead of IPC::Open2, which hangs on Win32 (RT#72226)
206         - previous version referred to the wrong RT# for the uniq_to_primary
207           change, it is actually (RT#51696)
208
209 0.07011  2011-11-01 09:00:00
210         - add -I option to dbicdump
211         - do not delete default custom content comment and ending 1; from custom
212           content in files that are being renamed (RT#70507)
213         - use MooseX::MarkAsMethods instead of namespace::autoclean for the
214           use_moose option, this protects operator overloads, only_autoclean
215           option added for the old behavior
216         - add experimental naming=v8 mode with better CamelCase identifier
217           support, relationship naming and conversion of non-identifier chars
218           (RT#71945)
219         - add naming => { force_ascii => 1 } option for Unicode database names
220         - implement schema_base_class and schema_components for dynamic and
221           working schemas
222         - remove dependency on File::Slurp
223         - allow the constraint and exclude options to be used simultaneously
224           (bphillips)
225         - fix Oracle multi-db_schema unique detection (RT#70851)
226         - fix Oracle common tests fail with multi_schema due to not resetting
227           the preserve_case option after the preserve_case tests (RT#70829)
228         - handle <type> DEFAULT NULL for Pg
229         - handle boolean DEFAULT 0::boolean for Pg
230         - config file support for dbicdump script (alnewkirk)
231         - added filter_generated_code option (RT#53841)
232         - generic table and column comments support
233         - MySQL table and column comments support
234         - support DOS line endings on *nix and *nix line ending on Win32
235         - add quiet option
236         - $schema->loader is now a public method
237         - add schema_components option
238         - sort relationships so they always come out in the same order
239         - also sort unique constraints so they always come out in the same order
240         - multi db_schema support with cross-schema rels (RT#39478)
241         - added moniker_parts option for name clashes in multi db_schema setups
242         - add rel_name_map option
243         - fix the decimal data type for MS Access over ODBC
244         - fix enum/set detection for MySQL (RT#68717)
245         - fix is_nullable detection on MS Access
246         - remove '$table has no primary key' warning
247         - added uniq_to_primary option to promote unique keys to primary keys
248           (RT#25944)
249         - support arrayrefs for result_namespace and resultset_namespace
250           (RT#40214)
251         - add naming => { monikers => 'preserve' } or 'singular'/'plural' to
252           control moniker inflection (RT#44935)
253         - add naming => { column_accessors => 'preserve' } to not normalize
254           CamelCase column names to lower case for accessors (RT#64668)
255         - support quoted PostgreSQL schema names with special chars (RT#64766)
256         - automatically turn on quoting for MySQL (RT#60469)
257         - become utf8-aware (RT#67920)
258         - handle duplicate relationship names (RT#64041)
259         - fix a bug in Sybase ASE foreign key detection
260         - generate POD for result_base_class, additional_classes,
261           additional_base_classes, left_base_classes, components,
262           result_components_map, result_roles, result_roles_map, unique
263           constraints, set_primary_key and table
264         - rename result_component_map to result_components_map (old name still
265           works)
266         - fix accessor collision detection for methods from
267           result_components_map components
268         - add result_roles and result_roles_map options
269         - fix for mysql rel detection in mixed-case tables on mixed-case
270           filesystems (OSX and Windows)
271         - support for DBD::Firebird
272         - support for unicode Firebird data types
273         - handle "use warnings FATAL => 'all';" in custom/external content
274           (RT#59849)
275         - for dynamic schemas, if the naming option is set, will automatically
276           turn on use_namespaces=1 as well. Set use_namespaces=0 to disable
277           this behavior (RT#59849)
278
279 0.07010  2011-03-04 08:26:31
280         - add result_component_map option
281
282 0.07009  2011-02-25 11:06:51
283         - fix a syntax error in MS Access ADO driver
284
285 0.07008  2011-02-25 01:54:43
286         - rename column_accessor_map to col_accessor_map, the old alias still
287           works
288         - support MSSQL over DBD::ADO
289         - support for MS Access over DBD::ODBC and DBD::ADO
290
291 0.07007  2011-02-15 10:00:07
292         - bump DBIx::Class dep to 0.08127
293         - fix MSSQL data types for native client and EasySoft driver
294
295 0.07006  2011-02-01 02:18:32
296         - turn unloading of RelBuilder temp classes back on, now with proper
297           check for class existance using Class::Inspector->loaded
298         - bump up dep on namespace::clean to avoid breakage with earlier
299           versions (RT#65149)
300
301 0.07005  2011-01-25 23:07:55
302         - support extra connect_info options like quote_char for dbicdump
303         - fix breakage on perl 5.8.x related to unloading temporary classes
304
305 0.07004  2011-01-24 03:43:05
306         - fix bug with result class methods being cached on in a closure instead
307           of the object, which breaks for multiple dynamic schemas in a single
308           perl instance
309
310 0.07003  2011-01-21 06:43:05
311         - fix relname/method collisions (RT#62648)
312         - fix fully qualified component classes (RT#62624)
313         - improve sybase/mssql db_schema detection
314         - remove MooseX::NonMoose from Schema files under use_moose=1
315         - better _tables_list for Sybase ASE
316         - add datetime_undef_if_invalid => 1 for MySQL datetime data types
317           (RT#64820) This behavior can be turned off by passing
318           datetime_undef_if_invalid=0 as a loader option
319         - added column_accessor_map option
320         - Preserve relationship names when redumping and another FK is added
321           (RT#62424)
322         - Remove resultset_components as ResultSetManager is deprecated
323         - Fix a fail when very old Moose/CMOP is installed
324         - Added warning for column-accessor collisions, doc section in ::Base
325           ("COLUMN ACCESSOR COLLISIONS") and the col_collision_map option.
326         - Handle column accessor collisions with UNIVERSAL methods
327         - Generate custom_type_name hint for PostgreSQL enums, as used
328           by very recent SQL::Translator
329         - Added support for PostgreSQL enum types
330         - Added table/column comment support for Oracle
331         - Fix missing require (RT#62072)
332
333 0.07002  2010-09-11 01:48:00
334         - Properly detect a schema loaded with use_moose on subsequent
335           reloads
336         - Die with a sensible message when a schema loaded with
337           use_moose => 1 is reloaded with use_moose => 0
338         - Switch to MRO::Compat
339         - Fix oracle common tests failure / lc(undef) warnings
340         - Bump Moose/Moosex::NonMoose optional dependencies to fixed-up
341           versions
342         - Fix mssql common tests failures with MSSQL 2005 (skip test of
343           datatypes found only on MSSQL 2008)
344         - Fix DB2 v8 test failures (skip tests of graphics types found
345           only on DB2 v9)
346         - Fix dangerous invocation of ->meta on classes during upgrade
347           (may be *non* moosified and contain a user-defined meta() )
348         - Multiple test cleanups and refactorings
349
350 0.07001  2010-07-24 21:28:08
351         - put is_deferrable => 1 back into default attributes for belongs_to
352         - fix Postgres sequence detection for qualified sequences
353         - detect DOS line ends in table/column comments and convert to \n
354         - added use_moose option
355         - always mark pk columns is_nullable=0
356         - fix unique constraint names for SQLite (actual names break ->deploy)
357         - fix bug in qualify_objects that would add schema to relnames
358         - better type info for Informix, except for DATETIME precision and
359           INTERVAL support
360         - better type info for DB2
361         - fix some newly-introduced test bugs
362         - fix composite PKs getting marked is_auto_increment on SQLite
363
364 0.07000  2010-05-22 23:40:15
365         - added qualify_objects option to prepend db_schema to table names
366         - fix for negative numeric default values
367         - sequence is detected for Oracle
368         - fix for SQLite is_auto_increment detection when table is empty (hobbs)
369         - rescan now reloads all tables
370         - minor type info improvements for all DBs
371         - fix erroneous default_value for MySQL NOT NULL columns (RT#57225)
372         - remove is_deferrable => 1 from default for belongs_to rels
373         - better type info for Oracle
374         - preliminary Informix support
375         - unregister dropped sources on rescan
376         - added 'preserve_case' option with support for all DBs where it makes
377           sense; removed the MSSQL 'case_sensitive_collation' and the
378           Firebird/InterBase 'unquoted_ddl' options in favor of it.
379         - support CamelCase table names and column names (in case-preserving
380           mode) at the v7 naming level
381         - rewrite datetime default functions as \'current_timestamp' where
382           possible (except for Sybase ASE) to ease cross-deployment
383         - use column_info instead of select to get Oracle column list (RT#42281)
384         - match quotes in MySQL parser in more places (RT#42101)
385         - fix unique detection in DB2 for multiple schemas (RT#39622)
386         - fix column name collisions with methods (RT#49443)
387         - fix loading MySQL views on older MySQL versions (RT#47399)
388
389 0.06001  2010-04-10 01:31:12
390         - fix type info for MSSQL
391         - fix MSSQL collation detection on freetds tds version 8.0
392
393 0.06000  2010-04-06 01:12:25
394         - better type info for MySQL
395         - initial MySQL data type tests (jhannah)
396         - don't set result_namespace if it's 'Result'
397         - support for MSSQL databases with case sensitive collation, manually
398           overridable with 'case_sensitive_collation' option
399         - do not try to detect driver and rebless when used with a custom
400           'loader_class'
401         - suppress 'bad table or view' warnings for filtered tables/views
402         - croak if several tables reduce to an identical moniker (ribasushi)
403         - better type info for Sybase ASE
404         - better type info for Pg: sets sequence for serials, handles numerics
405           without precision
406         - better _tables_list for MSSQL
407         - pick up views in SQLite too
408         - better rel inflection using Lingua::EN::Inflect::Phrase
409         - cascade_delete and cascade_copy are turned off for has_many/might_have
410           by default, and belongs_to has on_delete => 'CASCADE', on_update =>
411           'CASCADE' and is_deferrable => 1 by default, overridable via
412           relationship_attrs
413         - added config_file option for loading loader options from a file
414         - set inflate_datetime => 1 for 'AS getdate()' computed columns in
415           Sybase
416         - Firebird support
417         - use introspection pragmas instead of regexes to introspect SQLite
418           (hobbs)
419         - generate POD for refs correctly from column_info
420         - fix tables list, fk introspection and type info for SQL Anywhere
421
422 0.05003  2010-02-20 05:19:51
423         - support for custom_column_info, datetime_timezone and datetime_locale
424           (rbo)
425         - improve parsing of SQLite tables when a column definition
426           spans multiple lines (hobbs)
427         - fix missing trailing _id stripping for some relationship
428           names (rbuels)
429         - fixed accessor POD bug, was not dereferencing scalar refs
430           before printing (rbuels)
431
432 0.05002  2010-02-15 10:17:47
433         - support for SQLAnywhere via DBD::SQLAnywhere and ODBC
434         - fix picking up quoted tables for SQLite (RT#54538) patch from schwern
435         - validate class/component loader_options to make sure classes
436           are available before generating the schema, patch from bphillips
437
438 0.05001  2010-02-05 14:29:27
439         - correct default_value for all backends with common tests
440         - fix bug with quoted Pg tables from $dbh->tables (RT#54338)
441         - add inflate_datetime => 0 to 'timestamp' types for Sybase
442
443 0.05000  2010-02-01 09:24:24
444         - better data_type, default_value and size for Sybase
445         - added 'generate_pod' option, defaults to on
446         - added 'pod_comment_mode' and 'pod_comment_spillover_length' to
447           control table comment generation (waawaamilk)
448
449 0.04999_14  2010-01-14 06:47:07
450         - use_namespaces now default, with upgrade/downgrade support
451         - filter out un-selectable tables/views
452         - fix NUMERIC/DECIMAL size column_info for postgres
453         - now mentions skip_load_external feature in comments (jhannah)
454         - moniker_map POD correction (jhannah)
455
456 0.04999_13  2010-01-03 12:32:25
457         - exclude 'size' column_info for postgres when unnecessary, and
458           use the correct precision for varying types (except NUMERIC)
459         - 'naming' attribute and backward compatibility with 0.04006
460         - added relationship_attrs option for setting attributes in
461           generated relationships
462         - added overwrite_modifications option that ignores md5sums on
463           generated code
464         - added skip_load_external (jhannah)
465         - remove Class::Data::Accessor and Class::Accessor::Fast and switch
466           everything to Class::Accessor::Grouped (jhannah)
467         - better handling of db_schema for Oracle, based on (RT#35732)
468
469 0.04999_12  2009-11-30 23:36:14
470         - fix MySQL rel introspection with on_connect_call =>
471           'set_strict_mode' (RT#52087)
472         - now using base 'DBIx::Class::Core' for Results (RT#52141)
473
474 0.04999_11  2009-11-29 18:08:46
475         - added patch to generate POD from postgres by Andrey Kostenko (GUGU)
476         - added test for norewrite feature
477         - fix default_value for MSSQL
478
479 0.04999_10  2009-10-31 12:28:53
480         - patch from Robert Bohne to make _table_uniq_info more correct for
481           Oracle
482         - fix data_type for identity columns with MSSQL
483
484 0.04999_09  2009-10-08
485         - Only redump the files when something has actually changed
486         - Place a warning at the top of the files saying 'do not modify' to
487           match the one at the bottom of the auto-gen'd section
488
489 0.04999_08  2009-08-28
490         - Replace UNIVERSAL::require with Class::C3::Componentised
491         - Add Sybase/MSSQL support through DBD::Sybase
492         - use $dbh->get_info(29/41) for qote_car/name_sep if available (semifor)
493         - add MSSQL support through DBD::ODBC
494         - support MSSQL table names with a '.' in the name
495         - support MySQL CURRENT_TIMESTAMP()
496
497 0.04999_07  2009-04-18
498         - Add result_base_class and schema_base_class options (RT #43977)
499         - Ignore duplicate uniq indices (including duplicates of the PK).
500         - Fix for DBD::SQLite 1.20
501         - Fix for DBIx::Class 0.08100
502
503 0.04999_06  Tue Nov 11, 2008
504         - Singularise table monikers by default
505         - Strip trailing _id from single-column belongs_to relationships
506         - Add "dbicdump" script for easy commandline dumping
507         - Throw out the in-memory class generation, just dump to a temporary
508           directory if the user didn't specify one
509         - Fix Oracle constraint and auto-increment detection for non-owned schemas
510           (RT #35732)
511         - Handle ResultSetManager deprecation warning in common tests
512
513 0.04999_05  Mon Apr 14, 2008
514         - Fix limiting table list to the specified schema for DB2
515         - Default db_schema to the username for DB2
516         - Allow specifying a custom loader_class, overriding the
517           storage_type-based detection
518         - Cosmetic fixes to dumping of externally defined classes
519         - Make ResultSetManager notice externally defined :ResultSet methods
520         - Fix test failure for non-InnoDB MySQL due to wrong skip count
521         - Fix base class ordering in dumped classes
522         - Run the common tests against both dynamic and dumped versions of
523           the schema
524
525 0.04999_04  Wed Mar 12, 2008
526         - Add is_auto_increment detecton for DB2
527
528 0.04999_03  Wed Mar 12, 2008
529         - Fix DB2 support
530
531 0.04999_02  Tue Feb 12, 2008
532         - Add is_auto_increment detection for Oracle
533         - Unnhide the Oracle module now that the CPAN perms are sorted
534           out. Thanks to Tsunoda Kazuya for the quick response.
535
536 0.04999_01  Tue Feb 5, 2008
537         - Mark foreign key columns with is_foreign_key => 1
538         - Add support for vendor-specific extra column attributes.
539         - Add support for extra => { unsigned => 1 } for MySQL.
540         - Add support for enum value lists for MySQL
541         - Set join_type => 'LEFT OUTER' for nullable foreign keys
542           (patch from Bernhard Weißhuhn)
543         - Set is_auto_increment for auto-increment columns (RT #31473)
544           (Only SQLite, MySQL and PostgreSQL are currently supported)
545         - Generate one-to-one accessors for unique foreign keys (ilmari)
546         - Add support for load_namespaces-style class layout
547         - Fix test skip count for main skip_rels block
548         - Fix auto-inc column creation for the Oracle tests
549         - Fix column ordering in unique constraints for Oracle
550         - Fix Win32 test skip counts for good (RT #30568, Kenichi Ishigaki)
551         - Default Oracle db_schema to db username (patch
552           from Johannes Plunien)
553
554 0.04003  Wed Oct 4, 2007
555         - Prevent users from running Kwalitee test automatically
556         - Fix extra whitespace being added to output on
557           regeneration (from ilmari)
558
559 0.04002  Tue Jul 24, 2007
560         - rescan method now returns the actual list of new tables
561           loaded (previously, the return value wasn't taking
562           constraint/exclude into account, even though the meat
563           of the operation was).
564         - Hid the Oracle module so that search.cpan.org will stop
565           ignoring this package, temporary fix until perms are
566           sorted out
567         - Fix Win32 test skip counts (RT #27715, Alexandr Ciornii)
568         - Fix a small output quoting bug (RT #28073, Tokuhiro Matsuno)
569
570 0.04001  Tue Jun 26, 2007
571         - Deprecated dump_overwrite.  The changed behavior from
572           0.03xxx was confusing.
573         - Added new option really_erase_my_files, which does what
574           dump_overwrite did in 0.04000, which is not what it did
575           in 0.03xxx.
576
577 0.04000  Thu Jun 7, 2007
578         - Added some env vars for controlling the Makefile.PL feature
579           questions, to make automation easier.
580
581 0.03999_02  Tue May 22, 2007
582         - Converted to Module::Install
583
584 0.03012  Tue May 22, 2007
585         - Relationship names for multiple multi-col rels between
586           the same table fixed by ilmari
587         - Fix from Marc Espie for CREATE TABLE 'foo' for SQLite
588         - skip ^sqlite_ tables in SQLite (thanks chromatic)
589
590 0.03999_01  Sat Apr 14 19:57:40 GMT 2007
591         - Added *experimental* Oracle support from work done
592           by Tsunoda Kazuya some months ago.  Not well tested.
593         - Added "rescan" schema (and loader) method, which picks
594           up newly created tables at runtime
595         - Made dump_to_dir / dump_overwrite much more intelligent
596           (they now preserve customizations by default)
597         - Added support for DBI's new standard "statistics_info"
598           method to gather unique key info (only supported by
599           DBD::Pg trunk afaik)
600         - columns_info_for imported from DBIx::Class
601         - relationships are now on by default, use skip_relationships
602           to disable them
603         - Removed previously deprecated methods/options
604         - Added $VERSION to all packages in this dist
605
606 0.03011  Sat Apr 14 19:03:07 UTC 2007
607         - fix case-sensitivity in UNIQUE parsing for SQLite
608
609 0.03010  Thu Mar 29 12:36:19 UTC 2007
610         - Workaround for new incompatible changes in DBD::mysql's "tables"
611           method, which was causing us to find no tables w/ DBD::mysql
612           4.002+
613         - Fixed quoting problem in _table_columns (could cause crash when
614           dumping/doing a static create) (from ash)
615
616 0.03009  Wed Nov 15 14:03:37 UTC 2006
617         - fix for rt.cpan.org #22425 (use File::Spec where appropriate)
618         - use full instead of short classnames in relationships (from victori)
619
620 0.03008  Fri Oct 20 18:08:20 UTC 2006
621         - fix for rt.cpan.org #21084 (dump_overwrite pathological output recursion)
622         - fix for rt.cpan.org #21758 (mysql reserved words as table names)
623         - fix for rt.cpan.org #21025 (SQLite FK parsing)
624         - workaround for rt.cpan.org #21746 ($Class::Accessor::Fast::VERSION issues)
625
626 0.03007  Thu Jul 27 16:19:59 UTC 2006
627         - Kill erroneous warning about connect/loader_options order (the real
628           case is warned about elsewhere)
629         - Fix t/22dump to work around ActiveState issues
630
631 0.03006  Wed Jul 26 00:14:58 UTC 2006
632         - Fixed column-case issue w/ columns_info_for
633
634 0.03005  Wed Jul 19 15:09:30 UTC 2006
635         [ Pretty much everything in this release originates from nilsonsfj patches ]
636         - bugfix: mysql unique constraint code had an
637           obvious but longstanding error
638         - bugfix: columns were being specified out-of-order,
639           bug was introduced in the 0.03004 column metadata
640           dumping feature
641         - dump code now skips+warns instead of dies when
642           dump_overwrite not set
643
644 0.03004  Tue Jul 11 04:38:09 UTC 2006
645         - make_schema_at efficiency improvements
646         - improved debugging output
647         - column metadata now included in dumped schemas
648         - Carp::Clan added, and some dies converted to croaks
649         - no longer overwrites files when dumping, unless asked
650           to do so via the dump_overwrite option
651         - loader_options can now be embedded in the connection info
652         - Documentation improvements
653         - Deprecation notices updated, most things that became
654           "deprecated" in 0.03 are now marked for death in 0.04000
655         - All deprecated usage patterns should now generate annoying
656           warnings (most did before).
657         - Somewhat improved test coverage
658
659 0.03003  Tue Jun  6 02:22:49 UTC 2006
660         - Fix inclusion of external add-on class definitions
661           in dump_to_dir output.
662
663 0.03002  Tue Jun  6 01:27:25 UTC 2006
664         - rethrow exceptions that occur during make_schema_at
665
666 0.03001  Mon Jun  5 23:17:57 UTC 2006
667         - load_from_connection deprecation notice now mentions
668           upgrading Catalyst::Model::DBIC::Schema if that module
669           seems to be in use.
670         - DBIx::Class required version number fixed
671         - Loader statement caching for better load-time performance
672         - Improved Pg unique index loader, based on RDBO
673
674 0.03000  Tue May 23 12:56:05 UTC 2006
675         - weakened the circular schema reference
676
677 0.02999_10  Mon May 22 18:58:20 UTC 2006
678         - a few more small bugfixes
679         - more dump/debug improvements
680         - new exportable function "make_schema_at"
681
682 0.02999_09  Sun May 21 23:26:58 UTC 2006
683         - More docs improvements
684         - default uniq_info just warns and returns nothing now,
685           instead of dying.  In theory, this allows unsupported
686           DBD drivers to potentially work with this module, if
687           the generic methods happen to work for that vendor.
688         - New tests for the various current and legacy/deprecated
689           methods of connecting a Schema::Loader class/object.
690         - Bugfix to the new runtime object connect/load code.
691
692 0.02999_08  Sat May 20 22:36:45 UTC 2006
693         - support for dumping to a directory for
694           conversion to manual DBIx::Class::Schema
695         - improved debugging output
696         - more documentation updates
697         - more backwards compatibility fixes
698         - runtime connection definitions (and cloning) work fine now.
699         - A couple of bugfixes related to db vendor "schemas", including
700           a fix for http://rt.cpan.org/Public/Bug/Display.html?id=19164
701
702 0.02999_06  Thu May 18 16:32:41 UTC 2006
703         - backwards compat with all earlier versions
704         - no longer requires schema class to have a connection
705         - correctly determine source class names in the rel code generator
706         - fixed mysql testing w/o InnoDB
707         - Writing guide updated
708         - docs updated
709         - various trivial updates / fixes
710
711 0.02999_05  Sun Mar 26 06:46:09 UTC 2006
712         - bugfixes to constraint/exclude code
713         - friendly warnings if we don't find any tables
714         - inflect_map becomes inflect_plural and inflect_singular
715         - Singularize relationship names where appropriate
716         - Test updates
717         - Supports multiple rels between the same pair of tables
718
719 0.02007  Wed Mar 22 06:03:53 UTC 2006
720         - Backported Class::C3::reinitialize changes from -refactor
721           branch, resulting in significantly reduced load time
722
723 0.02006  Fri Mar 17 04:55:55 UTC 2006
724         - Fix long-standing table/col-name case bugs
725
726 0.02999_04  Fri Mar 17 03:55:09 UTC 2006
727         - Fixed case-sensitivity issues for table/col names
728         - Punt columns_info_for to ->storage
729         - Large loading speedup (get rid of redundant C3 reinits)
730         - Removed TEST_POD checks
731         - Removed unneccesary storage->disconnect
732
733 0.02999_03  Mon Mar 13 15:01:11 UTC 2006
734         - Added EXAMPLE section to pod [Kieren Diment]
735         - Invasive heavy changes to the DBI- and vendor-specific code
736           (expect some breakage in some cases until this settles down)
737         - Support for loading UNIQUE constraints
738         - Tests cleaned up a bit
739         - Relationship building seperated out into it's own file for
740           the changes that are coming, but still does basically what
741           it did before (this work is the next step).
742
743 0.02999_02  Sat Mar  4 16:53:21 UTC 2006
744         - Merged in relevant changes from trunk since the split
745
746 0.02005  Mon Feb 27 23:53:17 UTC 2006
747         - Move the external file loading to after everything else
748           loader does, in case people want to define, override, or
749           build on top of the rels.
750
751 0.02004  Mon Feb 27 23:53:17 UTC 2006
752         - Minor fix to debugging message for loading external files
753
754 0.02999_01  Sun Feb 28 00:24:00 UTC 2006
755         - Shuffle the modules around
756         - Make ourselves theoretically storage_type-agnostic
757         - Remove the _db_classes stuff, bump PK::Auto to Base
758         - Change default inflections to Lingua::EN::Inflect::Number::to_PL()
759
760 0.02003  Sun Feb 19 20:42:01 UTC 2006
761         - Deprecated arguments: dsn, user, password, options
762         - New argument: connect_info
763
764 0.02002  Sat Feb 18 19:53:12 UTC 2006
765         - Added moniker_map and inflect_map
766
767 0.02001  Fri Feb 17 20:25:40 UTC 2006
768         - tests fixed up a bit
769         - auto-loading of on-disk class definitions layered on top
770           of the generated definitions (create Foo::Schema::Bar, then
771           also try to ->require it if it exists on disk).
772         - new parameters components and resultset_components, which do
773           the obvious for the generated table classes.
774         - DBIx::Class pre-req bumped to 0.05006, since Schema::Loader
775           is virtually gauranteed to cause subtle mod_perl problems
776           without those fixes.
777
778 0.02000  Sun Feb 12 22:43:47 UTC 2006
779         - Just docs/version update, 0.01004 code released as 0.02000
780
781 0.01004  Tue Feb  7 03:58:01 UTC 2006
782         - No longer tries to parse out the table name from the dsn for mysql,
783           was unneccesary vestigial code from previous method.
784
785 0.01003  Mon Feb  6 14:57:56 UTC 2006
786         - Fixed the has_many side of _make_cond_rel
787
788 0.01002  Fri Feb  3 23:14:38 UTC 2006
789         - Email address typo :(
790
791 0.01001  Fri Feb  3 05:15:41 UTC 2006
792         - Fixed up some documentation issues
793         - Load C3 at the right time
794
795 0.01  Fri Feb  3 01:53:46 UTC 2006
796         - original release
797         - created from DBIx::Class::Loader 0.14