###
'DBI' => '1.57',
- # on older versions first() leaks
- # for the time being make it a hard dep - when we get
- # rid of Sub::Name will revisit this (possibility is
- # to use Devel::HideXS to force the pure-perl version
- # or something like that)
- 'List::Util' => '1.16',
-
# XS (or XS-dependent) libs
'Sub::Name' => '0.04',
# pure-perl (FatPack-able) libs
'Class::Accessor::Grouped' => '0.10012',
'Class::C3::Componentised' => '1.0009',
- 'Class::Inspector' => '1.24',
- 'Config::Any' => '0.20',
'Context::Preserve' => '0.01',
- 'Data::Dumper::Concise' => '2.020',
'Data::Page' => '2.00',
'Devel::GlobalDestruction' => '0.09',
'Hash::Merge' => '0.12',
'MRO::Compat' => '0.12',
'Module::Find' => '0.07',
'namespace::clean' => '0.24',
- 'Path::Class' => '0.18',
'Scope::Guard' => '0.03',
'SQL::Abstract' => '1.81',
'Try::Tiny' => '0.07',
%{ DBIx::Class::Optional::Dependencies->req_list_for('test_rdbms_sqlite') },
};
-# if the user has this env var set and no SQLT installed, tests will fail
-# Note - this is added as test_requires *directly*, so it gets properly
+# if the user has some of these env vars set and the deps are not available,
+# tests will fail
+# Note - these are added as test_requires *directly*, so they get properly
# excluded on META.yml cleansing (even though no dist can be created from this)
-# we force this req regarless of author_deps, worst case scenario it will
+# we force these reqs regarless of --with-optdeps, worst case scenario they will
# be specified twice
#
-# also note that we *do* set dynamic_config => 0, as this is the only thing
-# that we determine dynamically, and in all fairness if someone sets the
-# envvar *and* is not running a full Makefile/make/maketest cycle - they get
+# also note that we *do* set dynamic_config => 0, as these are the only things
+# that we determine dynamically, and in all fairness if someone sets these
+# envvars *and* is not running a full Makefile/make/maketest cycle - they get
# to keep the pieces
-if ($ENV{DBICTEST_SQLT_DEPLOY}) {
- my $deploy_req = DBIx::Class::Optional::Dependencies->req_list_for('deploy');
- for (keys %$deploy_req) {
- test_requires ($_ => $deploy_req->{$_})
+if ( my @optdeps = (
+ $ENV{DBICTEST_SQLT_DEPLOY} ? 'deploy' : (),
+ $ENV{DBICTEST_VIA_REPLICATED} ? 'replicated' : (),
+)) {
+ my $extra_deps = DBIx::Class::Optional::Dependencies->req_list_for(\@optdeps);
+ for (keys %$extra_deps) {
+ test_requires ($_ => $extra_deps->{$_})
}
}
-tests_recursive (
- 't',
- ( (
- $Module::Install::AUTHOR
- or
- $ENV{DBICTEST_RUN_ALL_TESTS}
- or
- ( $ENV{TRAVIS}||'' ) eq 'true'
- or
- ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL5_CPANM_IS_RUNNING} and ! $ENV{RELEASE_TESTING} )
- ) ? 'xt' : () ),
+tests_recursive ('t');
+tests_recursive ('xt') if (
+ $Module::Install::AUTHOR
+ or
+ $ENV{DBICTEST_RUN_ALL_TESTS}
+ or
+ ( $ENV{TRAVIS}||'' ) eq 'true'
+ or
+ ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL5_CPANM_IS_RUNNING} and ! $ENV{RELEASE_TESTING} )
);
install_script (qw|
config => [qw/gnu_getopt bundling_override no_ignore_case pass_through/]
);
my $args = {
- skip_author_deps => undef,
+ with_optdeps => undef,
};
$getopt->getoptions($args, qw/
- skip_author_deps|skip-author-deps
+ with_optdeps|with-optdeps
/);
if (@ARGV) {
warn "\nIgnoring unrecognized option(s): @ARGV\n\n";
"\t" . $mm_proto->oneliner( qq(\$ENV{PERLIO}='unix' and system( \$^X, qw( -MExtUtils::Command -e dos2unix -- ), $targets ) ) );
};
- # we are in the process of (re)writing the makefile - some things we
- # call below very well may fail
- local $ENV{DBICTEST_NO_MAKEFILE_VERIFICATION} = 1;
-
- require File::Spec;
# string-eval, not do(), because we need to provide the
# $mm_proto, $reqs and $*_requires lexicals to the included file
# (some includes *do* modify $reqs above)
- for my $inc (sort glob ( File::Spec->catfile('maint', 'Makefile.PL.inc', '*') ) ) {
+ for my $inc (sort glob ( 'maint/Makefile.PL.inc/*' ) ) {
my $src = do { local (@ARGV, $/) = $inc; <> } or die $!;
eval "use warnings; use strict; $src" or die sprintf
"Failed execution of %s: %s\n",