Diff of the two buildlogs: -- --- b1/build.log 2024-12-14 19:58:12.952501641 +0000 +++ b2/build.log 2024-12-14 19:59:26.173175014 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sat Dec 14 07:55:16 -12 2024 -I: pbuilder-time-stamp: 1734206116 +I: Current time: Sat Jan 17 16:21:13 +14 2026 +I: pbuilder-time-stamp: 1768616473 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -27,52 +27,84 @@ dpkg-source: info: applying autopkgtest-path.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3257245/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Jan 17 02:21 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='636181fc0fac418fbbfdcf1a826d295d' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='3257245' - PS1='# ' - PS2='> ' + INVOCATION_ID=2b5ac0764a0842d488e3b0cb5483b171 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=957877 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.s0SyMNz5/pbuilderrc_XsD8 --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.s0SyMNz5/b1 --logfile b1/build.log perlbrew_1.01-1.dsc' - SUDO_GID='110' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.s0SyMNz5/pbuilderrc_8JfH --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.s0SyMNz5/b2 --logfile b2/build.log perlbrew_1.01-1.dsc' + SUDO_GID=111 + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos1-amd64 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.11.5+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.11.5-1~bpo12+1 (2024-11-11) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3257245/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -202,7 +234,7 @@ Get: 66 http://deb.debian.org/debian unstable/main amd64 libtest2-plugin-nowarnings-perl all 0.10-1 [15.8 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 libtest2-suite-perl all 0.000163-1 [383 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 perl-doc all 5.40.0-8 [8263 kB] -Fetched 32.6 MB in 2s (15.6 MB/s) +Fetched 32.6 MB in 1s (63.7 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19965 files and directories currently installed.) @@ -492,7 +524,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/perlbrew-1.01/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../perlbrew_1.01-1_source.changes +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/perlbrew-1.01/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../perlbrew_1.01-1_source.changes dpkg-buildpackage: info: source package perlbrew dpkg-buildpackage: info: source version 1.01-1 dpkg-buildpackage: info: source distribution unstable @@ -511,25 +547,29 @@ Creating new 'Build' script for 'App-perlbrew' version '1.01' dh_auto_build /usr/bin/perl Build -cp lib/App/Perlbrew/HTTP.pm blib/lib/App/Perlbrew/HTTP.pm -cp lib/App/Perlbrew/Path.pm blib/lib/App/Perlbrew/Path.pm -cp lib/App/Perlbrew/Path/Installations.pm blib/lib/App/Perlbrew/Path/Installations.pm cp lib/App/Perlbrew/Path/Root.pm blib/lib/App/Perlbrew/Path/Root.pm cp lib/App/perlbrew.pm blib/lib/App/perlbrew.pm +cp lib/App/Perlbrew/Path/Installations.pm blib/lib/App/Perlbrew/Path/Installations.pm +cp lib/App/Perlbrew/Sys.pm blib/lib/App/Perlbrew/Sys.pm cp lib/App/Perlbrew/Util.pm blib/lib/App/Perlbrew/Util.pm -cp lib/App/Perlbrew/Path/Installation.pm blib/lib/App/Perlbrew/Path/Installation.pm +cp lib/App/Perlbrew/HTTP.pm blib/lib/App/Perlbrew/HTTP.pm cp script/perlbrew blib/script/perlbrew -cp lib/App/Perlbrew/Sys.pm blib/lib/App/Perlbrew/Sys.pm +cp lib/App/Perlbrew/Path/Installation.pm blib/lib/App/Perlbrew/Path/Installation.pm +cp lib/App/Perlbrew/Path.pm blib/lib/App/Perlbrew/Path.pm dh_auto_test /usr/bin/perl Build test --verbose 1 t/00.load.t ............................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - use App::perlbrew; 1..1 ok t/01.options.t ............................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. # $VAR1 = bless( { +# '64all' => '', +# 'debug' => '', +# '64int' => '', +# 'destdir' => '', # 'original_argv' => [ # 'install', # '-n', @@ -539,45 +579,41 @@ # '-Uusemymalloc', # '-Accflags' # ], -# 'A' => [ -# 'ccflags' -# ], # 'ld' => '', -# 'yes' => 0, # 'home' => bless( { # 'path' => '/build/reproducible-path/perlbrew-1.01/debian/.debhelper/generated/_source/home/.perlbrew' # }, 'App::Perlbrew::Path' ), -# 'destdir' => '', -# 'quiet' => 0, -# 'both' => [], -# '64int' => '', -# 'force' => 0, -# 'reverse' => 0, -# 'notest' => 1, # 'U' => [ # 'usemymalloc' # ], -# 'D' => [ -# 'usethreads', -# 'DEBUGGING' -# ], -# 'clang' => '', -# 'append' => '', -# 'debug' => '', +# 'thread' => '', +# 'verbose' => 0, # 'root' => bless( { # 'path' => '/build/reproducible-path/perlbrew-1.01/debian/.debhelper/generated/_source/home/perl5/perlbrew' # }, 'App::Perlbrew::Path::Root' ), +# 'multi' => '', +# 'sitecustomize' => '', +# 'notest' => 1, +# 'variation' => '', +# 'force' => 0, +# 'both' => [], +# 'quiet' => 0, +# 'yes' => 0, +# 'noman' => '', +# 'A' => [ +# 'ccflags' +# ], +# 'append' => '', +# 'reverse' => 0, +# 'clang' => '', # 'args' => [ # 'install', # 'perl-5.12.1' # ], -# 'verbose' => 0, -# 'multi' => '', -# 'noman' => '', -# 'thread' => '', -# 'sitecustomize' => '', -# 'variation' => '', -# '64all' => '' +# 'D' => [ +# 'usethreads', +# 'DEBUGGING' +# ] # }, 'App::perlbrew' ); ok 1 ok 2 - -D @@ -586,16 +622,26 @@ ok 5 - not quiet ok 6 - notest # $VAR1 = bless( { -# 'quiet' => 1, -# 'destdir' => '', -# 'home' => bless( { -# 'path' => '/build/reproducible-path/perlbrew-1.01/debian/.debhelper/generated/_source/home/.perlbrew' -# }, 'App::Perlbrew::Path' ), -# 'ld' => '', -# 'yes' => 0, +# 'noman' => '', # 'A' => [ # 'ccflags' # ], +# 'append' => '', +# 'reverse' => 0, +# 'clang' => '', +# 'args' => [ +# 'install', +# 'perl-5.12.1' +# ], +# 'D' => [ +# 'usethreads', +# 'DEBUGGING' +# ], +# 'variation' => '', +# 'both' => [], +# 'force' => 0, +# 'yes' => 0, +# 'quiet' => 1, # 'original_argv' => [ # 'install', # '--quiet', @@ -608,34 +654,24 @@ # '-A', # 'ccflags' # ], +# 'ld' => '', +# 'home' => bless( { +# 'path' => '/build/reproducible-path/perlbrew-1.01/debian/.debhelper/generated/_source/home/.perlbrew' +# }, 'App::Perlbrew::Path' ), # 'U' => [ # 'usemymalloc' # ], -# 'reverse' => 0, -# 'force' => 0, -# '64int' => '', -# 'both' => [], -# 'noman' => '', +# 'thread' => '', # 'verbose' => 0, -# 'multi' => '', -# 'args' => [ -# 'install', -# 'perl-5.12.1' -# ], # 'root' => bless( { # 'path' => '/build/reproducible-path/perlbrew-1.01/debian/.debhelper/generated/_source/home/perl5/perlbrew' # }, 'App::Perlbrew::Path::Root' ), -# 'debug' => '', -# 'append' => '', -# 'clang' => '', -# 'D' => [ -# 'usethreads', -# 'DEBUGGING' -# ], -# '64all' => '', -# 'variation' => '', +# 'multi' => '', # 'sitecustomize' => '', -# 'thread' => '' +# '64all' => '', +# 'debug' => '', +# '64int' => '', +# 'destdir' => '' # }, 'App::perlbrew' ); ok 7 ok 8 - -D @@ -646,7 +682,7 @@ 1..12 ok t/02.format_perl_version.t ................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..4 ok 1 - 5.008008 -> 5.8.8 ok 2 - 5.010001 -> 5.10.1 @@ -654,7 +690,7 @@ ok 4 - 5.008 -> 5.8.0 ok t/03.test_get_available_versions.t ........ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..12 ok 1 - Correct number of releases found ok 2 - perl-5.28.0 found @@ -670,7 +706,7 @@ ok 12 - perl-5.8.9 found ok t/04.find_available_perls.t ............... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..52 ok 1 - found 11 releases ok 2 - 5.13 branch @@ -726,11 +762,11 @@ ok 52 - age 14 years, 5 months found ok t/05.get_current_perl.t ................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.12.3 to /tmp/DHvExRQigf/perls/perl-5.12.3 -# (mock) installed perl-5.12.4 to /tmp/DHvExRQigf/perls/perl-5.12.4 -# (mock) installed perl-5.14.1 to /tmp/DHvExRQigf/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/DHvExRQigf/perls/perl-5.14.2 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.12.3 to /tmp/0_lydtt6vo/perls/perl-5.12.3 +# (mock) installed perl-5.12.4 to /tmp/0_lydtt6vo/perls/perl-5.12.4 +# (mock) installed perl-5.14.1 to /tmp/0_lydtt6vo/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/0_lydtt6vo/perls/perl-5.14.2 ok 1 - perlbrew version { ok 1 - perlbrew version matches 1..1 @@ -753,7 +789,7 @@ ok t/06.installed_perls.t .................... skipped: No perl installation under PERLBREW_ROOT t/07.argv.t ............................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 ok 2 ok 3 @@ -763,38 +799,38 @@ ok t/08.error_available.t .................... # perl -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - got Error from available ok 2 - got Error from available_perl_distributions 1..2 ok t/08.error_install.t ...................... -Fetching perl 5.12.3 as /tmp/DHvExRQigf/dists/perl-5.12.3.tar.bz2 -Download https://cpan.metacpan.org/authors/id/R/RJ/RJBS/perl-5.12.3.tar.bz2 to /tmp/DHvExRQigf/dists/perl-5.12.3.tar.bz2 -# Seeded srand with seed '20241214' from local date. +Fetching perl 5.12.3 as /tmp/0_lydtt6vo/dists/perl-5.12.3.tar.bz2 +Download https://cpan.metacpan.org/authors/id/R/RJ/RJBS/perl-5.12.3.tar.bz2 to /tmp/0_lydtt6vo/dists/perl-5.12.3.tar.bz2 +# Seeded srand with seed '20260117' from local date. ok 1 1..1 ok t/08.error_install_blead.t ................ -Fetching perl-blead as /tmp/DHvExRQigf/dists/blead.tar.gz -# Seeded srand with seed '20241214' from local date. +Fetching perl-blead as /tmp/0_lydtt6vo/dists/blead.tar.gz +# Seeded srand with seed '20260117' from local date. ok 1 - install blead-perl failed -# Fetching perl-blead as /tmp/DHvExRQigf/dists/blead.tar.gz +# Fetching perl-blead as /tmp/0_lydtt6vo/dists/blead.tar.gz ok 2 - install blead failed 1..2 ok t/08.error_install_cpanm.t ................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 1..1 ok t/08.error_install_cpm.t .................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 1..1 ok t/09.exit_status.t ........................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - unknown-command error Unknown command: `unknown-command`. Typo? ok 2 - unknown-command command error @@ -803,19 +839,13 @@ 1..3 ok t/10.resolve.t ............................ -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.8.9 to /tmp/QigfPDoZnF/perls/perl-5.8.9 -# (mock) installed perl-5.14.0 to /tmp/QigfPDoZnF/perls/perl-5.14.0 -# (mock) installed 5.8.9 to /tmp/QigfPDoZnF/perls/5.8.9 -# (mock) installed perl-shiny to /tmp/QigfPDoZnF/perls/perl-shiny +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.8.9 to /tmp/t6voidfXRL/perls/perl-5.8.9 +# (mock) installed perl-5.14.0 to /tmp/t6voidfXRL/perls/perl-5.14.0 +# (mock) installed 5.8.9 to /tmp/t6voidfXRL/perls/5.8.9 +# (mock) installed perl-shiny to /tmp/t6voidfXRL/perls/perl-shiny ok 1 - App::perlbrew->resolve_installation_name { - ok 1 - returns the same value as the argument if there is an installation with exactly the same name { - ok 1 - ok 2 - ok 3 - 1..3 - } - ok 2 - with lib names { + ok 1 - with lib names { ok 1 - returns both perl version and libnames { ok 1 ok 2 @@ -828,16 +858,22 @@ } 1..2 } - ok 3 - returns `perl-$shortname` if that happens to be a proper installation name. { + ok 2 - takes exactly one argument, which means the `shortname` that needs to be resolved to a `longname` { ok 1 ok 2 1..2 } - ok 4 - returns undef if no proper installation can be found { + ok 3 - returns undef if no proper installation can be found { ok 1 1..1 } - ok 5 - takes exactly one argument, which means the `shortname` that needs to be resolved to a `longname` { + ok 4 - returns the same value as the argument if there is an installation with exactly the same name { + ok 1 + ok 2 + ok 3 + 1..3 + } + ok 5 - returns `perl-$shortname` if that happens to be a proper installation name. { ok 1 ok 2 1..2 @@ -847,7 +883,7 @@ 1..1 ok t/11.editdist.t ........................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 ok 2 ok 3 @@ -857,49 +893,49 @@ 1..6 ok t/11.root_from_arg.t ...................... -# Seeded srand with seed '20241214' from local date. -ok 1 - App::perlbrew->new { - ok 1 - should accept --root args and treat it as the value of PERLBREW_ROOT for the instance { +# Seeded srand with seed '20260117' from local date. +ok 1 - App::perlbrew\#root method { + ok 1 - should default to $ENV{HOME} subpath { ok 1 - Return value comparison failed ok 2 - Global $PERLBREW_ROOT comparison failed ok 3 - App::Perlbrew::Path::Root=HASH->isa('App::Perlbrew::Path::Root') 1..3 } - 1..1 -} -ok 2 - App::perlbrew\#root method { - ok 1 - should default to $ENV{PERLBREW_ROOT} if provided { + ok 2 - should return $App::perlbrew::PERLBREW_ROOT if provided { ok 1 - Return value comparison failed ok 2 - Global $PERLBREW_ROOT comparison failed ok 3 - App::Perlbrew::Path::Root=HASH->isa('App::Perlbrew::Path::Root') 1..3 } - ok 2 - should return $App::perlbrew::PERLBREW_ROOT if provided { + ok 3 - should return the instance property of 'root' if set { ok 1 - Return value comparison failed ok 2 - Global $PERLBREW_ROOT comparison failed ok 3 - App::Perlbrew::Path::Root=HASH->isa('App::Perlbrew::Path::Root') 1..3 } - ok 3 - should default to $ENV{HOME} subpath { + ok 4 - should default to $ENV{PERLBREW_ROOT} if provided { ok 1 - Return value comparison failed ok 2 - Global $PERLBREW_ROOT comparison failed ok 3 - App::Perlbrew::Path::Root=HASH->isa('App::Perlbrew::Path::Root') 1..3 } - ok 4 - should return the instance property of 'root' if set { + 1..4 +} +ok 2 - App::perlbrew->new { + ok 1 - should accept --root args and treat it as the value of PERLBREW_ROOT for the instance { ok 1 - Return value comparison failed ok 2 - Global $PERLBREW_ROOT comparison failed ok 3 - App::Perlbrew::Path::Root=HASH->isa('App::Perlbrew::Path::Root') 1..3 } - 1..4 + 1..1 } 1..2 ok t/12.destdir.t ............................ -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/DHvExRQigf -# DESTDIR set to /tmp/47zcB5wylS +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/0_lydtt6vo +# DESTDIR set to /tmp/NIsXN2XAjl ok 1 - No perls yet installed { ok 1 - no perls installed 1..1 @@ -918,8 +954,8 @@ 1..3 ok t/12.sitecustomize.t ...................... -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/DHvExRQigf +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/0_lydtt6vo ok 1 - No perls yet installed { ok 1 - no perls installed 1..1 @@ -940,7 +976,7 @@ ok # Workflow build 'when the given versionis not found is CPAN::Perl::Releases' is empty at t/13.perl_release.t around lines 27 -> 44. t/13.perl_release.t ....................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew\#perl_release method { ok 1 - given a valid perl version { ok 1 - returns the perl dist tarball file name, and its download url { @@ -966,7 +1002,7 @@ 1..1 ok t/14.perl_version_parsing.t ............... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - perl_version_to_integer { 1..103 ok 1 - 5.003_07 < 5.004 @@ -1289,11 +1325,11 @@ } 1..3 ok -# /tmp/DHvExRQigf/build/test/test +# /tmp/0_lydtt6vo/build/test/test t/15.no-reuse-build-dir.t ................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..6 -# PERLBREW_ROOT set to /tmp/DHvExRQigf +# PERLBREW_ROOT set to /tmp/0_lydtt6vo ok 1 - App::perlbrew object created ok 2 - Test file 3 created ok 3 - Test tarball extracted as expected @@ -1302,7 +1338,7 @@ ok 6 - Test file 2 exists ok t/16.release-detail.t ..................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - parse "perl-5.18.2" { ok 1 ok 2 @@ -1324,7 +1360,7 @@ 1..2 ok t/18.release-detail-perl-local.t .......... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - no error ok 2 - tarball_url is defined ok 3 - tarball_url is defined @@ -1335,7 +1371,7 @@ t/18.release-detail-perl-remote.t ......... skipped: These tests send HTTP requests. Set env TEST_LIVE=1 to really run them. # alias, available, clean, clone-modules, compgen, display-bashrc, display-cshrc, display-installation-failure-message, display-pristine-manpath, display-pristine-path, display-system-perl-executable, display-system-perl-shebang, download, env, exec, help, info, init, init-in-bash, install, install-cpanm, install-cpm, install-multiple, install-patchperl, lib, lib-create, lib-delete, lib-list, list, list-modules, make-pp, make-shim, off, self-install, self-upgrade, switch, switch-off, symlink-executables, uninstall, upgrade-perl, use, version t/19.find_similar_commands.t .............. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - exact result { ok 1 ok 2 @@ -1355,35 +1391,43 @@ 1..3 ok t/app-perlbrew-path-installation.t ........ -# Seeded srand with seed '20241214' from local date. -ok 1 - App::Perlbrew::Path::Installations { - ok 1 - list() { - ok 1 - should list known installations { +# Seeded srand with seed '20260117' from local date. +ok 1 - App::Perlbrew::Path::Installation { + ok 1 - name() { + ok 1 - should provide path to perl { ok 1 1..1 } - 1..1 + ok 2 - should provide path to version file { + ok 1 + 1..1 + } + ok 3 - should return installation name { + ok 1 + 1..1 + } + 1..3 } 1..1 } ok 2 - App::Perlbrew::Path::Root { ok 1 - perls() { - ok 1 - without parameters { - ok 1 - should return Instalations object { + ok 1 - with multiple paramters { + ok 1 - should return Path object { ok 1 1..1 } 1..1 } - ok 2 - with one parameter { - ok 1 - should return Installation object { + ok 2 - without parameters { + ok 1 - should return Instalations object { ok 1 1..1 } 1..1 } - ok 3 - with multiple paramters { - ok 1 - should return Path object { + ok 3 - with one parameter { + ok 1 - should return Installation object { ok 1 1..1 } @@ -1393,40 +1437,23 @@ } 1..1 } -ok 3 - App::Perlbrew::Path::Installation { - ok 1 - name() { - ok 1 - should return installation name { - ok 1 - 1..1 - } - ok 2 - should provide path to perl { - ok 1 - 1..1 - } - ok 3 - should provide path to version file { +ok 3 - App::Perlbrew::Path::Installations { + ok 1 - list() { + ok 1 - should list known installations { ok 1 1..1 } - 1..3 + 1..1 } 1..1 } 1..3 ok t/app-perlbrew-path.t ..................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::Perlbrew::Path { - ok 1 - new() { - ok 1 - should concatenate multiple parameters into single path { - ok 1 - looks like a perlbrew path object { - ok 1 - ok 2 - ok 3 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') - 1..3 - } - 1..1 - } - ok 2 - should accept one parameter { + ok 1 - mkpath() { + ok 1 - should return self { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1435,34 +1462,29 @@ } 1..1 } - ok 3 - should die with undefined element { - ok 1 - (?^:^Received an undefined entry as a parameter) + ok 2 - should create recursive path { + ok 1 1..1 } - ok 4 - should concatenate long (root) path { - ok 1 - looks like a perlbrew path object { - ok 1 - ok 2 - ok 3 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') - 1..3 - } + ok 3 - should not die when path already exists { + ok 1 1..1 } - 1..4 + 1..3 } - ok 2 - stringify_with_tilde { - ok 1 - should not expand leading homedir prefix { + ok 2 - unlink() { + ok 1 - should remove file { ok 1 1..1 } - ok 2 - should expand leading homedir { + ok 2 - should not report failure if file doesn't exist { ok 1 1..1 } 1..2 } - ok 3 - rmpath() { - ok 1 - should return self { + ok 3 - new() { + ok 1 - should accept one parameter { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1471,26 +1493,7 @@ } 1..1 } - ok 2 - should not die when path doesn't exist { - ok 1 - 1..1 - } - ok 3 - should remove path recursively { - ok 1 - 1..1 - } - 1..3 - } - ok 4 - mkpath() { - ok 1 - should create recursive path { - ok 1 - 1..1 - } - ok 2 - should not die when path already exists { - ok 1 - 1..1 - } - ok 3 - should return self { + ok 2 - should concatenate multiple parameters into single path { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1499,32 +1502,23 @@ } 1..1 } - 1..3 - } - ok 5 - symlink() { - ok 1 - should create symlink { - ok 1 - 1..1 - } - ok 2 - should replace existing file in force mode { - ok 1 - 1..1 - } - 1..2 - } - ok 6 - unlink() { - ok 1 - should remove file { - ok 1 + ok 3 - should concatenate long (root) path { + ok 1 - looks like a perlbrew path object { + ok 1 + ok 2 + ok 3 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') + 1..3 + } 1..1 } - ok 2 - should not report failure if file doesn't exist { - ok 1 + ok 4 - should die with undefined element { + ok 1 - (?^:^Received an undefined entry as a parameter) 1..1 } - 1..2 + 1..4 } - ok 7 - child() { - ok 1 - should return chainable object { + ok 4 - child() { + ok 1 - should accept multiple children { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1533,7 +1527,7 @@ } 1..1 } - ok 2 - should create direct child { + ok 2 - should return chainable object { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1542,7 +1536,7 @@ } 1..1 } - ok 3 - should accept multiple children { + ok 3 - should create direct child { ok 1 - looks like a perlbrew path object { ok 1 ok 2 @@ -1553,7 +1547,7 @@ } 1..3 } - ok 8 - basename() { + ok 5 - basename() { ok 1 - should trim provided suffix match { ok 1 1..1 @@ -1564,7 +1558,7 @@ } 1..2 } - ok 9 - children() { + ok 6 - children() { ok 1 - should return Path instances { ok 1 - looks like a perlbrew path object { ok 1 @@ -1592,8 +1586,30 @@ } 1..2 } - ok 10 - readlink() { - ok 1 - when path doesn't exist { + ok 7 - stringify_with_tilde { + ok 1 - should not expand leading homedir prefix { + ok 1 + 1..1 + } + ok 2 - should expand leading homedir { + ok 1 + 1..1 + } + 1..2 + } + ok 8 - symlink() { + ok 1 - should replace existing file in force mode { + ok 1 + 1..1 + } + ok 2 - should create symlink { + ok 1 + 1..1 + } + 1..2 + } + ok 9 - readlink() { + ok 1 - when path isn't a symlink { ok 1 - should return undef { ok 1 1..1 @@ -1612,7 +1628,7 @@ } 1..1 } - ok 3 - when path isn't a symlink { + ok 3 - when path doesn't exist { ok 1 - should return undef { ok 1 1..1 @@ -1621,19 +1637,39 @@ } 1..3 } + ok 10 - rmpath() { + ok 1 - should not die when path doesn't exist { + ok 1 + 1..1 + } + ok 2 - should remove path recursively { + ok 1 + 1..1 + } + ok 3 - should return self { + ok 1 - looks like a perlbrew path object { + ok 1 + ok 2 + ok 3 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') + 1..3 + } + 1..1 + } + 1..3 + } 1..10 } 1..1 ok t/bashrc_content.t ........................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->BASHRC_CONTENT() { ok 1 - should export custom PERLBREW_ROOT { - ok 1 - when env variable PERLBREW_ROOT is set { + ok 1 - when provided via argument { ok 1 1..1 } - ok 2 - when provided via argument { + ok 2 - when env variable PERLBREW_ROOT is set { ok 1 1..1 } @@ -1644,11 +1680,11 @@ 1..3 } ok 2 - should not export custom PERLBREW_ROOT { - ok 1 - with default settings { + ok 1 - when set only via global variable { ok 1 1..1 } - ok 2 - when set only via global variable { + ok 2 - with default settings { ok 1 1..1 } @@ -1659,19 +1695,19 @@ 1..1 ok t/bashrc_executes.t ....................... -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/DHvExRQigf -/tmp/DHvExRQigf/etc/bashrc +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/0_lydtt6vo +/tmp/0_lydtt6vo/etc/bashrc ok 1 - Works without error output on bash where hashing is off { - # perlbrew is installed: /tmp/DHvExRQigf/bin/perlbrew + # perlbrew is installed: /tmp/0_lydtt6vo/bin/perlbrew # - # perlbrew root (/tmp/DHvExRQigf) is initialized. + # perlbrew root (/tmp/0_lydtt6vo) is initialized. # # Append the following piece of code to the end of your ~/.bash_profile and start a # new shell, perlbrew should be up and fully functional from there: # - # export PERLBREW_HOME=/tmp/PDoZnFu3v9 - # source /tmp/DHvExRQigf/etc/bashrc + # export PERLBREW_HOME=/tmp/idfXRLp5OS + # source /tmp/0_lydtt6vo/etc/bashrc # # Simply run `perlbrew` for usage details. # @@ -1684,33 +1720,33 @@ 1..1 ok t/builddir.t .............................. -# Seeded srand with seed '20241214' from local date. -ok 1 - App::perlbrew->new { - ok 1 - should accept --builddir args { - ok 1 - builddir is /perlbrew/buildroot +# Seeded srand with seed '20260117' from local date. +ok 1 - App::perlbrew\#builddir method { + ok 1 - should return path relative to root { + ok 1 - builddir is /fnord/build ok 2 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') 1..2 } - 1..1 -} -ok 2 - App::perlbrew\#builddir method { - ok 1 - should return path in $App::perlbrew::PERLBREW_ROOT normally { + ok 2 - should return path in $App::perlbrew::PERLBREW_ROOT normally { ok 1 - builddir is /perlbrew/root/build ok 2 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') 1..2 } - ok 2 - should return path relative to root { - ok 1 - builddir is /fnord/build + 1..2 +} +ok 2 - App::perlbrew->new { + ok 1 - should accept --builddir args { + ok 1 - builddir is /perlbrew/buildroot ok 2 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') 1..2 } - 1..2 + 1..1 } 1..2 ok t/command-alias.t ......................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 ok 1 - alias command, { ok 1 - when invoked with unknown action name, { ok 1 - should display usage message { @@ -1724,7 +1760,7 @@ 1..1 ok t/command-available.t ..................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - available command output, when something installed locally, { ok 1 - should display a list of perl versions, with markers on installed versions { ok 1 @@ -1742,30 +1778,30 @@ 1..2 ok t/command-clone-modules.t ................. -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.16.0 to /tmp/QigfPDoZnF/perls/perl-5.16.0 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.16.0 to /tmp/t6voidfXRL/perls/perl-5.16.0 ok 1 - clone-modules command, { - ok 1 - when invoked with two arguments, A and B, with `--notest` { - ok 1 - should display clone modules from A to B { + ok 1 - when invoked with one argument X, with `--notest` { + ok 1 - should display clone modules from current-perl to X { # - # Installing 1 modules from perl-5.14.1 to perl-5.16.0 ... + # Installing 1 modules from perl-5.16.0 to perl-5.14.1 ... ok 1 ok 2 ok 3 - 1..3 + ok 4 - current_env is called at least 1 time + 1..4 } 1..1 } - ok 2 - when invoked with one argument X, with `--notest` { - ok 1 - should display clone modules from current-perl to X { + ok 2 - when invoked with two arguments, A and B { + ok 1 - should display clone modules from A to B { # - # Installing 1 modules from perl-5.16.0 to perl-5.14.1 ... + # Installing 1 modules from perl-5.14.1 to perl-5.16.0 ... ok 1 ok 2 ok 3 - ok 4 - current_env is called at least 1 time - 1..4 + 1..3 } 1..1 } @@ -1781,7 +1817,7 @@ } 1..1 } - ok 4 - when invoked with two arguments, A and B { + ok 4 - when invoked with two arguments, A and B, with `--notest` { ok 1 - should display clone modules from A to B { # # Installing 1 modules from perl-5.14.1 to perl-5.16.0 ... @@ -1797,33 +1833,29 @@ 1..1 ok t/command-compgen.t ....................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.12.3 to /tmp/QigfPDoZnF/perls/perl-5.12.3 -# (mock) installed perl-5.12.4 to /tmp/QigfPDoZnF/perls/perl-5.12.4 -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.12.3 to /tmp/t6voidfXRL/perls/perl-5.12.3 +# (mock) installed perl-5.12.4 to /tmp/t6voidfXRL/perls/perl-5.12.4 +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 ok 1 - compgen command, { - ok 1 - when there is a part of a subcommand { - ok 1 - 'versio[tab]' is completed as 'version' { + ok 1 - given 'switch' subcommand { + ok 1 - 'use [tab]' suggests a list of installed perls { ok 1 1..1 } - ok 2 - displays a list of l* { + ok 2 - 'use 5.12 [tab]' suggests perls with /5\.12/ { ok 1 1..1 } 1..2 } - ok 2 - given 'switch' subcommand { - ok 1 - 'use [tab]' suggests a list of installed perls { - ok 1 - 1..1 - } - ok 2 - 'use 5.12 [tab]' suggests perls with /5\.12/ { + ok 2 - when there is no args { + ok 1 - displays a list of subcommands { ok 1 1..1 } - 1..2 + 1..1 } ok 3 - given 'use' subcommand { ok 1 - 'use 5.12 [tab]' suggests perls with /5\.12/ { @@ -1836,19 +1868,23 @@ } 1..2 } - ok 4 - when there is no args { - ok 1 - displays a list of subcommands { + ok 4 - when there is a part of a subcommand { + ok 1 - displays a list of l* { ok 1 1..1 } - 1..1 + ok 2 - 'versio[tab]' is completed as 'version' { + ok 1 + 1..1 + } + 1..2 } 1..4 } 1..1 ok t/command-display-rc.t .................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew { ok 1 - should be able to run 'display-cshrc' command { ok 1 @@ -1863,26 +1899,26 @@ 1..1 ok t/command-env.t ........................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 ok 1 - env command, { - ok 1 - when invoked with a perl installation name with lib name, { - ok 1 - displays local::lib-related environment variables that should be set to use the given perl. { - # perlbrew env perl-5.14.1@nobita + ok 1 - when invoked with a perl installation name, { + ok 1 - displays environment variables that should be set to use the given perl. { ok 1 1..1 } 1..1 } - ok 2 - when invoked with a perl installation name, { - ok 1 - displays environment variables that should be set to use the given perl. { + ok 2 - when invoked with a perl installation name with lib name and PERLBREW_LIB_PREFIX set, { + ok 1 - displays PERL5LIB with PERLBREW_LIB_PREFIX value first. { + # perlbrew env perl-5.14.1@nobita ok 1 1..1 } 1..1 } - ok 3 - when invoked with a perl installation name with lib name and PERLBREW_LIB_PREFIX set, { - ok 1 - displays PERL5LIB with PERLBREW_LIB_PREFIX value first. { + ok 3 - when invoked with a perl installation name with lib name, { + ok 1 - displays local::lib-related environment variables that should be set to use the given perl. { # perlbrew env perl-5.14.1@nobita ok 1 1..1 @@ -1895,20 +1931,48 @@ ok sort (...) interpreted as function at t/command-exec.t line 386. sort (...) interpreted as function at t/command-exec.t line 410. + # Command [perl -E 'say 42'] terminated with exit code 255 ($? = -1) under the following perl environment: + # Command [perl -E 'say 42'] terminated with exit code 3 ($? = 768) under the following perl environment: + # Command [perl -E 'say 42'] terminated with exit code 7 ($? = 1792) under the following perl environment: # Command [perl -E 'somesub 42'] terminated with exit code 7 ($? = 1792) under the following perl environment: # format_info_output_value # Command [perl -E 'say 42'] terminated with exit code 3 ($? = 768) under the following perl environment: # Command [perl -E 'say 42'] terminated with exit code 3 ($? = 768) under the following perl environment: - # Command [perl -E 'say 42'] terminated with exit code 7 ($? = 1792) under the following perl environment: - # Command [perl -E 'say 42'] terminated with exit code 3 ($? = 768) under the following perl environment: - # Command [perl -E 'say 42'] terminated with exit code 255 ($? = -1) under the following perl environment: t/command-exec.t .......................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.12.3 to /tmp/QigfPDoZnF/perls/perl-5.12.3 -# (mock) installed perl-5.12.4 to /tmp/QigfPDoZnF/perls/perl-5.12.4 -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 -ok 1 - perlbrew exec perl -E "say 42" { +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.12.3 to /tmp/t6voidfXRL/perls/perl-5.12.3 +# (mock) installed perl-5.12.4 to /tmp/t6voidfXRL/perls/perl-5.12.4 +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 +ok 1 - perlbrew exec --with perl-5.14.1,5.14.1 { + ok 1 - exec 5.14.1 twice, since that is what is specified { + # perl-5.14.1 + # ========== + # + # perl-5.14.1 + # ========== + # + ok 1 + ok 2 - do_system_with_exit_code should be called exactly 2 times + 1..2 + } + 1..1 +} +ok 2 - minimal perl version { + ok 1 - only executes the needed version { + # perl-5.14.2 + # ========== + # + # perl-5.14.1 + # ========== + # + ok 1 + ok 2 - do_system_with_exit_code should be called exactly 2 times + 1..2 + } + 1..1 +} +ok 3 - perlbrew exec perl -E "say 42" { ok 1 - invokes all perls { # perl-5.14.2 # ========== @@ -1939,40 +2003,47 @@ } 1..1 } -ok 2 - maximum perl version { - ok 1 - only executes the needed version { - # perl-5.12.4 +ok 4 - perlbrew exec --with perl-5.14.1,perl-5.12.3,perl-5.14.2 perl -E "say 42" { + ok 1 - invokes each perl in the specified order { + # perl-5.14.1 # ========== # # perl-5.12.3 # ========== # + # perl-5.14.2 + # ========== + # ok 1 - ok 2 - do_system_with_exit_code should be called exactly 2 times + ok 2 - do_system_with_exit_code should be called exactly 3 times 1..2 } 1..1 } -ok 3 - minimal perl version { - ok 1 - only executes the needed version { - # perl-5.14.2 - # ========== - # - # perl-5.14.1 - # ========== - # +ok 5 - perlbrew exec --with perl-5.12.3 perl -E "say 42" { + ok 1 - invokes perl-5.12.3/bin/perl { ok 1 - ok 2 - do_system_with_exit_code should be called exactly 2 times + ok 2 + ok 3 + ok 4 - do_system_with_exit_code is called at least 1 time + 1..4 + } + 1..1 +} +ok 6 - perlbrew exec --with perl-5.14.1,perl-foobarbaz, { + ok 1 - ignore the unrecognized 'perl-foobarbaz' { + ok 1 + ok 2 - do_system_with_exit_code is called at least 1 time 1..2 } 1..1 } -ok 4 - perlbrew exec --with perl-5.14.1,5.14.1 { - ok 1 - exec 5.14.1 twice, since that is what is specified { - # perl-5.14.1 +ok 7 - maximum perl version { + ok 1 - only executes the needed version { + # perl-5.12.4 # ========== # - # perl-5.14.1 + # perl-5.12.3 # ========== # ok 1 @@ -1981,16 +2052,51 @@ } 1..1 } -ok 5 - perlbrew exec --with perl-5.14.1,perl-foobarbaz, { - ok 1 - ignore the unrecognized 'perl-foobarbaz' { - ok 1 - ok 2 - do_system_with_exit_code is called at least 1 time - 1..2 +ok 8 - exec exit code { + ok 1 - halt-on-error { + ok 1 - should exit with code 255 if program terminated with signal or something { + # Command terminated with non-zero status. + ok 1 + ok 2 + ok 3 + ok 4 - format_info_output should be called exactly 1 times + ok 5 - do_system_with_exit_code should be called exactly 1 times + ok 6 - do_exit_with_error_code should be called exactly 1 times + 1..6 + } + ok 2 - should exit with error code { + # Command terminated with non-zero status. + ok 1 + ok 2 + ok 3 + ok 4 - format_info_output should be called exactly 1 times + ok 5 - do_system_with_exit_code should be called exactly 1 times + ok 6 - do_exit_with_error_code should be called exactly 1 times + 1..6 + } + ok 3 - should exit with success code { + ok 1 - do_exit_with_error_code should be called exactly 0 times + ok 2 - do_system_with_exit_code should be called exactly 1 times + 1..2 + } + ok 4 - should exit with error code when several perls ran { + # perl-5.14.1 + # ========== + # + # perl-5.14.1 + # ========== + # Command terminated with non-zero status. + ok 1 + ok 2 + ok 3 + ok 4 - format_info_output should be called exactly 1 times + ok 5 - do_system_with_exit_code should be called exactly 2 times + ok 6 - do_exit_with_error_code should be called exactly 1 times + 1..6 + } + 1..4 } - 1..1 -} -ok 6 - exec exit code { - ok 1 - logging { + ok 2 - logging { ok 1 - should be quiet if asked { ok 1 ok 2 - format_info_output should be called exactly 0 times @@ -1998,25 +2104,25 @@ ok 4 - do_exit_with_error_code should be called exactly 1 times 1..4 } - ok 2 - should format info output for right perl { - # Command terminated with non-zero status. + ok 2 - should work { ok 1 - ok 2 + ok 2 - do_exit_with_error_code should be called exactly 1 times ok 3 - format_info_output should be called exactly 1 times ok 4 - do_system_with_exit_code should be called exactly 1 times - ok 5 - do_exit_with_error_code should be called exactly 1 times - 1..5 + 1..4 } - ok 3 - should work { + ok 3 - should format info output for right perl { + # Command terminated with non-zero status. ok 1 - ok 2 - do_exit_with_error_code should be called exactly 1 times + ok 2 ok 3 - format_info_output should be called exactly 1 times ok 4 - do_system_with_exit_code should be called exactly 1 times - 1..4 + ok 5 - do_exit_with_error_code should be called exactly 1 times + 1..5 } 1..3 } - ok 2 - no halt-on-error { + ok 3 - no halt-on-error { ok 1 - should exit with success code when several perls ran { # perl-5.14.1 # ========== @@ -2056,82 +2162,12 @@ } 1..3 } - ok 3 - halt-on-error { - ok 1 - should exit with error code when several perls ran { - # perl-5.14.1 - # ========== - # - # perl-5.14.1 - # ========== - # Command terminated with non-zero status. - ok 1 - ok 2 - ok 3 - ok 4 - format_info_output should be called exactly 1 times - ok 5 - do_system_with_exit_code should be called exactly 2 times - ok 6 - do_exit_with_error_code should be called exactly 1 times - 1..6 - } - ok 2 - should exit with error code { - # Command terminated with non-zero status. - ok 1 - ok 2 - ok 3 - ok 4 - format_info_output should be called exactly 1 times - ok 5 - do_system_with_exit_code should be called exactly 1 times - ok 6 - do_exit_with_error_code should be called exactly 1 times - 1..6 - } - ok 3 - should exit with success code { - ok 1 - do_exit_with_error_code should be called exactly 0 times - ok 2 - do_system_with_exit_code should be called exactly 1 times - 1..2 - } - ok 4 - should exit with code 255 if program terminated with signal or something { - # Command terminated with non-zero status. - ok 1 - ok 2 - ok 3 - ok 4 - format_info_output should be called exactly 1 times - ok 5 - do_system_with_exit_code should be called exactly 1 times - ok 6 - do_exit_with_error_code should be called exactly 1 times - 1..6 - } - 1..4 - } 1..3 } -ok 7 - perlbrew exec --with perl-5.14.1,perl-5.12.3,perl-5.14.2 perl -E "say 42" { - ok 1 - invokes each perl in the specified order { - # perl-5.14.1 - # ========== - # - # perl-5.12.3 - # ========== - # - # perl-5.14.2 - # ========== - # - ok 1 - ok 2 - do_system_with_exit_code should be called exactly 3 times - 1..2 - } - 1..1 -} -ok 8 - perlbrew exec --with perl-5.12.3 perl -E "say 42" { - ok 1 - invokes perl-5.12.3/bin/perl { - ok 1 - ok 2 - ok 3 - ok 4 - do_system_with_exit_code is called at least 1 time - 1..4 - } - 1..1 -} 1..8 ok t/command-help.t .......................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - `perlbrew` should print some nice message and instruct user to read help for individual commands { ok 1 1..1 @@ -2159,21 +2195,21 @@ 1..5 ok t/command-info.t .......................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - info command { - ok 1 - should display info for a module if the module is installed { + ok 1 - should display a message that the module can't be found if the module isn't installed { ok 1 1..1 } - ok 2 - should display info if under system perl { + ok 2 - should display info if under perlbrew perl { ok 1 1..1 } - ok 3 - should display a message that the module can't be found if the module isn't installed { + ok 3 - should display info for a module if the module is installed { ok 1 1..1 } - ok 4 - should display info if under perlbrew perl { + ok 4 - should display info if under system perl { ok 1 1..1 } @@ -2182,11 +2218,11 @@ 1..1 ok t/command-install-cpanm.t ................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_cpanm { ok 1 - should produce 'cpanm' in the bin dir { ok 1 - GET cpanm url: https://raw.githubusercontent.com/miyagawa/cpanminus/master/cpanm - ok 2 - cpanm is produced. /tmp/QigfPDoZnF/bin/cpanm + ok 2 - cpanm is produced. /tmp/t6voidfXRL/bin/cpanm ok 3 - cpanm should be an executable. 1..3 } @@ -2195,11 +2231,11 @@ 1..1 ok t/command-install-cpm.t ................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_cpm { ok 1 - should produce 'cpm' in the bin dir { ok 1 - GET cpm url: https://raw.githubusercontent.com/skaji/cpm/main/cpm - ok 2 - cpm is produced. /tmp/QigfPDoZnF/bin/cpm + ok 2 - cpm is produced. /tmp/t6voidfXRL/bin/cpm ok 3 - cpm should be an executable. 1..3 } @@ -2208,12 +2244,12 @@ 1..1 ok t/command-install-from-archive.t .......... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - command install { - ok 1 - with perfixed perl source archive { - ok 1 - should dispatch via do_install_this() { - ok 1 - method do_install_this is called with expected arguments - ok 2 - do_install_this is called at least 1 time + ok 1 - with prefixed cperl source archive { + ok 1 - should dispatch via do_install_archive() { + ok 1 - method do_install_archive is called with expected arguments + ok 2 - do_install_archive is called at least 1 time 1..2 } ok 2 - should dispatch via do_extract_tarball() { @@ -2221,32 +2257,14 @@ ok 2 - do_extract_tarball is called at least 1 time 1..2 } - ok 3 - should dispatch via do_install_archive() { - ok 1 - method do_install_archive is called with expected arguments - ok 2 - do_install_archive is called at least 1 time - 1..2 - } - 1..3 - } - ok 2 - with prefixed cperl source archive { - ok 1 - should dispatch via do_install_this() { + ok 3 - should dispatch via do_install_this() { ok 1 - method do_install_this is called with expected arguments ok 2 - do_install_this is called at least 1 time 1..2 } - ok 2 - should dispatch via do_install_archive() { - ok 1 - method do_install_archive is called with expected arguments - ok 2 - do_install_archive is called at least 1 time - 1..2 - } - ok 3 - should dispatch via do_extract_tarball() { - ok 1 - method do_extract_tarball is called with expected arguments - ok 2 - do_extract_tarball is called at least 1 time - 1..2 - } 1..3 } - ok 3 - with cperl source archive { + ok 2 - with perl source archive { ok 1 - should dispatch via do_install_archive() { ok 1 - method do_install_archive is called with expected arguments ok 2 - do_install_archive is called at least 1 time @@ -2264,7 +2282,7 @@ } 1..3 } - ok 4 - with perl source archive { + ok 3 - with cperl source archive { ok 1 - should dispatch via do_extract_tarball() { ok 1 - method do_extract_tarball is called with expected arguments ok 2 - do_extract_tarball is called at least 1 time @@ -2282,16 +2300,34 @@ } 1..3 } + ok 4 - with perfixed perl source archive { + ok 1 - should dispatch via do_extract_tarball() { + ok 1 - method do_extract_tarball is called with expected arguments + ok 2 - do_extract_tarball is called at least 1 time + 1..2 + } + ok 2 - should dispatch via do_install_this() { + ok 1 - method do_install_this is called with expected arguments + ok 2 - do_install_this is called at least 1 time + 1..2 + } + ok 3 - should dispatch via do_install_archive() { + ok 1 - method do_install_archive is called with expected arguments + ok 2 - do_install_archive is called at least 1 time + 1..2 + } + 1..3 + } 1..4 } 1..1 ok t/command-install-patchperl.t ............. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_patchperl { ok 1 - should produce 'patchperl' in the bin dir { ok 1 - GET patchperl url: https://raw.githubusercontent.com/gugod/patchperl-packing/master/patchperl - ok 2 - patchperl is produced. /tmp/QigfPDoZnF/bin/patchperl + ok 2 - patchperl is produced. /tmp/t6voidfXRL/bin/patchperl ok 3 - patchperl should be an executable. 1..3 } @@ -2300,78 +2336,58 @@ 1..1 ok t/command-install.t ....................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - command install { - ok 1 - should install from uri { + ok 1 - should install exact cperl version { + # (mock) installed cperl-5.26.4 to /tmp/t6voidfXRL/perls/cperl-5.26.4 + ok 1 - method do_install_release is called with expected arguments + ok 2 - do_install_release is called at least 1 time + 1..2 + } + ok 2 - should install from uri { ok 1 - method do_install_url is called with expected arguments ok 2 - do_install_url is called at least 1 time 1..2 } - ok 2 - should install stable version of perl { - # (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 - ok 1 - available_perls is called at least 1 time - ok 2 - method do_install_release is called with expected arguments - ok 3 - do_install_release is called at least 1 time - 1..3 + ok 3 - should install blead perl { + ok 1 - do_install_release should be called exactly 0 times + ok 2 - do_install_blead should be called exactly 1 times + 1..2 } - ok 3 - should install from archive { + ok 4 - should install from archive { ok 1 - method do_install_archive is called with expected arguments ok 2 - do_install_archive is called at least 1 time 1..2 } - ok 4 - should install git checkout { - ok 1 - method do_install_git is called with expected arguments - ok 2 - do_install_git is called at least 1 time - 1..2 - } - ok 5 - should install blead perl { - ok 1 - do_install_release should be called exactly 0 times - ok 2 - do_install_blead should be called exactly 1 times - 1..2 - } - ok 6 - should install exact cperl version { - # (mock) installed cperl-5.26.4 to /tmp/QigfPDoZnF/perls/cperl-5.26.4 + ok 5 - should install exact perl version { + # (mock) installed perl-5.12.1 to /tmp/t6voidfXRL/perls/perl-5.12.1 ok 1 - method do_install_release is called with expected arguments ok 2 - do_install_release is called at least 1 time 1..2 } - ok 7 - should install exact perl version { - # (mock) installed perl-5.12.1 to /tmp/QigfPDoZnF/perls/perl-5.12.1 - ok 1 - method do_install_release is called with expected arguments - ok 2 - do_install_release is called at least 1 time + ok 6 - should install git checkout { + ok 1 - method do_install_git is called with expected arguments + ok 2 - do_install_git is called at least 1 time 1..2 } + ok 7 - should install stable version of perl { + # (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 + ok 1 - available_perls is called at least 1 time + ok 2 - method do_install_release is called with expected arguments + ok 3 - do_install_release is called at least 1 time + 1..3 + } 1..7 } 1..1 ok t/command-lib.t ........................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 -# (mock) installed perl-5.14.3 to /tmp/QigfPDoZnF/perls/perl-5.14.3 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 +# (mock) installed perl-5.14.3 to /tmp/t6voidfXRL/perls/perl-5.14.3 ok 1 - lib command, { - ok 1 - `delete` sub-command, { - ok 1 - shows errors when the given lib does not exists { - ok 1 - dies with error message - 1..1 - } - ok 2 - deletes the local::lib folder { - ok 1 - stdout matches - ok 2 - ok 3 - 1..3 - } - 1..2 - } - ok 2 - when invoked with unknown action name, { - ok 1 - should display error { - ok 1 - Unknown command - 1..1 - } - 1..1 - } - ok 3 - without lib name { + ok 1 - without lib name { ok 1 - create errs gracefully showing usage { ok 1 - lib create 1..1 @@ -2382,15 +2398,24 @@ } 1..2 } - ok 4 - `create` sub-command, { - ok 1 - with perl name and @ as part of lib name, { - ok 1 - creates the lib folder for the specified perl { - ok 1 - stdout matches + ok 2 - `create` sub-command, { + ok 1 - with @ in the beginning of lib name, { + ok 1 - creates the lib folder for current perl { + ok 1 - libdir do not exist + ok 2 - stdout matches + ok 3 + 1..3 + } + 1..1 + } + ok 2 - with perl name and @ as part of lib name, { + ok 1 - shows errors if the specified perl does not exist. { + ok 1 - dies with error message ok 2 1..2 } - ok 2 - shows errors if the specified perl does not exist. { - ok 1 - dies with error message + ok 2 - creates the lib folder for the specified perl { + ok 1 - stdout matches ok 2 1..2 } @@ -2401,7 +2426,7 @@ } 1..3 } - ok 2 - with a bare lib name, { + ok 3 - with a bare lib name, { ok 1 - creates the lib folder for current perl { ok 1 - stdout matches ok 2 - libdir exists @@ -2409,16 +2434,27 @@ } 1..1 } - ok 3 - with @ in the beginning of lib name, { - ok 1 - creates the lib folder for current perl { - ok 1 - libdir do not exist - ok 2 - stdout matches - ok 3 - 1..3 - } + 1..3 + } + ok 3 - `delete` sub-command, { + ok 1 - shows errors when the given lib does not exists { + ok 1 - dies with error message 1..1 } - 1..3 + ok 2 - deletes the local::lib folder { + ok 1 - stdout matches + ok 2 + ok 3 + 1..3 + } + 1..2 + } + ok 4 - when invoked with unknown action name, { + ok 1 - should display error { + ok 1 - Unknown command + 1..1 + } + 1..1 } 1..4 } @@ -2426,11 +2462,11 @@ ok # Workflow build 'when `--no-decoration` is given' is empty at t/command-list.t around lines 90 -> 98. t/command-list.t .......................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.12.3 to /tmp/QigfPDoZnF/perls/perl-5.12.3 -# (mock) installed perl-5.12.4 to /tmp/QigfPDoZnF/perls/perl-5.12.4 -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.12.3 to /tmp/t6voidfXRL/perls/perl-5.12.3 +# (mock) installed perl-5.12.4 to /tmp/t6voidfXRL/perls/perl-5.12.4 +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 ok 1 - list command, { ok 1 - when there are lib under PERLBREW_HOME, { ok 1 - marks currently activated lib { @@ -2452,17 +2488,17 @@ } 1..3 } - ok 2 - when there no libs under PERLBREW_HOME, { + ok 2 - when `--no-decoration` is given { + ok 1 - No decoration mark in the output + 1..1 + } + ok 3 - when there no libs under PERLBREW_HOME, { ok 1 - displays a list of perl installation names { ok 1 - Cannot find Perl in output 1..1 } 1..1 } - ok 3 - when `--no-decoration` is given { - ok 1 - No decoration mark in the output - 1..1 - } 1..3 } 1..1 @@ -2473,14 +2509,14 @@ # #!/bin/bash # export PERL5LIB="/build/reproducible-path/perlbrew-1.01/blib/arch:/build/reproducible-path/perlbrew-1.01/blib/lib" # unset PERLBREW_LIB - # export PERLBREW_MANPATH="/tmp/QigfPDoZnF/perls/perl-5.36.1/man" - # export PERLBREW_PATH="/tmp/QigfPDoZnF/bin:/tmp/QigfPDoZnF/perls/perl-5.36.1/bin" + # export PERLBREW_MANPATH="/tmp/t6voidfXRL/perls/perl-5.36.1/man" + # export PERLBREW_PATH="/tmp/t6voidfXRL/bin:/tmp/t6voidfXRL/perls/perl-5.36.1/bin" # export PERLBREW_PERL="perl-5.36.1" - # export PERLBREW_ROOT="/tmp/QigfPDoZnF" + # export PERLBREW_ROOT="/tmp/t6voidfXRL" # export PERLBREW_VERSION="1.01" # unset PERL_LOCAL_LIB_ROOT # - # export PATH="/tmp/QigfPDoZnF/bin:/tmp/QigfPDoZnF/perls/perl-5.36.1/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" + # export PATH="/tmp/t6voidfXRL/bin:/tmp/t6voidfXRL/perls/perl-5.36.1/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" # # exec foo "$@" # @@ -2492,28 +2528,35 @@ # #!/bin/bash # export PERL5LIB="/build/reproducible-path/perlbrew-1.01/blib/arch:/build/reproducible-path/perlbrew-1.01/blib/lib" # unset PERLBREW_LIB - # export PERLBREW_MANPATH="/tmp/QigfPDoZnF/perls/perl-5.36.1/man" - # export PERLBREW_PATH="/tmp/QigfPDoZnF/bin:/tmp/QigfPDoZnF/perls/perl-5.36.1/bin" + # export PERLBREW_MANPATH="/tmp/t6voidfXRL/perls/perl-5.36.1/man" + # export PERLBREW_PATH="/tmp/t6voidfXRL/bin:/tmp/t6voidfXRL/perls/perl-5.36.1/bin" # export PERLBREW_PERL="perl-5.36.1" - # export PERLBREW_ROOT="/tmp/QigfPDoZnF" + # export PERLBREW_ROOT="/tmp/t6voidfXRL" # export PERLBREW_VERSION="1.01" # unset PERL_LOCAL_LIB_ROOT # - # export PATH="/tmp/QigfPDoZnF/bin:/tmp/QigfPDoZnF/perls/perl-5.36.1/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" + # export PATH="/tmp/t6voidfXRL/bin:/tmp/t6voidfXRL/perls/perl-5.36.1/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" # # exec bar "$@" # # # ---- t/command-make-shim.t ..................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.36.1 to /tmp/QigfPDoZnF/perls/perl-5.36.1 -ok 1 - App::perlbrew->make_shim('foo') { - ok 1 - should err when 'foo' already exists { - ok 1 - (?^:^ERROR:) - ok 2 - (?^:^ERROR:) +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.36.1 to /tmp/t6voidfXRL/perls/perl-5.36.1 +ok 1 - App::perlbrew->make_shim() { + ok 1 - should show usage { + ok 1 - `make-shim` should not trigger any exceptions + ok 2 - `help` command should be running. 1..2 } + 1..1 +} +ok 2 - App::perlbrew->make_shim('foo') { + ok 1 - should produce 'foo' in the current dir { + ok 1 - foo is produced under current directory. + 1..1 + } ok 2 - should err when perlbrew is off { ok 1 - (?^:^ERROR:) ok 2 - foo is not produced @@ -2523,37 +2566,23 @@ ok 1 - foo is produced under current directory. 1..1 } - ok 4 - should produce 'foo' in the current dir { - ok 1 - foo is produced under current directory. - 1..1 - } - 1..4 -} -ok 2 - App::perlbrew->make_shim() { - ok 1 - should show usage { - ok 1 - `make-shim` should not trigger any exceptions - ok 2 - `help` command should be running. + ok 4 - should err when 'foo' already exists { + ok 1 - (?^:^ERROR:) + ok 2 - (?^:^ERROR:) 1..2 } - 1..1 + 1..4 } 1..2 ok t/current_perl.t .......................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.12.3 to /tmp/QigfPDoZnF/perls/perl-5.12.3 -# (mock) installed perl-5.12.4 to /tmp/QigfPDoZnF/perls/perl-5.12.4 -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 -# (mock) installed perl-5.14.2 to /tmp/QigfPDoZnF/perls/perl-5.14.2 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.12.3 to /tmp/t6voidfXRL/perls/perl-5.12.3 +# (mock) installed perl-5.12.4 to /tmp/t6voidfXRL/perls/perl-5.12.4 +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 +# (mock) installed perl-5.14.2 to /tmp/t6voidfXRL/perls/perl-5.14.2 ok 1 - current perl { - ok 1 - can be decided from object attribute, which overrides env var. { - ok 1 - ok 2 - ok 3 - ok 4 - 1..4 - } - ok 2 - can be set with current_perl method. { + ok 1 - can be set with current_perl method. { ok 1 ok 2 ok 3 @@ -2564,6 +2593,13 @@ ok 8 1..8 } + ok 2 - can be decided from object attribute, which overrides env var. { + ok 1 + ok 2 + ok 3 + ok 4 + 1..4 + } ok 3 - is decided from env var PERLBREW_PERL { ok 1 ok 2 @@ -2576,7 +2612,7 @@ 1..1 ok t/current_shell.t ......................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..6 ok 1 - current_shell gives the expected shell based on $SHELL environment variable ok 2 - current_shell setups and returns anything passed as parameter @@ -2590,23 +2626,23 @@ ok 6 - current_shell_is_bashish() returns false ok t/do_system.t ............................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..2 ok 1 - passed all arguments to system() ok 2 - passed single string to system() ok t/error-http_download-exec-error.t ........ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - The exit status code of curl is -1 1..1 ok t/error-http_download-exit-nonzero.t ...... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - The exit status code of curl is 42 1..1 ok t/error-http_download-param-validation.t .. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - http_download: dies when when the download target already exists { ok 1 - dies with the expected error message 1..1 @@ -2614,12 +2650,12 @@ 1..1 ok t/error-install-before-init.t ............. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - installing a perl before initializing perlbrew fails 1..1 ok t/failure-command-install-cpanm.t ......... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_cpanm { ok 1 - should no produced 'cpanm' in the bin dir, if the downloaded content seems to be invalid. { ok 1 - GET cpanm url: https://raw.githubusercontent.com/miyagawa/cpanminus/master/cpanm @@ -2630,10 +2666,10 @@ # # ...and try again latter. # - # The previously downloaded file is saved at /tmp/cpanm.downloaded.3283590 for manual inspection. + # The previously downloaded file is saved at /tmp/cpanm.downloaded.969825 for manual inspection. # # - ok 3 - cpanm is not produced. /tmp/QigfPDoZnF/bin/cpanm + ok 3 - cpanm is not produced. /tmp/t6voidfXRL/bin/cpanm 1..3 } 1..1 @@ -2641,7 +2677,7 @@ 1..1 ok t/failure-command-install-cpm.t ........... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_cpm { ok 1 - should no produced 'cpm' in the bin dir, if the downloaded content seems to be invalid. { ok 1 - GET cpm url: https://raw.githubusercontent.com/skaji/cpm/main/cpm @@ -2652,10 +2688,10 @@ # # ...and try again latter. # - # The previously downloaded file is saved at /tmp/cpm.downloaded.3283857 for manual inspection. + # The previously downloaded file is saved at /tmp/cpm.downloaded.969847 for manual inspection. # # - ok 3 - cpm is not produced. /tmp/QigfPDoZnF/bin/cpm + ok 3 - cpm is not produced. /tmp/t6voidfXRL/bin/cpm 1..3 } 1..1 @@ -2663,7 +2699,7 @@ 1..1 ok t/failure-command-install-patchperl.t ..... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew->install_patchperl { ok 1 - should not produce 'patchperl' in the bin dir, if the downloaded content does not seem to be valid. { ok 1 - GET patchperl url: https://raw.githubusercontent.com/gugod/patchperl-packing/master/patchperl @@ -2674,10 +2710,10 @@ # # ...and try again latter. # - # The previously downloaded file is saved at /tmp/patchperl.downloaded.3283915 for manual inspection. + # The previously downloaded file is saved at /tmp/patchperl.downloaded.969856 for manual inspection. # # - ok 3 - patchperl is *not* installed: /tmp/QigfPDoZnF/bin/patchperl + ok 3 - patchperl is *not* installed: /tmp/t6voidfXRL/bin/patchperl 1..3 } 1..1 @@ -2685,7 +2721,7 @@ 1..1 ok t/home.t .................................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - App::perlbrew\#home method { ok 1 - it should return $App::perlbrew::PERLBREW_HOME if provided { ok 1 - App::Perlbrew::Path=HASH->isa('App::Perlbrew::Path') @@ -2716,7 +2752,7 @@ 1..1 ok t/http-program-control.t .................. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - UA should be curl, verbosity should be 0 { ok 1 - UA Program can be set to: curl ok 2 - verbosity matches: [curl --silent --location --fail -o - https\:\/\/perlbrew\.pl] @@ -2751,32 +2787,32 @@ } 1..7 ok -# PATH=/build/reproducible-path/perlbrew-1.01/t/fake-bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games +# PATH=/build/reproducible-path/perlbrew-1.01/t/fake-bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path # curl = /build/reproducible-path/perlbrew-1.01/t/fake-bin/curl t/http-ua-detect-non-curl.t ............... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 ok 2 - UA: wget 1..2 ok t/http-ua-detect.t ........................ -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - UA: curl 1..1 ok t/http.t .................................. skipped: (no reason given) t/installation-perlbrew.t ................. -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/DHvExRQigf +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/0_lydtt6vo ok 1 - `perlbrew self-install` initialize the required dir structure under PERLBREW_ROOT { # - # perlbrew root (/tmp/DHvExRQigf) is initialized. + # perlbrew root (/tmp/0_lydtt6vo) is initialized. # # Append the following piece of code to the end of your ~/.bash_profile and start a # new shell, perlbrew should be up and fully functional from there: # - # export PERLBREW_HOME=/tmp/PDoZnFu3v9 - # source /tmp/DHvExRQigf/etc/bashrc + # export PERLBREW_HOME=/tmp/idfXRLp5OS + # source /tmp/0_lydtt6vo/etc/bashrc # # Simply run `perlbrew` for usage details. # @@ -2818,10 +2854,10 @@ 1..5 ok t/installation.t .......................... -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/DHvExRQigf +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/0_lydtt6vo ok 1 -# (mock) installed perl-5.14.0 to /tmp/DHvExRQigf/perls/perl-5.14.0 +# (mock) installed perl-5.14.0 to /tmp/0_lydtt6vo/perls/perl-5.14.0 ok 2 ok 3 ok 4 - should die when doing install with existing distribution name. @@ -2832,7 +2868,7 @@ 1..3 } ok 6 - do not clobber exitsing user-specified name. { - # (mock) installed the-dude to /tmp/DHvExRQigf/perls/the-dude + # (mock) installed the-dude to /tmp/0_lydtt6vo/perls/the-dude ok 1 ok 2 ok 3 - should die when doing install with existing user-specified name. @@ -2841,12 +2877,12 @@ 1..6 ok t/installation2.t ......................... -# Seeded srand with seed '20241214' from local date. -# PERLBREW_ROOT set to /tmp/QigfPDoZnF +# Seeded srand with seed '20260117' from local date. +# PERLBREW_ROOT set to /tmp/t6voidfXRL ok 1 - App::perlbrew { ok 1 - ->do_install_url method { ok 1 - it should accept an URL to perl tarball, and download the tarball. { - # Fetching perl-5.14.0 as /tmp/QigfPDoZnF/dists/perl-5.14.0.tar.gz + # Fetching perl-5.14.0 as /tmp/t6voidfXRL/dists/perl-5.14.0.tar.gz ok 1 - http_download is called ok 2 - do_extract_tarball is called ok 3 - do_install_this is called @@ -2864,11 +2900,11 @@ } ok 3 - ->do_install_this method { ok 1 - it should log successful brews to the log_file. { - # Installing into /tmp/QigfPDoZnF/perls/perl-5.12.3 + # Installing into /tmp/t6voidfXRL/perls/perl-5.12.3 # # This could take a while. You can run the following command on another shell to track the status: # - # tail -f /tmp/QigfPDoZnF/build.perl-5.12.3.log + # tail -f /tmp/t6voidfXRL/build.perl-5.12.3.log # # perl-5.12.3 is successfully installed. ok 1 - Success message shows in log @@ -2876,11 +2912,11 @@ 1..2 } ok 2 - it should log brew failure to the log_file if system call fails. { - # Installing into /tmp/QigfPDoZnF/perls/perl-5.12.3 + # Installing into /tmp/t6voidfXRL/perls/perl-5.12.3 # # This could take a while. You can run the following command on another shell to track the status: # - # tail -f /tmp/QigfPDoZnF/build.perl-5.12.3.log + # tail -f /tmp/t6voidfXRL/build.perl-5.12.3.log # ok 1 ok 2 - Failure message shows in log @@ -2894,16 +2930,16 @@ 1..1 ok t/installation3.t ......................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..3 -# (mock) installed perl-5.16.2 to /tmp/DHvExRQigf/perls/perl-5.16.2 +# (mock) installed perl-5.16.2 to /tmp/0_lydtt6vo/perls/perl-5.16.2 ok 1 - install perl-stable installs one perl ok 2 - install perl-stable installs correct perl ok 3 - install --switch automatically switches to the installed perl ok t/list_modules.t .......................... -# Seeded srand with seed '20241214' from local date. -# (mock) installed perl-5.14.1 to /tmp/QigfPDoZnF/perls/perl-5.14.1 +# Seeded srand with seed '20260117' from local date. +# (mock) installed perl-5.14.1 to /tmp/t6voidfXRL/perls/perl-5.14.1 ok 1 - list_modules method, { ok 1 - when run successfully { ok 1 - should return an arryref of module names { @@ -2918,7 +2954,7 @@ 1..1 ok t/sys.t ................................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - sys { ok 1 ok 2 @@ -2930,7 +2966,7 @@ 1..1 ok t/unit-files-are-the-same.t ............... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. # Comparing /build/reproducible-path/perlbrew-1.01/t/00.load.t with /build/reproducible-path/perlbrew-1.01/t/08.error_install.t ok 1 ok 2 @@ -2964,7 +3000,7 @@ 1..20 ok t/util-find-similar-tokens.t .............. -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. 1..3 ok 1 - exact result { ok 1 @@ -2984,7 +3020,7 @@ } ok t/util-looks-like.t ....................... -# Seeded srand with seed '20241214' from local date. +# Seeded srand with seed '20260117' from local date. ok 1 - looks_like_url_of_skaji_relocatable_perl { ok 1 - positive case: https://github.com/skaji/relocatable-perl/releases/download/5.40.0.0/perl-darwin-amd64.tar.gz ok 2 - positive case: https://github.com/skaji/relocatable-perl/releases/download/5.40.0.0/perl-linux-amd64.tar.gz @@ -3004,7 +3040,7 @@ 1..2 ok All tests successful. -Files=72, Tests=241, 55 wallclock secs ( 0.39 usr 0.31 sys + 27.27 cusr 4.73 csys = 32.70 CPU) +Files=72, Tests=241, 17 wallclock secs ( 0.24 usr 0.13 sys + 12.25 cusr 2.18 csys = 14.80 CPU) Result: PASS create-stamp debian/debhelper-build-stamp dh_prep @@ -3016,11 +3052,11 @@ Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/perlbrew.pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Util.pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path.pm -Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/HTTP.pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Sys.pm -Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path/Installation.pm -Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path/Root.pm +Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/HTTP.pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path/Installations.pm +Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path/Root.pm +Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/perl5/App/Perlbrew/Path/Installation.pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/share/man/man3/App::perlbrew.3pm Installing /build/reproducible-path/perlbrew-1.01/debian/perlbrew/usr/bin/perlbrew # remove empty manpages @@ -3047,12 +3083,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/957877/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/3257245 and its subdirectories -I: Current time: Sat Dec 14 07:58:12 -12 2024 -I: pbuilder-time-stamp: 1734206292 +I: removing directory /srv/workspace/pbuilder/957877 and its subdirectories +I: Current time: Sat Jan 17 16:22:23 +14 2026 +I: pbuilder-time-stamp: 1768616543