From: Peter Rabbitson Date: Thu, 19 May 2016 14:49:41 +0000 (+0200) Subject: (travis) Bump to Cperl 5.22.2 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=commitdiff_plain;h=d699fb200cf56bab115f1fafc2573624d4bd7cd4 (travis) Bump to Cperl 5.22.2 @miyagawa++ # YAML api - allows for trivial grep/sed slicing and dicing Read under -w --- diff --git a/.travis.yml b/.travis.yml index 93ec06b..fe1c571 100644 --- a/.travis.yml +++ b/.travis.yml @@ -206,7 +206,8 @@ matrix: # MAKE SURE TO KEEP THE FLAGS IDENTICAL TO CPERL BELOW # allows for easier side-by-side comparison - - perl: "5.22.1_thr_qm" + # vcpu=1 for even more stable results + - perl: "5.22.2_thr_qm" # explicit new infra spec preparing for a future forced upgrade # also need to pull in a sufficiently new compiler for quadmath.h sudo: required @@ -216,7 +217,7 @@ matrix: - CLEANTEST=true - POISON_ENV=true - MVDT=false - - BREWVER=5.22.1 + - BREWVER=5.22.2 - BREWOPTS="-Duseithreads -Dusequadmath" ### @@ -224,18 +225,18 @@ matrix: # MAKE SURE TO KEEP THE FLAGS IDENTICAL TO STOCK 5.22.1 ABOVE # allows for easier side-by-side comparison - - perl: "cperl-5.22.1_thr_qm" + # vcpu=1 for even more stable results + - perl: "cperl-5.22.2_thr_qm" # explicit new infra spec preparing for a future forced upgrade # also need to pull in a sufficiently new compiler for quadmath.h sudo: required dist: trusty env: - # FIXME - work around https://github.com/perl11/cperl/issues/131 - VCPU_USE=1 - CLEANTEST=true - POISON_ENV=true - MVDT=false - - BREWVER=cperl-5.22.1 + - BREWVER=cperl-5.22.2 - BREWOPTS="-Duseithreads -Dusequadmath" # threaded oldest possible with blead CPAN @@ -348,7 +349,7 @@ matrix: allow_failures: # these run with various dev snapshots - allowed to fail - - perl: cperl-5.22.1_thr_qm + - perl: cperl-5.22.2_thr_qm - perl: devcpan_5.8.1_thr_mb - perl: devcpan_5.8.1 - perl: devcpan_5.8.3_mb diff --git a/maint/travis-ci_scripts/20_install.bash b/maint/travis-ci_scripts/20_install.bash index 7628b4a..d5d3481 100755 --- a/maint/travis-ci_scripts/20_install.bash +++ b/maint/travis-ci_scripts/20_install.bash @@ -4,7 +4,7 @@ if [[ -n "$SHORT_CIRCUIT_SMOKE" ]] ; then return ; fi # we need a mirror that both has the standard index and a backpan version rolled # into one, due to MDV testing -CPAN_MIRROR="http://cpan.metacpan.org/" +export CPAN_MIRROR="http://cpan.metacpan.org/" PERL_CPANM_OPT="$PERL_CPANM_OPT --mirror $CPAN_MIRROR" @@ -42,6 +42,11 @@ if [[ -n "$BREWVER" ]] ; then run_or_err "Compiling/installing Perl $BREWVER (without testing, using ${perlbrew_jopt:-1} threads, may take up to 5 minutes)" \ "perlbrew install --as $BREWVER --notest --noman --verbose $BREWOPTS -j${perlbrew_jopt:-1} $BREWSRC" + # FIXME work around https://github.com/perl11/cperl/issues/144 + if is_cperl && ! [[ -f ~/perl5/perlbrew/perls/$BREWVER/bin/perl ]] ; then + ln -s ~/perl5/perlbrew/perls/$BREWVER/bin/cperl ~/perl5/perlbrew/perls/$BREWVER/bin/perl + fi + # can not do 'perlbrew use' in the run_or_err subshell above, or a $() # furthermore some versions of `perlbrew use` return 0 regardless of whether # the perl is found (won't be there unless compilation suceeded, wich *ALSO* returns 0) @@ -128,17 +133,21 @@ if [[ "$POISON_ENV" = "true" ]] ; then ### emulate a local::lib-like env - # trick cpanm into executing true as shell - we just need the find+unpack - run_or_err "Downloading latest stable DBIC from CPAN" \ - "SHELL=/bin/true cpanm --look DBIx::Class" - # move it somewhere as following cpanm will clobber it - run_or_err "Moving latest stable DBIC from CPAN to /tmp" "mv ~/.cpanm/latest-build/DBIx-Class-*/lib /tmp/stable_dbic_lib" + # FIXME - work around https://github.com/perl11/cperl/issues/145 + if ! is_cperl ; then + # trick cpanm into executing true as shell - we just need the find+unpack + run_or_err "Downloading latest stable DBIC from CPAN" \ + "SHELL=/bin/true cpanm --look DBIx::Class" - export PERL5LIB="/tmp/stable_dbic_lib:$PERL5LIB" + # move it somewhere as following cpanm will clobber it + run_or_err "Moving latest stable DBIC from CPAN to /tmp" "mv ~/.cpanm/latest-build/DBIx-Class-*/lib /tmp/stable_dbic_lib" - # perldoc -l searches $(pwd)/lib in addition to PERL5LIB etc, hence the cd / - echo_err "Latest stable DBIC (without deps) locatable via \$PERL5LIB at $(cd / && perldoc -l DBIx::Class)" + export PERL5LIB="/tmp/stable_dbic_lib:$PERL5LIB" + + # perldoc -l searches $(pwd)/lib in addition to PERL5LIB etc, hence the cd / + echo_err "Latest stable DBIC (without deps) locatable via \$PERL5LIB at $(cd / && perldoc -l DBIx::Class)" + fi fi diff --git a/maint/travis-ci_scripts/30_before_script.bash b/maint/travis-ci_scripts/30_before_script.bash index bc0e9fb..2a8b0d7 100755 --- a/maint/travis-ci_scripts/30_before_script.bash +++ b/maint/travis-ci_scripts/30_before_script.bash @@ -13,6 +13,7 @@ fi # Need a shitton of patches to run on cperl (luckily all provided) # Also need to have YAML in place, otherwise the distroprefs are not readable +# (cperl 5.22.2 comes with YAML already) if is_cperl ; then run_or_err "Downloading and installing cperl distroprefs" ' @@ -20,7 +21,7 @@ if is_cperl ; then tar -C $HOME/.cpan --strip-components 1 -zx distroprefs-master/prefs distroprefs-master/sources ' - installdeps YAML + perl -M5.022002 -e1 &>/dev/null || installdeps YAML fi @@ -84,11 +85,23 @@ if [[ "$CLEANTEST" = "true" ]]; then # we build are guaranteed to be clean, without side # effects from travis preinstalls) - # trick cpanm into executing true as shell - we just need the find+unpack - [[ -d ~/.cpanm/latest-build/DBIx-Class-*/inc ]] || run_or_err "Downloading latest stable DBIC inc/ from CPAN" \ - "SHELL=/bin/true cpanm --look DBIx::Class" + # work around https://github.com/perl11/cperl/issues/145 (no cpanm) + if is_cperl ; then - mv ~/.cpanm/latest-build/DBIx-Class-*/inc . + wget -qO- $( wget -qO- http://cpanmetadb.plackperl.org/v1.0/package/DBIx::Class | grep distfile | sed "s|distfile:\s*|$CPAN_MIRROR/authors/id/|" ) \ + | tar -zx --strip-components 1 --wildcards '*/inc' + + # FIXME - kill this when M::I is gone + # Argh -DFORTIFY_INC!!! + export PERL5LIB="$PERL5LIB:." + + else + # trick cpanm into executing true as shell - we just need the find+unpack + [[ -d ~/.cpanm/latest-build/DBIx-Class-*/inc ]] || run_or_err "Downloading latest stable DBIC inc/ from CPAN" \ + "SHELL=/bin/true cpanm --look DBIx::Class" + + mv ~/.cpanm/latest-build/DBIx-Class-*/inc . + fi # The first CPAN which is somewhat sane is around 1.94_56 (perl 5.12) # The problem is that the first sane version also brings a *lot* of