X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=maint%2Ftravis-ci_scripts%2F30_before_script.bash;h=0dcbccae4cc6536785579e82b680fd4216e9c2ce;hb=11343b34c7d3278f087f81d9bb281512d55b34c9;hp=07b83f026c9d680db64d08a3f63f7979c1c4014f;hpb=5cbe5b1216f07b5e329f493bd8bdfa5b0aa0f5eb;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/maint/travis-ci_scripts/30_before_script.bash b/maint/travis-ci_scripts/30_before_script.bash index 07b83f0..0dcbcca 100755 --- a/maint/travis-ci_scripts/30_before_script.bash +++ b/maint/travis-ci_scripts/30_before_script.bash @@ -3,6 +3,15 @@ source maint/travis-ci_scripts/common.bash if [[ -n "$SHORT_CIRCUIT_SMOKE" ]] ; then return ; fi +# try Schwern's latest offering on a stock perl and a threaded blead +# can't do this with CLEANTEST=true yet because a lot of our deps fail +# tests left and right under T::B 1.5 +if [[ "$CLEANTEST" != "true" ]] && ( [[ -z "$BREWVER" ]] || [[ "$BREWVER" = "blead" ]] ) ; then + # FIXME - there got to be a way to ask metacpan for this dynamically + TEST_BUILDER_BETA_CPAN_TARBALL="M/MS/MSCHWERN/Test-Simple-1.005000_005.tar.gz" +fi + + if [[ "$CLEANTEST" = "true" ]]; then # get the last inc/ off cpan - we will get rid of MI # soon enough, but till then this will do @@ -16,6 +25,12 @@ if [[ "$CLEANTEST" = "true" ]]; then mv ~/.cpanm/latest-build/DBIx-Class-*/inc . + # this should be installable anywhere, regardles of prereqs + if [[ -n "$TEST_BUILDER_BETA_CPAN_TARBALL" ]] ; then + run_or_err "Pre-installing dev-beta of Test::Builder ($TEST_BUILDER_BETA_CPAN_TARBALL)" \ + "cpan $TEST_BUILDER_BETA_CPAN_TARBALL" + fi + # older perls do not have a CPAN which understands configure_requires # properly and what is worse a `cpan Foo` run exits with 0 even if some # modules failed to install @@ -55,17 +70,15 @@ else # parallel_installdeps_notest ExtUtils::MakeMaker parallel_installdeps_notest Carp - parallel_installdeps_notest Module::Build - parallel_installdeps_notest Module::Runtime ExtUtils::Depends File::Spec Data::Dumper - parallel_installdeps_notest Test::Exception LWP - parallel_installdeps_notest Test::Fatal Test::Warn bareword::filehandles - parallel_installdeps_notest namespace::clean Class::XSAccessor MRO::Compat - parallel_installdeps_notest DBD::SQLite Moo Class::Accessor::Grouped - parallel_installdeps_notest Module::Install DateTime::Format::Strptime - parallel_installdeps_notest JSON::DWIW JSON JSON::XS Test::Pod::Coverage Test::EOL - parallel_installdeps_notest MooseX::Types JSON::Any Class::DBI - - if [[ -n "DBICTEST_FIREBIRD_DSN" ]] ; then + parallel_installdeps_notest Module::Build ExtUtils::Depends + parallel_installdeps_notest Module::Runtime File::Spec Data::Dumper + parallel_installdeps_notest Test::Exception Encode::Locale Test::Fatal + parallel_installdeps_notest Test::Warn bareword::filehandles B::Hooks::EndOfScope Test::Differences HTTP::Status + parallel_installdeps_notest Test::Pod::Coverage Test::EOL Devel::GlobalDestruction Sub::Name MRO::Compat Class::XSAccessor URI::Escape HTML::Entities + parallel_installdeps_notest YAML LWP Moo Class::Trigger JSON::XS DBI DateTime::Format::Builder + parallel_installdeps_notest Moose Class::Accessor::Grouped Module::Install JSON Package::Variant + + if [[ -n "DBICTEST_FIREBIRD_DSN" ]] ; then # the official version is full of 5.10-isms, but works perfectly fine on 5.8 # pull in our patched copy run_or_err "Fetching patched DBD::Firebird" \ @@ -97,9 +110,11 @@ if [[ "$CLEANTEST" = "true" ]]; then ##### TEMPORARY WORKAROUNDS - # not sure what's going on here yet + # The unicode-in-yaml bug on older cpan clients + # FIXME there got to be a saner way to fix this... perl -M5.008008 -e 1 &> /dev/null || \ - parallel_installdeps_notest multidimensional bareword::filehandles + run_or_err "Installing multidimensional and bareword::filehandles via cpanm" \ + "cpanm multidimensional bareword::filehandles" # work around Params::Validate not having a Makefile.PL so really old # toolchains can not figure out what the prereqs are ;( @@ -117,6 +132,10 @@ if [[ "$CLEANTEST" = "true" ]]; then else # listalldeps is deliberate - will upgrade everything it can find parallel_installdeps_notest $(make listalldeps) + + if [[ -n "$TEST_BUILDER_BETA_CPAN_TARBALL" ]] ; then + parallel_installdeps_notest $TEST_BUILDER_BETA_CPAN_TARBALL + fi fi echo_err "$(tstamp) Dependency configuration finished"