Rafael Kitover [Thu, 13 Oct 2011 05:09:25 +0000]
add POD for using non-English databases
Adds POD describing the loader options to use to turn off inflection for
English.
Rafael Kitover [Wed, 12 Oct 2011 15:15:12 +0000]
use full table name for MySQL key cache
Primary/unique key cache now caches by $table->sql_name instead of
$table.
Failure to do so returned the wrong keys for the same table name in
multi-db_schema dumps.
Rafael Kitover [Wed, 12 Oct 2011 14:56:30 +0000]
match case of FK remote database in MySQL
Matches the remote database of a cross-database foreign key in MySQL to
the case of the database in SHOW DATABASES, if it's there and the user
has permissions to run SHOW DATABASES.
Rafael Kitover [Tue, 11 Oct 2011 17:33:22 +0000]
make MySQL FK handling more robust
Now handles FKs to schemas not listed in db_schema, and to tables that
don't exist at all.
Rafael Kitover [Wed, 10 Aug 2011 08:45:13 +0000]
minor fix for 5.8.1
sub {} returns the args it is passed on 5.8.1, so have to use
sub { return () } .
Rafael Kitover [Wed, 28 Sep 2011 19:31:02 +0000]
remove dependency on File::Slurp
The current version of File::Slurp has a "use 5.6.2;" statement. This
throws a warning on perl 5.10.0 which breaks some of our tests. The
statement should be "use 5.006002;".
My attempts to contact the author, Uri Guttman were not successful.
As we have our own convenience method 'slurp_file' in ::Utils now, there
is little need to depend on File::Slurp anymore anyway.
For these reasons the dependency has been removed.
Brian Phillips [Wed, 28 Sep 2011 16:21:25 +0000]
allow constraint/exclude options together
Rafael Kitover [Sat, 24 Sep 2011 19:28:04 +0000]
fix t/backcompat/0.04006 tests
The Oracle driver no longer lowercases table names from the catalog, and
these names are normalized to upper case. The main common tests alias
the lowercase table names for the monikers and classes hashes for this
case; this commit adds the same code to the t/backcompat/0.04006 common
tests (in lib/dbixcsl_common_tests.pm .)
Rafael Kitover [Sat, 24 Sep 2011 14:05:22 +0000]
fix preserve_case tests in common tests
Rescans with preserve_case option reset to the original value after
doing a rescan with preserve_case set to 1 and running the preserve_case
tests.
Failure to do so was breaking the Oracle extra tests.
Peter Rabbitson [Wed, 7 Sep 2011 19:27:00 +0000]
Fix the failing pg tests (unicode wasn't slurped)
Rafael Kitover [Wed, 7 Sep 2011 11:07:26 +0000]
fix backcompat
Fixes generating the old moniker when upgrading from a previous code
version (v4 unsingularized monikers -> singularized.)
t/25backcompat.t passes again.
Rafael Kitover [Tue, 6 Sep 2011 08:21:41 +0000]
fix uninit warn for no pod and result_base_class
Rafael Kitover [Tue, 6 Sep 2011 08:16:11 +0000]
fix multiple DEFAULT NULLs
$info->{default_value} = \'null'
is unsafe because Data::Dump optimizes
refs to constants, so we must make sure to use:
my $null = 'null';
$info->{default_value} = \$null;
for all scalar refs in the dump.
Rafael Kitover [Tue, 6 Sep 2011 07:44:10 +0000]
fix defaults broken by last Pg defaults fix commit
Rafael Kitover [Tue, 6 Sep 2011 07:23:04 +0000]
update Changes with Pg defaults fixes
Rafael Kitover [Tue, 6 Sep 2011 07:18:58 +0000]
improve Pg default handling
Correctly handles these cases:
- <type> DEFAULT NULL
- boolean DEFAULT 0::boolean
Rafael Kitover [Thu, 18 Aug 2011 20:55:09 +0000]
sort unique constraints
Relationships and unique constraints are now sorted by name in the
Result files to cut down on pointless diff spam in version control.
This commit also adds checking for the SCHEMA_LOADER_TESTS_NOCLEANUP
environment variable when removing the test sqlite DBs used by various
tests, this allows for inspecting them with the sqlite3 shell.
Rafael Kitover [Mon, 30 May 2011 20:01:46 +0000]
multi db_schema support
Allows putting multiple schemas or databases and schemas into the
db_schema option. Supports cross-schema foreign keys where available. On
Sybase ASE, MSSQL and Informix multiple databases as well as schemas are
supported (but only Sybase ASE allows cross-database foreign keys.)
Adds the moniker_parts option for resolving name clashes when using
multiple schemas that have tables with the same name.
Table names are now represented by the ::Table class (all the code for
which is in the ::DBObject superclass.) There is also ::Table::Sybase
for Sybase ASE and MSSQL as well as ::Table::Informix for Informix. In
the future other database objects such as sequences may use the
::DBObject class.
Currently there are extra tests for objects in separate schemas and
cross-schema relationships for each database separately, these may later
be merged into the common tests in some fashion.
All database backends are up to date with respect to their capabilities
for fully qualified table names, with some exceptions.
- no support for dblinks in Oracle
- no support for serverlinks in MSSQL
- no support for databases attached as namespaces in SQLite
For SQLite, Firebird and MS Access it is possible to pass a single
db_schema and have DBIC names qualified with it, but this capability is
primarily for testing and deployment.
Rafael Kitover [Wed, 10 Aug 2011 08:58:14 +0000]
silence comment tests
Adds quiet => 1 to loader_options for the comment tests to disable the
"Dumping manual schema..." warnings.
Rafael Kitover [Wed, 10 Aug 2011 08:47:26 +0000]
update Changes with dbicdump config file support
Rafael Kitover [Sun, 7 Aug 2011 12:57:12 +0000]
opt deps for dbicdump config and test
Adds Config::Any to dbicdump_config group in ::Optional::Dependencies
and Config::Any with Config::General to the test_dbicdump_config group.
Adds t/60dbicdump_config.t test for using a config file with dbicdump.
Al Newkirk [Tue, 26 Jul 2011 07:39:52 +0000]
config file support for dbicdump script
Changes dbicdump so that if only one parameter is given it is used as
the config file loaded with Config::Any. The config file must have the
keys schema_class and connect_info, and optionally loader_options.
Rafael Kitover [Fri, 5 Aug 2011 08:44:15 +0000]
pigs don't fly, they just roll around in shit
Revert commit
f1740f1b11e070f4e794fa43c606323d3ef528ab.
Rafael Kitover [Fri, 5 Aug 2011 06:34:28 +0000]
some changes to filter code
Renames filter_generated_text => filter_generated_code.
Changes the filter coderef signature to take the type of file being
filtered, 'schema' or 'result'.
Adds support for setting the option to a string which is used as an
external filter program.
Updates Changes.
Ben Tilly [Wed, 3 Aug 2011 23:24:25 +0000]
adds the ability to filter generated code
Adds the filter_generated_text option which takes a coderef for
filtering the generated code. The coderef takes the class and code as
parameters.
Matt S Trout [Tue, 2 Aug 2011 13:05:43 +0000]
flying pigs. almost as likely as win32 doing what you wanted it to.
Rafael Kitover [Tue, 2 Aug 2011 10:07:38 +0000]
minor changes to table/column comment code
Updates Changes.
Mentions Oracle support in generate_pod POD in ::Loader::Base.
Adds checking for generic comments via ->next::method in ::DBI::Oracle
as well.
Wraps table/column comment queries for MySQL on information_schema in
try blocks, as not all versions of MySQL have information_schema (5.0+
do.)
Changes MySQL comment tests to use the new slurp_file util.
Makes the test messages in t/30_*.t more clear.
Ben Tilly [Fri, 22 Jul 2011 23:03:34 +0000]
generic comments mechanism, MySQL specific support
Adds support for the table_comments and column_comments tables, which
override the db-specific metadata comment support in ::Loader::DBI.
Documents these tables in ::Loader::Base .
Also adds support for MySQL table and column comments from
information_schema.
Rafael Kitover [Mon, 25 Jul 2011 19:28:28 +0000]
fucking pigs broke my Win32 perl
The fucking pigs did something to my Win32 perl so that command line
args with special characters like [] and {} are not parsed correctly.
This problem does not show up for CPAN testers running these tests,
t/23dumpmore.t and t/26dump_use_moose.t .
This commit adds a check for refs in loader options or connect_info in
the t/lib/dbixcsl_dumper_tests.pm test lib, and skips tests on Win32 if
the FUCKING_PIGS environment variable is set.
Rafael Kitover [Mon, 25 Jul 2011 13:02:55 +0000]
support alternate line endings
Adds a utility method slurp_file to ::Utils for reading files in UTF-8
and converting the CRLFs or LFs inside to the platform \n. Changes all
uses of File::Slurp::read_file to slurp_file and changes some regexes to
match \r? at line ends.
Rafael Kitover [Sun, 24 Jul 2011 17:04:15 +0000]
fix t/10_11msaccess_common.t on non-Win32
Changes a "use Win32::OLE" to a require where needed.
Rafael Kitover [Sun, 24 Jul 2011 16:30:17 +0000]
fix backcompat tests
Updates the RelBuilder classes to take into account that
->_inflect_singular and ->_inflect_plural return a list instead of a
scalar now.
Rafael Kitover [Sun, 24 Jul 2011 05:23:03 +0000]
add quiet option
Also adds some improvements to the t/lib/dbixcsl_dumper_tests.pm test
library:
- list warnings if warning count doesn't match
- fixes undefined warning if there are more expected warnings than
received warnings
Rafael Kitover [Sat, 23 Jul 2011 18:15:44 +0000]
make $schema->loader a public method
Also adds some TODO entries, adds Task::Weaken to dependencies and
removes a duplicate dependency on List::MoreUtils.
Ben Tilly [Sat, 9 Jul 2011 19:19:03 +0000]
Removing these files from master because they are not for the next release.
I will recreate them on a branch, as I originally intended to.
Ben Tilly [Thu, 7 Jul 2011 23:46:55 +0000]
Add failing test for feature I want.
Rafael Kitover [Tue, 5 Jul 2011 09:30:55 +0000]
add schema_components option
Rafael Kitover [Tue, 5 Jul 2011 08:00:05 +0000]
sort relationships
Rafael Kitover [Fri, 3 Jun 2011 21:24:55 +0000]
better option validation for result_component_map, result_role_map and rel_collision_map
Rafael Kitover [Tue, 14 Jun 2011 14:53:55 +0000]
add handle for Ben Tilly in CONTRIBUTORS
Rafael Kitover [Tue, 14 Jun 2011 04:37:54 +0000]
add rel_name_map option
Rafael Kitover [Fri, 10 Jun 2011 17:37:16 +0000]
fix syntax error in common tests
Rafael Kitover [Fri, 10 Jun 2011 16:54:56 +0000]
fix the decimal data type for MS Access over ODBC
Rafael Kitover [Fri, 10 Jun 2011 14:24:08 +0000]
handle MySQL enums/sets containing elements with single quotes
Rafael Kitover [Fri, 10 Jun 2011 10:52:55 +0000]
another enum test for MySQL
Rafael Kitover [Fri, 10 Jun 2011 04:55:58 +0000]
fix enum/set detection for MySQL (RT#68717)
Caleb Cushing [Thu, 9 Jun 2011 21:07:20 +0000]
document dumping a remote host
Signed-off-by: Caleb Cushing <xenoterracide@gmail.com>
Rafael Kitover [Thu, 9 Jun 2011 13:44:50 +0000]
fix is_nullable detection on MS Access
Rafael Kitover [Tue, 7 Jun 2011 08:44:02 +0000]
fix POD for scalarref tables
Rafael Kitover [Tue, 7 Jun 2011 07:55:46 +0000]
fix backcompat tests
Rafael Kitover [Tue, 7 Jun 2011 07:49:52 +0000]
fix uniq_to_primary test on DB2 and SQLAnywhere
Rafael Kitover [Tue, 7 Jun 2011 06:02:22 +0000]
improve uniq_to_primary test
Rafael Kitover [Mon, 6 Jun 2011 10:37:11 +0000]
only promote uniqs with non-nullable columns to pks
Rafael Kitover [Fri, 3 Jun 2011 20:22:35 +0000]
run col_accessor_map tests with skip_rels too
Rafael Kitover [Wed, 1 Jun 2011 04:43:25 +0000]
update Changes
Rafael Kitover [Mon, 30 May 2011 20:05:15 +0000]
fix test counts, cleanup new test table
Rafael Kitover [Mon, 30 May 2011 15:29:23 +0000]
added uniq_to_primary option to promote unique keys to primary keys (RT#25944)
Rafael Kitover [Mon, 30 May 2011 14:23:26 +0000]
reset _uniqs_started for POD on rescan
Rafael Kitover [Mon, 30 May 2011 14:08:11 +0000]
generate POD for unique constraints, set_primary_key and table
Rafael Kitover [Sun, 29 May 2011 21:12:04 +0000]
fix t/backcompat/0.04006/23dumpmore.t
Rafael Kitover [Sun, 29 May 2011 20:38:50 +0000]
fix Oracle
Rafael Kitover [Sun, 29 May 2011 20:36:12 +0000]
fix t/23dumpmore.t
Rafael Kitover [Sun, 29 May 2011 15:49:47 +0000]
support arrayrefs for result_namespace and resultset_namespace (RT#40214)
Rafael Kitover [Sun, 29 May 2011 13:34:35 +0000]
fix clasing test dbs
Rafael Kitover [Sat, 28 May 2011 20:20:36 +0000]
fixup POD
Rafael Kitover [Sat, 28 May 2011 15:04:23 +0000]
add more naming options
Rafael Kitover [Sat, 28 May 2011 01:46:05 +0000]
fix warning, fix test counts
Rafael Kitover [Sat, 28 May 2011 00:40:42 +0000]
run the preserve rel name test on MySQL too
Rafael Kitover [Fri, 27 May 2011 14:50:17 +0000]
support quoted PostgreSQL schema names with special chars (RT#64766)
Rafael Kitover [Thu, 26 May 2011 20:54:46 +0000]
automatically turn on quoting for MySQL (RT#60469)
Rafael Kitover [Thu, 26 May 2011 19:50:56 +0000]
become utf8-aware (RT#67920)
Rafael Kitover [Thu, 26 May 2011 13:48:08 +0000]
check for relname accessor collisions on duplicate disambiguation
Rafael Kitover [Thu, 26 May 2011 04:26:12 +0000]
workaround for common tests for MySQL on Win32
Rafael Kitover [Wed, 18 May 2011 02:24:16 +0000]
handle duplicate relationship names (RT#64041)
Rafael Kitover [Tue, 24 May 2011 15:24:33 +0000]
Revert "set cascade_update => 0 on might_have relationships"
This reverts commit
9b1dd93554ec8f70923940e2ae88e2e0260d0b55.
Rafael Kitover [Tue, 24 May 2011 15:15:28 +0000]
set cascade_update => 0 on might_have relationships
Rafael Kitover [Fri, 20 May 2011 10:26:44 +0000]
change a couple references in Base POD to links
Mark A. Stratman [Thu, 19 May 2011 14:46:51 +0000]
Fixed typo in S::L::Base POD
Rafael Kitover [Wed, 18 May 2011 02:30:05 +0000]
add asterisks to items in POD class lists
Rafael Kitover [Tue, 17 May 2011 21:02:24 +0000]
generate POD for result_base_class as well
Rafael Kitover [Tue, 17 May 2011 20:34:38 +0000]
generate POD for additional_classes, additional_base_classes, left_base_classes, components, result_components_map, result_roles and result_roles_map
Rafael Kitover [Tue, 17 May 2011 18:59:41 +0000]
move roles to the end of the generated class so that "requires" works with columns/rels
Rafael Kitover [Tue, 17 May 2011 18:43:19 +0000]
add an extra symbol to the rt59849 test
Rafael Kitover [Tue, 17 May 2011 18:41:01 +0000]
fix CONTRIBUTORS
Rafael Kitover [Mon, 16 May 2011 14:44:12 +0000]
support ->use_namespaces(0) in Loader.pm, fix tests for new dynamic schema behavior
Rafael Kitover [Mon, 16 May 2011 13:50:14 +0000]
logic fail in naming_set check
Rafael Kitover [Mon, 16 May 2011 13:21:56 +0000]
naming_set went into the readonly accessor group by accident, fixed
Rafael Kitover [Mon, 16 May 2011 13:13:04 +0000]
only set use_namespaces=1 if naming is set for dynamic schemas
Mark A. Stratman [Fri, 13 May 2011 17:57:42 +0000]
added result_roles and result_roles_map options, fixed a bug with accessor collision detection from result_components_map components, fixed some common tests
Rafael Kitover [Mon, 16 May 2011 09:34:07 +0000]
rename t/50addl_base_classes.t from Mark Hedges to t/50rt59849.t
Rafael Kitover [Mon, 16 May 2011 08:00:38 +0000]
handle "use warnings FATAL => 'all' and set use_namespaces=1 for dynamic schemas not in backcompat mode (RT#59849)
Rafael Kitover [Thu, 12 May 2011 09:48:29 +0000]
fix mysql rel detection for mixed-case tables on mixed-case filesystems
Rafael Kitover [Thu, 21 Apr 2011 02:22:39 +0000]
support for unicode Firebird data types
Rafael Kitover [Wed, 20 Apr 2011 14:54:58 +0000]
move Firebird ODBC driver ->type_info override into driver
Rafael Kitover [Wed, 20 Apr 2011 14:45:41 +0000]
->type_info fix for buggy Firebird ODBC driver
Rafael Kitover [Thu, 14 Apr 2011 03:02:14 +0000]
bump MooseX::NonMoose dep up to 0.16
Rafael Kitover [Wed, 13 Apr 2011 09:17:18 +0000]
remove Class::Load dependency
Rafael Kitover [Wed, 13 Apr 2011 08:38:16 +0000]
use sprintf for floating point comparisons in common tests
Rafael Kitover [Sat, 9 Apr 2011 20:12:49 +0000]
support for DBD::Firebird
Rafael Kitover [Tue, 29 Mar 2011 00:01:05 +0000]
remove special case for 'meta' method in col accessor collision checks