From: Peter Rabbitson Date: Thu, 2 Jun 2016 17:55:31 +0000 (+0200) Subject: (travis) Add cperl master to the smoke roster, bump to 5.22.3 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=e66f0ee02df23037e2b0f26bc6ae26a758e5c419;p=dbsrgits%2FDBIx-Class.git (travis) Add cperl master to the smoke roster, bump to 5.22.3 --- diff --git a/.travis.yml b/.travis.yml index fe1c571..2b0d8b9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -223,10 +223,10 @@ matrix: ### # Start of the allow_failures block - # MAKE SURE TO KEEP THE FLAGS IDENTICAL TO STOCK 5.22.1 ABOVE + # MAKE SURE TO KEEP THE FLAGS IDENTICAL TO STOCK 5.latest.comparable ABOVE # allows for easier side-by-side comparison # vcpu=1 for even more stable results - - perl: "cperl-5.22.2_thr_qm" + - perl: "cperl-5.22.3_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 @@ -236,9 +236,19 @@ matrix: - CLEANTEST=true - POISON_ENV=true - MVDT=false - - BREWVER=cperl-5.22.2 + - BREWVER=cperl-5.22.3 - BREWOPTS="-Duseithreads -Dusequadmath" + - perl: "cperl-master_thr" + sudo: false + dist: precise + env: + - CLEANTEST=true + - POISON_ENV=true + - MVDT=false + - BREWVER=cperl-master + - BREWOPTS="-Duseithreads" + # threaded oldest possible with blead CPAN - perl: "devcpan_5.8.1_thr_mb" sudo: false @@ -349,7 +359,8 @@ matrix: allow_failures: # these run with various dev snapshots - allowed to fail - - perl: cperl-5.22.2_thr_qm + - perl: cperl-5.22.3_thr_qm + - perl: cperl-master_thr - 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 4fc50d0..947bf1e7 100755 --- a/maint/travis-ci_scripts/20_install.bash +++ b/maint/travis-ci_scripts/20_install.bash @@ -32,9 +32,14 @@ if [[ -n "$BREWVER" ]] ; then BREWSRC="$BREWVER" if is_cperl; then - # FFS perlbrew ( see http://wollmers-perl.blogspot.de/2015/10/install-cperl-with-perlbrew.html ) - wget -qO- https://github.com/perl11/cperl/archive/$BREWVER.tar.gz > /tmp/cperl-$BREWVER.tar.gz - BREWSRC="/tmp/cperl-$BREWVER.tar.gz" + if [[ "$BREWVER" == "cperl-master" ]] ; then + git clone --single-branch --depth=1 --branch=master https://github.com/perl11/cperl /tmp/cperl-master + BREWSRC="/tmp/cperl-master" + else + # FFS perlbrew ( see http://wollmers-perl.blogspot.de/2015/10/install-cperl-with-perlbrew.html ) + wget -qO- https://github.com/perl11/cperl/archive/$BREWVER.tar.gz > /tmp/cperl-$BREWVER.tar.gz + BREWSRC="/tmp/cperl-$BREWVER.tar.gz" + fi elif [[ "$BREWVER" == "schmorp_stableperl" ]] ; then BREWSRC="http://stableperl.schmorp.de/dist/stableperl-5.22.0-1.001.tar.gz" fi @@ -43,6 +48,7 @@ if [[ -n "$BREWVER" ]] ; then "perlbrew install --as $BREWVER --notest --noman --verbose $BREWOPTS -j${perlbrew_jopt:-1} $BREWSRC" # FIXME work around https://github.com/perl11/cperl/issues/144 + # (still affecting 5.22.3) 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 @@ -141,21 +147,17 @@ if [[ "$POISON_ENV" = "true" ]] ; then ### emulate a local::lib-like env - # 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" - - # 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" + # 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)" - fi + 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 if [[ "$CLEANTEST" != "true" ]] ; then diff --git a/maint/travis-ci_scripts/30_before_script.bash b/maint/travis-ci_scripts/30_before_script.bash index 091e155..71bf162 100755 --- a/maint/travis-ci_scripts/30_before_script.bash +++ b/maint/travis-ci_scripts/30_before_script.bash @@ -12,8 +12,6 @@ if [[ "$DEVREL_DEPS" == "true" ]] ; then 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" ' @@ -21,6 +19,12 @@ if is_cperl ; then tar -C $HOME/.cpan --strip-components 1 -zx distroprefs-master/prefs distroprefs-master/sources ' + # Argh -DFORTIFY_INC!!! + # FIXME - remove when M::I is gone + export PERL5LIB="$PERL5LIB:." + + # Also need to have YAML in place, otherwise the distroprefs are not readable + # (cperl 5.22.2 comes with YAML already) perl -M5.022002 -e1 &>/dev/null || installdeps YAML fi @@ -101,24 +105,12 @@ if [[ "$CLEANTEST" = "true" ]]; then # the point is to have a *really* clean perl (the ones # 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 - - 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 + mv ~/.cpanm/latest-build/DBIx-Class-*/inc . # 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