(travis) Accommodate a slow mirror grrrrr
[dbsrgits/DBIx-Class.git] / maint / travis-ci_scripts / 30_before_script.bash
index a91067a..8fd295e 100755 (executable)
@@ -6,11 +6,16 @@ if [[ -n "$SHORT_CIRCUIT_SMOKE" ]] ; then return ; fi
 # poison the environment
 if [[ "$POISON_ENV" = "true" ]] ; then
 
-  # look through lib, find all mentioned ENVvars and set them
-  # to true and see if anything explodes
-  for var in $(grep -P '\$ENV\{' -r lib/ | grep -oP 'DBIC_\w+' | sort -u | grep -v DBIC_TRACE) ; do
+  # in addition to making sure tests do not rely on implicid order of
+  # returned results, look through lib, find all mentioned ENVvars and
+  # set them to true and see if anything explodes
+  for var in \
+    DBICTEST_SQLITE_REVERSE_DEFAULT_ORDER \
+    $(grep -P '\$ENV\{' -r lib/ --exclude-dir Optional | grep -oP '\bDBIC\w+' | sort -u | grep -v DBIC_TRACE)
+  do
     if [[ -z "${!var}" ]] ; then
       export $var=1
+      echo "POISON_ENV: setting $var to 1"
     fi
   done
 
@@ -18,8 +23,6 @@ if [[ "$POISON_ENV" = "true" ]] ; then
   export DBI_DSN="dbi:ODBC:server=NonexistentServerAddress"
   export DBI_DRIVER="ADO"
 
-  # make sure tests do not rely on implicid order of returned results
-  export DBICTEST_SQLITE_REVERSE_DEFAULT_ORDER=1
 
   # emulate a local::lib-like env
   # trick cpanm into executing true as shell - we just need the find+unpack
@@ -74,15 +77,9 @@ if [[ "$CLEANTEST" = "true" ]]; then
   # handholding
 
   if [[ "$DEVREL_DEPS" == "true" ]] ; then
-    # Many dists still do not pass tests under tb1.5 properly (and it itself
-    # does not even install on things like 5.10). Install the *stable-dev*
-    # latest T::B here, so that it will not show up as a dependency, and
-    # hence it will not get installed a second time as an unsatisfied dep
-    # under cpanm --dev
+    # We are not "quite ready" for SQLA 1.99, do not consider it
     #
-    # We are also not "quite ready" for SQLA 1.99, do not consider it
-    #
-    installdeps 'Test::Builder~<1.005' 'SQL::Abstract~<1.99'
+    installdeps 'SQL::Abstract~<1.99'
 
   elif ! CPAN_is_sane ; then
     # no configure_requires - we will need the usual suspects anyway
@@ -96,13 +93,6 @@ else
   # using SQLT and set up whatever databases necessary
   export DBICTEST_SQLT_DEPLOY=1
 
-  # FIXME - need new TB1.5 devrel
-  # if we run under --dev install latest github of TB1.5 first
-  # (unreleased workaround for precedence warnings)
-  if [[ "$DEVREL_DEPS" == "true" ]] ; then
-    parallel_installdeps_notest git://github.com/nthykier/test-more.git@fix-return-precedence-issue
-  fi
-
   # do the preinstall in several passes to minimize amount of cross-deps installing
   # multiple times, and to avoid module re-architecture breaking another install
   # (e.g. once Carp is upgraded there's no more Carp::Heavy,
@@ -117,9 +107,9 @@ else
   parallel_installdeps_notest Test::Warn 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 Class::Trigger JSON::XS DateTime::Format::Builder Class::Accessor::Grouped Package::Variant
-  parallel_installdeps_notest 'SQL::Abstract~<1.99' Moose Module::Install JSON SQL::Translator File::Which
+  parallel_installdeps_notest SQL::Abstract Moose Module::Install JSON SQL::Translator File::Which Path::Class@0.34
 
-  if [[ -n "DBICTEST_FIREBIRD_INTERBASE_DSN" ]] ; then
+  if [[ -n "$DBICTEST_FIREBIRD_INTERBASE_DSN" ]] ; then
     # the official version is very much outdated and does not compile on 5.14+
     # use this rather updated source tree (needs to go to PAUSE):
     # https://github.com/pilcrow/perl-dbd-interbase
@@ -216,18 +206,7 @@ while (@chunks) {
   fi
 
 else
-
-  # listalldeps is deliberate - will upgrade everything it can find
-  # we exclude SQLA specifically, since we do not want to pull
-  # in 1.99_xx on bleadcpan runs
-  deplist="$(make listalldeps | grep -vP '^(SQL::Abstract)$')"
-
-  # assume MDV on POISON_ENV, do not touch DBI/SQLite
-  if [[ "$POISON_ENV" = "true" ]] ; then
-    deplist="$(grep -vP '^(DBI|DBD::SQLite)$' <<< "$deplist")"
-  fi
-
-  parallel_installdeps_notest "$deplist"
+  parallel_installdeps_notest "$(make listdeps)"
 fi
 
 echo_err "$(tstamp) Dependency installation finished"