Diff of the two buildlogs: -- --- b1/build.log 2024-07-05 10:56:05.335921441 +0000 +++ b2/build.log 2024-07-05 10:58:05.566815174 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Aug 7 05:18:00 -12 2025 -I: pbuilder-time-stamp: 1754587080 +I: Current time: Sat Jul 6 00:56:07 +14 2024 +I: pbuilder-time-stamp: 1720176967 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bullseye-reproducible-base.tgz] I: copying local configuration @@ -17,8 +17,8 @@ I: copying [./ruby-dry-container_0.7.2-2.debian.tar.xz] I: Extracting source gpgv: unknown type of key resource 'trustedkeys.kbx' -gpgv: keyblock resource '/tmp/dpkg-verify-sig.baJ2mQ2P/trustedkeys.kbx': General error -gpgv: Signature made Tue Mar 24 01:23:38 2020 -12 +gpgv: keyblock resource '/tmp/dpkg-verify-sig.kT4ep_AP/trustedkeys.kbx': General error +gpgv: Signature made Wed Mar 25 03:23:38 2020 +14 gpgv: using RSA key 6C9D10484A9AE4CC385F7C71823E967606C34B96 gpgv: issuer "utkarsh@debian.org" gpgv: Can't check signature: No public key @@ -30,135 +30,166 @@ dpkg-source: info: applying require-pathname.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2791021/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/424026/tmp/hooks/D01_modify_environment starting +debug: Running on ionos11-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 Jul 6 00:56 /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/424026/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/424026/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,-fixfilepath parallel=42 ' - DISTRIBUTION='bullseye' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="1" [2]="4" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.1.4(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,-fixfilepath parallel=20 ' + DIRSTACK=() + DISTRIBUTION=bullseye + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='9335e66621714aafa361a4222e440df3' - 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='2791021' - PS1='# ' - PS2='> ' + INVOCATION_ID=3561613a8ce84725a83f749fa4fc13f1 + 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=424026 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.muWIlaoU/pbuilderrc_VAwR --distribution bullseye --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bullseye-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.muWIlaoU/b1 --logfile b1/build.log ruby-dry-container_0.7.2-2.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152: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.muWIlaoU/pbuilderrc_GNfw --distribution bullseye --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bullseye-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.muWIlaoU/b2 --logfile b2/build.log ruby-dry-container_0.7.2-2.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://46.16.76.132:3128 I: uname -a - Linux ionos15-amd64 6.7.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.7.12-1~bpo12+1 (2024-05-06) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-22-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.94-1 (2024-06-21) x86_64 GNU/Linux I: ls -l /bin total 5476 - -rwxr-xr-x 1 root root 1234376 Mar 27 2022 bash - -rwxr-xr-x 3 root root 38984 Jul 20 2020 bunzip2 - -rwxr-xr-x 3 root root 38984 Jul 20 2020 bzcat - lrwxrwxrwx 1 root root 6 Jul 20 2020 bzcmp -> bzdiff - -rwxr-xr-x 1 root root 2225 Jul 20 2020 bzdiff - lrwxrwxrwx 1 root root 6 Jul 20 2020 bzegrep -> bzgrep - -rwxr-xr-x 1 root root 4877 Sep 4 2019 bzexe - lrwxrwxrwx 1 root root 6 Jul 20 2020 bzfgrep -> bzgrep - -rwxr-xr-x 1 root root 3775 Jul 20 2020 bzgrep - -rwxr-xr-x 3 root root 38984 Jul 20 2020 bzip2 - -rwxr-xr-x 1 root root 18424 Jul 20 2020 bzip2recover - lrwxrwxrwx 1 root root 6 Jul 20 2020 bzless -> bzmore - -rwxr-xr-x 1 root root 1297 Jul 20 2020 bzmore - -rwxr-xr-x 1 root root 43936 Sep 23 2020 cat - -rwxr-xr-x 1 root root 72672 Sep 23 2020 chgrp - -rwxr-xr-x 1 root root 64448 Sep 23 2020 chmod - -rwxr-xr-x 1 root root 72672 Sep 23 2020 chown - -rwxr-xr-x 1 root root 151168 Sep 23 2020 cp - -rwxr-xr-x 1 root root 125560 Dec 10 2020 dash - -rwxr-xr-x 1 root root 113664 Sep 23 2020 date - -rwxr-xr-x 1 root root 80968 Sep 23 2020 dd - -rwxr-xr-x 1 root root 93936 Sep 23 2020 df - -rwxr-xr-x 1 root root 147176 Sep 23 2020 dir - -rwxr-xr-x 1 root root 84440 Mar 27 2024 dmesg - lrwxrwxrwx 1 root root 8 Nov 6 2019 dnsdomainname -> hostname - lrwxrwxrwx 1 root root 8 Nov 6 2019 domainname -> hostname - -rwxr-xr-x 1 root root 39712 Sep 23 2020 echo - -rwxr-xr-x 1 root root 28 Jan 24 2023 egrep - -rwxr-xr-x 1 root root 39680 Sep 23 2020 false - -rwxr-xr-x 1 root root 28 Jan 24 2023 fgrep - -rwxr-xr-x 1 root root 69032 Mar 27 2024 findmnt - -rwsr-xr-x 1 root root 34896 Feb 26 2021 fusermount - -rwxr-xr-x 1 root root 203072 Jan 24 2023 grep - -rwxr-xr-x 2 root root 2346 Apr 9 2022 gunzip - -rwxr-xr-x 1 root root 6447 Apr 9 2022 gzexe - -rwxr-xr-x 1 root root 98048 Apr 9 2022 gzip - -rwxr-xr-x 1 root root 22600 Nov 6 2019 hostname - -rwxr-xr-x 1 root root 72840 Sep 23 2020 ln - -rwxr-xr-x 1 root root 56952 Feb 7 2020 login - -rwxr-xr-x 1 root root 147176 Sep 23 2020 ls - -rwxr-xr-x 1 root root 149736 Mar 27 2024 lsblk - -rwxr-xr-x 1 root root 85184 Sep 23 2020 mkdir - -rwxr-xr-x 1 root root 76896 Sep 23 2020 mknod - -rwxr-xr-x 1 root root 48064 Sep 23 2020 mktemp - -rwxr-xr-x 1 root root 59632 Mar 27 2024 more - -rwsr-xr-x 1 root root 55528 Mar 27 2024 mount - -rwxr-xr-x 1 root root 18664 Mar 27 2024 mountpoint - -rwxr-xr-x 1 root root 147080 Sep 23 2020 mv - lrwxrwxrwx 1 root root 8 Nov 6 2019 nisdomainname -> hostname - lrwxrwxrwx 1 root root 14 Dec 16 2021 pidof -> /sbin/killall5 - -rwxr-xr-x 1 root root 43872 Sep 23 2020 pwd - lrwxrwxrwx 1 root root 4 Mar 27 2022 rbash -> bash - -rwxr-xr-x 1 root root 52032 Sep 23 2020 readlink - -rwxr-xr-x 1 root root 72704 Sep 23 2020 rm - -rwxr-xr-x 1 root root 52032 Sep 23 2020 rmdir - -rwxr-xr-x 1 root root 27472 Sep 27 2020 run-parts - -rwxr-xr-x 1 root root 122224 Dec 22 2018 sed - lrwxrwxrwx 1 root root 4 Jul 10 03:47 sh -> dash - -rwxr-xr-x 1 root root 43808 Sep 23 2020 sleep - -rwxr-xr-x 1 root root 84928 Sep 23 2020 stty - -rwsr-xr-x 1 root root 71912 Mar 27 2024 su - -rwxr-xr-x 1 root root 39744 Sep 23 2020 sync - -rwxr-xr-x 1 root root 531928 Jan 19 2024 tar - -rwxr-xr-x 1 root root 14456 Sep 27 2020 tempfile - -rwxr-xr-x 1 root root 101408 Sep 23 2020 touch - -rwxr-xr-x 1 root root 39680 Sep 23 2020 true - -rwxr-xr-x 1 root root 14328 Feb 26 2021 ulockmgr_server - -rwsr-xr-x 1 root root 35040 Mar 27 2024 umount - -rwxr-xr-x 1 root root 39744 Sep 23 2020 uname - -rwxr-xr-x 2 root root 2346 Apr 9 2022 uncompress - -rwxr-xr-x 1 root root 147176 Sep 23 2020 vdir - -rwxr-xr-x 1 root root 63744 Mar 27 2024 wdctl - lrwxrwxrwx 1 root root 8 Nov 6 2019 ypdomainname -> hostname - -rwxr-xr-x 1 root root 1984 Apr 9 2022 zcat - -rwxr-xr-x 1 root root 1678 Apr 9 2022 zcmp - -rwxr-xr-x 1 root root 5898 Apr 9 2022 zdiff - -rwxr-xr-x 1 root root 29 Apr 9 2022 zegrep - -rwxr-xr-x 1 root root 29 Apr 9 2022 zfgrep - -rwxr-xr-x 1 root root 2081 Apr 9 2022 zforce - -rwxr-xr-x 1 root root 8049 Apr 9 2022 zgrep - -rwxr-xr-x 1 root root 2206 Apr 9 2022 zless - -rwxr-xr-x 1 root root 1842 Apr 9 2022 zmore - -rwxr-xr-x 1 root root 4577 Apr 9 2022 znew -I: user script /srv/workspace/pbuilder/2791021/tmp/hooks/D02_print_environment finished + -rwxr-xr-x 1 root root 1234376 Mar 28 2022 bash + -rwxr-xr-x 3 root root 38984 Jul 21 2020 bunzip2 + -rwxr-xr-x 3 root root 38984 Jul 21 2020 bzcat + lrwxrwxrwx 1 root root 6 Jul 21 2020 bzcmp -> bzdiff + -rwxr-xr-x 1 root root 2225 Jul 21 2020 bzdiff + lrwxrwxrwx 1 root root 6 Jul 21 2020 bzegrep -> bzgrep + -rwxr-xr-x 1 root root 4877 Sep 5 2019 bzexe + lrwxrwxrwx 1 root root 6 Jul 21 2020 bzfgrep -> bzgrep + -rwxr-xr-x 1 root root 3775 Jul 21 2020 bzgrep + -rwxr-xr-x 3 root root 38984 Jul 21 2020 bzip2 + -rwxr-xr-x 1 root root 18424 Jul 21 2020 bzip2recover + lrwxrwxrwx 1 root root 6 Jul 21 2020 bzless -> bzmore + -rwxr-xr-x 1 root root 1297 Jul 21 2020 bzmore + -rwxr-xr-x 1 root root 43936 Sep 24 2020 cat + -rwxr-xr-x 1 root root 72672 Sep 24 2020 chgrp + -rwxr-xr-x 1 root root 64448 Sep 24 2020 chmod + -rwxr-xr-x 1 root root 72672 Sep 24 2020 chown + -rwxr-xr-x 1 root root 151168 Sep 24 2020 cp + -rwxr-xr-x 1 root root 125560 Dec 11 2020 dash + -rwxr-xr-x 1 root root 113664 Sep 24 2020 date + -rwxr-xr-x 1 root root 80968 Sep 24 2020 dd + -rwxr-xr-x 1 root root 93936 Sep 24 2020 df + -rwxr-xr-x 1 root root 147176 Sep 24 2020 dir + -rwxr-xr-x 1 root root 84440 Mar 29 00:09 dmesg + lrwxrwxrwx 1 root root 8 Nov 8 2019 dnsdomainname -> hostname + lrwxrwxrwx 1 root root 8 Nov 8 2019 domainname -> hostname + -rwxr-xr-x 1 root root 39712 Sep 24 2020 echo + -rwxr-xr-x 1 root root 28 Jan 25 2023 egrep + -rwxr-xr-x 1 root root 39680 Sep 24 2020 false + -rwxr-xr-x 1 root root 28 Jan 25 2023 fgrep + -rwxr-xr-x 1 root root 69032 Mar 29 00:09 findmnt + -rwsr-xr-x 1 root root 34896 Feb 27 2021 fusermount + -rwxr-xr-x 1 root root 203072 Jan 25 2023 grep + -rwxr-xr-x 2 root root 2346 Apr 10 2022 gunzip + -rwxr-xr-x 1 root root 6447 Apr 10 2022 gzexe + -rwxr-xr-x 1 root root 98048 Apr 10 2022 gzip + -rwxr-xr-x 1 root root 22600 Nov 8 2019 hostname + -rwxr-xr-x 1 root root 72840 Sep 24 2020 ln + -rwxr-xr-x 1 root root 56952 Feb 8 2020 login + -rwxr-xr-x 1 root root 147176 Sep 24 2020 ls + -rwxr-xr-x 1 root root 149736 Mar 29 00:09 lsblk + -rwxr-xr-x 1 root root 85184 Sep 24 2020 mkdir + -rwxr-xr-x 1 root root 76896 Sep 24 2020 mknod + -rwxr-xr-x 1 root root 48064 Sep 24 2020 mktemp + -rwxr-xr-x 1 root root 59632 Mar 29 00:09 more + -rwsr-xr-x 1 root root 55528 Mar 29 00:09 mount + -rwxr-xr-x 1 root root 18664 Mar 29 00:09 mountpoint + -rwxr-xr-x 1 root root 147080 Sep 24 2020 mv + lrwxrwxrwx 1 root root 8 Nov 8 2019 nisdomainname -> hostname + lrwxrwxrwx 1 root root 14 Dec 17 2021 pidof -> /sbin/killall5 + -rwxr-xr-x 1 root root 43872 Sep 24 2020 pwd + lrwxrwxrwx 1 root root 4 Mar 28 2022 rbash -> bash + -rwxr-xr-x 1 root root 52032 Sep 24 2020 readlink + -rwxr-xr-x 1 root root 72704 Sep 24 2020 rm + -rwxr-xr-x 1 root root 52032 Sep 24 2020 rmdir + -rwxr-xr-x 1 root root 27472 Sep 28 2020 run-parts + -rwxr-xr-x 1 root root 122224 Dec 23 2018 sed + lrwxrwxrwx 1 root root 9 Jul 6 00:56 sh -> /bin/bash + -rwxr-xr-x 1 root root 43808 Sep 24 2020 sleep + -rwxr-xr-x 1 root root 84928 Sep 24 2020 stty + -rwsr-xr-x 1 root root 71912 Mar 29 00:09 su + -rwxr-xr-x 1 root root 39744 Sep 24 2020 sync + -rwxr-xr-x 1 root root 531928 Jan 20 23:59 tar + -rwxr-xr-x 1 root root 14456 Sep 28 2020 tempfile + -rwxr-xr-x 1 root root 101408 Sep 24 2020 touch + -rwxr-xr-x 1 root root 39680 Sep 24 2020 true + -rwxr-xr-x 1 root root 14328 Feb 27 2021 ulockmgr_server + -rwsr-xr-x 1 root root 35040 Mar 29 00:09 umount + -rwxr-xr-x 1 root root 39744 Sep 24 2020 uname + -rwxr-xr-x 2 root root 2346 Apr 10 2022 uncompress + -rwxr-xr-x 1 root root 147176 Sep 24 2020 vdir + -rwxr-xr-x 1 root root 63744 Mar 29 00:09 wdctl + lrwxrwxrwx 1 root root 8 Nov 8 2019 ypdomainname -> hostname + -rwxr-xr-x 1 root root 1984 Apr 10 2022 zcat + -rwxr-xr-x 1 root root 1678 Apr 10 2022 zcmp + -rwxr-xr-x 1 root root 5898 Apr 10 2022 zdiff + -rwxr-xr-x 1 root root 29 Apr 10 2022 zegrep + -rwxr-xr-x 1 root root 29 Apr 10 2022 zfgrep + -rwxr-xr-x 1 root root 2081 Apr 10 2022 zforce + -rwxr-xr-x 1 root root 8049 Apr 10 2022 zgrep + -rwxr-xr-x 1 root root 2206 Apr 10 2022 zless + -rwxr-xr-x 1 root root 1842 Apr 10 2022 zmore + -rwxr-xr-x 1 root root 4577 Apr 10 2022 znew +I: user script /srv/workspace/pbuilder/424026/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -338,7 +369,7 @@ Get: 132 http://deb.debian.org/debian bullseye/main amd64 ruby-rspec-expectations all 3.9.0c2e2m1s3-2 [89.9 kB] Get: 133 http://deb.debian.org/debian bullseye/main amd64 ruby-rspec-mocks all 3.9.0c2e2m1s3-2 [81.4 kB] Get: 134 http://deb.debian.org/debian bullseye/main amd64 ruby-rspec all 3.9.0c2e2m1s3-2 [8348 B] -Fetched 44.4 MB in 1s (87.1 MB/s) +Fetched 44.4 MB in 2s (18.5 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package bsdextrautils. (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 ... 19711 files and directories currently installed.) @@ -899,7 +930,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/ruby-dry-container-0.7.2/ && 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 > ../ruby-dry-container_0.7.2-2_source.changes +I: user script /srv/workspace/pbuilder/424026/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for bullseye +I: user script /srv/workspace/pbuilder/424026/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-dry-container-0.7.2/ && 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 > ../ruby-dry-container_0.7.2-2_source.changes dpkg-buildpackage: info: source package ruby-dry-container dpkg-buildpackage: info: source version 0.7.2-2 dpkg-buildpackage: info: source distribution unstable @@ -930,7 +965,7 @@ dh_auto_install -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-dry-container-0.7.2/debian/ruby-dry-container dh_ruby --install -/usr/bin/ruby2.7 -S gem build --config-file /dev/null --verbose /tmp/d20250807-2799987-1vm70e3/gemspec +/usr/bin/ruby2.7 -S gem build --config-file /dev/null --verbose /tmp/d20240706-442603-9rrcj9/gemspec Failed to load /dev/null because it doesn't contain valid YAML hash WARNING: open-ended dependency on bundler (>= 0, development) is not recommended use a bounded requirement, such as '~> x.y' @@ -943,7 +978,7 @@ Name: dry-container Version: 0.7.2 File: dry-container-0.7.2.gem -/usr/bin/ruby2.7 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-dry-container/usr/share/rubygems-integration/all /tmp/d20250807-2799987-1vm70e3/dry-container-0.7.2.gem +/usr/bin/ruby2.7 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-dry-container/usr/share/rubygems-integration/all /tmp/d20240706-442603-9rrcj9/dry-container-0.7.2.gem Failed to load /dev/null because it doesn't contain valid YAML hash /build/reproducible-path/ruby-dry-container-0.7.2/debian/ruby-dry-container/usr/share/rubygems-integration/all/gems/dry-container-0.7.2/lib/dry-container.rb /build/reproducible-path/ruby-dry-container-0.7.2/debian/ruby-dry-container/usr/share/rubygems-integration/all/gems/dry-container-0.7.2/lib/dry/container.rb @@ -970,7 +1005,7 @@ rm -rf extensions cd gems/dry-container-0.7.2 rm -f -chmod 644 lib/dry-container.rb lib/dry/container/mixin.rb lib/dry/container/item.rb lib/dry/container/item/factory.rb lib/dry/container/item/memoizable.rb lib/dry/container/item/callable.rb lib/dry/container/namespace.rb lib/dry/container/error.rb lib/dry/container/registry.rb lib/dry/container/namespace_dsl.rb lib/dry/container/version.rb lib/dry/container/resolver.rb lib/dry/container/stub.rb lib/dry/container.rb +chmod 644 lib/dry/container/namespace_dsl.rb lib/dry/container/namespace.rb lib/dry/container/stub.rb lib/dry/container/error.rb lib/dry/container/item.rb lib/dry/container/resolver.rb lib/dry/container/item/memoizable.rb lib/dry/container/item/factory.rb lib/dry/container/item/callable.rb lib/dry/container/registry.rb lib/dry/container/version.rb lib/dry/container/mixin.rb lib/dry/container.rb lib/dry-container.rb find lib/ -type d -empty -delete cd - cd - @@ -990,266 +1025,155 @@ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-dry-container-0.7.2/debian/ruby-dry-container/usr/share/rubygems-integration/all:/var/lib/gems/2.7.0:/usr/local/lib/ruby/gems/2.7.0:/usr/lib/ruby/gems/2.7.0:/usr/lib/x86_64-linux-gnu/ruby/gems/2.7.0:/usr/share/rubygems-integration/2.7.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0 ruby2.7 -S rake -f debian/ruby-tests.rake /usr/bin/ruby2.7 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.9.3/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.9.2/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.9.2/exe/rspec --pattern ./spec/\*\*/\*_spec.rb --format documentation -Randomized with seed 59618 - -Dry::Container - behaves like a container - .clone - re-uses frozen container - returns a copy that doesn't share registered keys with the parent - .resolve - accepts a fallback block - .dup - returns a copy that doesn't share registered keys with the parent - .freeze - allows to freeze a container so that nothing can be registered later - returns self back - configuration - namespace_separator - custom - is expected to eq "item" - default - is expected to eq "." - registry - default - is expected to be a kind of Dry::Container::Registry - custom - is expected to have received call({}, :key, :item, {}) 1 time - resolver - default - is expected to be a kind of Dry::Container::Resolver - custom - is expected to have received call({}, :key) 1 time - is expected to eq # - stubbing - only other keys remain accesible - keys can be reverted back to their original value - keys can be stubbed - raises an error when key is missing - with block argument - executes the block with the given stubs - keys are stubbed only while inside the block - mixing Strings and Symbols - is expected to eql "stub" - with default configuration - import - allows importing of namespaces - allows importing of nested namespaces - #keys - returns stringified versions of all registered keys - #key? - when key exists in container - is expected to equal true - when key does not exist in container - is expected to equal false - registering a proc - without options - without arguments - registers and resolves an object - with arguments - registers and resolves a proc - with option memoize: true - registers and resolves a proc - only resolves the proc once - when receiving something other than a proc - is expected to raise Dry::Container::Error - with option call: false - registers and resolves a proc - mixing Strings and Symbols - is expected to eql "item" - #decorate - for callable item - memoize true - is expected to equal #:0x000055c6606bee10>)> - memoize false - does not call the block until the key is resolved - is expected not to equal #<#:0x000055c660321eb0> - for not callable item - memoization - decorates static value only once - wrapping - expected to be an instance of SimpleDelegator - with an instance as a decorator - expected to pass original value to decorator#call method - #each - yields stringified versions of all registered keys to the block - returns the container - resolving with a key that has not been registered - is expected to raise Dry::Container::Error - registering a block - without options - without arguments - registers and resolves an object - with arguments - does not call a proc on resolving if one accepts an arbitrary number of keyword arguments - registers and resolves a proc - with option call: false - registers and resolves a proc - #merge - without namespace argument - is expected to equal :item - is expected to equal :item - with namespace argument - when namespace is not nil - is expected to equal :item - is expected to equal :item - when namespace is nil - is expected to equal :item - is expected to equal :item - namespace - with nesting - registers items under the given namespaces - when block does not take arguments - registers items under the given namespace - with nesting and when block takes arguments - resolves items relative to the namespace - when block takes arguments - registers items under the given namespace - registering an object - with option call: false - registers and resolves an object - without options - registers and resolves the object - registering with the same key multiple times - is expected to raise Dry::Container::Error - #each_key - returns the container - yields stringified versions of all registered keys to the block - inheritance - sets up a container for a child class +Randomized with seed 49242 Dry::Container::Mixin - included + extended behaves like a container - .clone - returns a copy that doesn't share registered keys with the parent - re-uses frozen container - .dup - returns a copy that doesn't share registered keys with the parent .freeze - returns self back allows to freeze a container so that nothing can be registered later - configuration - namespace_separator - default - is expected to eq "." - custom - is expected to eq "item" - registry - default - is expected to be a kind of Dry::Container::Registry - custom - is expected to have received call({}, :key, :item, {}) 1 time - resolver - custom - is expected to eq # - is expected to have received call({}, :key) 1 time - default - is expected to be a kind of Dry::Container::Resolver + returns self back with default configuration resolving with a key that has not been registered is expected to raise Dry::Container::Error - #decorate - with an instance as a decorator - expected to pass original value to decorator#call method - for not callable item - wrapping - expected to be an instance of SimpleDelegator - memoization - decorates static value only once - for callable item - memoize true - is expected to equal #:0x000055c66073df30>)> - memoize false - does not call the block until the key is resolved - is expected not to equal #<#:0x000055c660726ba0> + #keys + returns stringified versions of all registered keys registering a proc - with option call: false - registers and resolves a proc without options - without arguments - registers and resolves an object with arguments registers and resolves a proc + without arguments + registers and resolves an object + with option call: false + registers and resolves a proc with option memoize: true only resolves the proc once registers and resolves a proc when receiving something other than a proc is expected to raise Dry::Container::Error - registering an object - without options - registers and resolves the object - with option call: false - registers and resolves an object - import - allows importing of nested namespaces - allows importing of namespaces - #key? - when key does not exist in container - is expected to equal false - when key exists in container - is expected to equal true + registering with the same key multiple times + is expected to raise Dry::Container::Error registering a block with option call: false registers and resolves a proc without options - without arguments - registers and resolves an object with arguments does not call a proc on resolving if one accepts an arbitrary number of keyword arguments registers and resolves a proc + without arguments + registers and resolves an object mixing Strings and Symbols is expected to eql "item" - #keys - returns stringified versions of all registered keys + #decorate + with an instance as a decorator + expected to pass original value to decorator#call method + for callable item + memoize true + is expected to equal #:0x0000558f08d319f8>)> + memoize false + does not call the block until the key is resolved + is expected not to equal #<#:0x0000558f08fefeb0> + for not callable item + memoization + decorates static value only once + wrapping + expected to be an instance of SimpleDelegator + #key? + when key exists in container + is expected to equal true + when key does not exist in container + is expected to equal false + import + allows importing of nested namespaces + allows importing of namespaces + #each_key + yields stringified versions of all registered keys to the block + returns the container + #each + yields stringified versions of all registered keys to the block + returns the container #merge + without namespace argument + is expected to equal :item + is expected to equal :item with namespace argument - when namespace is not nil + when namespace is nil is expected to equal :item is expected to equal :item - when namespace is nil + when namespace is not nil is expected to equal :item is expected to equal :item - without namespace argument - is expected to equal :item - is expected to equal :item - #each - yields stringified versions of all registered keys to the block - returns the container - #each_key - yields stringified versions of all registered keys to the block - returns the container + registering an object + with option call: false + registers and resolves an object + without options + registers and resolves the object namespace + when block takes arguments + registers items under the given namespace when block does not take arguments registers items under the given namespace with nesting and when block takes arguments resolves items relative to the namespace with nesting registers items under the given namespaces - when block takes arguments - registers items under the given namespace - registering with the same key multiple times - is expected to raise Dry::Container::Error + .dup + returns a copy that doesn't share registered keys with the parent stubbing + only other keys remain accesible raises an error when key is missing keys can be stubbed - only other keys remain accesible keys can be reverted back to their original value - with block argument - executes the block with the given stubs - keys are stubbed only while inside the block mixing Strings and Symbols is expected to eql "stub" + with block argument + keys are stubbed only while inside the block + executes the block with the given stubs .resolve accepts a fallback block + configuration + registry + default + is expected to be a kind of Dry::Container::Registry + custom + is expected to have received call({}, :key, :item, {}) 1 time + resolver + custom + is expected to have received call({}, :key) 1 time + is expected to eq # + default + is expected to be a kind of Dry::Container::Resolver + namespace_separator + custom + is expected to eq "item" + default + is expected to eq "." + .clone + re-uses frozen container + returns a copy that doesn't share registered keys with the parent + included into a class with a custom .initialize method does not fail on missing member variable - extended behaves like a container - .clone - returns a copy that doesn't share registered keys with the parent - re-uses frozen container + .freeze + returns self back + allows to freeze a container so that nothing can be registered later + stubbing + keys can be reverted back to their original value + keys can be stubbed + only other keys remain accesible + raises an error when key is missing + mixing Strings and Symbols + is expected to eql "stub" + with block argument + keys are stubbed only while inside the block + executes the block with the given stubs configuration + registry + custom + is expected to have received call({}, :key, :item, {}) 1 time + default + is expected to be a kind of Dry::Container::Registry resolver default is expected to be a kind of Dry::Container::Resolver @@ -1261,131 +1185,242 @@ is expected to eq "item" default is expected to eq "." - registry - custom - is expected to have received call({}, :key, :item, {}) 1 time - default - is expected to be a kind of Dry::Container::Registry + .clone + returns a copy that doesn't share registered keys with the parent + re-uses frozen container + .dup + returns a copy that doesn't share registered keys with the parent with default configuration - mixing Strings and Symbols - is expected to eql "item" - #merge - with namespace argument - when namespace is not nil - is expected to equal :item - is expected to equal :item - when namespace is nil - is expected to equal :item - is expected to equal :item - without namespace argument - is expected to equal :item - is expected to equal :item - #key? - when key does not exist in container - is expected to equal false - when key exists in container - is expected to equal true + #each_key + returns the container + yields stringified versions of all registered keys to the block + #keys + returns stringified versions of all registered keys registering a block without options with arguments - registers and resolves a proc does not call a proc on resolving if one accepts an arbitrary number of keyword arguments + registers and resolves a proc without arguments registers and resolves an object with option call: false registers and resolves a proc - #each_key - yields stringified versions of all registered keys to the block - returns the container resolving with a key that has not been registered is expected to raise Dry::Container::Error registering with the same key multiple times is expected to raise Dry::Container::Error + namespace + when block does not take arguments + registers items under the given namespace + with nesting and when block takes arguments + resolves items relative to the namespace + with nesting + registers items under the given namespaces + when block takes arguments + registers items under the given namespace #decorate + for not callable item + wrapping + expected to be an instance of SimpleDelegator + memoization + decorates static value only once with an instance as a decorator expected to pass original value to decorator#call method for callable item memoize true - is expected to equal #:0x000055c660129bd0>)> + is expected to equal #:0x0000558f08f9e880>)> memoize false - is expected not to equal #<#:0x000055c66007f068> does not call the block until the key is resolved - for not callable item - memoization - decorates static value only once - wrapping - expected to be an instance of SimpleDelegator + is expected not to equal #<#:0x0000558f08f5fc98> registering an object with option call: false registers and resolves an object without options registers and resolves the object - #each - yields stringified versions of all registered keys to the block - returns the container - import - allows importing of namespaces - allows importing of nested namespaces - namespace - when block does not take arguments - registers items under the given namespace - with nesting and when block takes arguments - resolves items relative to the namespace - with nesting - registers items under the given namespaces - when block takes arguments - registers items under the given namespace - #keys - returns stringified versions of all registered keys + #key? + when key exists in container + is expected to equal true + when key does not exist in container + is expected to equal false registering a proc without options without arguments registers and resolves an object with arguments registers and resolves a proc - with option call: false - registers and resolves a proc with option memoize: true only resolves the proc once registers and resolves a proc when receiving something other than a proc is expected to raise Dry::Container::Error - stubbing - keys can be stubbed - only other keys remain accesible - keys can be reverted back to their original value - raises an error when key is missing - with block argument - executes the block with the given stubs - keys are stubbed only while inside the block + with option call: false + registers and resolves a proc mixing Strings and Symbols - is expected to eql "stub" + is expected to eql "item" + #merge + with namespace argument + when namespace is not nil + is expected to equal :item + is expected to equal :item + when namespace is nil + is expected to equal :item + is expected to equal :item + without namespace argument + is expected to equal :item + is expected to equal :item + import + allows importing of namespaces + allows importing of nested namespaces + #each + returns the container + yields stringified versions of all registered keys to the block .resolve accepts a fallback block - .dup - returns a copy that doesn't share registered keys with the parent - .freeze - returns self back - allows to freeze a container so that nothing can be registered later -Top 3 slowest examples (0.00879 seconds, 8.3% of total time): - Dry::Container behaves like a container configuration registry custom is expected to have received call({}, :key, :item, {}) 1 time - 0.00559 seconds ./spec/support/shared_examples/container.rb:32 - Dry::Container behaves like a container .clone re-uses frozen container - 0.00163 seconds ./spec/support/shared_examples/container.rb:653 - Dry::Container behaves like a container stubbing with block argument executes the block with the given stubs - 0.00157 seconds ./spec/support/shared_examples/container.rb:597 +Dry::Container + inheritance + sets up a container for a child class + behaves like a container + with default configuration + #merge + without namespace argument + is expected to equal :item + is expected to equal :item + with namespace argument + when namespace is nil + is expected to equal :item + is expected to equal :item + when namespace is not nil + is expected to equal :item + is expected to equal :item + resolving with a key that has not been registered + is expected to raise Dry::Container::Error + #key? + when key exists in container + is expected to equal true + when key does not exist in container + is expected to equal false + registering with the same key multiple times + is expected to raise Dry::Container::Error + #each + returns the container + yields stringified versions of all registered keys to the block + namespace + with nesting and when block takes arguments + resolves items relative to the namespace + with nesting + registers items under the given namespaces + when block does not take arguments + registers items under the given namespace + when block takes arguments + registers items under the given namespace + #decorate + for not callable item + wrapping + expected to be an instance of SimpleDelegator + memoization + decorates static value only once + for callable item + memoize false + is expected not to equal #<#:0x0000558f08ab3b40> + does not call the block until the key is resolved + memoize true + is expected to equal #:0x0000558f08a47ee0>)> + with an instance as a decorator + expected to pass original value to decorator#call method + registering a proc + without options + without arguments + registers and resolves an object + with arguments + registers and resolves a proc + with option call: false + registers and resolves a proc + with option memoize: true + registers and resolves a proc + only resolves the proc once + when receiving something other than a proc + is expected to raise Dry::Container::Error + #keys + returns stringified versions of all registered keys + #each_key + yields stringified versions of all registered keys to the block + returns the container + registering an object + with option call: false + registers and resolves an object + without options + registers and resolves the object + registering a block + without options + without arguments + registers and resolves an object + with arguments + does not call a proc on resolving if one accepts an arbitrary number of keyword arguments + registers and resolves a proc + with option call: false + registers and resolves a proc + import + allows importing of namespaces + allows importing of nested namespaces + mixing Strings and Symbols + is expected to eql "item" + .resolve + accepts a fallback block + .freeze + returns self back + allows to freeze a container so that nothing can be registered later + .dup + returns a copy that doesn't share registered keys with the parent + .clone + returns a copy that doesn't share registered keys with the parent + re-uses frozen container + stubbing + raises an error when key is missing + keys can be stubbed + keys can be reverted back to their original value + only other keys remain accesible + with block argument + executes the block with the given stubs + keys are stubbed only while inside the block + mixing Strings and Symbols + is expected to eql "stub" + configuration + resolver + default + is expected to be a kind of Dry::Container::Resolver + custom + is expected to eq # + is expected to have received call({}, :key) 1 time + namespace_separator + default + is expected to eq "." + custom + is expected to eq "item" + registry + custom + is expected to have received call({}, :key, :item, {}) 1 time + default + is expected to be a kind of Dry::Container::Registry + +Top 3 slowest examples (0.0498 seconds, 16.2% of total time): + Dry::Container::Mixin extended behaves like a container .freeze allows to freeze a container so that nothing can be registered later + 0.04033 seconds ./spec/support/shared_examples/container.rb:628 + Dry::Container::Mixin extended behaves like a container with default configuration #decorate with an instance as a decorator expected to pass original value to decorator#call method + 0.00694 seconds ./spec/support/shared_examples/container.rb:472 + Dry::Container::Mixin extended behaves like a container stubbing with block argument executes the block with the given stubs + 0.00253 seconds ./spec/support/shared_examples/container.rb:597 Top 2 slowest example groups: - Dry::Container - 0.00061 seconds average (0.03724 seconds / 61 examples) ./spec/integration/container_spec.rb:1 Dry::Container::Mixin - 0.00056 seconds average (0.06736 seconds / 121 examples) ./spec/integration/mixin_spec.rb:1 + 0.00111 seconds average (0.13428 seconds / 121 examples) ./spec/integration/mixin_spec.rb:1 + Dry::Container + 0.00051 seconds average (0.03112 seconds / 61 examples) ./spec/integration/container_spec.rb:1 -Finished in 0.10631 seconds (files took 0.16402 seconds to load) +Finished in 0.3071 seconds (files took 0.49826 seconds to load) 182 examples, 0 failures -Randomized with seed 59618 +Randomized with seed 49242 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -1416,12 +1451,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/424026/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/424026/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/2791021 and its subdirectories -I: Current time: Thu Aug 7 05:19:04 -12 2025 -I: pbuilder-time-stamp: 1754587144 +I: removing directory /srv/workspace/pbuilder/424026 and its subdirectories +I: Current time: Sat Jul 6 00:58:04 +14 2024 +I: pbuilder-time-stamp: 1720177084