},
# a common placeholder for engines with IC::DT support based off DT::F::S
- _icdt_strptime_based => {
+ _ic_dt_strptime_based => {
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::Strptime' => '1.2',
},
'Class::Unload' => '0.07',
'Time::Piece' => '0',
'Time::Piece::MySQL' => '0',
+ 'DBD::mysql' => '4.023',
},
},
},
},
+ config_file_reader => {
+ pod => {
+ title => 'Generic config reader',
+ desc => 'Modules required for generic config file parsing, currently Config::Any (rarely used at runtime)',
+ },
+ req => {
+ 'Config::Any' => '0.20',
+ },
+ },
+
admin => {
- include => '_json_any',
+ include => [qw( _json_any config_file_reader )],
req => {
%$moose_basic,
'MooseX::Types::Path::Class' => '0.05',
},
},
- icdt => {
+ ic_file => {
+ req => {
+ 'Path::Class' => '0.18',
+ },
+ pod => {
+ title => 'DBIx::Class::InflateColumn::File (Deprecated)',
+ desc => 'Modules required for the deprecated L<DBIx::Class::InflateColumn::File>',
+ },
+ },
+
+ ic_dt => {
req => {
'DateTime' => '0.55',
'DateTime::TimeZone::OlsonDB' => 0,
},
},
+ binary_data => {
+ pod => {
+ title => 'Binary datatype support (certain RDBMS)',
+ desc =>
+ 'Some RDBMS engines require specific versions of the respective DBD '
+ . 'driver for binary data support. Note that this group does not '
+ . 'require anything on its own, but instead is augmented by various '
+ . 'RDBMS-specific groups. See the documentation of each rbms_* group '
+ . 'for details',
+ },
+ },
# this is just for completeness as SQLite
# is a core dep of DBIC for testing
desc => 'Modules required to connect to SQLite',
},
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::SQLite' => '0',
},
# centralize the specification, as we have ICDT tests which can
# test the full behavior of RDBMS-specific ICDT on top of bare SQLite
- _icdt_pg_base => {
+ _ic_dt_pg_base => {
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::Pg' => '0.16004',
},
},
},
- icdt_pg => {
- include => [qw( icdt _icdt_pg_base )],
+ ic_dt_pg => {
+ include => [qw( ic_dt _ic_dt_pg_base )],
},
rdbms_pg => {
- include => '_icdt_pg_base',
+ include => '_ic_dt_pg_base',
req => {
- # when changing this list make sure to adjust xt/optional_deps.t
'DBD::Pg' => 0,
},
pod => {
title => 'PostgreSQL support',
desc => 'Modules required to connect to PostgreSQL',
},
+ augment => {
+ binary_data => {
+ req => {
+ 'DBD::Pg' => '2.009002'
+ },
+ }
+ },
},
_rdbms_mssql_common => {
- include => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
},
rdbms_mssql_odbc => {
},
_rdbms_msaccess_common => {
- include => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
},
rdbms_msaccess_odbc => {
# centralize the specification, as we have ICDT tests which can
# test the full behavior of RDBMS-specific ICDT on top of bare SQLite
- _icdt_mysql_base => {
+ _ic_dt_mysql_base => {
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::MySQL' => '0',
},
},
},
- icdt_mysql => {
- include => [qw( icdt _icdt_mysql_base )],
+ ic_dt_mysql => {
+ include => [qw( ic_dt _ic_dt_mysql_base )],
},
rdbms_mysql => {
- include => '_icdt_mysql_base',
+ include => '_ic_dt_mysql_base',
req => {
'DBD::mysql' => 0,
},
desc => 'Modules required to connect to Oracle',
},
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::Oracle' => '0',
},
},
rdbms_ase => {
- include => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
req => {
'DBD::Sybase' => 0,
},
_rdbms_db2_common => {
augment => {
- icdt => {
+ ic_dt => {
req => {
'DateTime::Format::DB2' => '0',
},
},
rdbms_informix => {
- include => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
req => {
'DBD::Informix' => 0,
},
},
_rdbms_sqlanywhere_common => {
- inclide => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
},
rdbms_sqlanywhere => {
},
_rdbms_firebird_common => {
- include => '_icdt_strptime_based',
+ include => '_ic_dt_strptime_based',
},
rdbms_firebird => {
DBICTEST_PG_USER => 0,
DBICTEST_PG_PASS => 0,
],
- req => {
- # the order does matter because the rdbms support group might require
- # a different version that the test group
- #
- # when changing this list make sure to adjust xt/optional_deps.t
- 'DBD::Pg' => '2.009002', # specific version to test bytea
- },
},
test_rdbms_mssql_odbc => {
if ( my $err = $self->req_missing_for($groups) ) {
my ($fn, $ln) = (caller(0))[1,2];
$tb->skip("block in $fn around line $ln requires $err");
- local $^W = 0;
+
+ BEGIN { ${^WARNING_BITS} = "" }
+
last SKIP;
}
join '/', @res;
}
-my $groupname_re = qr/ [A-Z_a-z][0-9A-Z_a-z]* /x;
+my $groupname_re = qr/ [a-z_] [0-9_a-z]* /x;
my $modname_re = qr/ [A-Z_a-z] [0-9A-Z_a-z]* (?:::[0-9A-Z_a-z]+)* /x;
my $modver_re = qr/ [0-9]+ (?: \. [0-9]+ )? /x;
"\n\n---------------------------------------------------------------------\n"
;
- # do not ask for a recent version, use 1.x API calls
- # this *may* execute on a smoker with old perl or whatnot
- require File::Path;
-
(my $modfn = __PACKAGE__ . '.pm') =~ s|::|/|g;
(my $podfn = "$pod_dir/$modfn") =~ s/\.pm$/\.pod/;
- (my $dir = $podfn) =~ s|/[^/]+$||;
- File::Path::mkpath([$dir]);
+ require DBIx::Class::_Util;
+ DBIx::Class::_Util::mkdir_p( DBIx::Class::_Util::parent_dir( $podfn ) );
my $sqltver = $class->req_list_for('deploy')->{'SQL::Translator'}
or die "Hrmm? No sqlt dep?";
my %DBIC_DEPLOY_AND_ORACLE_DEPS = %{ eval {
require $class;
- $class->req_list_for([qw( deploy rdbms_oracle icdt )]);
+ $class->req_list_for([qw( deploy rdbms_oracle ic_dt )]);
} || {} };
\$EUMM_ARGS{PREREQ_PM} = {