Diff of the two buildlogs: -- --- b1/build.log 2025-11-11 07:04:20.857586232 +0000 +++ b2/build.log 2025-11-11 07:05:40.617679549 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Dec 14 01:24:00 -12 2026 -I: pbuilder-time-stamp: 1797254640 +I: Current time: Tue Nov 11 21:04:22 +14 2025 +I: pbuilder-time-stamp: 1762844662 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -29,53 +29,85 @@ dpkg-source: info: applying 0006-Rename-File.exists-to-.exist.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2615651/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3681164/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-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 Nov 11 07:04 /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/3681164/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3681164/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=42 ' - DISTRIBUTION='forky' - 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]="3" [2]="3" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.3.3(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=40 nocheck' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='dc2613136d634c5682d10ff90dde41bf' - 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='2615651' - PS1='# ' - PS2='> ' + INVOCATION_ID=58d1243a889740ebbf8ecca3f46c748e + 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=3681164 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.AB2nhW8M/pbuilderrc_GsYJ --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.AB2nhW8M/b1 --logfile b1/build.log ruby-librarian_0.6.4-5.dsc' - SUDO_GID='110' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='105' - 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.AB2nhW8M/pbuilderrc_S5ww --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.AB2nhW8M/b2 --logfile b2/build.log ruby-librarian_0.6.4-5.dsc' + SUDO_GID=110 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=105 + 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 ionos5-amd64 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/2615651/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3681164/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -275,7 +307,7 @@ Get: 150 http://deb.debian.org/debian forky/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 151 http://deb.debian.org/debian forky/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Get: 152 http://deb.debian.org/debian forky/main amd64 ruby-thor all 1.4.0-1 [49.5 kB] -Fetched 52.8 MB in 29s (1843 kB/s) +Fetched 52.8 MB in 7s (7212 kB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1:amd64. (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 ... 19862 files and directories currently installed.) @@ -782,8 +814,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Mon Dec 14 13:26:48 UTC 2026. -Universal Time is now: Mon Dec 14 13:26:48 UTC 2026. +Local time is now: Tue Nov 11 07:05:19 UTC 2025. +Universal Time is now: Tue Nov 11 07:05:19 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up liberror-perl (0.17030-1) ... @@ -924,7 +956,11 @@ Solving dependencies... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/ruby-librarian-0.6.4/ && 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-librarian_0.6.4-5_source.changes +I: user script /srv/workspace/pbuilder/3681164/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/3681164/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-librarian-0.6.4/ && 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-librarian_0.6.4-5_source.changes dpkg-buildpackage: info: source package ruby-librarian dpkg-buildpackage: info: source version 0.6.4-5 dpkg-buildpackage: info: source distribution unstable @@ -948,8 +984,7 @@ dh_ruby --configure dh_auto_build -O--buildsystem=ruby dh_ruby --build - dh_auto_test -O--buildsystem=ruby - dh_ruby --test +dh: command-omitted: The call to "dh_auto_test -O--buildsystem=ruby" was omitted due to "DEB_BUILD_OPTIONS=nocheck" create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary --buildsystem=ruby --with ruby @@ -966,7 +1001,7 @@ │ ruby-librarian: Installing files and building extensions for ruby3.3 │ └──────────────────────────────────────────────────────────────────────────────┘ -/usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20261214-2660443-91w3b/gemspec +/usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20251111-3701522-u477oa/gemspec WARNING: open-ended dependency on thor (>= 0.15) is not recommended if thor is semantically versioned, use: add_runtime_dependency "thor", "~> 0.15" @@ -980,7 +1015,7 @@ Name: librarianp Version: 0.6.4 File: librarianp-0.6.4.gem -/usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-librarian/usr/share/rubygems-integration/all /tmp/d20261214-2660443-91w3b/librarianp-0.6.4.gem +/usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-librarian/usr/share/rubygems-integration/all /tmp/d20251111-3701522-u477oa/librarianp-0.6.4.gem /build/reproducible-path/ruby-librarian-0.6.4/debian/ruby-librarian/usr/share/rubygems-integration/all/gems/librarianp-0.6.4/VERSION /build/reproducible-path/ruby-librarian-0.6.4/debian/ruby-librarian/usr/share/rubygems-integration/all/gems/librarianp-0.6.4/lib/librarian.rb /build/reproducible-path/ruby-librarian-0.6.4/debian/ruby-librarian/usr/share/rubygems-integration/all/gems/librarianp-0.6.4/lib/librarian/VERSION @@ -1059,589 +1094,7 @@ cd - cd - dh_installchangelogs -pruby-librarian /build/reproducible-path/ruby-librarian-0.6.4/CHANGELOG.md upstream -/usr/bin/ruby3.3 /usr/bin/gem2deb-test-runner - -┌──────────────────────────────────────────────────────────────────────────────┐ -│ Checking Rubygems dependency resolution on ruby3.3 │ -└──────────────────────────────────────────────────────────────────────────────┘ - -RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-librarian-0.6.4/debian/ruby-librarian/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-librarian-0.6.4/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.3.0:/var/lib/gems/3.3.0:/usr/local/lib/ruby/gems/3.3.0:/usr/lib/ruby/gems/3.3.0:/usr/lib/x86_64-linux-gnu/ruby/gems/3.3.0:/usr/share/rubygems-integration/3.3.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/rubygems-integration/3.3.0 ruby3.3 -e gem\ \"librarianp\" -mv Gemfile.lock ./.gem2deb.Gemfile.lock -mv ./.gem2deb.Gemfile.lock Gemfile.lock - -┌──────────────────────────────────────────────────────────────────────────────┐ -│ Run tests for ruby3.3 from debian/ruby-tests.rake │ -└──────────────────────────────────────────────────────────────────────────────┘ - -RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-librarian-0.6.4/debian/ruby-librarian/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-librarian-0.6.4/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.3.0:/var/lib/gems/3.3.0:/usr/local/lib/ruby/gems/3.3.0:/usr/lib/ruby/gems/3.3.0:/usr/lib/x86_64-linux-gnu/ruby/gems/3.3.0:/usr/share/rubygems-integration/3.3.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/rubygems-integration/3.3.0 ruby3.3 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake -mv Gemfile.lock ./.gem2deb.Gemfile.lock -/usr/bin/ruby3.3 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --pattern ./spec/\*\*/\*_spec.rb --format documentation - -Librarian::Mock::Cli - version - should print the version - -Librarian::Posix - .run! - returns the stdout - changes directory - reads the env - -Librarian::Source::Git::Repository - .bin - is expected not to be empty - .git_version - is expected to match /^\d+(\.\d+)+$/ - the original - should recognize it - should not list any remotes for it - should not list any remote branches for it - should have divergent shas for master, branch, tag, and atag - a clone - should recognize it - should have a single remote for it - should have a remote with the expected name - should have the remote branch - should be checked out on the master - checking for commits - has the master commit - has the branch commit - has the tag commit - has the atag commit - does not have a made-up commit - does not have a tree commit - checking out the branch - should be checked out on the branch - should not be checked out on the master - checking out the tag - should be checked out on the tag - should not be checked out on the master - checking out the annotated tag - should be checked out on the annotated tag - should not be checked out on the master - -Librarian::Source::Git - when the remote is bad - fails when caching - when the remote has a repo - when caching once - has the expected sha - records the history - when caching twice - keeps the expected sha - runs git commands once - when caching twice from different sources - has the expected sha - records the history - when caching twice from different sources, second time with sha - has the expected sha - records the history - when caching twice from different environments - has the expected sha - records the history - when caching twice from different environments, second time with sha - has the expected sha - records the history - when the sha is missing from a cached repo - has a new remote sha - has the expected sha - records the history - -Librarian::Action::Base - is expected to respond to #environment - should have the environment that was assigned to it - -Librarian::Action::Clean - #run - behavior - clearing the cache path - when the cache path is missing - should not try to clear the cache path - when the cache path is present - should try to clear the cache path - clearing the install path - when the install path is missing - should not try to clear the install path - when the install path is present - should try to clear the install path - should only try to clear out directories from the install path, not files - -Librarian::Action::Ensure - #run - when the environment does not know its project path - should raise an error describing that the specfile is mising - when the environment knows its project path - should not raise an error - -Librarian::Action::Install - #run - behavior - checking preconditions - when the specfile is missing - should raise an error explaining that the specfile is missing - when the specfile is present but the lockfile is missing - should raise an error explaining that the lockfile is missing - when the specfile and lockfile are present but inconsistent - should raise an error explaining the inconsistenty - when the specfile and lockfile are present and consistent - should not raise an error - performing the install - should sort and install the manifests - should recreate the install path if it already exists - -Librarian::Action::Resolve - #run - behavior - merge duplicated dependencies - should merge duplicated dependencies - -Librarian::Config::Database - when a key is given globally - should have the key globally - should not have the key in the env - should not have the key locally - should have the key generally - when a key is set globally - should have the key globally - should not have the key in the env - should not have the key locally - should have the key generally - should persist the key - when the key is set and unset globally - should not have the key globally - should not have the key in the env - should not have the key locally - should not have the key generally - should unpersist the key - when a key is given in the env - should not have the key globally - should have the key in the env - should not have the key locally - should have the key generally - when a key is given locally - should not have the key globally - should not have the key in the env - should have the key locally - should have the key generally - when a key is set locally - should not have the key globally - should not have the key in the env - should have the key locally - should have the key generally - should persist the key - when the key is set and unset locally - should not have the key globally - should not have the key in the env - should not have the key locally - should not have the key generally - should unpersist the key - setting malformatted keys - should ban caps - should ban double dots - setting banned keys - should ban the specfile key - should ban the global-config key - project_path - by default - should give the default project path - when the specfile is set in the env - should give the project path from the env-set specfile - specfile_path - by default - should give the default specfile path - when set in the env - should give the given specfile path - when the project_path is assigned - should give the assigned specfile path - when the specfile_name is assigned - should give the assigned specfile path - -Librarian::Dependency::Requirement - should handle nil versions - should handle nil versions in arrays - should handle .x versions - should handle version ranges - should print to_s - #inspect - is expected to eq "#= 3.2.1>" - -Librarian::Dependency - validations - when the name is blank - raises - when the name has leading whitespace - raises - when the name has trailing whitespace - raises - when the name is a single character - passes - #consistent_with? - is consistent with "3" and "3" - is inconsistent with "3" and "4" - is inconsistent with "3" and "0" - is inconsistent with "0" and "3" - is consistent with "3" and "!= 4" - is consistent with "3" and "!= 0" - is inconsistent with "3" and "!= 3" - is consistent with "3" and "> 2" - is inconsistent with "3" and "> 3" - is inconsistent with "3" and "> 4" - is consistent with "3" and "< 4" - is inconsistent with "3" and "< 3" - is inconsistent with "3" and "< 2" - is consistent with "3" and ">= 2" - is consistent with "3" and ">= 3" - is inconsistent with "3" and ">= 4" - is consistent with "3" and "<= 4" - is consistent with "3" and "<= 3" - is inconsistent with "3" and "<= 2" - is consistent with "3.4.1" and "~> 3.4.1" - is consistent with "3.4.2" and "~> 3.4.1" - is inconsistent with "3.4" and "~> 3.4.1" - is inconsistent with "3.5" and "~> 3.4.1" - is consistent with "!= 3" and "!= 3" - is consistent with "!= 3" and "!= 4" - is consistent with "!= 3" and "> 2" - is consistent with "!= 3" and "> 3" - is consistent with "!= 3" and "> 4" - is consistent with "!= 3" and "< 2" - is consistent with "!= 3" and "< 3" - is consistent with "!= 3" and "< 4" - is consistent with "!= 3" and ">= 2" - is consistent with "!= 3" and ">= 3" - is consistent with "!= 3" and ">= 4" - is consistent with "!= 3" and "<= 2" - is consistent with "!= 3" and "<= 3" - is consistent with "!= 3" and "<= 4" - is consistent with "!= 3.4.1" and "~> 3.4.1" - is consistent with "!= 3.4.2" and "~> 3.4.1" - is consistent with "!= 3.5" and "~> 3.4.1" - is consistent with "> 3" and "> 2" - is consistent with "> 3" and "> 3" - is consistent with "> 3" and "> 4" - is consistent with "> 3" and "< 4" - is inconsistent with "> 3" and "< 3" - is inconsistent with "> 3" and "< 2" - is consistent with "> 3" and ">= 2" - is consistent with "> 3" and ">= 3" - is consistent with "> 3" and ">= 4" - is consistent with "> 3" and "<= 4" - is inconsistent with "> 3" and "<= 3" - is inconsistent with "> 3" and "<= 2" - is consistent with "> 3.3" and "~> 3.4.1" - is consistent with "> 3.4.1" and "~> 3.4.1" - is consistent with "> 3.4.2" and "~> 3.4.1" - is inconsistent with "> 3.5" and "~> 3.4.1" - is consistent with "< 3" and "< 2" - is consistent with "< 3" and "< 3" - is consistent with "< 3" and "< 4" - is consistent with "< 3" and ">= 2" - is inconsistent with "< 3" and ">= 3" - is inconsistent with "< 3" and ">= 4" - is consistent with "< 3" and "<= 2" - is consistent with "< 3" and "<= 3" - is consistent with "< 3" and "<= 4" - is consistent with ">= 3" and ">= 2" - is consistent with ">= 3" and ">= 3" - is consistent with ">= 3" and ">= 4" - is consistent with ">= 3" and "<= 4" - is consistent with ">= 3" and "<= 3" - is inconsistent with ">= 3" and "<= 2" - is consistent with ">= 3.3" and "~> 3.4.1" - is consistent with ">= 3.4.1" and "~> 3.4.1" - is consistent with ">= 3.4.2" and "~> 3.4.1" - is inconsistent with ">= 3.5" and "~> 3.4.1" - is consistent with "<= 3" and "<= 2" - is consistent with "<= 3" and "<= 3" - is consistent with "<= 3" and "<= 4" - is consistent with "<= 3.5" and "~> 3.4.1" - is consistent with "<= 3.4.1" and "~> 3.4.1" - is consistent with "<= 3.4.2" and "~> 3.4.1" - is inconsistent with "<= 3.3" and "~> 3.4.1" - is consistent with "~> 3.4.1" and "~> 3.4.1" - is consistent with "~> 3.4.2" and "~> 3.4.1" - is consistent with "~> 3.3" and "~> 3.4.1" - is inconsistent with "~> 3.3.3" and "~> 3.4.1" - is inconsistent with "~> 3.5" and "~> 3.4.1" - is inconsistent with "~> 3.5.4" and "~> 3.4.1" - -Librarian::Mock::Dsl - a single source and a single dependency with a blank name - should not not run with a blank name - a simple specfile - a single source, a single dependency, no transitive dependencies - should run with a hash source - should run with a shortcut source - should run with a block hash source - should run with a block named source - should run with a default hash source - should run with a default named source - should run with a default shortcut source - should run with a shortcut source hash definition - should run with a shortcut source block definition - should run with a default shortcut source hash definition - should run with a default shortcut source block definition - validating source options - should raise when given unrecognized optiosn options - -Librarian::Environment::RuntimeCache - originally - is expected to eql false, nil, and 9 - after put - is expected to eql true, 6, and 6 - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - after put then delete - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - after memo - is expected to eql true, 6, and 6 - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - after memo then delete - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - is expected to eql false, nil, and 9 - with keyspace wrapper - after put - is expected to eql true, 6, and 6 - -Librarian::Environment - #adapter_module - is expected to equal nil - #adapter_name - is expected to equal nil - #adapter_version - is expected to equal nil - computing the home - with the HOME env var - finds the home - without the HOME env var - finds the home (PENDING: Temporarily skipped with xit) - #http_proxy_uri - sanity - should have a nil http proxy uri - with a complex proxy - should have the expcted http proxy uri - should have the expected host - should have the expected user - should have the expected password - with a split proxy - should have the expcted http proxy uri - #net_http_class - sanity - should have the normal class - should not be marked as a proxy class - with a complex proxy - should not by marked as a proxy class for localhost - should not have the normal class - should have a subclass the normal class - should be marked as a proxy class - should have the expected proxy attributes - with an excluded host - with an exact match - should have the normal class - should not be marked as a proxy class - with a subdomain match - should have the normal class - should not be marked as a proxy class - with localhost - should have the normal class - should not be marked as a proxy class - with 127.0.0.1 - should have the normal class - should not be marked as a proxy class - with a mismatch - should have a subclass the normal class - should be marked as a proxy class - -Librarian::Lockfile::Parser - a mock lockfile with one source and no dependencies - should give an empty list of dependencies - should give an empty list of manifests - a mock lockfile with one source and one dependency - should give a list of one dependency - should give a dependency with the expected name - should give a dependency with the expected requirement - should give a dependency wth the expected source - should give a list of one manifest - should give a manifest with the expected name - should give a manifest with the expected version - should give a manifest with no dependencies - should give a manifest with the expected source - should give the dependency and the manifest the same source instance - a mock lockfile with one source and a complex dependency - should give a list of one dependency - should have the expected dependency - should give a list of all the manifests - should include all the expected manifests - should have an internally consistent set of manifests - should have an externally consistent set of manifests - -Librarian::Lockfile - sanity - the resolution - is expected to be correct - is expected to eq 1 - #save - just saving - should return the lockfile text - saving and reloading - should have the expected manifests - bouncing - should return the same lockfile text after bouncing as before bouncing - -Librarian::Manifest::Version - #inspect - is expected to eq "#" - version comparison - when version has only two components - creates a new version with only 2 version components - when neither version has pre-release items - compares 1.0.0 < 2.0.0 - compares 2.0.0 < 2.1.0 - compares 2.1.0 < 2.1.1 - when versions have pre-release information - compares 1.0.0-alpha < 1.0.0-alpha1 - compares 1.0.0-alpha.1 < 1.0.0-alpha.beta - compares 1.0.0-alpha.beta < 1.0.0-beta - compares 1.0.0-beta < 1.0.0-beta.2 - compares 1.0.0-beta.2 < 1.0.0-beta.11 - compares 1.0.0-beta.11 < 1.0.0-rc.1 - compares 1.0.0-rc.1 < 1.0.0 - when an invalid version number is provided - raises - when a version is converted to string - should be the full semver - should be the full gem version - should be the two-component version - -Librarian::ManifestSet - .new - with an array - should give back the array - should give back the hash - with a hash - should give back the array - should give back the hash - #shallow_strip! - should not do anything when given no names - should remove only the named elements - should allow removing all the elements - #shallow_keep! - should empty the set when given no names - should keep only the named elements - should allow keeping all the elements - #deep_strip! - should not do anything when given no names - should remove just the named elements if they have no dependencies - should remove the named elements and all their dependencies - should remove an entire tree of dependencies - should allow removing all the elements - should fail if index does not contain manifest - #deep_keep! - should remove all the elements when given no names - should keep just the named elements if they have no dependencies - should keep the named elements and all their dependencies - should keep an entire tree of dependencies - should allow keeping all the elements - -Librarian::Manifest - validations - when the name is blank - raises - when the name has leading whitespace - raises - when the name has trailing whitespace - raises - when the name is a single character - passes - -Librarian::Mock::Environment - #version - is expected to eq "0.6.4" - #adapter_module - is expected to eq Librarian::Mock - #adapter_name - is expected to eq "mock" - #adapter_version - is expected to eq "0.1.2" - -Librarian::Mock::Source::Mock - .new - is expected not to be nil - -Librarian::Resolver - a simple specfile - is expected to be correct - a specfile with a dep from one src depending on a dep from another src - is expected to be correct - a specfile with a dep in multiple sources - should have the expected number of sources - is expected to be correct - should have the manifest from the final source with a matching manifest - a specfile with a dep depending on a nonexistent dep - is expected to be nil - a specfile with conflicting constraints - is expected to be nil - a specfile with cyclic constraints - when cyclic resolutions are forbidden - is expected to be nil - when cyclic resolutions are permitted - should have all the manifests - updating - should not work - a change to the spec - should work - a pathname to a simple specfile - loads the specfile with the __FILE__ - -Librarian::Source::Git - validating options for the specfile - with only known options - should not raise - with an unknown option - should raise - with invalid options - should raise - -Librarian::SpecChangeSet - a simple root removal - should work - a simple root add - should work - a simple root change - when the change is consistent - should work - when the change is inconsistent - should work - a simple root source change - should work - -Pending: (Failures listed here are expected and do not affect your suite's status) - - 1) Librarian::Environment computing the home without the HOME env var finds the home - # Temporarily skipped with xit - # ./spec/unit/environment_spec.rb:38 - -Deprecation Warnings: - -Using `should` from rspec-expectations' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` with `config.expect_with(:rspec) { |c| c.syntax = :should }` instead. Called from /build/reproducible-path/ruby-librarian-0.6.4/spec/unit/dependency/requirement_spec.rb:13:in `block (2 levels) in '. - -Using `stub` from rspec-mocks' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` instead. Called from /build/reproducible-path/ruby-librarian-0.6.4/spec/unit/action/clean_spec.rb:10:in `block (2 levels) in '. - - -If you need more of the backtrace for any of these deprecations to -identify where to make the necessary changes, you can configure -`config.raise_errors_for_deprecations!`, and it will turn the -deprecation warnings into errors, giving you the full backtrace. - -2 deprecation warnings total - -Finished in 8.22 seconds (files took 0.5592 seconds to load) -343 examples, 0 failures, 1 pending - -mv ./.gem2deb.Gemfile.lock Gemfile.lock +DEB_BUILD_OPTIONS includes nocheck, skipping all checks (test suite etc). ┌──────────────────────────────────────────────────────────────────────────────┐ │ dh_ruby --install finished │ @@ -1674,12 +1127,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/3681164/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3681164/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/2615651 and its subdirectories -I: Current time: Mon Dec 14 01:27:18 -12 2026 -I: pbuilder-time-stamp: 1797254838 +I: removing directory /srv/workspace/pbuilder/3681164 and its subdirectories +I: Current time: Tue Nov 11 21:05:40 +14 2025 +I: pbuilder-time-stamp: 1762844740