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