Running as unit: rb-build-amd64_20-49290.service ==================================================================================== Thu Apr 24 02:49:28 UTC 2025 - running /srv/jenkins/bin/reproducible_build.sh (for job reproducible_builder_amd64_20) on jenkins, called using "ionos15-amd64 ionos1-amd64" as arguments. Thu Apr 24 02:49:28 UTC 2025 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-TjuLMGjv" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Thu Apr 24 02:49:28 UTC 2025 - checking /var/lib/jenkins/offline_nodes if ionos15-amd64.debian.net is marked as down. Thu Apr 24 02:49:28 UTC 2025 - checking via ssh if ionos15-amd64.debian.net is up. removed '/tmp/read-only-fs-test-B7otVG' Thu Apr 24 02:49:28 UTC 2025 - checking /var/lib/jenkins/offline_nodes if ionos1-amd64.debian.net is marked as down. Thu Apr 24 02:49:28 UTC 2025 - checking via ssh if ionos1-amd64.debian.net is up. removed '/tmp/read-only-fs-test-aFlsm8' ok, let's check if ruby-semantic-puppet is building anywhere yet… ok, ruby-semantic-puppet is not building anywhere… UPDATE 1 ============================================================================= Initialising reproducibly build of ruby-semantic-puppet in unstable on amd64 on jenkins now. 1st build will be done on ionos15-amd64.debian.net. 2nd build will be done on ionos1-amd64.debian.net. ============================================================================= Thu Apr 24 02:49:39 UTC 2025 I: starting to build ruby-semantic-puppet/unstable/amd64 on jenkins on '2025-04-24 02:49' Thu Apr 24 02:49:39 UTC 2025 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/amd64_20/49290/console.log 1745462979 amd64 unstable ruby-semantic-puppet Thu Apr 24 02:49:39 UTC 2025 I: Downloading source for unstable/ruby-semantic-puppet=1.1.0-1 --2025-04-24 02:49:39-- http://deb.debian.org/debian/pool/main/r/ruby-semantic-puppet/ruby-semantic-puppet_1.1.0-1.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1549 (1.5K) [text/prs.lines.tag] Saving to: ‘ruby-semantic-puppet_1.1.0-1.dsc’ 0K . 100% 265M=0s 2025-04-24 02:49:39 (265 MB/s) - ‘ruby-semantic-puppet_1.1.0-1.dsc’ saved [1549/1549] --2025-04-24 02:49:39-- http://deb.debian.org/debian/pool/main/r/ruby-semantic-puppet/ruby-semantic-puppet_1.1.0-1.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1549 (1.5K) [text/prs.lines.tag] Saving to: ‘ruby-semantic-puppet_1.1.0-1.dsc’ 0K . 100% 265M=0s 2025-04-24 02:49:39 (265 MB/s) - ‘ruby-semantic-puppet_1.1.0-1.dsc’ saved [1549/1549] Thu Apr 24 02:49:39 UTC 2025 I: ruby-semantic-puppet_1.1.0-1.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 3.0 (quilt) Source: ruby-semantic-puppet Binary: ruby-semantic-puppet Architecture: all Version: 1.1.0-1 Maintainer: Puppet Package Maintainers Uploaders: Sebastien Badia , Markus Frosch , Homepage: https://github.com/puppetlabs/semantic_puppet Standards-Version: 4.7.0 Vcs-Browser: https://salsa.debian.org/puppet-team/ruby-semantic-puppet Vcs-Git: https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git Testsuite: autopkgtest-pkg-ruby Build-Depends: debhelper-compat (= 13), gem2deb, rake, ruby-rspec Package-List: ruby-semantic-puppet deb ruby optional arch=all Checksums-Sha1: e7c68daa40bfadc1b1c157b1b4d9bc948eadddc9 28963 ruby-semantic-puppet_1.1.0.orig.tar.gz 8fdf7006d4e0276b2452536068726423dc7654a8 2836 ruby-semantic-puppet_1.1.0-1.debian.tar.xz Checksums-Sha256: 3c39dc2fc57f65a0a21787713b1da0a3346a21a272329e66544768381a35e953 28963 ruby-semantic-puppet_1.1.0.orig.tar.gz 7ec1e87c0f7620f1a6a8194339a122def63c4795f293d32188bfb2d0e73f4041 2836 ruby-semantic-puppet_1.1.0-1.debian.tar.xz Files: 470739ebf3ddbeb487009de7e9363f2e 28963 ruby-semantic-puppet_1.1.0.orig.tar.gz 3e14a6879d49a2c16647e347a6f4bc77 2836 ruby-semantic-puppet_1.1.0-1.debian.tar.xz -----BEGIN PGP SIGNATURE----- iHUEARYIAB0WIQTAq04Rv2xblqv/eu5pxS9ljpiFQgUCZzrP/QAKCRBpxS9ljpiF QjtZAP9PvenzCdp0ST0XVMV+lP6Lnm/nDaBmBfDH8j7kbOeUgAEA45e+TBa+9DXH f0jdgfTKAy4X8vLRQ8lV+1APyouY6gw= =vTU4 -----END PGP SIGNATURE----- Thu Apr 24 02:49:39 UTC 2025 I: Checking whether the package is not for us Thu Apr 24 02:49:39 UTC 2025 I: Starting 1st build on remote node ionos15-amd64.debian.net. Thu Apr 24 02:49:39 UTC 2025 I: Preparing to do remote build '1' on ionos15-amd64.debian.net. Thu Apr 24 02:49:39 UTC 2025 - checking /var/lib/jenkins/offline_nodes if ionos15-amd64.debian.net is marked as down. Thu Apr 24 02:49:39 UTC 2025 - checking via ssh if ionos15-amd64.debian.net is up. removed '/tmp/read-only-fs-test-n3dgI5' ==================================================================================== Wed May 27 09:12:40 UTC 2026 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos15-amd64, called using "1 ruby-semantic-puppet unstable /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9 1.1.0-1" as arguments. Wed May 27 09:12:40 UTC 2026 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-pekNb74i" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Wed May 27 09:12:40 UTC 2026 I: Downloading source for unstable/ruby-semantic-puppet=1.1.0-1 Reading package lists... NOTICE: 'ruby-semantic-puppet' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git Please use: git clone https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 33.3 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (dsc) [1549 B] Get:2 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (tar) [29.0 kB] Get:3 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (diff) [2836 B] Fetched 33.3 kB in 0s (1959 kB/s) Download complete and in download only mode Reading package lists... NOTICE: 'ruby-semantic-puppet' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git Please use: git clone https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 33.3 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (dsc) [1549 B] Get:2 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (tar) [29.0 kB] Get:3 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (diff) [2836 B] Fetched 33.3 kB in 0s (1959 kB/s) Download complete and in download only mode ============================================================================= Building ruby-semantic-puppet in unstable on amd64 on ionos15-amd64 now. Date: Wed May 27 09:12:41 UTC 2026 Date UTC: Wed May 27 09:12:41 UTC 2026 ============================================================================= W: /root/.pbuilderrc does not exist I: Logging to b1/build.log I: pbuilder: network access will be disabled during build I: Current time: Tue May 26 21:12:41 -12 2026 I: pbuilder-time-stamp: 1779873161 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [ruby-semantic-puppet_1.1.0-1.dsc] I: copying [./ruby-semantic-puppet_1.1.0.orig.tar.gz] I: copying [./ruby-semantic-puppet_1.1.0-1.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./ruby-semantic-puppet_1.1.0-1.dsc: unsupported subcommand dpkg-source: info: extracting ruby-semantic-puppet in ruby-semantic-puppet-1.1.0 dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0.orig.tar.gz dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/1808992/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='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='52ddfad35c24475e8c4d5ab875183a1b' 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='1808992' PS1='# ' PS2='> ' 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.jHOxZbK9/pbuilderrc_7375 --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.jHOxZbK9/b1 --logfile b1/build.log ruby-semantic-puppet_1.1.0-1.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' I: uname -a Linux ionos15-amd64 6.12.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin I: user script /srv/workspace/pbuilder/1808992/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), gem2deb, rake, ruby-rspec dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19839 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on gem2deb; however: Package gem2deb is not installed. pbuilder-satisfydepends-dummy depends on rake; however: Package rake is not installed. pbuilder-satisfydepends-dummy depends on ruby-rspec; however: Package ruby-rspec is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} debhelper{a} devscripts{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gem2deb{a} gem2deb-test-runner{a} gettext{a} gettext-base{a} gpg{a} gpg-agent{a} gpgconf{a} gpgv{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libassuan9{a} libb-hooks-op-check-perl{a} libclass-method-modifiers-perl{a} libclass-xsaccessor-perl{a} libclone-perl{a} libdebhelper-perl{a} libdevel-callchecker-perl{a} libdynaloader-functions-perl{a} libelf1t64{a} libencode-locale-perl{a} libexpat1{a} libffi8{a} libfile-dirlist-perl{a} libfile-homedir-perl{a} libfile-listing-perl{a} libfile-stripnondeterminism-perl{a} libfile-touch-perl{a} libfile-which-perl{a} libgcrypt20{a} libgmp-dev{a} libgmpxx4ldbl{a} libgpg-error0{a} libhtml-parser-perl{a} libhtml-tagset-perl{a} libhtml-tree-perl{a} libhttp-cookies-perl{a} libhttp-date-perl{a} libhttp-message-perl{a} libhttp-negotiate-perl{a} libimport-into-perl{a} libio-html-perl{a} libio-socket-ssl-perl{a} libksba8{a} liblwp-mediatypes-perl{a} liblwp-protocol-https-perl{a} libmagic-mgc{a} libmagic1t64{a} libmodule-runtime-perl{a} libmoo-perl{a} libnet-http-perl{a} libnet-ssleay-perl{a} libnpth0t64{a} libparams-classify-perl{a} libpipeline1{a} libpython3-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} librole-tiny-perl{a} libruby{a} libruby3.3{a} libsub-quote-perl{a} libtimedate-perl{a} libtool{a} libtry-tiny-perl{a} libuchardet0{a} libunistring5{a} liburi-perl{a} libwww-perl{a} libwww-robotrules-perl{a} libxml2{a} libyaml-0-2{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} patchutils{a} perl-openssl-defaults{a} pinentry-curses{a} po-debconf{a} python3{a} python3-minimal{a} python3.13{a} python3.13-minimal{a} rake{a} readline-common{a} ruby{a} ruby-all-dev{a} ruby-csv{a} ruby-did-you-mean{a} ruby-diff-lcs{a} ruby-minitest{a} ruby-net-telnet{a} ruby-power-assert{a} ruby-rspec{a} ruby-rspec-core{a} ruby-rspec-expectations{a} ruby-rspec-mocks{a} ruby-rspec-support{a} ruby-ruby2-keywords{a} ruby-rubygems{a} ruby-test-unit{a} ruby-webrick{a} ruby-xmlrpc{a} ruby3.3{a} ruby3.3-dev{a} rubygems-integration{a} sensible-utils{a} sopv-gpgv{a} tzdata{a} wdiff{a} The following packages are RECOMMENDED but will NOT be installed: apt-file curl dctrl-tools debian-keyring dput dput-ng dupload equivs fonts-lato gnupg libarchive-cpio-perl libdata-dump-perl libdistro-info-perl libgit-wrapper-perl libgitlab-api-v4-perl libgpg-error-l10n libhtml-form-perl libhtml-format-perl libhttp-daemon-perl libio-compress-brotli-perl libjs-jquery libjson-perl liblist-compare-perl libltdl-dev libmail-sendmail-perl libmailtools-perl libnamespace-clean-perl libsoap-lite-perl libstring-shellquote-perl libxstring-perl licensecheck lintian lynx lzip pristine-tar python3-apt python3-argcomplete python3-debian python3-magic python3-requests python3-unidiff python3-xdg ruby-sdbm ruby3.3-doc sopv-doc strace unzip wget zip 0 packages upgraded, 125 newly installed, 0 to remove and 0 not upgraded. Need to get 35.4 MB of archives. After unpacking 129 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 libpython3.13-minimal amd64 3.13.3-2 [861 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libexpat1 amd64 2.7.1-1 [108 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 python3.13-minimal amd64 3.13.3-2 [2212 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 python3-minimal amd64 3.13.3-1 [27.2 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 media-types all 13.0.0 [29.3 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 netbase all 6.5 [12.4 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 tzdata all 2025b-2 [260 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 libffi8 amd64 3.4.8-1 [24.1 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 readline-common all 8.2-6 [69.4 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 libreadline8t64 amd64 8.2-6 [169 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 libpython3.13-stdlib amd64 3.13.3-2 [1953 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 python3.13 amd64 3.13.3-2 [751 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 libpython3-stdlib amd64 3.13.3-1 [10.2 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 python3 amd64 3.13.3-1 [28.2 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.25 [25.0 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 openssl amd64 3.5.0-1 [1491 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20250419 [162 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.46-5 [338 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.46-5 [109 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.46-5 [43.6 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.23.1-1 [243 kB] Get: 22 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-7 [1185 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.41-4 [94.6 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-8 [294 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3.1 [494 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20240727.1 [60.2 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.17-4 [862 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.23.1-1 [770 kB] Get: 32 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.24.2 [90.9 kB] Get: 33 http://deb.debian.org/debian unstable/main amd64 libtool all 2.5.4-4 [539 kB] Get: 34 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 36 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.1-2 [8620 B] Get: 38 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 39 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 libunistring5 amd64 1.3-2 [477 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.4 [698 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.23.1-1 [1680 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.24.2 [919 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 libgpg-error0 amd64 1.51-4 [82.1 kB] Get: 47 http://deb.debian.org/debian unstable/main amd64 libassuan9 amd64 3.0.2-2 [61.5 kB] Get: 48 http://deb.debian.org/debian unstable/main amd64 libgcrypt20 amd64 1.11.0-7 [843 kB] Get: 49 http://deb.debian.org/debian unstable/main amd64 gpgconf amd64 2.4.7-15 [128 kB] Get: 50 http://deb.debian.org/debian unstable/main amd64 libksba8 amd64 1.6.7-2+b1 [136 kB] Get: 51 http://deb.debian.org/debian unstable/main amd64 libnpth0t64 amd64 1.8-3 [23.2 kB] Get: 52 http://deb.debian.org/debian unstable/main amd64 gpg amd64 2.4.7-15 [633 kB] Get: 53 http://deb.debian.org/debian unstable/main amd64 pinentry-curses amd64 1.3.1-2 [86.4 kB] Get: 54 http://deb.debian.org/debian unstable/main amd64 gpg-agent amd64 2.4.7-15 [270 kB] Get: 55 http://deb.debian.org/debian unstable/main amd64 libfile-dirlist-perl all 0.05-3 [7600 B] Get: 56 http://deb.debian.org/debian unstable/main amd64 libfile-which-perl all 1.27-2 [15.1 kB] Get: 57 http://deb.debian.org/debian unstable/main amd64 libfile-homedir-perl all 1.006-2 [42.4 kB] Get: 58 http://deb.debian.org/debian unstable/main amd64 libfile-touch-perl all 0.12-2 [8816 B] Get: 59 http://deb.debian.org/debian unstable/main amd64 libclass-method-modifiers-perl all 2.15-1 [18.0 kB] Get: 60 http://deb.debian.org/debian unstable/main amd64 libclass-xsaccessor-perl amd64 1.19-4+b5 [36.1 kB] Get: 61 http://deb.debian.org/debian unstable/main amd64 libb-hooks-op-check-perl amd64 0.22-3+b2 [10.6 kB] Get: 62 http://deb.debian.org/debian unstable/main amd64 libdynaloader-functions-perl all 0.004-2 [12.2 kB] Get: 63 http://deb.debian.org/debian unstable/main amd64 libdevel-callchecker-perl amd64 0.009-2 [15.6 kB] Get: 64 http://deb.debian.org/debian unstable/main amd64 libparams-classify-perl amd64 0.015-2+b4 [22.5 kB] Get: 65 http://deb.debian.org/debian unstable/main amd64 libmodule-runtime-perl all 0.017-1 [17.9 kB] Get: 66 http://deb.debian.org/debian unstable/main amd64 libimport-into-perl all 1.002005-2 [11.3 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 librole-tiny-perl all 2.002004-1 [21.4 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 libsub-quote-perl all 2.006008-1 [21.8 kB] Get: 69 http://deb.debian.org/debian unstable/main amd64 libmoo-perl all 2.005005-1 [58.0 kB] Get: 70 http://deb.debian.org/debian unstable/main amd64 libencode-locale-perl all 1.05-3 [12.9 kB] Get: 71 http://deb.debian.org/debian unstable/main amd64 libtimedate-perl all 2.3300-2 [39.3 kB] Get: 72 http://deb.debian.org/debian unstable/main amd64 libhttp-date-perl all 6.06-1 [10.7 kB] Get: 73 http://deb.debian.org/debian unstable/main amd64 libfile-listing-perl all 6.16-1 [12.4 kB] Get: 74 http://deb.debian.org/debian unstable/main amd64 libhtml-tagset-perl all 3.24-1 [14.7 kB] Get: 75 http://deb.debian.org/debian unstable/main amd64 liburi-perl all 5.30-1 [105 kB] Get: 76 http://deb.debian.org/debian unstable/main amd64 libhtml-parser-perl amd64 3.83-1+b2 [99.7 kB] Get: 77 http://deb.debian.org/debian unstable/main amd64 libhtml-tree-perl all 5.07-3 [211 kB] Get: 78 http://deb.debian.org/debian unstable/main amd64 libclone-perl amd64 0.47-1+b1 [13.9 kB] Get: 79 http://deb.debian.org/debian unstable/main amd64 libio-html-perl all 1.004-3 [16.2 kB] Get: 80 http://deb.debian.org/debian unstable/main amd64 liblwp-mediatypes-perl all 6.04-2 [20.2 kB] Get: 81 http://deb.debian.org/debian unstable/main amd64 libhttp-message-perl all 7.00-2 [79.8 kB] Get: 82 http://deb.debian.org/debian unstable/main amd64 libhttp-cookies-perl all 6.11-1 [19.1 kB] Get: 83 http://deb.debian.org/debian unstable/main amd64 libhttp-negotiate-perl all 6.01-2 [13.1 kB] Get: 84 http://deb.debian.org/debian unstable/main amd64 perl-openssl-defaults amd64 7+b2 [6724 B] Get: 85 http://deb.debian.org/debian unstable/main amd64 libnet-ssleay-perl amd64 1.94-3 [339 kB] Get: 86 http://deb.debian.org/debian unstable/main amd64 libio-socket-ssl-perl all 2.089-1 [223 kB] Get: 87 http://deb.debian.org/debian unstable/main amd64 libnet-http-perl all 6.23-1 [23.9 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 liblwp-protocol-https-perl all 6.14-1 [10.8 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 libtry-tiny-perl all 0.32-1 [22.9 kB] Get: 90 http://deb.debian.org/debian unstable/main amd64 libwww-robotrules-perl all 6.02-1 [12.9 kB] Get: 91 http://deb.debian.org/debian unstable/main amd64 libwww-perl all 6.78-1 [183 kB] Get: 92 http://deb.debian.org/debian unstable/main amd64 patchutils amd64 0.4.2-1 [77.5 kB] Get: 93 http://deb.debian.org/debian unstable/main amd64 gpgv amd64 2.4.7-15 [240 kB] Get: 94 http://deb.debian.org/debian unstable/main amd64 sopv-gpgv all 0.1.4-1 [11.3 kB] Get: 95 http://deb.debian.org/debian unstable/main amd64 wdiff amd64 1.2.2-9 [122 kB] Get: 96 http://deb.debian.org/debian unstable/main amd64 devscripts all 2.25.10 [1062 kB] Get: 97 http://deb.debian.org/debian unstable/main amd64 rubygems-integration all 1.19 [5488 B] Get: 98 http://deb.debian.org/debian unstable/main amd64 ruby-csv all 3.3.4-1 [42.2 kB] Get: 99 http://deb.debian.org/debian unstable/main amd64 ruby-did-you-mean all 1.6.3-2 [20.9 kB] Get: 100 http://deb.debian.org/debian unstable/main amd64 ruby-minitest all 5.25.4-2 [66.2 kB] Get: 101 http://deb.debian.org/debian unstable/main amd64 ruby-net-telnet all 0.2.0-1 [13.1 kB] Get: 102 http://deb.debian.org/debian unstable/main amd64 ruby-ruby2-keywords all 0.0.5-1 [4300 B] Get: 103 http://deb.debian.org/debian unstable/main amd64 ruby-power-assert all 2.0.3-1 [11.8 kB] Get: 104 http://deb.debian.org/debian unstable/main amd64 ruby-test-unit all 3.6.2-1 [79.1 kB] Get: 105 http://deb.debian.org/debian unstable/main amd64 ruby-webrick all 1.9.1-1 [59.6 kB] Get: 106 http://deb.debian.org/debian unstable/main amd64 ruby-xmlrpc all 0.3.3-2 [24.4 kB] Get: 107 http://deb.debian.org/debian unstable/main amd64 libyaml-0-2 amd64 0.2.5-2 [52.5 kB] Get: 108 http://deb.debian.org/debian unstable/main amd64 libruby3.3 amd64 3.3.8-1 [6300 kB] Get: 109 http://deb.debian.org/debian unstable/main amd64 ruby3.3 amd64 3.3.8-1 [834 kB] Get: 110 http://deb.debian.org/debian unstable/main amd64 libruby amd64 1:3.3+b1 [5440 B] Get: 111 http://deb.debian.org/debian unstable/main amd64 ruby-rubygems all 3.6.7-2 [407 kB] Get: 112 http://deb.debian.org/debian unstable/main amd64 ruby amd64 1:3.3+b1 [6560 B] Get: 113 http://deb.debian.org/debian unstable/main amd64 rake all 13.2.1-1 [65.2 kB] Get: 114 http://deb.debian.org/debian unstable/main amd64 gem2deb-test-runner amd64 2.2.5 [17.9 kB] Get: 115 http://deb.debian.org/debian unstable/main amd64 libgmpxx4ldbl amd64 2:6.3.0+dfsg-3 [329 kB] Get: 116 http://deb.debian.org/debian unstable/main amd64 libgmp-dev amd64 2:6.3.0+dfsg-3 [642 kB] Get: 117 http://deb.debian.org/debian unstable/main amd64 ruby3.3-dev amd64 3.3.8-1 [1045 kB] Get: 118 http://deb.debian.org/debian unstable/main amd64 ruby-all-dev amd64 1:3.3+b1 [6496 B] Get: 119 http://deb.debian.org/debian unstable/main amd64 gem2deb amd64 2.2.5 [48.0 kB] Get: 120 http://deb.debian.org/debian unstable/main amd64 ruby-diff-lcs all 1.5.1-1 [28.1 kB] Get: 121 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-support all 3.13.0c0e0m0s1-2 [28.5 kB] Get: 122 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-core all 3.13.0c0e0m0s1-2 [164 kB] Get: 123 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 124 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 125 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Fetched 35.4 MB in 0s (101 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal: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 ... 19839 files and directories currently installed.) Preparing to unpack .../libpython3.13-minimal_3.13.3-2_amd64.deb ... Unpacking libpython3.13-minimal:amd64 (3.13.3-2) ... Selecting previously unselected package libexpat1:amd64. Preparing to unpack .../libexpat1_2.7.1-1_amd64.deb ... Unpacking libexpat1:amd64 (2.7.1-1) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.3-2_amd64.deb ... Unpacking python3.13-minimal (3.13.3-2) ... Setting up libpython3.13-minimal:amd64 (3.13.3-2) ... Setting up libexpat1:amd64 (2.7.1-1) ... Setting up python3.13-minimal (3.13.3-2) ... Selecting previously unselected package python3-minimal. (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 ... 20173 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.3-1_amd64.deb ... Unpacking python3-minimal (3.13.3-1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_13.0.0_all.deb ... Unpacking media-types (13.0.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.5_all.deb ... Unpacking netbase (6.5) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2025b-2_all.deb ... Unpacking tzdata (2025b-2) ... Selecting previously unselected package libffi8:amd64. Preparing to unpack .../4-libffi8_3.4.8-1_amd64.deb ... Unpacking libffi8:amd64 (3.4.8-1) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.2-6_all.deb ... Unpacking readline-common (8.2-6) ... Selecting previously unselected package libreadline8t64:amd64. Preparing to unpack .../6-libreadline8t64_8.2-6_amd64.deb ... Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8 to /lib/x86_64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8.2 to /lib/x86_64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8 to /lib/x86_64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8.2 to /lib/x86_64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:amd64 (8.2-6) ... Selecting previously unselected package libpython3.13-stdlib:amd64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.3-2_amd64.deb ... Unpacking libpython3.13-stdlib:amd64 (3.13.3-2) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.3-2_amd64.deb ... Unpacking python3.13 (3.13.3-2) ... Selecting previously unselected package libpython3-stdlib:amd64. Preparing to unpack .../9-libpython3-stdlib_3.13.3-1_amd64.deb ... Unpacking libpython3-stdlib:amd64 (3.13.3-1) ... Setting up python3-minimal (3.13.3-1) ... Selecting previously unselected package python3. (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 ... 21185 files and directories currently installed.) Preparing to unpack .../000-python3_3.13.3-1_amd64.deb ... Unpacking python3 (3.13.3-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../001-sensible-utils_0.0.25_all.deb ... Unpacking sensible-utils (0.0.25) ... Selecting previously unselected package openssl. Preparing to unpack .../002-openssl_3.5.0-1_amd64.deb ... Unpacking openssl (3.5.0-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../003-ca-certificates_20250419_all.deb ... Unpacking ca-certificates (20250419) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../004-libmagic-mgc_1%3a5.46-5_amd64.deb ... Unpacking libmagic-mgc (1:5.46-5) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../005-libmagic1t64_1%3a5.46-5_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.46-5) ... Selecting previously unselected package file. Preparing to unpack .../006-file_1%3a5.46-5_amd64.deb ... Unpacking file (1:5.46-5) ... Selecting previously unselected package gettext-base. Preparing to unpack .../007-gettext-base_0.23.1-1_amd64.deb ... Unpacking gettext-base (0.23.1-1) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../008-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../009-groff-base_1.23.0-7_amd64.deb ... Unpacking groff-base (1.23.0-7) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../010-bsdextrautils_2.41-4_amd64.deb ... Unpacking bsdextrautils (2.41-4) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../011-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../012-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../013-m4_1.4.19-8_amd64.deb ... Unpacking m4 (1.4.19-8) ... Selecting previously unselected package autoconf. Preparing to unpack .../014-autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../015-autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../016-automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../017-autopoint_0.23.1-1_all.deb ... Unpacking autopoint (0.23.1-1) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../018-libdebhelper-perl_13.24.2_all.deb ... Unpacking libdebhelper-perl (13.24.2) ... Selecting previously unselected package libtool. Preparing to unpack .../019-libtool_2.5.4-4_all.deb ... Unpacking libtool (2.5.4-4) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../020-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../021-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../022-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../023-dh-strip-nondeterminism_1.14.1-2_all.deb ... Unpacking dh-strip-nondeterminism (1.14.1-2) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../024-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../025-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libunistring5:amd64. Preparing to unpack .../026-libunistring5_1.3-2_amd64.deb ... Unpacking libunistring5:amd64 (1.3-2) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../027-libxml2_2.12.7+dfsg+really2.9.14-0.4_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Selecting previously unselected package gettext. Preparing to unpack .../028-gettext_0.23.1-1_amd64.deb ... Unpacking gettext (0.23.1-1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../029-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../030-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../031-debhelper_13.24.2_all.deb ... Unpacking debhelper (13.24.2) ... Selecting previously unselected package libgpg-error0:amd64. Preparing to unpack .../032-libgpg-error0_1.51-4_amd64.deb ... Unpacking libgpg-error0:amd64 (1.51-4) ... Selecting previously unselected package libassuan9:amd64. Preparing to unpack .../033-libassuan9_3.0.2-2_amd64.deb ... Unpacking libassuan9:amd64 (3.0.2-2) ... Selecting previously unselected package libgcrypt20:amd64. Preparing to unpack .../034-libgcrypt20_1.11.0-7_amd64.deb ... Unpacking libgcrypt20:amd64 (1.11.0-7) ... Selecting previously unselected package gpgconf. Preparing to unpack .../035-gpgconf_2.4.7-15_amd64.deb ... Unpacking gpgconf (2.4.7-15) ... Selecting previously unselected package libksba8:amd64. Preparing to unpack .../036-libksba8_1.6.7-2+b1_amd64.deb ... Unpacking libksba8:amd64 (1.6.7-2+b1) ... Selecting previously unselected package libnpth0t64:amd64. Preparing to unpack .../037-libnpth0t64_1.8-3_amd64.deb ... Unpacking libnpth0t64:amd64 (1.8-3) ... Selecting previously unselected package gpg. Preparing to unpack .../038-gpg_2.4.7-15_amd64.deb ... Unpacking gpg (2.4.7-15) ... Selecting previously unselected package pinentry-curses. Preparing to unpack .../039-pinentry-curses_1.3.1-2_amd64.deb ... Unpacking pinentry-curses (1.3.1-2) ... Selecting previously unselected package gpg-agent. Preparing to unpack .../040-gpg-agent_2.4.7-15_amd64.deb ... Unpacking gpg-agent (2.4.7-15) ... Selecting previously unselected package libfile-dirlist-perl. Preparing to unpack .../041-libfile-dirlist-perl_0.05-3_all.deb ... Unpacking libfile-dirlist-perl (0.05-3) ... Selecting previously unselected package libfile-which-perl. Preparing to unpack .../042-libfile-which-perl_1.27-2_all.deb ... Unpacking libfile-which-perl (1.27-2) ... Selecting previously unselected package libfile-homedir-perl. Preparing to unpack .../043-libfile-homedir-perl_1.006-2_all.deb ... Unpacking libfile-homedir-perl (1.006-2) ... Selecting previously unselected package libfile-touch-perl. Preparing to unpack .../044-libfile-touch-perl_0.12-2_all.deb ... Unpacking libfile-touch-perl (0.12-2) ... Selecting previously unselected package libclass-method-modifiers-perl. Preparing to unpack .../045-libclass-method-modifiers-perl_2.15-1_all.deb ... Unpacking libclass-method-modifiers-perl (2.15-1) ... Selecting previously unselected package libclass-xsaccessor-perl. Preparing to unpack .../046-libclass-xsaccessor-perl_1.19-4+b5_amd64.deb ... Unpacking libclass-xsaccessor-perl (1.19-4+b5) ... Selecting previously unselected package libb-hooks-op-check-perl:amd64. Preparing to unpack .../047-libb-hooks-op-check-perl_0.22-3+b2_amd64.deb ... Unpacking libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Selecting previously unselected package libdynaloader-functions-perl. Preparing to unpack .../048-libdynaloader-functions-perl_0.004-2_all.deb ... Unpacking libdynaloader-functions-perl (0.004-2) ... Selecting previously unselected package libdevel-callchecker-perl:amd64. Preparing to unpack .../049-libdevel-callchecker-perl_0.009-2_amd64.deb ... Unpacking libdevel-callchecker-perl:amd64 (0.009-2) ... Selecting previously unselected package libparams-classify-perl:amd64. Preparing to unpack .../050-libparams-classify-perl_0.015-2+b4_amd64.deb ... Unpacking libparams-classify-perl:amd64 (0.015-2+b4) ... Selecting previously unselected package libmodule-runtime-perl. Preparing to unpack .../051-libmodule-runtime-perl_0.017-1_all.deb ... Unpacking libmodule-runtime-perl (0.017-1) ... Selecting previously unselected package libimport-into-perl. Preparing to unpack .../052-libimport-into-perl_1.002005-2_all.deb ... Unpacking libimport-into-perl (1.002005-2) ... Selecting previously unselected package librole-tiny-perl. Preparing to unpack .../053-librole-tiny-perl_2.002004-1_all.deb ... Unpacking librole-tiny-perl (2.002004-1) ... Selecting previously unselected package libsub-quote-perl. Preparing to unpack .../054-libsub-quote-perl_2.006008-1_all.deb ... Unpacking libsub-quote-perl (2.006008-1) ... Selecting previously unselected package libmoo-perl. Preparing to unpack .../055-libmoo-perl_2.005005-1_all.deb ... Unpacking libmoo-perl (2.005005-1) ... Selecting previously unselected package libencode-locale-perl. Preparing to unpack .../056-libencode-locale-perl_1.05-3_all.deb ... Unpacking libencode-locale-perl (1.05-3) ... Selecting previously unselected package libtimedate-perl. Preparing to unpack .../057-libtimedate-perl_2.3300-2_all.deb ... Unpacking libtimedate-perl (2.3300-2) ... Selecting previously unselected package libhttp-date-perl. Preparing to unpack .../058-libhttp-date-perl_6.06-1_all.deb ... Unpacking libhttp-date-perl (6.06-1) ... Selecting previously unselected package libfile-listing-perl. Preparing to unpack .../059-libfile-listing-perl_6.16-1_all.deb ... Unpacking libfile-listing-perl (6.16-1) ... Selecting previously unselected package libhtml-tagset-perl. Preparing to unpack .../060-libhtml-tagset-perl_3.24-1_all.deb ... Unpacking libhtml-tagset-perl (3.24-1) ... Selecting previously unselected package liburi-perl. Preparing to unpack .../061-liburi-perl_5.30-1_all.deb ... Unpacking liburi-perl (5.30-1) ... Selecting previously unselected package libhtml-parser-perl:amd64. Preparing to unpack .../062-libhtml-parser-perl_3.83-1+b2_amd64.deb ... Unpacking libhtml-parser-perl:amd64 (3.83-1+b2) ... Selecting previously unselected package libhtml-tree-perl. Preparing to unpack .../063-libhtml-tree-perl_5.07-3_all.deb ... Unpacking libhtml-tree-perl (5.07-3) ... Selecting previously unselected package libclone-perl:amd64. Preparing to unpack .../064-libclone-perl_0.47-1+b1_amd64.deb ... Unpacking libclone-perl:amd64 (0.47-1+b1) ... Selecting previously unselected package libio-html-perl. Preparing to unpack .../065-libio-html-perl_1.004-3_all.deb ... Unpacking libio-html-perl (1.004-3) ... Selecting previously unselected package liblwp-mediatypes-perl. Preparing to unpack .../066-liblwp-mediatypes-perl_6.04-2_all.deb ... Unpacking liblwp-mediatypes-perl (6.04-2) ... Selecting previously unselected package libhttp-message-perl. Preparing to unpack .../067-libhttp-message-perl_7.00-2_all.deb ... Unpacking libhttp-message-perl (7.00-2) ... Selecting previously unselected package libhttp-cookies-perl. Preparing to unpack .../068-libhttp-cookies-perl_6.11-1_all.deb ... Unpacking libhttp-cookies-perl (6.11-1) ... Selecting previously unselected package libhttp-negotiate-perl. Preparing to unpack .../069-libhttp-negotiate-perl_6.01-2_all.deb ... Unpacking libhttp-negotiate-perl (6.01-2) ... Selecting previously unselected package perl-openssl-defaults:amd64. Preparing to unpack .../070-perl-openssl-defaults_7+b2_amd64.deb ... Unpacking perl-openssl-defaults:amd64 (7+b2) ... Selecting previously unselected package libnet-ssleay-perl:amd64. Preparing to unpack .../071-libnet-ssleay-perl_1.94-3_amd64.deb ... Unpacking libnet-ssleay-perl:amd64 (1.94-3) ... Selecting previously unselected package libio-socket-ssl-perl. Preparing to unpack .../072-libio-socket-ssl-perl_2.089-1_all.deb ... Unpacking libio-socket-ssl-perl (2.089-1) ... Selecting previously unselected package libnet-http-perl. Preparing to unpack .../073-libnet-http-perl_6.23-1_all.deb ... Unpacking libnet-http-perl (6.23-1) ... Selecting previously unselected package liblwp-protocol-https-perl. Preparing to unpack .../074-liblwp-protocol-https-perl_6.14-1_all.deb ... Unpacking liblwp-protocol-https-perl (6.14-1) ... Selecting previously unselected package libtry-tiny-perl. Preparing to unpack .../075-libtry-tiny-perl_0.32-1_all.deb ... Unpacking libtry-tiny-perl (0.32-1) ... Selecting previously unselected package libwww-robotrules-perl. Preparing to unpack .../076-libwww-robotrules-perl_6.02-1_all.deb ... Unpacking libwww-robotrules-perl (6.02-1) ... Selecting previously unselected package libwww-perl. Preparing to unpack .../077-libwww-perl_6.78-1_all.deb ... Unpacking libwww-perl (6.78-1) ... Selecting previously unselected package patchutils. Preparing to unpack .../078-patchutils_0.4.2-1_amd64.deb ... Unpacking patchutils (0.4.2-1) ... Selecting previously unselected package gpgv. Preparing to unpack .../079-gpgv_2.4.7-15_amd64.deb ... Unpacking gpgv (2.4.7-15) ... Selecting previously unselected package sopv-gpgv. Preparing to unpack .../080-sopv-gpgv_0.1.4-1_all.deb ... Unpacking sopv-gpgv (0.1.4-1) ... Selecting previously unselected package wdiff. Preparing to unpack .../081-wdiff_1.2.2-9_amd64.deb ... Unpacking wdiff (1.2.2-9) ... Selecting previously unselected package devscripts. Preparing to unpack .../082-devscripts_2.25.10_all.deb ... Unpacking devscripts (2.25.10) ... Selecting previously unselected package rubygems-integration. Preparing to unpack .../083-rubygems-integration_1.19_all.deb ... Unpacking rubygems-integration (1.19) ... Selecting previously unselected package ruby-csv. Preparing to unpack .../084-ruby-csv_3.3.4-1_all.deb ... Unpacking ruby-csv (3.3.4-1) ... Selecting previously unselected package ruby-did-you-mean. Preparing to unpack .../085-ruby-did-you-mean_1.6.3-2_all.deb ... Unpacking ruby-did-you-mean (1.6.3-2) ... Selecting previously unselected package ruby-minitest. Preparing to unpack .../086-ruby-minitest_5.25.4-2_all.deb ... Unpacking ruby-minitest (5.25.4-2) ... Selecting previously unselected package ruby-net-telnet. Preparing to unpack .../087-ruby-net-telnet_0.2.0-1_all.deb ... Unpacking ruby-net-telnet (0.2.0-1) ... Selecting previously unselected package ruby-ruby2-keywords. Preparing to unpack .../088-ruby-ruby2-keywords_0.0.5-1_all.deb ... Unpacking ruby-ruby2-keywords (0.0.5-1) ... Selecting previously unselected package ruby-power-assert. Preparing to unpack .../089-ruby-power-assert_2.0.3-1_all.deb ... Unpacking ruby-power-assert (2.0.3-1) ... Selecting previously unselected package ruby-test-unit. Preparing to unpack .../090-ruby-test-unit_3.6.2-1_all.deb ... Unpacking ruby-test-unit (3.6.2-1) ... Selecting previously unselected package ruby-webrick. Preparing to unpack .../091-ruby-webrick_1.9.1-1_all.deb ... Unpacking ruby-webrick (1.9.1-1) ... Selecting previously unselected package ruby-xmlrpc. Preparing to unpack .../092-ruby-xmlrpc_0.3.3-2_all.deb ... Unpacking ruby-xmlrpc (0.3.3-2) ... Selecting previously unselected package libyaml-0-2:amd64. Preparing to unpack .../093-libyaml-0-2_0.2.5-2_amd64.deb ... Unpacking libyaml-0-2:amd64 (0.2.5-2) ... Selecting previously unselected package libruby3.3:amd64. Preparing to unpack .../094-libruby3.3_3.3.8-1_amd64.deb ... Unpacking libruby3.3:amd64 (3.3.8-1) ... Selecting previously unselected package ruby3.3. Preparing to unpack .../095-ruby3.3_3.3.8-1_amd64.deb ... Unpacking ruby3.3 (3.3.8-1) ... Selecting previously unselected package libruby:amd64. Preparing to unpack .../096-libruby_1%3a3.3+b1_amd64.deb ... Unpacking libruby:amd64 (1:3.3+b1) ... Selecting previously unselected package ruby-rubygems. Preparing to unpack .../097-ruby-rubygems_3.6.7-2_all.deb ... Unpacking ruby-rubygems (3.6.7-2) ... Selecting previously unselected package ruby. Preparing to unpack .../098-ruby_1%3a3.3+b1_amd64.deb ... Unpacking ruby (1:3.3+b1) ... Selecting previously unselected package rake. Preparing to unpack .../099-rake_13.2.1-1_all.deb ... Unpacking rake (13.2.1-1) ... Selecting previously unselected package gem2deb-test-runner. Preparing to unpack .../100-gem2deb-test-runner_2.2.5_amd64.deb ... Unpacking gem2deb-test-runner (2.2.5) ... Selecting previously unselected package libgmpxx4ldbl:amd64. Preparing to unpack .../101-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package libgmp-dev:amd64. Preparing to unpack .../102-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package ruby3.3-dev:amd64. Preparing to unpack .../103-ruby3.3-dev_3.3.8-1_amd64.deb ... Unpacking ruby3.3-dev:amd64 (3.3.8-1) ... Selecting previously unselected package ruby-all-dev:amd64. Preparing to unpack .../104-ruby-all-dev_1%3a3.3+b1_amd64.deb ... Unpacking ruby-all-dev:amd64 (1:3.3+b1) ... Selecting previously unselected package gem2deb. Preparing to unpack .../105-gem2deb_2.2.5_amd64.deb ... Unpacking gem2deb (2.2.5) ... Selecting previously unselected package ruby-diff-lcs. Preparing to unpack .../106-ruby-diff-lcs_1.5.1-1_all.deb ... Unpacking ruby-diff-lcs (1.5.1-1) ... Selecting previously unselected package ruby-rspec-support. Preparing to unpack .../107-ruby-rspec-support_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-support (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-core. Preparing to unpack .../108-ruby-rspec-core_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-core (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-expectations. Preparing to unpack .../109-ruby-rspec-expectations_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-mocks. Preparing to unpack .../110-ruby-rspec-mocks_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec. Preparing to unpack .../111-ruby-rspec_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec (3.13.0c0e0m0s1-2) ... Setting up media-types (13.0.0) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up wdiff (1.2.2-9) ... Setting up libfile-which-perl (1.27-2) ... Setting up libnpth0t64:amd64 (1.8-3) ... Setting up ruby-ruby2-keywords (0.0.5-1) ... Setting up bsdextrautils (2.41-4) ... Setting up libgpg-error0:amd64 (1.51-4) ... Setting up libdynaloader-functions-perl (0.004-2) ... Setting up libclass-method-modifiers-perl (2.15-1) ... Setting up ruby-power-assert (2.0.3-1) ... Setting up libmagic-mgc (1:5.46-5) ... Setting up libclone-perl:amd64 (0.47-1+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:amd64 (0.2.5-2) ... Setting up libhtml-tagset-perl (3.24-1) ... Setting up libdebhelper-perl (13.24.2) ... Setting up liblwp-mediatypes-perl (6.04-2) ... Setting up libmagic1t64:amd64 (1:5.46-5) ... Setting up libtry-tiny-perl (0.32-1) ... Setting up perl-openssl-defaults:amd64 (7+b2) ... Setting up gettext-base (0.23.1-1) ... Setting up m4 (1.4.19-8) ... Setting up libgcrypt20:amd64 (1.11.0-7) ... Setting up libencode-locale-perl (1.05-3) ... Setting up file (1:5.46-5) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up tzdata (2025b-2) ... Current default time zone: 'Etc/UTC' Local time is now: Wed May 27 09:13:24 UTC 2026. Universal Time is now: Wed May 27 09:13:24 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up ruby-minitest (5.25.4-2) ... Setting up autotools-dev (20240727.1) ... Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Setting up ruby-test-unit (3.6.2-1) ... Setting up ruby-net-telnet (0.2.0-1) ... Setting up ruby-csv (3.3.4-1) ... Setting up libunistring5:amd64 (1.3-2) ... Setting up libio-html-perl (1.004-3) ... Setting up autopoint (0.23.1-1) ... Setting up libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Setting up autoconf (2.72-3.1) ... Setting up ruby-rspec-support (3.13.0c0e0m0s1-2) ... Setting up libtimedate-perl (2.3300-2) ... Setting up ruby-webrick (1.9.1-1) ... Setting up libffi8:amd64 (3.4.8-1) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.25) ... Setting up gpgv (2.4.7-15) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up libassuan9:amd64 (3.0.2-2) ... Setting up librole-tiny-perl (2.002004-1) ... Setting up netbase (6.5) ... Setting up libsub-quote-perl (2.006008-1) ... Setting up libclass-xsaccessor-perl (1.19-4+b5) ... Setting up ruby-did-you-mean (1.6.3-2) ... Setting up libfile-dirlist-perl (0.05-3) ... Setting up libfile-homedir-perl (1.006-2) ... Setting up openssl (3.5.0-1) ... Setting up readline-common (8.2-6) ... Setting up ruby-xmlrpc (0.3.3-2) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Setting up liburi-perl (5.30-1) ... Setting up libfile-touch-perl (0.12-2) ... Setting up libnet-ssleay-perl:amd64 (1.94-3) ... Setting up automake (1:1.17-4) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode Setting up libksba8:amd64 (1.6.7-2+b1) ... Setting up pinentry-curses (1.3.1-2) ... Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... Setting up libhttp-date-perl (6.06-1) ... Setting up gettext (0.23.1-1) ... Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Setting up libfile-listing-perl (6.16-1) ... Setting up libtool (2.5.4-4) ... Setting up libnet-http-perl (6.23-1) ... Setting up libdevel-callchecker-perl:amd64 (0.009-2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up patchutils (0.4.2-1) ... Setting up ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 150 added, 0 removed; done. Setting up libreadline8t64:amd64 (8.2-6) ... Setting up dh-strip-nondeterminism (1.14.1-2) ... Setting up libwww-robotrules-perl (6.02-1) ... Setting up groff-base (1.23.0-7) ... Setting up libhtml-parser-perl:amd64 (3.83-1+b2) ... Setting up gpgconf (2.4.7-15) ... Setting up libpython3.13-stdlib:amd64 (3.13.3-2) ... Setting up libio-socket-ssl-perl (2.089-1) ... Setting up gpg (2.4.7-15) ... Setting up libpython3-stdlib:amd64 (3.13.3-1) ... Setting up libhttp-message-perl (7.00-2) ... Setting up libhttp-negotiate-perl (6.01-2) ... Setting up gpg-agent (2.4.7-15) ... Setting up libhttp-cookies-perl (6.11-1) ... Setting up python3.13 (3.13.3-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libhtml-tree-perl (5.07-3) ... Setting up libparams-classify-perl:amd64 (0.015-2+b4) ... Setting up python3 (3.13.3-1) ... Setting up rubygems-integration (1.19) ... Setting up sopv-gpgv (0.1.4-1) ... update-alternatives: using /usr/bin/sopv-gpgv to provide /usr/bin/sopv (sopv) in auto mode Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up libmodule-runtime-perl (0.017-1) ... Setting up libimport-into-perl (1.002005-2) ... Setting up libmoo-perl (2.005005-1) ... Setting up debhelper (13.24.2) ... Setting up rake (13.2.1-1) ... Setting up liblwp-protocol-https-perl (6.14-1) ... Setting up libwww-perl (6.78-1) ... Setting up libruby3.3:amd64 (3.3.8-1) ... Setting up ruby-rubygems (3.6.7-2) ... Setting up devscripts (2.25.10) ... Setting up ruby3.3-dev:amd64 (3.3.8-1) ... Setting up ruby3.3 (3.3.8-1) ... Setting up libruby:amd64 (1:3.3+b1) ... Setting up ruby-all-dev:amd64 (1:3.3+b1) ... Setting up ruby (1:3.3+b1) ... Setting up ruby-rspec-core (3.13.0c0e0m0s1-2) ... Setting up ruby-diff-lcs (1.5.1-1) ... Setting up gem2deb-test-runner (2.2.5) ... Setting up ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Setting up ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Setting up gem2deb (2.2.5) ... Setting up ruby-rspec (3.13.0c0e0m0s1-2) ... Processing triggers for libc-bin (2.41-7) ... Processing triggers for ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/ruby-semantic-puppet-1.1.0/ && 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-semantic-puppet_1.1.0-1_source.changes dpkg-buildpackage: info: source package ruby-semantic-puppet dpkg-buildpackage: info: source version 1.1.0-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Jérôme Charaoui dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --buildsystem=ruby --with ruby dh_auto_clean -O--buildsystem=ruby dh_ruby --clean dh_autoreconf_clean -O--buildsystem=ruby dh_clean -O--buildsystem=ruby debian/rules binary dh binary --buildsystem=ruby --with ruby dh_update_autotools_config -O--buildsystem=ruby dh_autoreconf -O--buildsystem=ruby dh_auto_configure -O--buildsystem=ruby dh_ruby --configure dh_auto_build -O--buildsystem=ruby dh_ruby --build dh_auto_test -O--buildsystem=ruby dh_ruby --test create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=ruby dh_prep -O--buildsystem=ruby dh_auto_install --destdir=debian/ruby-semantic-puppet/ -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet ┌──────────────────────────────────────────────────────────────────────────────┐ │ ruby-semantic-puppet: Installing files and building extensions for ruby3.3 │ └──────────────────────────────────────────────────────────────────────────────┘ /usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20260526-1821003-5pysn/gemspec WARNING: open-ended dependency on rake (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on rspec (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on simplecov (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on cane (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on yard (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on redcarpet (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: See https://guides.rubygems.org/specification-reference/ for help Successfully built RubyGem Name: semantic_puppet Version: 1.1.0 File: semantic_puppet-1.1.0.gem /usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-semantic-puppet/usr/share/rubygems-integration/all /tmp/d20260526-1821003-5pysn/semantic_puppet-1.1.0.gem /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph_node.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/module_release.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/source.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/unsatisfiable_graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/gem_version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version_range.rb Successfully installed semantic_puppet-1.1.0 1 gem installed cd debian/ruby-semantic-puppet/usr/share/rubygems-integration/all rm -rf bin rm -rf build_info rm -rf cache rm -rf doc rm -rf extensions rmdir plugins cd gems/semantic_puppet-1.1.0 rm -f chmod 644 lib/semantic_puppet/dependency/graph.rb lib/semantic_puppet/dependency/graph_node.rb lib/semantic_puppet/dependency/module_release.rb lib/semantic_puppet/dependency/source.rb lib/semantic_puppet/dependency/unsatisfiable_graph.rb lib/semantic_puppet/dependency.rb lib/semantic_puppet/gem_version.rb lib/semantic_puppet/version.rb lib/semantic_puppet/version_range.rb lib/semantic_puppet.rb find lib/ -type d -empty -delete cd - cd - dh_installchangelogs -pruby-semantic-puppet /build/reproducible-path/ruby-semantic-puppet-1.1.0/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-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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\ \"semantic_puppet\" ┌──────────────────────────────────────────────────────────────────────────────┐ │ Run tests for ruby3.3 from debian/ruby-tests.rake │ └──────────────────────────────────────────────────────────────────────────────┘ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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 /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 Run options: include {:focus=>true} All examples were filtered out; ignoring {:focus=>true} Randomized with seed 31987 SemanticPuppet::Dependency::UnsatisfiableGraph #sentence_from_list with a list of three items is expected to eql "foo, bar, and baz" with a list of two items is expected to eql "foo and bar" with a list of more than three items is expected to eql "foo, bar, baz, and quux" with a list of one item is expected to eql "foo" #message is expected to match /foo, bar, and baz/ SemanticPuppet::Version .parse Spec v2.0.0 Section 2 permits zeroes in version number parts rejects versions that contain too many parts rejects version numbers containing leading zeroes rejects versions that contain negative integers rejects versions that contain too few parts rejects versions that contain non-integers examples 1.11.0 1.10.0 1.9.0 Section 9 rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions rejects empty prerelease version identifiers rejects numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero examples 1.0.0-alpha.1 1.0.0-0.3.7 1.0.0-x.7.z.92 1.0.0-alpha Section 10 rejects build identifiers with non-alphanumerics rejects empty build identifiers permits numeric build identifiers with leading zeroes rejects empty build metadata permits numeric build identifiers of zero permits non-numeric build identifiers with leading zeroes examples 1.0.0-beta+exp.sha.5114f85 1.0.0-alpha+001 1.0.0+20130313144700 Spec v1.0.0 Section 4 rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions permits numeric prerelease identifiers of zero rejects numeric prerelease identifiers with leading zeroes examples 1.0.0-rc1 1.0.0-alpha1 1.0.0-beta2 1.0.0-beta1 Section 2 rejects versions that contain non-integers permits zeroes in version number parts rejects versions that contain too many parts rejects versions that contain too few parts examples 1.11.0 1.10.0 1.9.0 #== should yield false when the minor differs should yield true when comparing two equal instances should yield false when the patch differs should yield false when the major differs should yield false when the prerelease differs should yield false when compared to something that is not a Version #<=> Spec v2.0.0 Section 11 comparisons without prereleases sorted order comparisions between prereleases identical prereleases are equal numeric identifiers sort numerically build metadata does not figure into precendence non-numeric identifiers sort ASCIIbetically build metadata does figure into equality sorted order identifiers are parsed left-to-right larger identifier sets have precendence non-numeric identifiers have a higher precendence comparisons against prereleases prereleases have lower precedence Spec v1.0.0 Section 4 sorted order .valid? Spec v2.0.0 Section 10 permits numeric build identifiers of zero permits non-numeric build identifiers with leading zeroes permits numeric build identifiers with leading zeroes rejects empty build metadata rejects build identifiers with non-alphanumerics rejects empty build identifiers Section 9 rejects empty prerelease version identifiers rejects empty prerelease versions rejects numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero permits non-numeric prerelease identifiers rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes Section 2 rejects versions that contain non-integers rejects versions that contain too many parts permits zeroes in version number parts rejects versions that contain negative integers rejects version numbers containing leading zeroes rejects versions that contain too few parts Spec v1.0.0 Section 2 rejects versions that contain too many parts rejects versions that contain too few parts rejects versions that contain non-integers permits zeroes in version number parts Section 4 rejects empty prerelease versions rejects prerelease identifiers with non-alphanumerics permits numeric prerelease identifiers of zero rejects numeric prerelease identifiers with leading zeroes permits non-numeric prerelease identifiers with leading zeroes #next with :major removes any prerelease information returns the next major version removes any build information does not modify the original version resets the minor and patch versions to 0 with :minor returns the next minor version removes any build information does not modify the original version removes any prerelease information resets the patch version to 0 with :patch returns the next patch version removes any build information removes any prerelease information does not modify the original version SemanticPuppet::Dependency::GraphNode #populate_children saves all relevant nodes as its children accepts a graph solution and populates it across all nodes #<=> can be compared dependencies are added by #add_dependency are maintained in the #dependencies Hash #satisfied is unsatisfied when any dependencies are missing is unsatisfied when no nodes have been appended is satisfied when all dependencies are fulfilled #<< appends satisfying nodes to the dependencies sorts the dependencies for each addition to the same node sorts once the dependencies for a specific node does not append unsatisfying nodes does not append nodes with unknown names SemanticPuppet::Dependency::Graph #initialize can be called without arguments adds the named dependencies for every key in the passed hash implements the GraphNode protocol adds constraints for every key in the passed hash #satisfies_graph? returns false if the solution violates any graph constraint returns false if the solution violates a graph constraint returns true if the solution violates no graph constraints #add_graph_constraint permits multiple graph constraints can create a new constraint on a graph #satisfies_dependency? is satisfied by modules that do fulfill all the constraints is not satisfied by modules that do not fulfill all the constraints is not satisfied by modules that do not fulfill the constraint is not satisfied by modules it does not depend on #add_constraint permits multiple constraints against the same module name can create a new constraint on a module SemanticPuppet::Dependency .resolve that violate graph constraints that can be resolved terminates that cannot be resolved fails with an appropriate message for a module with dependencies that violate module constraints on the graph that cannot be resolved fails with an appropriate message that can be resolved terminates for a module with dependencies returns the greatest releases matching the dependency range when the dependency has both stable and prerelease versions returns the greatest stable release matching the range when the dependency has no stable versions returns the greatest prerelease version matching the range when the dependency cannot be satisfied fails with an appropriate message sets unsatisfiable for a module without dependencies returns the greatest release matching the version range when the query includes both stable and prerelease versions returns the greatest stable release matching the range when the query omits all stable versions returns the greatest prerelease version matching the range when the query omits all versions fails with an appropriate message for a module with circular dependencies that can be resolved terminates that cannot be resolved fails with an appropriate message for a module with competing dependencies that overlap returns the greatest release satisfying all dependencies that do not overlap fails with an appropriate message .query with one source populates the returned ModuleRelease with related dependencies populates all returned ModuleReleases with related dependencies returns a ModuleRelease with the requested dependencies queries the source for each dependency queries the source for release information queries the source for each dependency only once with multiple sources queries each source in turn resolves all dependencies against all sources without sources returns an unsatisfied ModuleRelease .sources can be emptied by using #clear_sources is frozen can be modified by using #add_source defaults to an empty list SemanticPuppet::Dependency::ModuleRelease #== can compare a release with something that is not a release considers two equal releases to be equal considers two releases with different versions to be different considers two releases with different names to be different considers a release different from something that is not a release #to_s is expected to =~ /foobarbaz/ is expected to =~ /1.2.3/ #satisfied? returns false when no dependencies have been satisified returns true when there are no dependencies to satisfy returns false when not all dependency versions have been satisified returns true when all dependencies have been satisified returns false when not all dependencies have been satisified #<< does not mark mis-matching dependency versions as satisfied does not mark mis-matching dependency names as satisfied marks matching dependencies as satisfied #dependency_names lists the names of all the release's dependencies #satisfies_dependency? returns true when the release matches the dependency returns false when the release does not match the dependency name returns false when the release does not match the dependency version returns false when there are no dependencies to satisfy #<=> considers releases with greater version numbers greater orders releases by name first orders releases with different names lexographically considers releases with lesser version numbers lesser SemanticPuppet::VersionRange #intersection cannot intersect with non-VersionRanges is commutative between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 between 10.0.0 - 5.0.0 & 6.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & >=7.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 4.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & >=5.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 10.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 9.0.0 between 10.0.0 - 5.0.0 & >=10.0.0 <5.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 11.0.0 between >=10.0.0 <5.0.0 & >=5.0.0 <1.0.0 between 10.0.0 - 5.0.0 & >=7.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 11.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 10.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 9.0.0 between 10.0.0 - 5.0.0 & 11.0.0 - 4.0.0 between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 11.0.0 - 4.0.0 between 10.0.0 - 5.0.0 & 10.0.0 - 5.0.0 between 10.0.0 - 5.0.0 & 4.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 between >=10.0.0 <5.0.0 & 10.0.0 - 5.0.0 between >=10.0.0 <5.0.0 & 6.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 between >=10.0.0 <5.0.0 & 5.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 6.0.0 - 1.0.0 11.0.0 - 4.0.0 10.0.0 - 5.0.0 >=10.0.0 <5.0.0 4.0.0 - 1.0.0 >=7.0.0 <1.0.0 >=5.0.0 <1.0.0 5.0.0 - 1.0.0 15.0.0 - 9.0.0 15.0.0 - 11.0.0 15.0.0 - 10.0.0 between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 15.0.0 - 11.0.0 15.0.0 - 10.0.0 10.0.0 - 5.0.0 4.0.0 - 1.0.0 5.0.0 - 1.0.0 6.0.0 - 1.0.0 >=7.0.0 <1.0.0 >=5.0.0 <1.0.0 >=10.0.0 <5.0.0 15.0.0 - 9.0.0 11.0.0 - 4.0.0 .parse ored expressions adjacent "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.5 parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.3 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.5-0 returns nil on exclude_end? parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.5 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.3-0 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 returns nil on exclude_begin? ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 returns expected begin returns nil on end ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.3-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 "1.2.3 || 1.2.4 || 1.2.5" stringifies as >=1.2.3 <=1.2.5 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.5-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.3 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 overlapping ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.4-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 ">=1.2.3 || 1.2.5" excludes 1.2.4-0 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.4 ">=1.2.3 || 1.2.5" excludes 1.2.3-0 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.3-0 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.3 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 ">=1.2.3 || 1.2.5" includes 1.2.4 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 ">=1.2.3 || 1.2.5" includes 1.2.3 ">=1.2.3 || 1.2.5" stringifies as >=1.2.3 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 non-overlapping "1.2.3 || 1.2.5" excludes 1.2.5-0 "1.2.3 || 1.2.5" includes 1.2.5 "1.2.3 || 1.2.5" excludes 1.2.4 "1.2.3 || 1.2.5" excludes 1.2.3-0 returns nil on begin "1.2.3 || 1.2.5" stringifies as 1.2.3 || 1.2.5 parse("1.2.3 || 1.2.5").to_s excludes 1.2.5-0 parse("1.2.3 || 1.2.5").to_s includes 1.2.5 returns nil on exclude_begin? parse("1.2.3 || 1.2.5").to_s excludes 1.2.4 parse("1.2.3 || 1.2.5").to_s includes 1.2.3 returns nil on exclude_end? "1.2.3 || 1.2.5" includes 1.2.3 returns nil on end parse("1.2.3 || 1.2.5").to_s excludes 1.2.3-0 unioned expressions "1 <=1.2.5" excludes 1.0.0-0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 3.0.0 parse("1.2 <1.2.5").to_s excludes 1.2.5-0 "1.2 <1.2.5" excludes 1.1.999 parse("1 <=1.2.5").to_s excludes 1.2.6-0 parse("1 <=1.2.5").to_s excludes 1.0.0-0 "1.2 <1.2.5" includes 1.2.4 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" stringifies as >=3.0.0 <5.0.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 4.999.999 "<1.0.0 >2.0.0" excludes 0.0.0-0 "1.2 <1.2.5" excludes 1.2.5-0 parse("1.2 <1.2.5").to_s includes 1.2.0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 4.999.999 parse("1.2 <1.2.5").to_s excludes 1.1.999 "<1.0.0 >2.0.0" stringifies as <0.0.0 parse("1 <=1.2.5").to_s includes 1.0.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 5.0.0-0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 5.0.0-0 "1 <=1.2.5" includes 1.0.0 "1 <=1.2.5" stringifies as >=1.0.0 <=1.2.5 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 3.0.0-0 "1 <=1.2.5" excludes 1.9.0 parse("1.2 <1.2.5").to_s excludes 1.2.0-0 "1.2 <1.2.5" excludes 1.2.0-0 parse("1.2 <1.2.5").to_s excludes 1.9.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 3.0.0-0 "1.2 <1.2.5" excludes 1.9.0 "1 <=1.2.5" includes 1.2.5 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 2.999.999 "<1.0.0 >2.0.0" excludes 0.0.0 "1.2 <1.2.5" stringifies as >=1.2.0 <1.2.5 "1.2 <1.2.5" includes 1.2.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 2.999.999 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0-0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 3.0.0 parse("1 <=1.2.5").to_s includes 1.2.5 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0 parse("1 <=1.2.5").to_s excludes 0.999.999 "1 <=1.2.5" excludes 0.999.999 "1 <=1.2.5" excludes 1.2.6-0 parse("1.2 <1.2.5").to_s includes 1.2.4 parse("1 <=1.2.5").to_s excludes 1.9.0 inclusive range expressions "1.2.3 - 1.3.4-alpha" excludes 1.2.2 "1.2.3-alpha - 1.3.4" includes 1.2.3-alpha "1.2.3-alpha - 1.3.4-alpha" includes 1.2.3-alpha "1.2.3 - 1.3.4-alpha" excludes 1.2.3-0 "1.2.3-alpha - 1.3.4" stringifies as >=1.2.3-alpha <=1.3.4 parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.3.4-alpha "1.2.3 - 1.3.4-alpha" includes 1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s excludes 1.3.5-0 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.5 parse("1.2.3 - 1.3.4").to_s excludes 1.3.5-0 parse("1.2.3 - 1.3.4").to_s excludes 1.2.2 "1.2.3 - 1.3.4" stringifies as >=1.2.3 <=1.3.4 "1.2.3 - 1.3.4-alpha" stringifies as >=1.2.3 <=1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s excludes 1.2.3-alph "1.2.3 - 1.3.4-alpha" includes 1.2.3 parse("1.2.3 - 1.3.4").to_s excludes 1.2.3-0 "1.2.3-alpha - 1.3.4-alpha" stringifies as >=1.2.3-alpha <=1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s includes 1.3.4 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4").to_s includes 1.3.4 "1.2.3 - 1.3.4-alpha" excludes 1.3.5 "1.2.3-alpha - 1.3.4-alpha" excludes 1.2.3-alph parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.2 "1.2.3-alpha - 1.3.4-alpha" includes 1.3.4-alpha "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.5 parse("1.2.3-alpha - 1.3.4").to_s includes 1.2.3-alpha "1.2.3 - 1.3.4" excludes 1.3.5-0 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.5 "1.2.3 - 1.3.4" includes 1.3.4 "1.2.3 - 1.3.4" excludes 1.2.3-0 parse("1.2.3 - 1.3.4").to_s includes 1.2.3 "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s includes 1.2.3 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.2.3-alph "1.2.3 - 1.3.4" excludes 1.2.2 "1.2.3-alpha - 1.3.4" excludes 1.3.5-0 parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.2.3-alpha parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.3-0 "1.2.3-alpha - 1.3.4" excludes 1.2.3-alph "1.2.3 - 1.3.4" includes 1.2.3 "1.2.3 - 1.3.4-alpha" excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s includes 1.3.4-alpha "1.2.3-alpha - 1.3.4" includes 1.3.4 "reasonably close" expressions parse("~ 1.2").to_s includes 1.2.0 "~ 1" stringifies as >=1.0.0 <2.0.0 parse("~ 1").to_s includes 1.0.0 parse("~1").to_s includes 1.999.999 "~1.2.3" stringifies as >=1.2.3 <1.3.0 parse("~ 1.2.3").to_s excludes 1.3.0-0 parse("~ 1.2.3-alpha").to_s includes 1.2.3 "~ 1.2.3-alpha" includes 1.2.3 "~1" excludes 0.999.999 "~ 1.2" excludes 1.2.0-0 "~ 1" excludes 0.999.999 parse("~1.2").to_s excludes 1.1.999 "~1.2" includes 1.2.0 "~ 1.2.3" excludes 1.2.2 parse("~1.2.3").to_s excludes 1.2.2 "~ 1.2.3-alpha" excludes 1.2.4-0 parse("~ 1").to_s includes 1.999.999 "~ 1.2" includes 1.2.999 parse("~ 1.2.3").to_s includes 1.2.3 parse("~1.2.3-alpha").to_s excludes 1.2.4-0 parse("~1").to_s excludes 2.0.0-0 parse("~ 1.2.3").to_s excludes 1.2.2 parse("~1").to_s includes 1.0.0 "~ 1.2.3" excludes 1.3.0-0 parse("~ 1.2.3-alpha").to_s includes 1.2.3-alpha parse("~1.2.3-alpha").to_s includes 1.2.3-alpha "~1.2" excludes 1.3.0-0 "~ 1.2" includes 1.2.0 parse("~ 1.2").to_s includes 1.2.999 parse("~1.2.3").to_s includes 1.2.5 parse("~1.2.3-alpha").to_s excludes 1.2.3-alph "~ 1" excludes 1.0.0-0 parse("~1.2").to_s includes 1.2.0 parse("~ 1").to_s excludes 1.0.0-0 "~1.2" stringifies as >=1.2.0 <1.3.0 "~ 1.2.3" includes 1.2.3 "~1" includes 1.0.0 parse("~1.2.3").to_s excludes 1.2.3-0 parse("~1.2.3").to_s excludes 1.3.0-0 "~1" excludes 2.0.0-0 "~ 1" includes 1.0.0 "~1.2.3-alpha" excludes 1.2.4-0 "~1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 "~ 1.2.3-alpha" includes 1.2.3-alpha "~1.2" excludes 1.2.0-0 "~ 1.2.3-alpha" excludes 1.2.3-alph parse("~1.2").to_s excludes 1.2.0-0 "~ 1.2.3" stringifies as >=1.2.3 <1.3.0 parse("~1.2.3-alpha").to_s includes 1.2.3 parse("~ 1.2").to_s excludes 1.1.999 "~1" includes 1.999.999 parse("~1.2.3").to_s includes 1.2.3 "~1.2.3-alpha" includes 1.2.3-alpha "~1.2.3-alpha" excludes 1.2.3-alph "~ 1.2" excludes 1.1.999 "~1.2.3" excludes 1.2.2 "~1.2.3-alpha" includes 1.2.3 "~ 1" excludes 2.0.0-0 "~1.2" includes 1.2.999 parse("~ 1.2").to_s excludes 1.3.0-0 "~ 1.2" stringifies as >=1.2.0 <1.3.0 "~ 1.2" excludes 1.3.0-0 "~1.2.3" excludes 1.3.0-0 parse("~ 1").to_s excludes 2.0.0-0 "~ 1.2.3" includes 1.2.5 parse("~1.2").to_s includes 1.2.999 parse("~ 1.2.3-alpha").to_s excludes 1.2.4-0 "~1" excludes 1.0.0-0 "~1.2.3" includes 1.2.3 "~1.2.3" includes 1.2.5 parse("~ 1.2.3").to_s includes 1.2.5 "~ 1" includes 1.999.999 parse("~1.2").to_s excludes 1.3.0-0 parse("~ 1").to_s excludes 0.999.999 parse("~1").to_s excludes 1.0.0-0 parse("~ 1.2.3").to_s excludes 1.2.3-0 "~ 1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 "~1.2" excludes 1.1.999 "~ 1.2.3" excludes 1.2.3-0 "~1" stringifies as >=1.0.0 <2.0.0 parse("~1").to_s excludes 0.999.999 parse("~ 1.2.3-alpha").to_s excludes 1.2.3-alph "~1.2.3" excludes 1.2.3-0 parse("~ 1.2").to_s excludes 1.2.0-0 open-ended expressions "<1.2.3-alpha" includes 1.2.3-alph "< 1.2.3" includes 1.2.2 "<=1.2.3-alpha" includes 0.0.0 "<= 1.2.3" stringifies as <=1.2.3 parse(">1.2.3").to_s excludes 1.2.4-0 "< 1.2.3-alpha" excludes 1.2.3-alpha "<1.2.3" excludes 2.0.0 "<= 1.2.3" excludes 0.0.0-0 parse("< 1.2.3-alpha").to_s excludes 1.2.3-alpha "<= 1.2.3-alpha" includes 0.0.0 "<1.2.3-alpha" includes 0.0.0 "<= 1.2.3-alpha" stringifies as <=1.2.3-alpha parse("<1.2.3").to_s excludes 2.0.0 "<1.2.3-alpha" excludes 0.0.0-0 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha.0 parse("< 1.2.3").to_s excludes 1.2.3-0 "> 1.2.3" excludes 1.2.3 parse("> 1.2.3-alpha").to_s includes 999.0.0 parse("> 1.2.3").to_s excludes 1.2.3 parse(">= 1.2.3").to_s excludes 1.2.2 parse("<= 1.2.3").to_s excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha0 ">=1.2.3" excludes 1.2.3-0 "<=1.2.3" excludes 1.2.3-0 "<1.2.3" stringifies as <1.2.3 "<=1.2.3" includes 1.2.3 parse("<=1.2.3-alpha").to_s includes 1.2.3-alpha "< 1.2.3" stringifies as <1.2.3 parse(">= 1.2.3").to_s excludes 1.2.3-0 parse("< 1.2.3-alpha").to_s includes 0.0.0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha0 "<= 1.2.3" excludes 1.2.3-0 ">= 1.2.3" excludes 1.2.2 ">1.2.3-alpha" includes 999.0.0 parse("<1.2.3-alpha").to_s includes 1.2.3-alph "> 1.2.3" includes 999.0.0 ">=1.2.3-alpha" includes 1.2.3-alpha "<=1.2.3-alpha" includes 1.2.3-alpha parse("<=1.2.3").to_s includes 0.0.0 "<= 1.2.3-alpha" excludes 1.2.3-alphb parse("< 1.2.3").to_s excludes 0.0.0-0 "<=1.2.3-alpha" excludes 1.2.3-alpha.0 parse("> 1.2.3").to_s excludes 1.2.4-0 ">1.2.3" stringifies as >1.2.3 ">=1.2.3" includes 999.0.0 parse("< 1.2.3-alpha").to_s includes 1.2.3-alph parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alphb "< 1.2.3-alpha" excludes 0.0.0-0 ">=1.2.3" stringifies as >=1.2.3 "> 1.2.3-alpha" includes 1.2.3-alpha.0 "<1.2.3" excludes 0.0.0-0 "<= 1.2.3-alpha" excludes 0.0.0-0 ">= 1.2.3" stringifies as >=1.2.3 "< 1.2.3" excludes 2.0.0 ">=1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3" excludes 1.2.4-0 parse("> 1.2.3").to_s includes 999.0.0 "<=1.2.3-alpha" stringifies as <=1.2.3-alpha "< 1.2.3" excludes 0.0.0-0 ">1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3-alpha" stringifies as >1.2.3-alpha parse(">1.2.3").to_s excludes 1.2.3 parse("<=1.2.3-alpha").to_s excludes 0.0.0-0 parse("< 1.2.3").to_s includes 1.2.2 parse("<1.2.3").to_s excludes 0.0.0-0 parse("<1.2.3-alpha").to_s includes 0.0.0 parse("<= 1.2.3").to_s includes 1.2.3 ">1.2.3-alpha" stringifies as >1.2.3-alpha parse("> 1.2.3-alpha").to_s excludes 1.2.3-alpha parse(">= 1.2.3").to_s includes 999.0.0 "<= 1.2.3" includes 1.2.3 ">1.2.3" excludes 1.2.3 parse("<1.2.3-alpha").to_s excludes 2.0.0 ">=1.2.3-alpha" excludes 1.2.4-alpha parse("<= 1.2.3").to_s includes 0.0.0 parse(">=1.2.3").to_s excludes 1.2.3-0 "<1.2.3-alpha" stringifies as <1.2.3-alpha parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha "<= 1.2.3-alpha" includes 1.2.3-alpha parse("<=1.2.3").to_s includes 1.2.3 ">1.2.3" excludes 1.2.4-0 ">= 1.2.3-alpha" stringifies as >=1.2.3-alpha parse("<1.2.3-alpha").to_s excludes 0.0.0-0 parse("< 1.2.3-alpha").to_s excludes 0.0.0-0 parse("<1.2.3").to_s includes 0.0.0 parse(">=1.2.3-alpha").to_s excludes 1.2.4-alpha "<= 1.2.3" includes 0.0.0 ">1.2.3-alpha" includes 1.2.3-alpha.0 ">= 1.2.3" excludes 1.2.3-0 "<1.2.3" excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s includes 0.0.0 parse("< 1.2.3").to_s includes 0.0.0 "< 1.2.3-alpha" stringifies as <1.2.3-alpha parse("< 1.2.3-alpha").to_s excludes 2.0.0 "<=1.2.3" excludes 0.0.0-0 ">= 1.2.3-alpha" includes 1.2.3-alpha0 "< 1.2.3-alpha" includes 0.0.0 "< 1.2.3-alpha" excludes 2.0.0 "<1.2.3-alpha" excludes 1.2.3-alpha parse("< 1.2.3").to_s excludes 2.0.0 "<= 1.2.3-alpha" excludes 1.2.3-alpha0 "<=1.2.3-alpha" excludes 0.0.0-0 ">1.2.3-alpha" excludes 1.2.3-alpha "> 1.2.3-alpha" includes 999.0.0 "<=1.2.3" stringifies as <=1.2.3 "> 1.2.3" stringifies as >1.2.3 parse(">=1.2.3-alpha").to_s includes 999.0.0 ">= 1.2.3-alpha" includes 1.2.3-alpha "<= 1.2.3-alpha" excludes 1.2.3-alpha.0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alphb ">1.2.3" includes 999.0.0 parse(">=1.2.3").to_s excludes 1.2.2 ">=1.2.3-alpha" includes 999.0.0 parse(">= 1.2.3-alpha").to_s includes 999.0.0 "<=1.2.3" includes 0.0.0 ">=1.2.3-alpha" stringifies as >=1.2.3-alpha ">= 1.2.3" includes 999.0.0 parse("<1.2.3").to_s includes 1.2.2 parse("<=1.2.3").to_s excludes 0.0.0-0 parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha.0 parse(">= 1.2.3-alpha").to_s excludes 1.2.3-alph parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha0 "<1.2.3-alpha" excludes 2.0.0 parse(">= 1.2.3-alpha").to_s excludes 1.2.4-alpha "<1.2.3" includes 0.0.0 "<=1.2.3-alpha" excludes 1.2.3-alphb "<1.2.3" includes 1.2.2 parse("<= 1.2.3-alpha").to_s includes 0.0.0 "< 1.2.3-alpha" includes 1.2.3-alph parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha0 ">=1.2.3-alpha" excludes 1.2.3-alph "< 1.2.3" excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha.0 parse(">=1.2.3").to_s includes 999.0.0 parse("<= 1.2.3").to_s excludes 0.0.0-0 parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha0 parse("<1.2.3-alpha").to_s excludes 1.2.3-alpha parse("<=1.2.3").to_s excludes 1.2.3-0 parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha parse("<= 1.2.3-alpha").to_s includes 1.2.3-alpha parse("<= 1.2.3-alpha").to_s excludes 0.0.0-0 parse(">=1.2.3-alpha").to_s excludes 1.2.3-alph parse("<1.2.3").to_s excludes 1.2.3-0 parse(">1.2.3-alpha").to_s includes 999.0.0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha.0 ">=1.2.3" excludes 1.2.2 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha0 ">= 1.2.3-alpha" excludes 1.2.3-alph ">= 1.2.3-alpha" excludes 1.2.4-alpha "> 1.2.3-alpha" excludes 1.2.3-alpha ">= 1.2.3-alpha" includes 999.0.0 "<=1.2.3-alpha" excludes 1.2.3-alpha0 parse(">1.2.3-alpha").to_s excludes 1.2.3-alpha parse(">1.2.3").to_s includes 999.0.0 "< 1.2.3" includes 0.0.0 invalid expressions raise an appropriate exception loose version expressions "1.2.3-alpha" stringifies as 1.2.3-alpha "1.2.3-alpha" excludes 1.2.3-beta parse("1.2.3").to_s includes 1.2.3 "1.2" excludes 1.3.0-0 parse("1.2").to_s excludes 1.3.0-0 "1.2.X" excludes 1.2.0-alpha "1.2.x" includes 1.2.0 parse("1.X").to_s includes 1.0.0 "1" stringifies as >=1.0.0 <2.0.0 parse("1").to_s excludes 0.999.999 parse("1.2.x").to_s excludes 1.1.999 parse("1.2.3-alpha").to_s includes 1.2.3-alpha "1" includes 1.999.0 "1.2.x" excludes 1.3.0-0 "1.X" excludes 2.0.0-0 "1" includes 1.0.0 "1.x" stringifies as >=1.0.0 <2.0.0 "1.2.X" includes 1.2.999 "1.X" excludes 0.999.999 "1.2.3-alpha" excludes 1.2.3-999 "1.X" includes 1.999.0 "1.2" excludes 1.1.999 parse("1.X").to_s excludes 1.0.0-alpha "1.2.3" excludes 1.2.2 parse("1").to_s includes 1.999.0 "1.x" excludes 1.0.0-alpha parse("1.2.x").to_s excludes 1.3.0-0 parse("1.2.X").to_s excludes 1.3.0-0 parse("1.2.x").to_s includes 1.2.0 parse("1").to_s excludes 1.0.0-alpha "1" excludes 1.0.0-alpha "1.2" includes 1.2.999 "1.X" excludes 1.0.0-alpha "1.2.3" excludes 1.2.4-alpha "1.2.3-alpha" includes 1.2.3-alpha "1.x" excludes 0.999.999 "1.2.3" excludes 1.2.3-alpha parse("1.2.3-alpha").to_s excludes 1.2.3-beta "1.2.x" excludes 1.1.999 parse("1.x").to_s includes 1.0.0 "1.2" stringifies as >=1.2.0 <1.3.0 parse("1.X").to_s includes 1.999.0 parse("1.X").to_s excludes 0.999.999 "1.x" includes 1.999.0 "1.2.x" excludes 1.2.0-alpha parse("1.2.3-alpha").to_s excludes 1.2.3-999 "1.2.x" includes 1.2.999 parse("1.2.X").to_s excludes 1.2.0-alpha parse("1.2").to_s excludes 1.1.999 parse("1.2.3").to_s excludes 1.2.4-alpha parse("1.2.X").to_s excludes 1.1.999 parse("1.2.3").to_s excludes 1.2.2 parse("1.2.x").to_s excludes 1.2.0-alpha parse("1.2.3").to_s excludes 1.2.3-alpha parse("1").to_s includes 1.0.0 parse("1.x").to_s excludes 2.0.0-0 "1.2" excludes 1.2.0-alpha parse("1.2.x").to_s includes 1.2.999 parse("1.x").to_s excludes 0.999.999 parse("1.2").to_s includes 1.2.0 "1.2.X" includes 1.2.0 "1.x" includes 1.0.0 "1" excludes 0.999.999 "1.2.X" stringifies as >=1.2.0 <1.3.0 parse("1.2").to_s excludes 1.2.0-alpha "1" excludes 2.0.0-0 "1.X" stringifies as >=1.0.0 <2.0.0 parse("1.2.X").to_s includes 1.2.0 parse("1.x").to_s excludes 1.0.0-alpha "1.2.X" excludes 1.3.0-0 "1.X" includes 1.0.0 "1.2.x" stringifies as >=1.2.0 <1.3.0 "1.2" includes 1.2.0 "1.2.X" excludes 1.1.999 parse("1.2").to_s includes 1.2.999 parse("1.X").to_s excludes 2.0.0-0 "1.2.3" stringifies as 1.2.3 parse("1.2.X").to_s includes 1.2.999 "1.x" excludes 2.0.0-0 parse("1").to_s excludes 2.0.0-0 parse("1.x").to_s includes 1.999.0 "1.2.3" includes 1.2.3 The version 1.1.3 should be below range 2.x.x 1.9999.9999 should not be below range < 2.0.0 1.9999.9999 should not be above range <=2.0.0(<=2.0.0) 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 0.2.9 should not be below range < 2.0.0 0.6.0-asdf should be below range =0.7.x 0.2.4 should not be below range >=0.2.3 || <0.0.1 1.0.0-beta should not be below range ^1.0.0-alpha 0.0.0-0 should not be above range ^1(>=1.0.0 <2.0.0) 2.0.0 should be above range <2.0.0 3.2.9 should be above range <=2.0.0 3.1.3 should be above range 1.2.* || 2.* 5.0.0-0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 5.0.0-0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.0.0 should not be above range >=1(>=1.0.0) 3.1.3 should be above range 2.*.* 1.1.0 should not be above range >=1.0.0(>=1.0.0) 0.6.1-pre should be above range ~v0.5.4-pre 2.1.3 should not be below range 1.2.x || 2.x 1.2.3 should not be below range 1.2.x 1.1.0 should not be below range ~ 1.0 1.9999.9999 should not be below range <=2.0.0 1.0.1 should not be below range >=1.0.0 0.2.9 should not be below range <2.0.0 1.1.3 should be below range 1.2.* 1.0.2 should not be below range ~ 1.0 2.2.1 should be below range 2.3 0.6.0 should be above range ~v0.5.4-pre 1.9999.9999 should be below range 2 0.2.3 should be below range ~> 1 0.6.1-1 should not be below range ~0.6.1-1 1.0.0 should not be below range 1.0.0 2.0.0 should not be above range ^1.0.0 || ~2.0.1(>=1.0.0 <2.0.0 || >=2.0.1 <2.1.0) 1.1.3 should be below range 2.*.* 1.1.3 should be below range 1.2.* || 2.* 1.1.0 should not be below range >=1.0.0 0.8.0-asdf should be above range =0.7.x 0.7.0-asdf should be below range =0.7.x 1.1.0 should not be below range > 1.0.0 0.5.4 should not be below range ~v0.5.4-pre 1.2.3 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 2.0.0 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 2.4.0 should not be below range ~2.4 0.5.4 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 1.1.3 should be below range 1.2.* 1.2.3 should not be below range 0.1.20 || 1.2.4 1.2.9 should be below range >=2.0.0 2.5.0 should be above range ~2.4 1.0.0 should be above range <1 0.6.2 should be below range =0.7.x 2.3.1 should not be below range 2.3 2.0.0 should be below range >2.0.0 2.2.9 should be above range <=2.0.0 2.3.1 should not be above range 2.3(>=2.3.0 <2.4.0) 0.7.2 should be above range <0.7.x 0.2.3 should be below range ~1 1.2.3 should not be below range ~> 1 2.9999.9999 should be above range <2.0.0 1.2.3 should not be below range ~>1 0.2.3 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 0.5.4-alpha should be below range ~v0.5.4-pre 0.7.2 should not be below range =0.7.x 2.1.3 should not be below range 2.x.x 0.0.0 should be below range ~1.0 1.3.3 should be above range 1.2.* 2.5.0 should be above range ~2.4 0.6.0 should be below range >=0.7.x 1.9999.9999 should not be below range <= 2.0.0 1.0.0 should be below range 2.x.x 1.1.3 should be below range 1.2.x || 2.x 1.0.0 should not be above range >= 1(>=1.0.0) 0.7.0-asdf should be below range >=0.7.x 2.0.0 should not be above range ^3.0.0(>=3.0.0 <4.0.0) 1.2.1 should be above range < 1.2 0.0.1 should be below range 1.0.0 1.0.0 should be below range 1.2.x || 2.x 3.1.3 should be above range 2.x.x 1.0.1 should be above range 1.0.0 1.9999.9999 should not be above range <= 2.0.0(<=2.0.0) 1.0.0-beta should not be above range 1(>=1.0.0 <2.0.0) 1.2.1 should be below range ~1.2.2 1.9999.9999 should be below range >=2.0.0 2.1.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 1.2.3 should not be above range ~> 1(>=1.0.0 <2.0.0) 0.5.5 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 1.2.5 should be above range 0.1.20 || 1.2.4 2.4.2 should be above range 2.3 1.1.0 should be above range ~1.0 2.3.5 should be below range ~2.4 0.1.5 should be below range 0.1.20 || 1.2.4 2.4.5 should not be below range ~2.4 0.6.0 should be below range =0.7.x 2.4.0 should not be above range ~2.4(>=2.4.0 <2.5.0) 1.0.0 should not be below range >=1 0.2.4 should not be above range >=*(>=0.0.0) 2.0.0-beta should be above range 1 1.3.3 should be above range 1.2.* 0.2.9 should not be above range <=2.0.0(<=2.0.0) 1.2.3 should not be above range ~1(>=1.0.0 <2.0.0) 2.0.0 should not be below range <= 2.0.0 1.2.3 should not be above range *(*) 2.0.0-beta should be above range 1 0.1.97 should not be below range >=0.1.97 1.2.4 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 1.0.0 should not be below range >=1.0.0 0.2.4 should be below range ~>1 0.0.0-beta should be below range 1 3.5.0 should not be below range ^0.1.0 || ~3.0.1 || >4 <=5.0.0 0.7.0-asdf should not be above range =0.7.x(>=0.7.0 <0.8.0) 1.0.0 should not be below range =0.1.0 1.0.1 should not be above range >= 1.0.0(>=1.0.0) 1.2.3 should not be above range *(*) 0.7.0 should be above range <0.7.x 0.2.3 should be below range 1.0.0 - 2.0.0 0.2.9 should not be above range < 2.0.0(<2.0.0) 2.0.0 should be above range 1.0.0 1.2.0 should be above range <1.2 0.6.1-1 should not be above range ~0.6.1-1(>=0.6.1-1 <0.7.0) 0.2.5 should not be above range >0.2.3 >0.2.4 <=0.2.5(>0.2.4 <=0.2.5) 1.2.3 should not be above range 1.2.*(>=1.2.0 <1.3.0) 0.7.0-asdf should not be above range >=0.7.x(>=0.7.0) 0.2.3 should not be below range >=0.2.3 || <0.0.1 4.0.0 should be above range 1.2.* || 2.* 0.2.3 should be below range ~1 2.4.1 should be above range 2.3 1.0.0-beta.1 should be below range 1.0.0-beta.2 1.0.1 should not be below range >1.0.0 1.2.3 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 1.0.0-beta should be below range 2 1.9999.9999 should not be above range <2.0.0(<2.0.0) 2.0.0 should not be above range <=2.0.0(<=2.0.0) 1.1.0 should not be above range > 1.0.0(>1.0.0) 1.2.1 should be below range ~1.2.2 2.1.3 should not be above range 2.x.x(>=2.0.0 <3.0.0) 0.7.2 should not be above range >=0.7.x(>=0.7.0) 1.0.0 should be below range >1 1.3.4 should not be above range ||(*) 1.2.9 should be below range >=2.0.0 3.1.3 should be above range 1.2.x || 2.x 1.0.1 should not be below range >= 1.0.0 3.5.0 should not be above range ^0.1.0 || ~3.0.1 || >4 <=5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.0.2 should not be above range ~1.0(>=1.0.0 <1.1.0) 0.7.1-1 should be above range ~0.6.1-1 1.2.3 should not be above range ~>1(>=1.0.0 <2.0.0) 2.5.5 should be above range ~2.4 2.0.0 should not be below range 1.0.0 - 2.0.0 5.0.1 should be above range 2.*.* 0.1.97 should not be above range >=0.1.97(>=0.1.97) 2.1.3 should not be below range 2.*.* 3.0.0 should be above range 1.2.x || 2.x 1.0.0 should not be above range >= 1.0.0(>=1.0.0) 1.2.3 should not be below range * 1.0.1 should not be below range > 1.0.0 3.3.2 should be above range ~>3.2.1 1.2.1 should be below range > 1.2 1.0.0 should not be above range >=1.0.0(>=1.0.0) 0.8.2 should be above range =0.7.x 2.0.1 should be above range 1.0.0 - 2.0.0 1.0.0-beta should be above range <1 0.1.97 should not be above range >=0.1.97(>=0.1.97) 2.1.1 should be above range <=2.0.0 0.2.9 should not be above range <2.0.0(<2.0.0) 0.5.4-alpha should be below range ~v0.5.4-pre 0.2.9 should not be below range <= 2.0.0 3.2.2 should not be above range ~>3.2.1(>=3.2.1 <3.3.0) 1.0.0-beta should be below range 1 1.1.3 should be below range 1.2.x 0.2.4 should not be below range >=0.2.3 <=0.2.4 1.0.1 should not be above range >=1.0.0(>=1.0.0) 2.9999.9999 should be above range <=2.0.0 2.3.0 should be below range ~2.4 1.2.3 should not be above range x(*) 1.1.0 should not be below range >= 1.0.0 0.6.1-0 should be below range ~0.6.1-1 2.1.2 should not be above range 2(>=2.0.0 <3.0.0) 1.1.0 should not be below range >1.0.0 2.1.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.0.0 should not be above range <= 2.0.0(<=2.0.0) 1.1.1 should not be above range <1.2(<1.2.0) 1.0.1-beta1 should be above range 1.0.0 3.2.0 should be below range ~>3.2.1 0.2.4 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 1.2.3 should not be below range 1.2.* || 2.* 1.0.0-beta should not be below range ~1.0.0-alpha 1.0.1 should be below range 2.*.* 0.5.5 should not be below range ~v0.5.4-pre 1.0.2 should not be below range ~1.0 1.1.0 should be below range 1.2.x 1.1.0 should be above range ~ 1.0 1.1.1 should be below range >=2.0.0 3.2.2 should not be below range ~>3.2.1 1.3.3 should be above range 1.2.x 3.3.0 should be above range ~>3.2.1 0.2.3 should be below range ~>1 1.2.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.3.2 should be below range ~>3.2.1 1.0.1 should not be above range > 1.0.0(>1.0.0) 4.0.0 should not be below range ^3.0.0 1.0.0 should not be above range (*) 1.0.0 should not be below range >= 1.0.0 1.2.3 should not be below range 1.2.* || 2.* 1.0.0 should not be above range 1.0.0(1.0.0) 1.1.2 should be above range ~1.0 1.3.0 should be above range ~1.2.2 0.8.0 should be above range =0.7.x 1.2.3 should not be below range ~1 2.0.0 should be below range >2.0.0 2.2.2 should be below range 2.3 2.0.0 should not be below range ^1.0.0 || ~2.0.1 2.9.9 should not be below range 1.0.0 - 2.0.0 1.3.0 should be above range ~1.2.2 1.1.0 should not be above range >= 1.0.0(>=1.0.0) 1.2.0 should be below range >1.2 3.2.0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 1.0.0 should not be below range >= 1 1.3.0 should be above range 1.2.x 1.2.3 should not be below range 1.0.0 - 2.0.0 1.0.0 should be below range >=2.0.0 1.2.3 should not be below range 1.2.x || 2.x 0.0.1 should be below range 1.0.0 - 2.0.0 1.9999.9999 should not be below range <2.0.0 0.6.2 should be below range >=0.7.x 2.2.3 should be above range ~1 0.2.4 should not be above range >=0.2.3 <=0.2.4(>=0.2.3 <=0.2.4) 2.1.2 should not be below range 2 1.2.3 should not be above range 1.2.x(>=1.2.0 <1.3.0) 1.1.1 should not be below range <1.2 1.0.0-beta should be below range >1 0.9.9 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 0.7.2 should not be above range =0.7.x(>=0.7.0 <0.8.0) 1.1.0 should not be above range >1.0.0(>1.0.0) 1.2.3 should not be below range * 1.2.9 should be below range >2.0.0 2.1.3 should not be above range 2.*.*(>=2.0.0 <3.0.0) 1.0.0-beta should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 2.0.0 should not be below range <=2.0.0 1.0.0-beta should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 0.0.0 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 1.0.0-0 should be below range ^1 0.6.2 should not be above range <=0.7.x(<0.8.0) 3.0.0 should be above range 2.x.x 1.0.0-beta should be below range > 1 1.2.3 should not be below range 1.2.* 0.2.5 should not be below range >0.2.3 >0.2.4 <=0.2.5 2.2.9 should be above range <2.0.0 0.2.4 should not be below range >=* 0.1.0 should be below range ~ 1.0 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.2.3 should be above range ~1 0.6.2 should not be below range <=0.7.x 1.0.0 should be below range 2 0.0.0 should be below range 1.0.0 0.1.20 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 0.2.9 should not be below range <=2.0.0 1.2.4 should not be below range 0.1.20 || >1.2.4 1.2.3-foo should not be above range *(*) 0.7.2 should not be below range >=0.7.x 2.1.3 should not be below range 1.2.* || 2.* 2.4.5 should not be above range ~2.4(>=2.4.0 <2.5.0) 1.0.1 should not be above range >1.0.0(>1.0.0) 3.2.0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.9999.9999 should not be above range < 2.0.0(<2.0.0) 3.0.0 should be above range 2 1.3.4 should not be below range || 1.2.4 should not be below range 0.1.20 || 1.2.4 1.2.4 should not be above range 0.1.20 || >1.2.4(0.1.20 || >1.2.4) 0.1.2 should be below range ~1.0 2.2.4 should be above range ~>1 3.1.2 should be above range 2 0.1.20 should not be below range 0.1.20 || 1.2.4 2.3.0 should be below range ~2.4 1.1.9999 should be below range 1.2.* || 2.* 0.2.9 should not be above range <= 2.0.0(<=2.0.0) 0.0.0 should not be below range >=0.2.3 || <0.0.1 1.1.1 should not be below range < 1.2 3.0.0 should be above range <=2.0.0 2.2.3 should be above range ~>1 3.2.3 should be above range ~> 1 1.0.2 should not be above range ~ 1.0(>=1.0.0 <1.1.0) 1.0.0 should not be below range 2.2.3 should be above range 1.0.0 - 2.0.0 1.1.1 should not be above range < 1.2(<1.2.0) 1.2.3 should not be below range x 1.0.0-beta should be above range < 1 Finished in 0.31378 seconds (files took 0.19534 seconds to load) 988 examples, 0 failures Randomized with seed 31987 ┌──────────────────────────────────────────────────────────────────────────────┐ │ dh_ruby --install finished │ └──────────────────────────────────────────────────────────────────────────────┘ dh_installdocs -O--buildsystem=ruby dh_ruby_fixdocs -O--buildsystem=ruby debian/rules override_dh_installchangelogs make[1]: Entering directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installchangelogs CHANGELOG.md -O--buildsystem=ruby make[1]: Leaving directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installsystemduser -O--buildsystem=ruby dh_perl -O--buildsystem=ruby dh_link -O--buildsystem=ruby dh_strip_nondeterminism -O--buildsystem=ruby dh_compress -X.rb -O--buildsystem=ruby dh_fixperms -O--buildsystem=ruby dh_missing -O--buildsystem=ruby dh_ruby_fixdepends -O--buildsystem=ruby dh_installdeb -O--buildsystem=ruby dh_gencontrol -O--buildsystem=ruby dpkg-gencontrol: warning: Depends field of package ruby-semantic-puppet: substitution variable ${shlibs:Depends} used, but is not defined dh_md5sums -O--buildsystem=ruby dh_builddeb -O--buildsystem=ruby dpkg-deb: building package 'ruby-semantic-puppet' in '../ruby-semantic-puppet_1.1.0-1_all.deb'. dpkg-genbuildinfo --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.buildinfo dpkg-genchanges --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration 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/1808992 and its subdirectories I: Current time: Tue May 26 21:13:39 -12 2026 I: pbuilder-time-stamp: 1779873219 Wed May 27 09:13:39 UTC 2026 I: Signing ./b1/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo as ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc Wed May 27 09:13:39 UTC 2026 I: Signed ./b1/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo as ./b1/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc Wed May 27 09:13:39 UTC 2026 - build #1 for ruby-semantic-puppet/unstable/amd64 on ionos15-amd64 done. Starting cleanup. All cleanup done. Wed May 27 09:13:39 UTC 2026 - reproducible_build.sh stopped running as /tmp/jenkins-script-pekNb74i, removing. /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9: total 16 drwxr-xr-x 2 jenkins jenkins 4096 Apr 24 02:50 b1 drwxr-xr-x 2 jenkins jenkins 4096 Apr 24 02:49 b2 -rw------- 1 jenkins jenkins 2742 Apr 24 02:49 rbuildlog.34JXe31 -rw-r--r-- 1 jenkins jenkins 1549 Nov 18 05:38 ruby-semantic-puppet_1.1.0-1.dsc /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b1: total 192 -rw-r--r-- 1 jenkins jenkins 108260 Apr 24 02:50 build.log -rw-r--r-- 1 jenkins jenkins 2836 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1549 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1.dsc -rw-r--r-- 1 jenkins jenkins 15108 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_all.deb -rw-r--r-- 1 jenkins jenkins 7606 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 8488 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1300 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.changes -rw-r--r-- 1 jenkins jenkins 1753 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_source.changes -rw-r--r-- 1 jenkins jenkins 28963 Apr 24 02:50 ruby-semantic-puppet_1.1.0.orig.tar.gz /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b2: total 0 Thu Apr 24 02:50:40 UTC 2025 I: Deleting $TMPDIR on ionos15-amd64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Tue May 26 21:12:41 -12 2026 I: pbuilder-time-stamp: 1779873161 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [ruby-semantic-puppet_1.1.0-1.dsc] I: copying [./ruby-semantic-puppet_1.1.0.orig.tar.gz] I: copying [./ruby-semantic-puppet_1.1.0-1.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./ruby-semantic-puppet_1.1.0-1.dsc: unsupported subcommand dpkg-source: info: extracting ruby-semantic-puppet in ruby-semantic-puppet-1.1.0 dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0.orig.tar.gz dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/1808992/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='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='52ddfad35c24475e8c4d5ab875183a1b' 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='1808992' PS1='# ' PS2='> ' 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.jHOxZbK9/pbuilderrc_7375 --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.jHOxZbK9/b1 --logfile b1/build.log ruby-semantic-puppet_1.1.0-1.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' I: uname -a Linux ionos15-amd64 6.12.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin I: user script /srv/workspace/pbuilder/1808992/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), gem2deb, rake, ruby-rspec dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19839 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on gem2deb; however: Package gem2deb is not installed. pbuilder-satisfydepends-dummy depends on rake; however: Package rake is not installed. pbuilder-satisfydepends-dummy depends on ruby-rspec; however: Package ruby-rspec is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} debhelper{a} devscripts{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gem2deb{a} gem2deb-test-runner{a} gettext{a} gettext-base{a} gpg{a} gpg-agent{a} gpgconf{a} gpgv{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libassuan9{a} libb-hooks-op-check-perl{a} libclass-method-modifiers-perl{a} libclass-xsaccessor-perl{a} libclone-perl{a} libdebhelper-perl{a} libdevel-callchecker-perl{a} libdynaloader-functions-perl{a} libelf1t64{a} libencode-locale-perl{a} libexpat1{a} libffi8{a} libfile-dirlist-perl{a} libfile-homedir-perl{a} libfile-listing-perl{a} libfile-stripnondeterminism-perl{a} libfile-touch-perl{a} libfile-which-perl{a} libgcrypt20{a} libgmp-dev{a} libgmpxx4ldbl{a} libgpg-error0{a} libhtml-parser-perl{a} libhtml-tagset-perl{a} libhtml-tree-perl{a} libhttp-cookies-perl{a} libhttp-date-perl{a} libhttp-message-perl{a} libhttp-negotiate-perl{a} libimport-into-perl{a} libio-html-perl{a} libio-socket-ssl-perl{a} libksba8{a} liblwp-mediatypes-perl{a} liblwp-protocol-https-perl{a} libmagic-mgc{a} libmagic1t64{a} libmodule-runtime-perl{a} libmoo-perl{a} libnet-http-perl{a} libnet-ssleay-perl{a} libnpth0t64{a} libparams-classify-perl{a} libpipeline1{a} libpython3-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} librole-tiny-perl{a} libruby{a} libruby3.3{a} libsub-quote-perl{a} libtimedate-perl{a} libtool{a} libtry-tiny-perl{a} libuchardet0{a} libunistring5{a} liburi-perl{a} libwww-perl{a} libwww-robotrules-perl{a} libxml2{a} libyaml-0-2{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} patchutils{a} perl-openssl-defaults{a} pinentry-curses{a} po-debconf{a} python3{a} python3-minimal{a} python3.13{a} python3.13-minimal{a} rake{a} readline-common{a} ruby{a} ruby-all-dev{a} ruby-csv{a} ruby-did-you-mean{a} ruby-diff-lcs{a} ruby-minitest{a} ruby-net-telnet{a} ruby-power-assert{a} ruby-rspec{a} ruby-rspec-core{a} ruby-rspec-expectations{a} ruby-rspec-mocks{a} ruby-rspec-support{a} ruby-ruby2-keywords{a} ruby-rubygems{a} ruby-test-unit{a} ruby-webrick{a} ruby-xmlrpc{a} ruby3.3{a} ruby3.3-dev{a} rubygems-integration{a} sensible-utils{a} sopv-gpgv{a} tzdata{a} wdiff{a} The following packages are RECOMMENDED but will NOT be installed: apt-file curl dctrl-tools debian-keyring dput dput-ng dupload equivs fonts-lato gnupg libarchive-cpio-perl libdata-dump-perl libdistro-info-perl libgit-wrapper-perl libgitlab-api-v4-perl libgpg-error-l10n libhtml-form-perl libhtml-format-perl libhttp-daemon-perl libio-compress-brotli-perl libjs-jquery libjson-perl liblist-compare-perl libltdl-dev libmail-sendmail-perl libmailtools-perl libnamespace-clean-perl libsoap-lite-perl libstring-shellquote-perl libxstring-perl licensecheck lintian lynx lzip pristine-tar python3-apt python3-argcomplete python3-debian python3-magic python3-requests python3-unidiff python3-xdg ruby-sdbm ruby3.3-doc sopv-doc strace unzip wget zip 0 packages upgraded, 125 newly installed, 0 to remove and 0 not upgraded. Need to get 35.4 MB of archives. After unpacking 129 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 libpython3.13-minimal amd64 3.13.3-2 [861 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libexpat1 amd64 2.7.1-1 [108 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 python3.13-minimal amd64 3.13.3-2 [2212 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 python3-minimal amd64 3.13.3-1 [27.2 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 media-types all 13.0.0 [29.3 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 netbase all 6.5 [12.4 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 tzdata all 2025b-2 [260 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 libffi8 amd64 3.4.8-1 [24.1 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 readline-common all 8.2-6 [69.4 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 libreadline8t64 amd64 8.2-6 [169 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 libpython3.13-stdlib amd64 3.13.3-2 [1953 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 python3.13 amd64 3.13.3-2 [751 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 libpython3-stdlib amd64 3.13.3-1 [10.2 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 python3 amd64 3.13.3-1 [28.2 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.25 [25.0 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 openssl amd64 3.5.0-1 [1491 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20250419 [162 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.46-5 [338 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.46-5 [109 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.46-5 [43.6 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.23.1-1 [243 kB] Get: 22 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-7 [1185 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.41-4 [94.6 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-8 [294 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3.1 [494 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20240727.1 [60.2 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.17-4 [862 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.23.1-1 [770 kB] Get: 32 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.24.2 [90.9 kB] Get: 33 http://deb.debian.org/debian unstable/main amd64 libtool all 2.5.4-4 [539 kB] Get: 34 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 36 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.1-2 [8620 B] Get: 38 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 39 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 libunistring5 amd64 1.3-2 [477 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.4 [698 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.23.1-1 [1680 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.24.2 [919 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 libgpg-error0 amd64 1.51-4 [82.1 kB] Get: 47 http://deb.debian.org/debian unstable/main amd64 libassuan9 amd64 3.0.2-2 [61.5 kB] Get: 48 http://deb.debian.org/debian unstable/main amd64 libgcrypt20 amd64 1.11.0-7 [843 kB] Get: 49 http://deb.debian.org/debian unstable/main amd64 gpgconf amd64 2.4.7-15 [128 kB] Get: 50 http://deb.debian.org/debian unstable/main amd64 libksba8 amd64 1.6.7-2+b1 [136 kB] Get: 51 http://deb.debian.org/debian unstable/main amd64 libnpth0t64 amd64 1.8-3 [23.2 kB] Get: 52 http://deb.debian.org/debian unstable/main amd64 gpg amd64 2.4.7-15 [633 kB] Get: 53 http://deb.debian.org/debian unstable/main amd64 pinentry-curses amd64 1.3.1-2 [86.4 kB] Get: 54 http://deb.debian.org/debian unstable/main amd64 gpg-agent amd64 2.4.7-15 [270 kB] Get: 55 http://deb.debian.org/debian unstable/main amd64 libfile-dirlist-perl all 0.05-3 [7600 B] Get: 56 http://deb.debian.org/debian unstable/main amd64 libfile-which-perl all 1.27-2 [15.1 kB] Get: 57 http://deb.debian.org/debian unstable/main amd64 libfile-homedir-perl all 1.006-2 [42.4 kB] Get: 58 http://deb.debian.org/debian unstable/main amd64 libfile-touch-perl all 0.12-2 [8816 B] Get: 59 http://deb.debian.org/debian unstable/main amd64 libclass-method-modifiers-perl all 2.15-1 [18.0 kB] Get: 60 http://deb.debian.org/debian unstable/main amd64 libclass-xsaccessor-perl amd64 1.19-4+b5 [36.1 kB] Get: 61 http://deb.debian.org/debian unstable/main amd64 libb-hooks-op-check-perl amd64 0.22-3+b2 [10.6 kB] Get: 62 http://deb.debian.org/debian unstable/main amd64 libdynaloader-functions-perl all 0.004-2 [12.2 kB] Get: 63 http://deb.debian.org/debian unstable/main amd64 libdevel-callchecker-perl amd64 0.009-2 [15.6 kB] Get: 64 http://deb.debian.org/debian unstable/main amd64 libparams-classify-perl amd64 0.015-2+b4 [22.5 kB] Get: 65 http://deb.debian.org/debian unstable/main amd64 libmodule-runtime-perl all 0.017-1 [17.9 kB] Get: 66 http://deb.debian.org/debian unstable/main amd64 libimport-into-perl all 1.002005-2 [11.3 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 librole-tiny-perl all 2.002004-1 [21.4 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 libsub-quote-perl all 2.006008-1 [21.8 kB] Get: 69 http://deb.debian.org/debian unstable/main amd64 libmoo-perl all 2.005005-1 [58.0 kB] Get: 70 http://deb.debian.org/debian unstable/main amd64 libencode-locale-perl all 1.05-3 [12.9 kB] Get: 71 http://deb.debian.org/debian unstable/main amd64 libtimedate-perl all 2.3300-2 [39.3 kB] Get: 72 http://deb.debian.org/debian unstable/main amd64 libhttp-date-perl all 6.06-1 [10.7 kB] Get: 73 http://deb.debian.org/debian unstable/main amd64 libfile-listing-perl all 6.16-1 [12.4 kB] Get: 74 http://deb.debian.org/debian unstable/main amd64 libhtml-tagset-perl all 3.24-1 [14.7 kB] Get: 75 http://deb.debian.org/debian unstable/main amd64 liburi-perl all 5.30-1 [105 kB] Get: 76 http://deb.debian.org/debian unstable/main amd64 libhtml-parser-perl amd64 3.83-1+b2 [99.7 kB] Get: 77 http://deb.debian.org/debian unstable/main amd64 libhtml-tree-perl all 5.07-3 [211 kB] Get: 78 http://deb.debian.org/debian unstable/main amd64 libclone-perl amd64 0.47-1+b1 [13.9 kB] Get: 79 http://deb.debian.org/debian unstable/main amd64 libio-html-perl all 1.004-3 [16.2 kB] Get: 80 http://deb.debian.org/debian unstable/main amd64 liblwp-mediatypes-perl all 6.04-2 [20.2 kB] Get: 81 http://deb.debian.org/debian unstable/main amd64 libhttp-message-perl all 7.00-2 [79.8 kB] Get: 82 http://deb.debian.org/debian unstable/main amd64 libhttp-cookies-perl all 6.11-1 [19.1 kB] Get: 83 http://deb.debian.org/debian unstable/main amd64 libhttp-negotiate-perl all 6.01-2 [13.1 kB] Get: 84 http://deb.debian.org/debian unstable/main amd64 perl-openssl-defaults amd64 7+b2 [6724 B] Get: 85 http://deb.debian.org/debian unstable/main amd64 libnet-ssleay-perl amd64 1.94-3 [339 kB] Get: 86 http://deb.debian.org/debian unstable/main amd64 libio-socket-ssl-perl all 2.089-1 [223 kB] Get: 87 http://deb.debian.org/debian unstable/main amd64 libnet-http-perl all 6.23-1 [23.9 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 liblwp-protocol-https-perl all 6.14-1 [10.8 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 libtry-tiny-perl all 0.32-1 [22.9 kB] Get: 90 http://deb.debian.org/debian unstable/main amd64 libwww-robotrules-perl all 6.02-1 [12.9 kB] Get: 91 http://deb.debian.org/debian unstable/main amd64 libwww-perl all 6.78-1 [183 kB] Get: 92 http://deb.debian.org/debian unstable/main amd64 patchutils amd64 0.4.2-1 [77.5 kB] Get: 93 http://deb.debian.org/debian unstable/main amd64 gpgv amd64 2.4.7-15 [240 kB] Get: 94 http://deb.debian.org/debian unstable/main amd64 sopv-gpgv all 0.1.4-1 [11.3 kB] Get: 95 http://deb.debian.org/debian unstable/main amd64 wdiff amd64 1.2.2-9 [122 kB] Get: 96 http://deb.debian.org/debian unstable/main amd64 devscripts all 2.25.10 [1062 kB] Get: 97 http://deb.debian.org/debian unstable/main amd64 rubygems-integration all 1.19 [5488 B] Get: 98 http://deb.debian.org/debian unstable/main amd64 ruby-csv all 3.3.4-1 [42.2 kB] Get: 99 http://deb.debian.org/debian unstable/main amd64 ruby-did-you-mean all 1.6.3-2 [20.9 kB] Get: 100 http://deb.debian.org/debian unstable/main amd64 ruby-minitest all 5.25.4-2 [66.2 kB] Get: 101 http://deb.debian.org/debian unstable/main amd64 ruby-net-telnet all 0.2.0-1 [13.1 kB] Get: 102 http://deb.debian.org/debian unstable/main amd64 ruby-ruby2-keywords all 0.0.5-1 [4300 B] Get: 103 http://deb.debian.org/debian unstable/main amd64 ruby-power-assert all 2.0.3-1 [11.8 kB] Get: 104 http://deb.debian.org/debian unstable/main amd64 ruby-test-unit all 3.6.2-1 [79.1 kB] Get: 105 http://deb.debian.org/debian unstable/main amd64 ruby-webrick all 1.9.1-1 [59.6 kB] Get: 106 http://deb.debian.org/debian unstable/main amd64 ruby-xmlrpc all 0.3.3-2 [24.4 kB] Get: 107 http://deb.debian.org/debian unstable/main amd64 libyaml-0-2 amd64 0.2.5-2 [52.5 kB] Get: 108 http://deb.debian.org/debian unstable/main amd64 libruby3.3 amd64 3.3.8-1 [6300 kB] Get: 109 http://deb.debian.org/debian unstable/main amd64 ruby3.3 amd64 3.3.8-1 [834 kB] Get: 110 http://deb.debian.org/debian unstable/main amd64 libruby amd64 1:3.3+b1 [5440 B] Get: 111 http://deb.debian.org/debian unstable/main amd64 ruby-rubygems all 3.6.7-2 [407 kB] Get: 112 http://deb.debian.org/debian unstable/main amd64 ruby amd64 1:3.3+b1 [6560 B] Get: 113 http://deb.debian.org/debian unstable/main amd64 rake all 13.2.1-1 [65.2 kB] Get: 114 http://deb.debian.org/debian unstable/main amd64 gem2deb-test-runner amd64 2.2.5 [17.9 kB] Get: 115 http://deb.debian.org/debian unstable/main amd64 libgmpxx4ldbl amd64 2:6.3.0+dfsg-3 [329 kB] Get: 116 http://deb.debian.org/debian unstable/main amd64 libgmp-dev amd64 2:6.3.0+dfsg-3 [642 kB] Get: 117 http://deb.debian.org/debian unstable/main amd64 ruby3.3-dev amd64 3.3.8-1 [1045 kB] Get: 118 http://deb.debian.org/debian unstable/main amd64 ruby-all-dev amd64 1:3.3+b1 [6496 B] Get: 119 http://deb.debian.org/debian unstable/main amd64 gem2deb amd64 2.2.5 [48.0 kB] Get: 120 http://deb.debian.org/debian unstable/main amd64 ruby-diff-lcs all 1.5.1-1 [28.1 kB] Get: 121 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-support all 3.13.0c0e0m0s1-2 [28.5 kB] Get: 122 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-core all 3.13.0c0e0m0s1-2 [164 kB] Get: 123 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 124 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 125 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Fetched 35.4 MB in 0s (101 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal: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 ... 19839 files and directories currently installed.) Preparing to unpack .../libpython3.13-minimal_3.13.3-2_amd64.deb ... Unpacking libpython3.13-minimal:amd64 (3.13.3-2) ... Selecting previously unselected package libexpat1:amd64. Preparing to unpack .../libexpat1_2.7.1-1_amd64.deb ... Unpacking libexpat1:amd64 (2.7.1-1) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.3-2_amd64.deb ... Unpacking python3.13-minimal (3.13.3-2) ... Setting up libpython3.13-minimal:amd64 (3.13.3-2) ... Setting up libexpat1:amd64 (2.7.1-1) ... Setting up python3.13-minimal (3.13.3-2) ... Selecting previously unselected package python3-minimal. (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 ... 20173 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.3-1_amd64.deb ... Unpacking python3-minimal (3.13.3-1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_13.0.0_all.deb ... Unpacking media-types (13.0.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.5_all.deb ... Unpacking netbase (6.5) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2025b-2_all.deb ... Unpacking tzdata (2025b-2) ... Selecting previously unselected package libffi8:amd64. Preparing to unpack .../4-libffi8_3.4.8-1_amd64.deb ... Unpacking libffi8:amd64 (3.4.8-1) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.2-6_all.deb ... Unpacking readline-common (8.2-6) ... Selecting previously unselected package libreadline8t64:amd64. Preparing to unpack .../6-libreadline8t64_8.2-6_amd64.deb ... Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8 to /lib/x86_64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8.2 to /lib/x86_64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8 to /lib/x86_64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8.2 to /lib/x86_64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:amd64 (8.2-6) ... Selecting previously unselected package libpython3.13-stdlib:amd64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.3-2_amd64.deb ... Unpacking libpython3.13-stdlib:amd64 (3.13.3-2) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.3-2_amd64.deb ... Unpacking python3.13 (3.13.3-2) ... Selecting previously unselected package libpython3-stdlib:amd64. Preparing to unpack .../9-libpython3-stdlib_3.13.3-1_amd64.deb ... Unpacking libpython3-stdlib:amd64 (3.13.3-1) ... Setting up python3-minimal (3.13.3-1) ... Selecting previously unselected package python3. (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 ... 21185 files and directories currently installed.) Preparing to unpack .../000-python3_3.13.3-1_amd64.deb ... Unpacking python3 (3.13.3-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../001-sensible-utils_0.0.25_all.deb ... Unpacking sensible-utils (0.0.25) ... Selecting previously unselected package openssl. Preparing to unpack .../002-openssl_3.5.0-1_amd64.deb ... Unpacking openssl (3.5.0-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../003-ca-certificates_20250419_all.deb ... Unpacking ca-certificates (20250419) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../004-libmagic-mgc_1%3a5.46-5_amd64.deb ... Unpacking libmagic-mgc (1:5.46-5) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../005-libmagic1t64_1%3a5.46-5_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.46-5) ... Selecting previously unselected package file. Preparing to unpack .../006-file_1%3a5.46-5_amd64.deb ... Unpacking file (1:5.46-5) ... Selecting previously unselected package gettext-base. Preparing to unpack .../007-gettext-base_0.23.1-1_amd64.deb ... Unpacking gettext-base (0.23.1-1) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../008-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../009-groff-base_1.23.0-7_amd64.deb ... Unpacking groff-base (1.23.0-7) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../010-bsdextrautils_2.41-4_amd64.deb ... Unpacking bsdextrautils (2.41-4) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../011-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../012-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../013-m4_1.4.19-8_amd64.deb ... Unpacking m4 (1.4.19-8) ... Selecting previously unselected package autoconf. Preparing to unpack .../014-autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../015-autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../016-automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../017-autopoint_0.23.1-1_all.deb ... Unpacking autopoint (0.23.1-1) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../018-libdebhelper-perl_13.24.2_all.deb ... Unpacking libdebhelper-perl (13.24.2) ... Selecting previously unselected package libtool. Preparing to unpack .../019-libtool_2.5.4-4_all.deb ... Unpacking libtool (2.5.4-4) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../020-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../021-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../022-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../023-dh-strip-nondeterminism_1.14.1-2_all.deb ... Unpacking dh-strip-nondeterminism (1.14.1-2) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../024-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../025-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libunistring5:amd64. Preparing to unpack .../026-libunistring5_1.3-2_amd64.deb ... Unpacking libunistring5:amd64 (1.3-2) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../027-libxml2_2.12.7+dfsg+really2.9.14-0.4_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Selecting previously unselected package gettext. Preparing to unpack .../028-gettext_0.23.1-1_amd64.deb ... Unpacking gettext (0.23.1-1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../029-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../030-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../031-debhelper_13.24.2_all.deb ... Unpacking debhelper (13.24.2) ... Selecting previously unselected package libgpg-error0:amd64. Preparing to unpack .../032-libgpg-error0_1.51-4_amd64.deb ... Unpacking libgpg-error0:amd64 (1.51-4) ... Selecting previously unselected package libassuan9:amd64. Preparing to unpack .../033-libassuan9_3.0.2-2_amd64.deb ... Unpacking libassuan9:amd64 (3.0.2-2) ... Selecting previously unselected package libgcrypt20:amd64. Preparing to unpack .../034-libgcrypt20_1.11.0-7_amd64.deb ... Unpacking libgcrypt20:amd64 (1.11.0-7) ... Selecting previously unselected package gpgconf. Preparing to unpack .../035-gpgconf_2.4.7-15_amd64.deb ... Unpacking gpgconf (2.4.7-15) ... Selecting previously unselected package libksba8:amd64. Preparing to unpack .../036-libksba8_1.6.7-2+b1_amd64.deb ... Unpacking libksba8:amd64 (1.6.7-2+b1) ... Selecting previously unselected package libnpth0t64:amd64. Preparing to unpack .../037-libnpth0t64_1.8-3_amd64.deb ... Unpacking libnpth0t64:amd64 (1.8-3) ... Selecting previously unselected package gpg. Preparing to unpack .../038-gpg_2.4.7-15_amd64.deb ... Unpacking gpg (2.4.7-15) ... Selecting previously unselected package pinentry-curses. Preparing to unpack .../039-pinentry-curses_1.3.1-2_amd64.deb ... Unpacking pinentry-curses (1.3.1-2) ... Selecting previously unselected package gpg-agent. Preparing to unpack .../040-gpg-agent_2.4.7-15_amd64.deb ... Unpacking gpg-agent (2.4.7-15) ... Selecting previously unselected package libfile-dirlist-perl. Preparing to unpack .../041-libfile-dirlist-perl_0.05-3_all.deb ... Unpacking libfile-dirlist-perl (0.05-3) ... Selecting previously unselected package libfile-which-perl. Preparing to unpack .../042-libfile-which-perl_1.27-2_all.deb ... Unpacking libfile-which-perl (1.27-2) ... Selecting previously unselected package libfile-homedir-perl. Preparing to unpack .../043-libfile-homedir-perl_1.006-2_all.deb ... Unpacking libfile-homedir-perl (1.006-2) ... Selecting previously unselected package libfile-touch-perl. Preparing to unpack .../044-libfile-touch-perl_0.12-2_all.deb ... Unpacking libfile-touch-perl (0.12-2) ... Selecting previously unselected package libclass-method-modifiers-perl. Preparing to unpack .../045-libclass-method-modifiers-perl_2.15-1_all.deb ... Unpacking libclass-method-modifiers-perl (2.15-1) ... Selecting previously unselected package libclass-xsaccessor-perl. Preparing to unpack .../046-libclass-xsaccessor-perl_1.19-4+b5_amd64.deb ... Unpacking libclass-xsaccessor-perl (1.19-4+b5) ... Selecting previously unselected package libb-hooks-op-check-perl:amd64. Preparing to unpack .../047-libb-hooks-op-check-perl_0.22-3+b2_amd64.deb ... Unpacking libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Selecting previously unselected package libdynaloader-functions-perl. Preparing to unpack .../048-libdynaloader-functions-perl_0.004-2_all.deb ... Unpacking libdynaloader-functions-perl (0.004-2) ... Selecting previously unselected package libdevel-callchecker-perl:amd64. Preparing to unpack .../049-libdevel-callchecker-perl_0.009-2_amd64.deb ... Unpacking libdevel-callchecker-perl:amd64 (0.009-2) ... Selecting previously unselected package libparams-classify-perl:amd64. Preparing to unpack .../050-libparams-classify-perl_0.015-2+b4_amd64.deb ... Unpacking libparams-classify-perl:amd64 (0.015-2+b4) ... Selecting previously unselected package libmodule-runtime-perl. Preparing to unpack .../051-libmodule-runtime-perl_0.017-1_all.deb ... Unpacking libmodule-runtime-perl (0.017-1) ... Selecting previously unselected package libimport-into-perl. Preparing to unpack .../052-libimport-into-perl_1.002005-2_all.deb ... Unpacking libimport-into-perl (1.002005-2) ... Selecting previously unselected package librole-tiny-perl. Preparing to unpack .../053-librole-tiny-perl_2.002004-1_all.deb ... Unpacking librole-tiny-perl (2.002004-1) ... Selecting previously unselected package libsub-quote-perl. Preparing to unpack .../054-libsub-quote-perl_2.006008-1_all.deb ... Unpacking libsub-quote-perl (2.006008-1) ... Selecting previously unselected package libmoo-perl. Preparing to unpack .../055-libmoo-perl_2.005005-1_all.deb ... Unpacking libmoo-perl (2.005005-1) ... Selecting previously unselected package libencode-locale-perl. Preparing to unpack .../056-libencode-locale-perl_1.05-3_all.deb ... Unpacking libencode-locale-perl (1.05-3) ... Selecting previously unselected package libtimedate-perl. Preparing to unpack .../057-libtimedate-perl_2.3300-2_all.deb ... Unpacking libtimedate-perl (2.3300-2) ... Selecting previously unselected package libhttp-date-perl. Preparing to unpack .../058-libhttp-date-perl_6.06-1_all.deb ... Unpacking libhttp-date-perl (6.06-1) ... Selecting previously unselected package libfile-listing-perl. Preparing to unpack .../059-libfile-listing-perl_6.16-1_all.deb ... Unpacking libfile-listing-perl (6.16-1) ... Selecting previously unselected package libhtml-tagset-perl. Preparing to unpack .../060-libhtml-tagset-perl_3.24-1_all.deb ... Unpacking libhtml-tagset-perl (3.24-1) ... Selecting previously unselected package liburi-perl. Preparing to unpack .../061-liburi-perl_5.30-1_all.deb ... Unpacking liburi-perl (5.30-1) ... Selecting previously unselected package libhtml-parser-perl:amd64. Preparing to unpack .../062-libhtml-parser-perl_3.83-1+b2_amd64.deb ... Unpacking libhtml-parser-perl:amd64 (3.83-1+b2) ... Selecting previously unselected package libhtml-tree-perl. Preparing to unpack .../063-libhtml-tree-perl_5.07-3_all.deb ... Unpacking libhtml-tree-perl (5.07-3) ... Selecting previously unselected package libclone-perl:amd64. Preparing to unpack .../064-libclone-perl_0.47-1+b1_amd64.deb ... Unpacking libclone-perl:amd64 (0.47-1+b1) ... Selecting previously unselected package libio-html-perl. Preparing to unpack .../065-libio-html-perl_1.004-3_all.deb ... Unpacking libio-html-perl (1.004-3) ... Selecting previously unselected package liblwp-mediatypes-perl. Preparing to unpack .../066-liblwp-mediatypes-perl_6.04-2_all.deb ... Unpacking liblwp-mediatypes-perl (6.04-2) ... Selecting previously unselected package libhttp-message-perl. Preparing to unpack .../067-libhttp-message-perl_7.00-2_all.deb ... Unpacking libhttp-message-perl (7.00-2) ... Selecting previously unselected package libhttp-cookies-perl. Preparing to unpack .../068-libhttp-cookies-perl_6.11-1_all.deb ... Unpacking libhttp-cookies-perl (6.11-1) ... Selecting previously unselected package libhttp-negotiate-perl. Preparing to unpack .../069-libhttp-negotiate-perl_6.01-2_all.deb ... Unpacking libhttp-negotiate-perl (6.01-2) ... Selecting previously unselected package perl-openssl-defaults:amd64. Preparing to unpack .../070-perl-openssl-defaults_7+b2_amd64.deb ... Unpacking perl-openssl-defaults:amd64 (7+b2) ... Selecting previously unselected package libnet-ssleay-perl:amd64. Preparing to unpack .../071-libnet-ssleay-perl_1.94-3_amd64.deb ... Unpacking libnet-ssleay-perl:amd64 (1.94-3) ... Selecting previously unselected package libio-socket-ssl-perl. Preparing to unpack .../072-libio-socket-ssl-perl_2.089-1_all.deb ... Unpacking libio-socket-ssl-perl (2.089-1) ... Selecting previously unselected package libnet-http-perl. Preparing to unpack .../073-libnet-http-perl_6.23-1_all.deb ... Unpacking libnet-http-perl (6.23-1) ... Selecting previously unselected package liblwp-protocol-https-perl. Preparing to unpack .../074-liblwp-protocol-https-perl_6.14-1_all.deb ... Unpacking liblwp-protocol-https-perl (6.14-1) ... Selecting previously unselected package libtry-tiny-perl. Preparing to unpack .../075-libtry-tiny-perl_0.32-1_all.deb ... Unpacking libtry-tiny-perl (0.32-1) ... Selecting previously unselected package libwww-robotrules-perl. Preparing to unpack .../076-libwww-robotrules-perl_6.02-1_all.deb ... Unpacking libwww-robotrules-perl (6.02-1) ... Selecting previously unselected package libwww-perl. Preparing to unpack .../077-libwww-perl_6.78-1_all.deb ... Unpacking libwww-perl (6.78-1) ... Selecting previously unselected package patchutils. Preparing to unpack .../078-patchutils_0.4.2-1_amd64.deb ... Unpacking patchutils (0.4.2-1) ... Selecting previously unselected package gpgv. Preparing to unpack .../079-gpgv_2.4.7-15_amd64.deb ... Unpacking gpgv (2.4.7-15) ... Selecting previously unselected package sopv-gpgv. Preparing to unpack .../080-sopv-gpgv_0.1.4-1_all.deb ... Unpacking sopv-gpgv (0.1.4-1) ... Selecting previously unselected package wdiff. Preparing to unpack .../081-wdiff_1.2.2-9_amd64.deb ... Unpacking wdiff (1.2.2-9) ... Selecting previously unselected package devscripts. Preparing to unpack .../082-devscripts_2.25.10_all.deb ... Unpacking devscripts (2.25.10) ... Selecting previously unselected package rubygems-integration. Preparing to unpack .../083-rubygems-integration_1.19_all.deb ... Unpacking rubygems-integration (1.19) ... Selecting previously unselected package ruby-csv. Preparing to unpack .../084-ruby-csv_3.3.4-1_all.deb ... Unpacking ruby-csv (3.3.4-1) ... Selecting previously unselected package ruby-did-you-mean. Preparing to unpack .../085-ruby-did-you-mean_1.6.3-2_all.deb ... Unpacking ruby-did-you-mean (1.6.3-2) ... Selecting previously unselected package ruby-minitest. Preparing to unpack .../086-ruby-minitest_5.25.4-2_all.deb ... Unpacking ruby-minitest (5.25.4-2) ... Selecting previously unselected package ruby-net-telnet. Preparing to unpack .../087-ruby-net-telnet_0.2.0-1_all.deb ... Unpacking ruby-net-telnet (0.2.0-1) ... Selecting previously unselected package ruby-ruby2-keywords. Preparing to unpack .../088-ruby-ruby2-keywords_0.0.5-1_all.deb ... Unpacking ruby-ruby2-keywords (0.0.5-1) ... Selecting previously unselected package ruby-power-assert. Preparing to unpack .../089-ruby-power-assert_2.0.3-1_all.deb ... Unpacking ruby-power-assert (2.0.3-1) ... Selecting previously unselected package ruby-test-unit. Preparing to unpack .../090-ruby-test-unit_3.6.2-1_all.deb ... Unpacking ruby-test-unit (3.6.2-1) ... Selecting previously unselected package ruby-webrick. Preparing to unpack .../091-ruby-webrick_1.9.1-1_all.deb ... Unpacking ruby-webrick (1.9.1-1) ... Selecting previously unselected package ruby-xmlrpc. Preparing to unpack .../092-ruby-xmlrpc_0.3.3-2_all.deb ... Unpacking ruby-xmlrpc (0.3.3-2) ... Selecting previously unselected package libyaml-0-2:amd64. Preparing to unpack .../093-libyaml-0-2_0.2.5-2_amd64.deb ... Unpacking libyaml-0-2:amd64 (0.2.5-2) ... Selecting previously unselected package libruby3.3:amd64. Preparing to unpack .../094-libruby3.3_3.3.8-1_amd64.deb ... Unpacking libruby3.3:amd64 (3.3.8-1) ... Selecting previously unselected package ruby3.3. Preparing to unpack .../095-ruby3.3_3.3.8-1_amd64.deb ... Unpacking ruby3.3 (3.3.8-1) ... Selecting previously unselected package libruby:amd64. Preparing to unpack .../096-libruby_1%3a3.3+b1_amd64.deb ... Unpacking libruby:amd64 (1:3.3+b1) ... Selecting previously unselected package ruby-rubygems. Preparing to unpack .../097-ruby-rubygems_3.6.7-2_all.deb ... Unpacking ruby-rubygems (3.6.7-2) ... Selecting previously unselected package ruby. Preparing to unpack .../098-ruby_1%3a3.3+b1_amd64.deb ... Unpacking ruby (1:3.3+b1) ... Selecting previously unselected package rake. Preparing to unpack .../099-rake_13.2.1-1_all.deb ... Unpacking rake (13.2.1-1) ... Selecting previously unselected package gem2deb-test-runner. Preparing to unpack .../100-gem2deb-test-runner_2.2.5_amd64.deb ... Unpacking gem2deb-test-runner (2.2.5) ... Selecting previously unselected package libgmpxx4ldbl:amd64. Preparing to unpack .../101-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package libgmp-dev:amd64. Preparing to unpack .../102-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package ruby3.3-dev:amd64. Preparing to unpack .../103-ruby3.3-dev_3.3.8-1_amd64.deb ... Unpacking ruby3.3-dev:amd64 (3.3.8-1) ... Selecting previously unselected package ruby-all-dev:amd64. Preparing to unpack .../104-ruby-all-dev_1%3a3.3+b1_amd64.deb ... Unpacking ruby-all-dev:amd64 (1:3.3+b1) ... Selecting previously unselected package gem2deb. Preparing to unpack .../105-gem2deb_2.2.5_amd64.deb ... Unpacking gem2deb (2.2.5) ... Selecting previously unselected package ruby-diff-lcs. Preparing to unpack .../106-ruby-diff-lcs_1.5.1-1_all.deb ... Unpacking ruby-diff-lcs (1.5.1-1) ... Selecting previously unselected package ruby-rspec-support. Preparing to unpack .../107-ruby-rspec-support_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-support (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-core. Preparing to unpack .../108-ruby-rspec-core_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-core (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-expectations. Preparing to unpack .../109-ruby-rspec-expectations_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-mocks. Preparing to unpack .../110-ruby-rspec-mocks_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec. Preparing to unpack .../111-ruby-rspec_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec (3.13.0c0e0m0s1-2) ... Setting up media-types (13.0.0) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up wdiff (1.2.2-9) ... Setting up libfile-which-perl (1.27-2) ... Setting up libnpth0t64:amd64 (1.8-3) ... Setting up ruby-ruby2-keywords (0.0.5-1) ... Setting up bsdextrautils (2.41-4) ... Setting up libgpg-error0:amd64 (1.51-4) ... Setting up libdynaloader-functions-perl (0.004-2) ... Setting up libclass-method-modifiers-perl (2.15-1) ... Setting up ruby-power-assert (2.0.3-1) ... Setting up libmagic-mgc (1:5.46-5) ... Setting up libclone-perl:amd64 (0.47-1+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:amd64 (0.2.5-2) ... Setting up libhtml-tagset-perl (3.24-1) ... Setting up libdebhelper-perl (13.24.2) ... Setting up liblwp-mediatypes-perl (6.04-2) ... Setting up libmagic1t64:amd64 (1:5.46-5) ... Setting up libtry-tiny-perl (0.32-1) ... Setting up perl-openssl-defaults:amd64 (7+b2) ... Setting up gettext-base (0.23.1-1) ... Setting up m4 (1.4.19-8) ... Setting up libgcrypt20:amd64 (1.11.0-7) ... Setting up libencode-locale-perl (1.05-3) ... Setting up file (1:5.46-5) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up tzdata (2025b-2) ... Current default time zone: 'Etc/UTC' Local time is now: Wed May 27 09:13:24 UTC 2026. Universal Time is now: Wed May 27 09:13:24 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up ruby-minitest (5.25.4-2) ... Setting up autotools-dev (20240727.1) ... Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Setting up ruby-test-unit (3.6.2-1) ... Setting up ruby-net-telnet (0.2.0-1) ... Setting up ruby-csv (3.3.4-1) ... Setting up libunistring5:amd64 (1.3-2) ... Setting up libio-html-perl (1.004-3) ... Setting up autopoint (0.23.1-1) ... Setting up libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Setting up autoconf (2.72-3.1) ... Setting up ruby-rspec-support (3.13.0c0e0m0s1-2) ... Setting up libtimedate-perl (2.3300-2) ... Setting up ruby-webrick (1.9.1-1) ... Setting up libffi8:amd64 (3.4.8-1) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.25) ... Setting up gpgv (2.4.7-15) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up libassuan9:amd64 (3.0.2-2) ... Setting up librole-tiny-perl (2.002004-1) ... Setting up netbase (6.5) ... Setting up libsub-quote-perl (2.006008-1) ... Setting up libclass-xsaccessor-perl (1.19-4+b5) ... Setting up ruby-did-you-mean (1.6.3-2) ... Setting up libfile-dirlist-perl (0.05-3) ... Setting up libfile-homedir-perl (1.006-2) ... Setting up openssl (3.5.0-1) ... Setting up readline-common (8.2-6) ... Setting up ruby-xmlrpc (0.3.3-2) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Setting up liburi-perl (5.30-1) ... Setting up libfile-touch-perl (0.12-2) ... Setting up libnet-ssleay-perl:amd64 (1.94-3) ... Setting up automake (1:1.17-4) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode Setting up libksba8:amd64 (1.6.7-2+b1) ... Setting up pinentry-curses (1.3.1-2) ... Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... Setting up libhttp-date-perl (6.06-1) ... Setting up gettext (0.23.1-1) ... Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Setting up libfile-listing-perl (6.16-1) ... Setting up libtool (2.5.4-4) ... Setting up libnet-http-perl (6.23-1) ... Setting up libdevel-callchecker-perl:amd64 (0.009-2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up patchutils (0.4.2-1) ... Setting up ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 150 added, 0 removed; done. Setting up libreadline8t64:amd64 (8.2-6) ... Setting up dh-strip-nondeterminism (1.14.1-2) ... Setting up libwww-robotrules-perl (6.02-1) ... Setting up groff-base (1.23.0-7) ... Setting up libhtml-parser-perl:amd64 (3.83-1+b2) ... Setting up gpgconf (2.4.7-15) ... Setting up libpython3.13-stdlib:amd64 (3.13.3-2) ... Setting up libio-socket-ssl-perl (2.089-1) ... Setting up gpg (2.4.7-15) ... Setting up libpython3-stdlib:amd64 (3.13.3-1) ... Setting up libhttp-message-perl (7.00-2) ... Setting up libhttp-negotiate-perl (6.01-2) ... Setting up gpg-agent (2.4.7-15) ... Setting up libhttp-cookies-perl (6.11-1) ... Setting up python3.13 (3.13.3-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libhtml-tree-perl (5.07-3) ... Setting up libparams-classify-perl:amd64 (0.015-2+b4) ... Setting up python3 (3.13.3-1) ... Setting up rubygems-integration (1.19) ... Setting up sopv-gpgv (0.1.4-1) ... update-alternatives: using /usr/bin/sopv-gpgv to provide /usr/bin/sopv (sopv) in auto mode Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up libmodule-runtime-perl (0.017-1) ... Setting up libimport-into-perl (1.002005-2) ... Setting up libmoo-perl (2.005005-1) ... Setting up debhelper (13.24.2) ... Setting up rake (13.2.1-1) ... Setting up liblwp-protocol-https-perl (6.14-1) ... Setting up libwww-perl (6.78-1) ... Setting up libruby3.3:amd64 (3.3.8-1) ... Setting up ruby-rubygems (3.6.7-2) ... Setting up devscripts (2.25.10) ... Setting up ruby3.3-dev:amd64 (3.3.8-1) ... Setting up ruby3.3 (3.3.8-1) ... Setting up libruby:amd64 (1:3.3+b1) ... Setting up ruby-all-dev:amd64 (1:3.3+b1) ... Setting up ruby (1:3.3+b1) ... Setting up ruby-rspec-core (3.13.0c0e0m0s1-2) ... Setting up ruby-diff-lcs (1.5.1-1) ... Setting up gem2deb-test-runner (2.2.5) ... Setting up ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Setting up ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Setting up gem2deb (2.2.5) ... Setting up ruby-rspec (3.13.0c0e0m0s1-2) ... Processing triggers for libc-bin (2.41-7) ... Processing triggers for ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/ruby-semantic-puppet-1.1.0/ && 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-semantic-puppet_1.1.0-1_source.changes dpkg-buildpackage: info: source package ruby-semantic-puppet dpkg-buildpackage: info: source version 1.1.0-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Jérôme Charaoui dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --buildsystem=ruby --with ruby dh_auto_clean -O--buildsystem=ruby dh_ruby --clean dh_autoreconf_clean -O--buildsystem=ruby dh_clean -O--buildsystem=ruby debian/rules binary dh binary --buildsystem=ruby --with ruby dh_update_autotools_config -O--buildsystem=ruby dh_autoreconf -O--buildsystem=ruby dh_auto_configure -O--buildsystem=ruby dh_ruby --configure dh_auto_build -O--buildsystem=ruby dh_ruby --build dh_auto_test -O--buildsystem=ruby dh_ruby --test create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=ruby dh_prep -O--buildsystem=ruby dh_auto_install --destdir=debian/ruby-semantic-puppet/ -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet ┌──────────────────────────────────────────────────────────────────────────────┐ │ ruby-semantic-puppet: Installing files and building extensions for ruby3.3 │ └──────────────────────────────────────────────────────────────────────────────┘ /usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20260526-1821003-5pysn/gemspec WARNING: open-ended dependency on rake (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on rspec (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on simplecov (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on cane (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on yard (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on redcarpet (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: See https://guides.rubygems.org/specification-reference/ for help Successfully built RubyGem Name: semantic_puppet Version: 1.1.0 File: semantic_puppet-1.1.0.gem /usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-semantic-puppet/usr/share/rubygems-integration/all /tmp/d20260526-1821003-5pysn/semantic_puppet-1.1.0.gem /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph_node.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/module_release.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/source.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/unsatisfiable_graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/gem_version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version_range.rb Successfully installed semantic_puppet-1.1.0 1 gem installed cd debian/ruby-semantic-puppet/usr/share/rubygems-integration/all rm -rf bin rm -rf build_info rm -rf cache rm -rf doc rm -rf extensions rmdir plugins cd gems/semantic_puppet-1.1.0 rm -f chmod 644 lib/semantic_puppet/dependency/graph.rb lib/semantic_puppet/dependency/graph_node.rb lib/semantic_puppet/dependency/module_release.rb lib/semantic_puppet/dependency/source.rb lib/semantic_puppet/dependency/unsatisfiable_graph.rb lib/semantic_puppet/dependency.rb lib/semantic_puppet/gem_version.rb lib/semantic_puppet/version.rb lib/semantic_puppet/version_range.rb lib/semantic_puppet.rb find lib/ -type d -empty -delete cd - cd - dh_installchangelogs -pruby-semantic-puppet /build/reproducible-path/ruby-semantic-puppet-1.1.0/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-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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\ \"semantic_puppet\" ┌──────────────────────────────────────────────────────────────────────────────┐ │ Run tests for ruby3.3 from debian/ruby-tests.rake │ └──────────────────────────────────────────────────────────────────────────────┘ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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 /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 Run options: include {:focus=>true} All examples were filtered out; ignoring {:focus=>true} Randomized with seed 31987 SemanticPuppet::Dependency::UnsatisfiableGraph #sentence_from_list with a list of three items is expected to eql "foo, bar, and baz" with a list of two items is expected to eql "foo and bar" with a list of more than three items is expected to eql "foo, bar, baz, and quux" with a list of one item is expected to eql "foo" #message is expected to match /foo, bar, and baz/ SemanticPuppet::Version .parse Spec v2.0.0 Section 2 permits zeroes in version number parts rejects versions that contain too many parts rejects version numbers containing leading zeroes rejects versions that contain negative integers rejects versions that contain too few parts rejects versions that contain non-integers examples 1.11.0 1.10.0 1.9.0 Section 9 rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions rejects empty prerelease version identifiers rejects numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero examples 1.0.0-alpha.1 1.0.0-0.3.7 1.0.0-x.7.z.92 1.0.0-alpha Section 10 rejects build identifiers with non-alphanumerics rejects empty build identifiers permits numeric build identifiers with leading zeroes rejects empty build metadata permits numeric build identifiers of zero permits non-numeric build identifiers with leading zeroes examples 1.0.0-beta+exp.sha.5114f85 1.0.0-alpha+001 1.0.0+20130313144700 Spec v1.0.0 Section 4 rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions permits numeric prerelease identifiers of zero rejects numeric prerelease identifiers with leading zeroes examples 1.0.0-rc1 1.0.0-alpha1 1.0.0-beta2 1.0.0-beta1 Section 2 rejects versions that contain non-integers permits zeroes in version number parts rejects versions that contain too many parts rejects versions that contain too few parts examples 1.11.0 1.10.0 1.9.0 #== should yield false when the minor differs should yield true when comparing two equal instances should yield false when the patch differs should yield false when the major differs should yield false when the prerelease differs should yield false when compared to something that is not a Version #<=> Spec v2.0.0 Section 11 comparisons without prereleases sorted order comparisions between prereleases identical prereleases are equal numeric identifiers sort numerically build metadata does not figure into precendence non-numeric identifiers sort ASCIIbetically build metadata does figure into equality sorted order identifiers are parsed left-to-right larger identifier sets have precendence non-numeric identifiers have a higher precendence comparisons against prereleases prereleases have lower precedence Spec v1.0.0 Section 4 sorted order .valid? Spec v2.0.0 Section 10 permits numeric build identifiers of zero permits non-numeric build identifiers with leading zeroes permits numeric build identifiers with leading zeroes rejects empty build metadata rejects build identifiers with non-alphanumerics rejects empty build identifiers Section 9 rejects empty prerelease version identifiers rejects empty prerelease versions rejects numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero permits non-numeric prerelease identifiers rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes Section 2 rejects versions that contain non-integers rejects versions that contain too many parts permits zeroes in version number parts rejects versions that contain negative integers rejects version numbers containing leading zeroes rejects versions that contain too few parts Spec v1.0.0 Section 2 rejects versions that contain too many parts rejects versions that contain too few parts rejects versions that contain non-integers permits zeroes in version number parts Section 4 rejects empty prerelease versions rejects prerelease identifiers with non-alphanumerics permits numeric prerelease identifiers of zero rejects numeric prerelease identifiers with leading zeroes permits non-numeric prerelease identifiers with leading zeroes #next with :major removes any prerelease information returns the next major version removes any build information does not modify the original version resets the minor and patch versions to 0 with :minor returns the next minor version removes any build information does not modify the original version removes any prerelease information resets the patch version to 0 with :patch returns the next patch version removes any build information removes any prerelease information does not modify the original version SemanticPuppet::Dependency::GraphNode #populate_children saves all relevant nodes as its children accepts a graph solution and populates it across all nodes #<=> can be compared dependencies are added by #add_dependency are maintained in the #dependencies Hash #satisfied is unsatisfied when any dependencies are missing is unsatisfied when no nodes have been appended is satisfied when all dependencies are fulfilled #<< appends satisfying nodes to the dependencies sorts the dependencies for each addition to the same node sorts once the dependencies for a specific node does not append unsatisfying nodes does not append nodes with unknown names SemanticPuppet::Dependency::Graph #initialize can be called without arguments adds the named dependencies for every key in the passed hash implements the GraphNode protocol adds constraints for every key in the passed hash #satisfies_graph? returns false if the solution violates any graph constraint returns false if the solution violates a graph constraint returns true if the solution violates no graph constraints #add_graph_constraint permits multiple graph constraints can create a new constraint on a graph #satisfies_dependency? is satisfied by modules that do fulfill all the constraints is not satisfied by modules that do not fulfill all the constraints is not satisfied by modules that do not fulfill the constraint is not satisfied by modules it does not depend on #add_constraint permits multiple constraints against the same module name can create a new constraint on a module SemanticPuppet::Dependency .resolve that violate graph constraints that can be resolved terminates that cannot be resolved fails with an appropriate message for a module with dependencies that violate module constraints on the graph that cannot be resolved fails with an appropriate message that can be resolved terminates for a module with dependencies returns the greatest releases matching the dependency range when the dependency has both stable and prerelease versions returns the greatest stable release matching the range when the dependency has no stable versions returns the greatest prerelease version matching the range when the dependency cannot be satisfied fails with an appropriate message sets unsatisfiable for a module without dependencies returns the greatest release matching the version range when the query includes both stable and prerelease versions returns the greatest stable release matching the range when the query omits all stable versions returns the greatest prerelease version matching the range when the query omits all versions fails with an appropriate message for a module with circular dependencies that can be resolved terminates that cannot be resolved fails with an appropriate message for a module with competing dependencies that overlap returns the greatest release satisfying all dependencies that do not overlap fails with an appropriate message .query with one source populates the returned ModuleRelease with related dependencies populates all returned ModuleReleases with related dependencies returns a ModuleRelease with the requested dependencies queries the source for each dependency queries the source for release information queries the source for each dependency only once with multiple sources queries each source in turn resolves all dependencies against all sources without sources returns an unsatisfied ModuleRelease .sources can be emptied by using #clear_sources is frozen can be modified by using #add_source defaults to an empty list SemanticPuppet::Dependency::ModuleRelease #== can compare a release with something that is not a release considers two equal releases to be equal considers two releases with different versions to be different considers two releases with different names to be different considers a release different from something that is not a release #to_s is expected to =~ /foobarbaz/ is expected to =~ /1.2.3/ #satisfied? returns false when no dependencies have been satisified returns true when there are no dependencies to satisfy returns false when not all dependency versions have been satisified returns true when all dependencies have been satisified returns false when not all dependencies have been satisified #<< does not mark mis-matching dependency versions as satisfied does not mark mis-matching dependency names as satisfied marks matching dependencies as satisfied #dependency_names lists the names of all the release's dependencies #satisfies_dependency? returns true when the release matches the dependency returns false when the release does not match the dependency name returns false when the release does not match the dependency version returns false when there are no dependencies to satisfy #<=> considers releases with greater version numbers greater orders releases by name first orders releases with different names lexographically considers releases with lesser version numbers lesser SemanticPuppet::VersionRange #intersection cannot intersect with non-VersionRanges is commutative between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 between 10.0.0 - 5.0.0 & 6.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & >=7.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 4.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & >=5.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 10.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 9.0.0 between 10.0.0 - 5.0.0 & >=10.0.0 <5.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 11.0.0 between >=10.0.0 <5.0.0 & >=5.0.0 <1.0.0 between 10.0.0 - 5.0.0 & >=7.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 11.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 10.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 9.0.0 between 10.0.0 - 5.0.0 & 11.0.0 - 4.0.0 between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 11.0.0 - 4.0.0 between 10.0.0 - 5.0.0 & 10.0.0 - 5.0.0 between 10.0.0 - 5.0.0 & 4.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 between >=10.0.0 <5.0.0 & 10.0.0 - 5.0.0 between >=10.0.0 <5.0.0 & 6.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 between >=10.0.0 <5.0.0 & 5.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 6.0.0 - 1.0.0 11.0.0 - 4.0.0 10.0.0 - 5.0.0 >=10.0.0 <5.0.0 4.0.0 - 1.0.0 >=7.0.0 <1.0.0 >=5.0.0 <1.0.0 5.0.0 - 1.0.0 15.0.0 - 9.0.0 15.0.0 - 11.0.0 15.0.0 - 10.0.0 between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 15.0.0 - 11.0.0 15.0.0 - 10.0.0 10.0.0 - 5.0.0 4.0.0 - 1.0.0 5.0.0 - 1.0.0 6.0.0 - 1.0.0 >=7.0.0 <1.0.0 >=5.0.0 <1.0.0 >=10.0.0 <5.0.0 15.0.0 - 9.0.0 11.0.0 - 4.0.0 .parse ored expressions adjacent "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.5 parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.3 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.5-0 returns nil on exclude_end? parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.5 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.3-0 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 returns nil on exclude_begin? ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 returns expected begin returns nil on end ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.3-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 "1.2.3 || 1.2.4 || 1.2.5" stringifies as >=1.2.3 <=1.2.5 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.5-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.3 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 overlapping ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.4-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 ">=1.2.3 || 1.2.5" excludes 1.2.4-0 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.4 ">=1.2.3 || 1.2.5" excludes 1.2.3-0 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.3-0 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.3 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 ">=1.2.3 || 1.2.5" includes 1.2.4 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 ">=1.2.3 || 1.2.5" includes 1.2.3 ">=1.2.3 || 1.2.5" stringifies as >=1.2.3 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 non-overlapping "1.2.3 || 1.2.5" excludes 1.2.5-0 "1.2.3 || 1.2.5" includes 1.2.5 "1.2.3 || 1.2.5" excludes 1.2.4 "1.2.3 || 1.2.5" excludes 1.2.3-0 returns nil on begin "1.2.3 || 1.2.5" stringifies as 1.2.3 || 1.2.5 parse("1.2.3 || 1.2.5").to_s excludes 1.2.5-0 parse("1.2.3 || 1.2.5").to_s includes 1.2.5 returns nil on exclude_begin? parse("1.2.3 || 1.2.5").to_s excludes 1.2.4 parse("1.2.3 || 1.2.5").to_s includes 1.2.3 returns nil on exclude_end? "1.2.3 || 1.2.5" includes 1.2.3 returns nil on end parse("1.2.3 || 1.2.5").to_s excludes 1.2.3-0 unioned expressions "1 <=1.2.5" excludes 1.0.0-0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 3.0.0 parse("1.2 <1.2.5").to_s excludes 1.2.5-0 "1.2 <1.2.5" excludes 1.1.999 parse("1 <=1.2.5").to_s excludes 1.2.6-0 parse("1 <=1.2.5").to_s excludes 1.0.0-0 "1.2 <1.2.5" includes 1.2.4 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" stringifies as >=3.0.0 <5.0.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 4.999.999 "<1.0.0 >2.0.0" excludes 0.0.0-0 "1.2 <1.2.5" excludes 1.2.5-0 parse("1.2 <1.2.5").to_s includes 1.2.0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 4.999.999 parse("1.2 <1.2.5").to_s excludes 1.1.999 "<1.0.0 >2.0.0" stringifies as <0.0.0 parse("1 <=1.2.5").to_s includes 1.0.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 5.0.0-0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 5.0.0-0 "1 <=1.2.5" includes 1.0.0 "1 <=1.2.5" stringifies as >=1.0.0 <=1.2.5 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 3.0.0-0 "1 <=1.2.5" excludes 1.9.0 parse("1.2 <1.2.5").to_s excludes 1.2.0-0 "1.2 <1.2.5" excludes 1.2.0-0 parse("1.2 <1.2.5").to_s excludes 1.9.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 3.0.0-0 "1.2 <1.2.5" excludes 1.9.0 "1 <=1.2.5" includes 1.2.5 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 2.999.999 "<1.0.0 >2.0.0" excludes 0.0.0 "1.2 <1.2.5" stringifies as >=1.2.0 <1.2.5 "1.2 <1.2.5" includes 1.2.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 2.999.999 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0-0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 3.0.0 parse("1 <=1.2.5").to_s includes 1.2.5 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0 parse("1 <=1.2.5").to_s excludes 0.999.999 "1 <=1.2.5" excludes 0.999.999 "1 <=1.2.5" excludes 1.2.6-0 parse("1.2 <1.2.5").to_s includes 1.2.4 parse("1 <=1.2.5").to_s excludes 1.9.0 inclusive range expressions "1.2.3 - 1.3.4-alpha" excludes 1.2.2 "1.2.3-alpha - 1.3.4" includes 1.2.3-alpha "1.2.3-alpha - 1.3.4-alpha" includes 1.2.3-alpha "1.2.3 - 1.3.4-alpha" excludes 1.2.3-0 "1.2.3-alpha - 1.3.4" stringifies as >=1.2.3-alpha <=1.3.4 parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.3.4-alpha "1.2.3 - 1.3.4-alpha" includes 1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s excludes 1.3.5-0 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.5 parse("1.2.3 - 1.3.4").to_s excludes 1.3.5-0 parse("1.2.3 - 1.3.4").to_s excludes 1.2.2 "1.2.3 - 1.3.4" stringifies as >=1.2.3 <=1.3.4 "1.2.3 - 1.3.4-alpha" stringifies as >=1.2.3 <=1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s excludes 1.2.3-alph "1.2.3 - 1.3.4-alpha" includes 1.2.3 parse("1.2.3 - 1.3.4").to_s excludes 1.2.3-0 "1.2.3-alpha - 1.3.4-alpha" stringifies as >=1.2.3-alpha <=1.3.4-alpha parse("1.2.3-alpha - 1.3.4").to_s includes 1.3.4 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4").to_s includes 1.3.4 "1.2.3 - 1.3.4-alpha" excludes 1.3.5 "1.2.3-alpha - 1.3.4-alpha" excludes 1.2.3-alph parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.2 "1.2.3-alpha - 1.3.4-alpha" includes 1.3.4-alpha "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.5 parse("1.2.3-alpha - 1.3.4").to_s includes 1.2.3-alpha "1.2.3 - 1.3.4" excludes 1.3.5-0 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.5 "1.2.3 - 1.3.4" includes 1.3.4 "1.2.3 - 1.3.4" excludes 1.2.3-0 parse("1.2.3 - 1.3.4").to_s includes 1.2.3 "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s includes 1.2.3 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.2.3-alph "1.2.3 - 1.3.4" excludes 1.2.2 "1.2.3-alpha - 1.3.4" excludes 1.3.5-0 parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.2.3-alpha parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.3-0 "1.2.3-alpha - 1.3.4" excludes 1.2.3-alph "1.2.3 - 1.3.4" includes 1.2.3 "1.2.3 - 1.3.4-alpha" excludes 1.3.4-alpha0 parse("1.2.3 - 1.3.4-alpha").to_s includes 1.3.4-alpha "1.2.3-alpha - 1.3.4" includes 1.3.4 "reasonably close" expressions parse("~ 1.2").to_s includes 1.2.0 "~ 1" stringifies as >=1.0.0 <2.0.0 parse("~ 1").to_s includes 1.0.0 parse("~1").to_s includes 1.999.999 "~1.2.3" stringifies as >=1.2.3 <1.3.0 parse("~ 1.2.3").to_s excludes 1.3.0-0 parse("~ 1.2.3-alpha").to_s includes 1.2.3 "~ 1.2.3-alpha" includes 1.2.3 "~1" excludes 0.999.999 "~ 1.2" excludes 1.2.0-0 "~ 1" excludes 0.999.999 parse("~1.2").to_s excludes 1.1.999 "~1.2" includes 1.2.0 "~ 1.2.3" excludes 1.2.2 parse("~1.2.3").to_s excludes 1.2.2 "~ 1.2.3-alpha" excludes 1.2.4-0 parse("~ 1").to_s includes 1.999.999 "~ 1.2" includes 1.2.999 parse("~ 1.2.3").to_s includes 1.2.3 parse("~1.2.3-alpha").to_s excludes 1.2.4-0 parse("~1").to_s excludes 2.0.0-0 parse("~ 1.2.3").to_s excludes 1.2.2 parse("~1").to_s includes 1.0.0 "~ 1.2.3" excludes 1.3.0-0 parse("~ 1.2.3-alpha").to_s includes 1.2.3-alpha parse("~1.2.3-alpha").to_s includes 1.2.3-alpha "~1.2" excludes 1.3.0-0 "~ 1.2" includes 1.2.0 parse("~ 1.2").to_s includes 1.2.999 parse("~1.2.3").to_s includes 1.2.5 parse("~1.2.3-alpha").to_s excludes 1.2.3-alph "~ 1" excludes 1.0.0-0 parse("~1.2").to_s includes 1.2.0 parse("~ 1").to_s excludes 1.0.0-0 "~1.2" stringifies as >=1.2.0 <1.3.0 "~ 1.2.3" includes 1.2.3 "~1" includes 1.0.0 parse("~1.2.3").to_s excludes 1.2.3-0 parse("~1.2.3").to_s excludes 1.3.0-0 "~1" excludes 2.0.0-0 "~ 1" includes 1.0.0 "~1.2.3-alpha" excludes 1.2.4-0 "~1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 "~ 1.2.3-alpha" includes 1.2.3-alpha "~1.2" excludes 1.2.0-0 "~ 1.2.3-alpha" excludes 1.2.3-alph parse("~1.2").to_s excludes 1.2.0-0 "~ 1.2.3" stringifies as >=1.2.3 <1.3.0 parse("~1.2.3-alpha").to_s includes 1.2.3 parse("~ 1.2").to_s excludes 1.1.999 "~1" includes 1.999.999 parse("~1.2.3").to_s includes 1.2.3 "~1.2.3-alpha" includes 1.2.3-alpha "~1.2.3-alpha" excludes 1.2.3-alph "~ 1.2" excludes 1.1.999 "~1.2.3" excludes 1.2.2 "~1.2.3-alpha" includes 1.2.3 "~ 1" excludes 2.0.0-0 "~1.2" includes 1.2.999 parse("~ 1.2").to_s excludes 1.3.0-0 "~ 1.2" stringifies as >=1.2.0 <1.3.0 "~ 1.2" excludes 1.3.0-0 "~1.2.3" excludes 1.3.0-0 parse("~ 1").to_s excludes 2.0.0-0 "~ 1.2.3" includes 1.2.5 parse("~1.2").to_s includes 1.2.999 parse("~ 1.2.3-alpha").to_s excludes 1.2.4-0 "~1" excludes 1.0.0-0 "~1.2.3" includes 1.2.3 "~1.2.3" includes 1.2.5 parse("~ 1.2.3").to_s includes 1.2.5 "~ 1" includes 1.999.999 parse("~1.2").to_s excludes 1.3.0-0 parse("~ 1").to_s excludes 0.999.999 parse("~1").to_s excludes 1.0.0-0 parse("~ 1.2.3").to_s excludes 1.2.3-0 "~ 1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 "~1.2" excludes 1.1.999 "~ 1.2.3" excludes 1.2.3-0 "~1" stringifies as >=1.0.0 <2.0.0 parse("~1").to_s excludes 0.999.999 parse("~ 1.2.3-alpha").to_s excludes 1.2.3-alph "~1.2.3" excludes 1.2.3-0 parse("~ 1.2").to_s excludes 1.2.0-0 open-ended expressions "<1.2.3-alpha" includes 1.2.3-alph "< 1.2.3" includes 1.2.2 "<=1.2.3-alpha" includes 0.0.0 "<= 1.2.3" stringifies as <=1.2.3 parse(">1.2.3").to_s excludes 1.2.4-0 "< 1.2.3-alpha" excludes 1.2.3-alpha "<1.2.3" excludes 2.0.0 "<= 1.2.3" excludes 0.0.0-0 parse("< 1.2.3-alpha").to_s excludes 1.2.3-alpha "<= 1.2.3-alpha" includes 0.0.0 "<1.2.3-alpha" includes 0.0.0 "<= 1.2.3-alpha" stringifies as <=1.2.3-alpha parse("<1.2.3").to_s excludes 2.0.0 "<1.2.3-alpha" excludes 0.0.0-0 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha.0 parse("< 1.2.3").to_s excludes 1.2.3-0 "> 1.2.3" excludes 1.2.3 parse("> 1.2.3-alpha").to_s includes 999.0.0 parse("> 1.2.3").to_s excludes 1.2.3 parse(">= 1.2.3").to_s excludes 1.2.2 parse("<= 1.2.3").to_s excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha0 ">=1.2.3" excludes 1.2.3-0 "<=1.2.3" excludes 1.2.3-0 "<1.2.3" stringifies as <1.2.3 "<=1.2.3" includes 1.2.3 parse("<=1.2.3-alpha").to_s includes 1.2.3-alpha "< 1.2.3" stringifies as <1.2.3 parse(">= 1.2.3").to_s excludes 1.2.3-0 parse("< 1.2.3-alpha").to_s includes 0.0.0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha0 "<= 1.2.3" excludes 1.2.3-0 ">= 1.2.3" excludes 1.2.2 ">1.2.3-alpha" includes 999.0.0 parse("<1.2.3-alpha").to_s includes 1.2.3-alph "> 1.2.3" includes 999.0.0 ">=1.2.3-alpha" includes 1.2.3-alpha "<=1.2.3-alpha" includes 1.2.3-alpha parse("<=1.2.3").to_s includes 0.0.0 "<= 1.2.3-alpha" excludes 1.2.3-alphb parse("< 1.2.3").to_s excludes 0.0.0-0 "<=1.2.3-alpha" excludes 1.2.3-alpha.0 parse("> 1.2.3").to_s excludes 1.2.4-0 ">1.2.3" stringifies as >1.2.3 ">=1.2.3" includes 999.0.0 parse("< 1.2.3-alpha").to_s includes 1.2.3-alph parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alphb "< 1.2.3-alpha" excludes 0.0.0-0 ">=1.2.3" stringifies as >=1.2.3 "> 1.2.3-alpha" includes 1.2.3-alpha.0 "<1.2.3" excludes 0.0.0-0 "<= 1.2.3-alpha" excludes 0.0.0-0 ">= 1.2.3" stringifies as >=1.2.3 "< 1.2.3" excludes 2.0.0 ">=1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3" excludes 1.2.4-0 parse("> 1.2.3").to_s includes 999.0.0 "<=1.2.3-alpha" stringifies as <=1.2.3-alpha "< 1.2.3" excludes 0.0.0-0 ">1.2.3-alpha" includes 1.2.3-alpha0 "> 1.2.3-alpha" stringifies as >1.2.3-alpha parse(">1.2.3").to_s excludes 1.2.3 parse("<=1.2.3-alpha").to_s excludes 0.0.0-0 parse("< 1.2.3").to_s includes 1.2.2 parse("<1.2.3").to_s excludes 0.0.0-0 parse("<1.2.3-alpha").to_s includes 0.0.0 parse("<= 1.2.3").to_s includes 1.2.3 ">1.2.3-alpha" stringifies as >1.2.3-alpha parse("> 1.2.3-alpha").to_s excludes 1.2.3-alpha parse(">= 1.2.3").to_s includes 999.0.0 "<= 1.2.3" includes 1.2.3 ">1.2.3" excludes 1.2.3 parse("<1.2.3-alpha").to_s excludes 2.0.0 ">=1.2.3-alpha" excludes 1.2.4-alpha parse("<= 1.2.3").to_s includes 0.0.0 parse(">=1.2.3").to_s excludes 1.2.3-0 "<1.2.3-alpha" stringifies as <1.2.3-alpha parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha "<= 1.2.3-alpha" includes 1.2.3-alpha parse("<=1.2.3").to_s includes 1.2.3 ">1.2.3" excludes 1.2.4-0 ">= 1.2.3-alpha" stringifies as >=1.2.3-alpha parse("<1.2.3-alpha").to_s excludes 0.0.0-0 parse("< 1.2.3-alpha").to_s excludes 0.0.0-0 parse("<1.2.3").to_s includes 0.0.0 parse(">=1.2.3-alpha").to_s excludes 1.2.4-alpha "<= 1.2.3" includes 0.0.0 ">1.2.3-alpha" includes 1.2.3-alpha.0 ">= 1.2.3" excludes 1.2.3-0 "<1.2.3" excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s includes 0.0.0 parse("< 1.2.3").to_s includes 0.0.0 "< 1.2.3-alpha" stringifies as <1.2.3-alpha parse("< 1.2.3-alpha").to_s excludes 2.0.0 "<=1.2.3" excludes 0.0.0-0 ">= 1.2.3-alpha" includes 1.2.3-alpha0 "< 1.2.3-alpha" includes 0.0.0 "< 1.2.3-alpha" excludes 2.0.0 "<1.2.3-alpha" excludes 1.2.3-alpha parse("< 1.2.3").to_s excludes 2.0.0 "<= 1.2.3-alpha" excludes 1.2.3-alpha0 "<=1.2.3-alpha" excludes 0.0.0-0 ">1.2.3-alpha" excludes 1.2.3-alpha "> 1.2.3-alpha" includes 999.0.0 "<=1.2.3" stringifies as <=1.2.3 "> 1.2.3" stringifies as >1.2.3 parse(">=1.2.3-alpha").to_s includes 999.0.0 ">= 1.2.3-alpha" includes 1.2.3-alpha "<= 1.2.3-alpha" excludes 1.2.3-alpha.0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alphb ">1.2.3" includes 999.0.0 parse(">=1.2.3").to_s excludes 1.2.2 ">=1.2.3-alpha" includes 999.0.0 parse(">= 1.2.3-alpha").to_s includes 999.0.0 "<=1.2.3" includes 0.0.0 ">=1.2.3-alpha" stringifies as >=1.2.3-alpha ">= 1.2.3" includes 999.0.0 parse("<1.2.3").to_s includes 1.2.2 parse("<=1.2.3").to_s excludes 0.0.0-0 parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha.0 parse(">= 1.2.3-alpha").to_s excludes 1.2.3-alph parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha0 "<1.2.3-alpha" excludes 2.0.0 parse(">= 1.2.3-alpha").to_s excludes 1.2.4-alpha "<1.2.3" includes 0.0.0 "<=1.2.3-alpha" excludes 1.2.3-alphb "<1.2.3" includes 1.2.2 parse("<= 1.2.3-alpha").to_s includes 0.0.0 "< 1.2.3-alpha" includes 1.2.3-alph parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha0 ">=1.2.3-alpha" excludes 1.2.3-alph "< 1.2.3" excludes 1.2.3-0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha.0 parse(">=1.2.3").to_s includes 999.0.0 parse("<= 1.2.3").to_s excludes 0.0.0-0 parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha0 parse("<1.2.3-alpha").to_s excludes 1.2.3-alpha parse("<=1.2.3").to_s excludes 1.2.3-0 parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha parse("<= 1.2.3-alpha").to_s includes 1.2.3-alpha parse("<= 1.2.3-alpha").to_s excludes 0.0.0-0 parse(">=1.2.3-alpha").to_s excludes 1.2.3-alph parse("<1.2.3").to_s excludes 1.2.3-0 parse(">1.2.3-alpha").to_s includes 999.0.0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha.0 ">=1.2.3" excludes 1.2.2 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha0 ">= 1.2.3-alpha" excludes 1.2.3-alph ">= 1.2.3-alpha" excludes 1.2.4-alpha "> 1.2.3-alpha" excludes 1.2.3-alpha ">= 1.2.3-alpha" includes 999.0.0 "<=1.2.3-alpha" excludes 1.2.3-alpha0 parse(">1.2.3-alpha").to_s excludes 1.2.3-alpha parse(">1.2.3").to_s includes 999.0.0 "< 1.2.3" includes 0.0.0 invalid expressions raise an appropriate exception loose version expressions "1.2.3-alpha" stringifies as 1.2.3-alpha "1.2.3-alpha" excludes 1.2.3-beta parse("1.2.3").to_s includes 1.2.3 "1.2" excludes 1.3.0-0 parse("1.2").to_s excludes 1.3.0-0 "1.2.X" excludes 1.2.0-alpha "1.2.x" includes 1.2.0 parse("1.X").to_s includes 1.0.0 "1" stringifies as >=1.0.0 <2.0.0 parse("1").to_s excludes 0.999.999 parse("1.2.x").to_s excludes 1.1.999 parse("1.2.3-alpha").to_s includes 1.2.3-alpha "1" includes 1.999.0 "1.2.x" excludes 1.3.0-0 "1.X" excludes 2.0.0-0 "1" includes 1.0.0 "1.x" stringifies as >=1.0.0 <2.0.0 "1.2.X" includes 1.2.999 "1.X" excludes 0.999.999 "1.2.3-alpha" excludes 1.2.3-999 "1.X" includes 1.999.0 "1.2" excludes 1.1.999 parse("1.X").to_s excludes 1.0.0-alpha "1.2.3" excludes 1.2.2 parse("1").to_s includes 1.999.0 "1.x" excludes 1.0.0-alpha parse("1.2.x").to_s excludes 1.3.0-0 parse("1.2.X").to_s excludes 1.3.0-0 parse("1.2.x").to_s includes 1.2.0 parse("1").to_s excludes 1.0.0-alpha "1" excludes 1.0.0-alpha "1.2" includes 1.2.999 "1.X" excludes 1.0.0-alpha "1.2.3" excludes 1.2.4-alpha "1.2.3-alpha" includes 1.2.3-alpha "1.x" excludes 0.999.999 "1.2.3" excludes 1.2.3-alpha parse("1.2.3-alpha").to_s excludes 1.2.3-beta "1.2.x" excludes 1.1.999 parse("1.x").to_s includes 1.0.0 "1.2" stringifies as >=1.2.0 <1.3.0 parse("1.X").to_s includes 1.999.0 parse("1.X").to_s excludes 0.999.999 "1.x" includes 1.999.0 "1.2.x" excludes 1.2.0-alpha parse("1.2.3-alpha").to_s excludes 1.2.3-999 "1.2.x" includes 1.2.999 parse("1.2.X").to_s excludes 1.2.0-alpha parse("1.2").to_s excludes 1.1.999 parse("1.2.3").to_s excludes 1.2.4-alpha parse("1.2.X").to_s excludes 1.1.999 parse("1.2.3").to_s excludes 1.2.2 parse("1.2.x").to_s excludes 1.2.0-alpha parse("1.2.3").to_s excludes 1.2.3-alpha parse("1").to_s includes 1.0.0 parse("1.x").to_s excludes 2.0.0-0 "1.2" excludes 1.2.0-alpha parse("1.2.x").to_s includes 1.2.999 parse("1.x").to_s excludes 0.999.999 parse("1.2").to_s includes 1.2.0 "1.2.X" includes 1.2.0 "1.x" includes 1.0.0 "1" excludes 0.999.999 "1.2.X" stringifies as >=1.2.0 <1.3.0 parse("1.2").to_s excludes 1.2.0-alpha "1" excludes 2.0.0-0 "1.X" stringifies as >=1.0.0 <2.0.0 parse("1.2.X").to_s includes 1.2.0 parse("1.x").to_s excludes 1.0.0-alpha "1.2.X" excludes 1.3.0-0 "1.X" includes 1.0.0 "1.2.x" stringifies as >=1.2.0 <1.3.0 "1.2" includes 1.2.0 "1.2.X" excludes 1.1.999 parse("1.2").to_s includes 1.2.999 parse("1.X").to_s excludes 2.0.0-0 "1.2.3" stringifies as 1.2.3 parse("1.2.X").to_s includes 1.2.999 "1.x" excludes 2.0.0-0 parse("1").to_s excludes 2.0.0-0 parse("1.x").to_s includes 1.999.0 "1.2.3" includes 1.2.3 The version 1.1.3 should be below range 2.x.x 1.9999.9999 should not be below range < 2.0.0 1.9999.9999 should not be above range <=2.0.0(<=2.0.0) 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 0.2.9 should not be below range < 2.0.0 0.6.0-asdf should be below range =0.7.x 0.2.4 should not be below range >=0.2.3 || <0.0.1 1.0.0-beta should not be below range ^1.0.0-alpha 0.0.0-0 should not be above range ^1(>=1.0.0 <2.0.0) 2.0.0 should be above range <2.0.0 3.2.9 should be above range <=2.0.0 3.1.3 should be above range 1.2.* || 2.* 5.0.0-0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 5.0.0-0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.0.0 should not be above range >=1(>=1.0.0) 3.1.3 should be above range 2.*.* 1.1.0 should not be above range >=1.0.0(>=1.0.0) 0.6.1-pre should be above range ~v0.5.4-pre 2.1.3 should not be below range 1.2.x || 2.x 1.2.3 should not be below range 1.2.x 1.1.0 should not be below range ~ 1.0 1.9999.9999 should not be below range <=2.0.0 1.0.1 should not be below range >=1.0.0 0.2.9 should not be below range <2.0.0 1.1.3 should be below range 1.2.* 1.0.2 should not be below range ~ 1.0 2.2.1 should be below range 2.3 0.6.0 should be above range ~v0.5.4-pre 1.9999.9999 should be below range 2 0.2.3 should be below range ~> 1 0.6.1-1 should not be below range ~0.6.1-1 1.0.0 should not be below range 1.0.0 2.0.0 should not be above range ^1.0.0 || ~2.0.1(>=1.0.0 <2.0.0 || >=2.0.1 <2.1.0) 1.1.3 should be below range 2.*.* 1.1.3 should be below range 1.2.* || 2.* 1.1.0 should not be below range >=1.0.0 0.8.0-asdf should be above range =0.7.x 0.7.0-asdf should be below range =0.7.x 1.1.0 should not be below range > 1.0.0 0.5.4 should not be below range ~v0.5.4-pre 1.2.3 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 2.0.0 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 2.4.0 should not be below range ~2.4 0.5.4 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 1.1.3 should be below range 1.2.* 1.2.3 should not be below range 0.1.20 || 1.2.4 1.2.9 should be below range >=2.0.0 2.5.0 should be above range ~2.4 1.0.0 should be above range <1 0.6.2 should be below range =0.7.x 2.3.1 should not be below range 2.3 2.0.0 should be below range >2.0.0 2.2.9 should be above range <=2.0.0 2.3.1 should not be above range 2.3(>=2.3.0 <2.4.0) 0.7.2 should be above range <0.7.x 0.2.3 should be below range ~1 1.2.3 should not be below range ~> 1 2.9999.9999 should be above range <2.0.0 1.2.3 should not be below range ~>1 0.2.3 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 0.5.4-alpha should be below range ~v0.5.4-pre 0.7.2 should not be below range =0.7.x 2.1.3 should not be below range 2.x.x 0.0.0 should be below range ~1.0 1.3.3 should be above range 1.2.* 2.5.0 should be above range ~2.4 0.6.0 should be below range >=0.7.x 1.9999.9999 should not be below range <= 2.0.0 1.0.0 should be below range 2.x.x 1.1.3 should be below range 1.2.x || 2.x 1.0.0 should not be above range >= 1(>=1.0.0) 0.7.0-asdf should be below range >=0.7.x 2.0.0 should not be above range ^3.0.0(>=3.0.0 <4.0.0) 1.2.1 should be above range < 1.2 0.0.1 should be below range 1.0.0 1.0.0 should be below range 1.2.x || 2.x 3.1.3 should be above range 2.x.x 1.0.1 should be above range 1.0.0 1.9999.9999 should not be above range <= 2.0.0(<=2.0.0) 1.0.0-beta should not be above range 1(>=1.0.0 <2.0.0) 1.2.1 should be below range ~1.2.2 1.9999.9999 should be below range >=2.0.0 2.1.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 1.2.3 should not be above range ~> 1(>=1.0.0 <2.0.0) 0.5.5 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 1.2.5 should be above range 0.1.20 || 1.2.4 2.4.2 should be above range 2.3 1.1.0 should be above range ~1.0 2.3.5 should be below range ~2.4 0.1.5 should be below range 0.1.20 || 1.2.4 2.4.5 should not be below range ~2.4 0.6.0 should be below range =0.7.x 2.4.0 should not be above range ~2.4(>=2.4.0 <2.5.0) 1.0.0 should not be below range >=1 0.2.4 should not be above range >=*(>=0.0.0) 2.0.0-beta should be above range 1 1.3.3 should be above range 1.2.* 0.2.9 should not be above range <=2.0.0(<=2.0.0) 1.2.3 should not be above range ~1(>=1.0.0 <2.0.0) 2.0.0 should not be below range <= 2.0.0 1.2.3 should not be above range *(*) 2.0.0-beta should be above range 1 0.1.97 should not be below range >=0.1.97 1.2.4 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 1.0.0 should not be below range >=1.0.0 0.2.4 should be below range ~>1 0.0.0-beta should be below range 1 3.5.0 should not be below range ^0.1.0 || ~3.0.1 || >4 <=5.0.0 0.7.0-asdf should not be above range =0.7.x(>=0.7.0 <0.8.0) 1.0.0 should not be below range =0.1.0 1.0.1 should not be above range >= 1.0.0(>=1.0.0) 1.2.3 should not be above range *(*) 0.7.0 should be above range <0.7.x 0.2.3 should be below range 1.0.0 - 2.0.0 0.2.9 should not be above range < 2.0.0(<2.0.0) 2.0.0 should be above range 1.0.0 1.2.0 should be above range <1.2 0.6.1-1 should not be above range ~0.6.1-1(>=0.6.1-1 <0.7.0) 0.2.5 should not be above range >0.2.3 >0.2.4 <=0.2.5(>0.2.4 <=0.2.5) 1.2.3 should not be above range 1.2.*(>=1.2.0 <1.3.0) 0.7.0-asdf should not be above range >=0.7.x(>=0.7.0) 0.2.3 should not be below range >=0.2.3 || <0.0.1 4.0.0 should be above range 1.2.* || 2.* 0.2.3 should be below range ~1 2.4.1 should be above range 2.3 1.0.0-beta.1 should be below range 1.0.0-beta.2 1.0.1 should not be below range >1.0.0 1.2.3 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 1.0.0-beta should be below range 2 1.9999.9999 should not be above range <2.0.0(<2.0.0) 2.0.0 should not be above range <=2.0.0(<=2.0.0) 1.1.0 should not be above range > 1.0.0(>1.0.0) 1.2.1 should be below range ~1.2.2 2.1.3 should not be above range 2.x.x(>=2.0.0 <3.0.0) 0.7.2 should not be above range >=0.7.x(>=0.7.0) 1.0.0 should be below range >1 1.3.4 should not be above range ||(*) 1.2.9 should be below range >=2.0.0 3.1.3 should be above range 1.2.x || 2.x 1.0.1 should not be below range >= 1.0.0 3.5.0 should not be above range ^0.1.0 || ~3.0.1 || >4 <=5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.0.2 should not be above range ~1.0(>=1.0.0 <1.1.0) 0.7.1-1 should be above range ~0.6.1-1 1.2.3 should not be above range ~>1(>=1.0.0 <2.0.0) 2.5.5 should be above range ~2.4 2.0.0 should not be below range 1.0.0 - 2.0.0 5.0.1 should be above range 2.*.* 0.1.97 should not be above range >=0.1.97(>=0.1.97) 2.1.3 should not be below range 2.*.* 3.0.0 should be above range 1.2.x || 2.x 1.0.0 should not be above range >= 1.0.0(>=1.0.0) 1.2.3 should not be below range * 1.0.1 should not be below range > 1.0.0 3.3.2 should be above range ~>3.2.1 1.2.1 should be below range > 1.2 1.0.0 should not be above range >=1.0.0(>=1.0.0) 0.8.2 should be above range =0.7.x 2.0.1 should be above range 1.0.0 - 2.0.0 1.0.0-beta should be above range <1 0.1.97 should not be above range >=0.1.97(>=0.1.97) 2.1.1 should be above range <=2.0.0 0.2.9 should not be above range <2.0.0(<2.0.0) 0.5.4-alpha should be below range ~v0.5.4-pre 0.2.9 should not be below range <= 2.0.0 3.2.2 should not be above range ~>3.2.1(>=3.2.1 <3.3.0) 1.0.0-beta should be below range 1 1.1.3 should be below range 1.2.x 0.2.4 should not be below range >=0.2.3 <=0.2.4 1.0.1 should not be above range >=1.0.0(>=1.0.0) 2.9999.9999 should be above range <=2.0.0 2.3.0 should be below range ~2.4 1.2.3 should not be above range x(*) 1.1.0 should not be below range >= 1.0.0 0.6.1-0 should be below range ~0.6.1-1 2.1.2 should not be above range 2(>=2.0.0 <3.0.0) 1.1.0 should not be below range >1.0.0 2.1.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.0.0 should not be above range <= 2.0.0(<=2.0.0) 1.1.1 should not be above range <1.2(<1.2.0) 1.0.1-beta1 should be above range 1.0.0 3.2.0 should be below range ~>3.2.1 0.2.4 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 1.2.3 should not be below range 1.2.* || 2.* 1.0.0-beta should not be below range ~1.0.0-alpha 1.0.1 should be below range 2.*.* 0.5.5 should not be below range ~v0.5.4-pre 1.0.2 should not be below range ~1.0 1.1.0 should be below range 1.2.x 1.1.0 should be above range ~ 1.0 1.1.1 should be below range >=2.0.0 3.2.2 should not be below range ~>3.2.1 1.3.3 should be above range 1.2.x 3.3.0 should be above range ~>3.2.1 0.2.3 should be below range ~>1 1.2.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.3.2 should be below range ~>3.2.1 1.0.1 should not be above range > 1.0.0(>1.0.0) 4.0.0 should not be below range ^3.0.0 1.0.0 should not be above range (*) 1.0.0 should not be below range >= 1.0.0 1.2.3 should not be below range 1.2.* || 2.* 1.0.0 should not be above range 1.0.0(1.0.0) 1.1.2 should be above range ~1.0 1.3.0 should be above range ~1.2.2 0.8.0 should be above range =0.7.x 1.2.3 should not be below range ~1 2.0.0 should be below range >2.0.0 2.2.2 should be below range 2.3 2.0.0 should not be below range ^1.0.0 || ~2.0.1 2.9.9 should not be below range 1.0.0 - 2.0.0 1.3.0 should be above range ~1.2.2 1.1.0 should not be above range >= 1.0.0(>=1.0.0) 1.2.0 should be below range >1.2 3.2.0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 1.0.0 should not be below range >= 1 1.3.0 should be above range 1.2.x 1.2.3 should not be below range 1.0.0 - 2.0.0 1.0.0 should be below range >=2.0.0 1.2.3 should not be below range 1.2.x || 2.x 0.0.1 should be below range 1.0.0 - 2.0.0 1.9999.9999 should not be below range <2.0.0 0.6.2 should be below range >=0.7.x 2.2.3 should be above range ~1 0.2.4 should not be above range >=0.2.3 <=0.2.4(>=0.2.3 <=0.2.4) 2.1.2 should not be below range 2 1.2.3 should not be above range 1.2.x(>=1.2.0 <1.3.0) 1.1.1 should not be below range <1.2 1.0.0-beta should be below range >1 0.9.9 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 0.7.2 should not be above range =0.7.x(>=0.7.0 <0.8.0) 1.1.0 should not be above range >1.0.0(>1.0.0) 1.2.3 should not be below range * 1.2.9 should be below range >2.0.0 2.1.3 should not be above range 2.*.*(>=2.0.0 <3.0.0) 1.0.0-beta should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 2.0.0 should not be below range <=2.0.0 1.0.0-beta should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 0.0.0 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 1.0.0-0 should be below range ^1 0.6.2 should not be above range <=0.7.x(<0.8.0) 3.0.0 should be above range 2.x.x 1.0.0-beta should be below range > 1 1.2.3 should not be below range 1.2.* 0.2.5 should not be below range >0.2.3 >0.2.4 <=0.2.5 2.2.9 should be above range <2.0.0 0.2.4 should not be below range >=* 0.1.0 should be below range ~ 1.0 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 2.2.3 should be above range ~1 0.6.2 should not be below range <=0.7.x 1.0.0 should be below range 2 0.0.0 should be below range 1.0.0 0.1.20 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 0.2.9 should not be below range <=2.0.0 1.2.4 should not be below range 0.1.20 || >1.2.4 1.2.3-foo should not be above range *(*) 0.7.2 should not be below range >=0.7.x 2.1.3 should not be below range 1.2.* || 2.* 2.4.5 should not be above range ~2.4(>=2.4.0 <2.5.0) 1.0.1 should not be above range >1.0.0(>1.0.0) 3.2.0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.9999.9999 should not be above range < 2.0.0(<2.0.0) 3.0.0 should be above range 2 1.3.4 should not be below range || 1.2.4 should not be below range 0.1.20 || 1.2.4 1.2.4 should not be above range 0.1.20 || >1.2.4(0.1.20 || >1.2.4) 0.1.2 should be below range ~1.0 2.2.4 should be above range ~>1 3.1.2 should be above range 2 0.1.20 should not be below range 0.1.20 || 1.2.4 2.3.0 should be below range ~2.4 1.1.9999 should be below range 1.2.* || 2.* 0.2.9 should not be above range <= 2.0.0(<=2.0.0) 0.0.0 should not be below range >=0.2.3 || <0.0.1 1.1.1 should not be below range < 1.2 3.0.0 should be above range <=2.0.0 2.2.3 should be above range ~>1 3.2.3 should be above range ~> 1 1.0.2 should not be above range ~ 1.0(>=1.0.0 <1.1.0) 1.0.0 should not be below range 2.2.3 should be above range 1.0.0 - 2.0.0 1.1.1 should not be above range < 1.2(<1.2.0) 1.2.3 should not be below range x 1.0.0-beta should be above range < 1 Finished in 0.31378 seconds (files took 0.19534 seconds to load) 988 examples, 0 failures Randomized with seed 31987 ┌──────────────────────────────────────────────────────────────────────────────┐ │ dh_ruby --install finished │ └──────────────────────────────────────────────────────────────────────────────┘ dh_installdocs -O--buildsystem=ruby dh_ruby_fixdocs -O--buildsystem=ruby debian/rules override_dh_installchangelogs make[1]: Entering directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installchangelogs CHANGELOG.md -O--buildsystem=ruby make[1]: Leaving directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installsystemduser -O--buildsystem=ruby dh_perl -O--buildsystem=ruby dh_link -O--buildsystem=ruby dh_strip_nondeterminism -O--buildsystem=ruby dh_compress -X.rb -O--buildsystem=ruby dh_fixperms -O--buildsystem=ruby dh_missing -O--buildsystem=ruby dh_ruby_fixdepends -O--buildsystem=ruby dh_installdeb -O--buildsystem=ruby dh_gencontrol -O--buildsystem=ruby dpkg-gencontrol: warning: Depends field of package ruby-semantic-puppet: substitution variable ${shlibs:Depends} used, but is not defined dh_md5sums -O--buildsystem=ruby dh_builddeb -O--buildsystem=ruby dpkg-deb: building package 'ruby-semantic-puppet' in '../ruby-semantic-puppet_1.1.0-1_all.deb'. dpkg-genbuildinfo --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.buildinfo dpkg-genchanges --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration 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/1808992 and its subdirectories I: Current time: Tue May 26 21:13:39 -12 2026 I: pbuilder-time-stamp: 1779873219 Thu Apr 24 02:50:41 UTC 2025 I: 1st build successful. Starting 2nd build on remote node ionos1-amd64.debian.net. Thu Apr 24 02:50:41 UTC 2025 I: Preparing to do remote build '2' on ionos1-amd64.debian.net. Thu Apr 24 02:50:41 UTC 2025 - checking /var/lib/jenkins/offline_nodes if ionos1-amd64.debian.net is marked as down. Thu Apr 24 02:50:41 UTC 2025 - checking via ssh if ionos1-amd64.debian.net is up. removed '/tmp/read-only-fs-test-fWzL1L' ==================================================================================== Thu Apr 24 02:50:43 UTC 2025 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos1-amd64, called using "2 ruby-semantic-puppet unstable /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9 1.1.0-1" as arguments. Thu Apr 24 02:50:43 UTC 2025 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-46SAMkDp" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Thu Apr 24 02:50:44 UTC 2025 I: Downloading source for unstable/ruby-semantic-puppet=1.1.0-1 Reading package lists... NOTICE: 'ruby-semantic-puppet' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git Please use: git clone https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 33.3 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (dsc) [1549 B] Get:2 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (tar) [29.0 kB] Get:3 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (diff) [2836 B] Fetched 33.3 kB in 0s (732 kB/s) Download complete and in download only mode Reading package lists... NOTICE: 'ruby-semantic-puppet' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git Please use: git clone https://salsa.debian.org/puppet-team/ruby-semantic-puppet.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 33.3 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (dsc) [1549 B] Get:2 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (tar) [29.0 kB] Get:3 http://deb.debian.org/debian unstable/main ruby-semantic-puppet 1.1.0-1 (diff) [2836 B] Fetched 33.3 kB in 0s (732 kB/s) Download complete and in download only mode ============================================================================= Re-Building ruby-semantic-puppet in unstable on amd64 on ionos1-amd64 now. Date: Thu Apr 24 02:50:44 UTC 2025 Date UTC: Thu Apr 24 02:50:44 UTC 2025 ============================================================================= ++ mktemp -t pbuilderrc_XXXX --tmpdir=/srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9 + local TMPCFG=/srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/pbuilderrc_ZWPi + case ${ARCH} in + case $ARCH in + locale=et_EE + language=et + case "${SUITE}" in + reproducible_buildflags=+all + extra_deb_build_options= + case "${SRCPACKAGE}" in + cat + echo BUILDDIR=/build/reproducible-path + '[' ruby-semantic-puppet = debian-installer -o ruby-semantic-puppet = debian-installer-netboot-images ']' + pbuilder_options=() + local pbuilder_options + DEBBUILDOPTS=-b + BINARYTARGET= + '[' ruby-semantic-puppet = u-boot ']' + case "${SRCPACKAGE}" in + PBUILDERTIMEOUT=24 + local PRESULT=0 + sudo 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.jHOxZbK9/pbuilderrc_ZWPi --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.jHOxZbK9/b2 --logfile b2/build.log ruby-semantic-puppet_1.1.0-1.dsc W: /root/.pbuilderrc does not exist I: Logging to b2/build.log I: pbuilder: network access will be disabled during build I: Current time: Thu Apr 24 16:50:44 +14 2025 I: pbuilder-time-stamp: 1745463044 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [ruby-semantic-puppet_1.1.0-1.dsc] I: copying [./ruby-semantic-puppet_1.1.0.orig.tar.gz] I: copying [./ruby-semantic-puppet_1.1.0-1.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./ruby-semantic-puppet_1.1.0-1.dsc: unsupported subcommand dpkg-source: info: extracting ruby-semantic-puppet in ruby-semantic-puppet-1.1.0 dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0.orig.tar.gz dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/3978756/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 Apr 24 02:51 /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/3978756/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/D02_print_environment starting I: set 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=40 ' 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=fcbd7db67971459f89ee84c29ece6bbf 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=3978756 PS4='+ ' 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.jHOxZbK9/pbuilderrc_ZWPi --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.jHOxZbK9/b2 --logfile b2/build.log ruby-semantic-puppet_1.1.0-1.dsc' SUDO_GID=110 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 i-capture-the-hostname 6.1.0-33-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.133-1 (2025-04-10) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), gem2deb, rake, ruby-rspec dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19839 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on gem2deb; however: Package gem2deb is not installed. pbuilder-satisfydepends-dummy depends on rake; however: Package rake is not installed. pbuilder-satisfydepends-dummy depends on ruby-rspec; however: Package ruby-rspec is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} debhelper{a} devscripts{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gem2deb{a} gem2deb-test-runner{a} gettext{a} gettext-base{a} gpg{a} gpg-agent{a} gpgconf{a} gpgv{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libassuan9{a} libb-hooks-op-check-perl{a} libclass-method-modifiers-perl{a} libclass-xsaccessor-perl{a} libclone-perl{a} libdebhelper-perl{a} libdevel-callchecker-perl{a} libdynaloader-functions-perl{a} libelf1t64{a} libencode-locale-perl{a} libexpat1{a} libffi8{a} libfile-dirlist-perl{a} libfile-homedir-perl{a} libfile-listing-perl{a} libfile-stripnondeterminism-perl{a} libfile-touch-perl{a} libfile-which-perl{a} libgcrypt20{a} libgmp-dev{a} libgmpxx4ldbl{a} libgpg-error0{a} libhtml-parser-perl{a} libhtml-tagset-perl{a} libhtml-tree-perl{a} libhttp-cookies-perl{a} libhttp-date-perl{a} libhttp-message-perl{a} libhttp-negotiate-perl{a} libimport-into-perl{a} libio-html-perl{a} libio-socket-ssl-perl{a} libksba8{a} liblwp-mediatypes-perl{a} liblwp-protocol-https-perl{a} libmagic-mgc{a} libmagic1t64{a} libmodule-runtime-perl{a} libmoo-perl{a} libnet-http-perl{a} libnet-ssleay-perl{a} libnpth0t64{a} libparams-classify-perl{a} libpipeline1{a} libpython3-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} librole-tiny-perl{a} libruby{a} libruby3.3{a} libsub-quote-perl{a} libtimedate-perl{a} libtool{a} libtry-tiny-perl{a} libuchardet0{a} libunistring5{a} liburi-perl{a} libwww-perl{a} libwww-robotrules-perl{a} libxml2{a} libyaml-0-2{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} patchutils{a} perl-openssl-defaults{a} pinentry-curses{a} po-debconf{a} python3{a} python3-minimal{a} python3.13{a} python3.13-minimal{a} rake{a} readline-common{a} ruby{a} ruby-all-dev{a} ruby-csv{a} ruby-did-you-mean{a} ruby-diff-lcs{a} ruby-minitest{a} ruby-net-telnet{a} ruby-power-assert{a} ruby-rspec{a} ruby-rspec-core{a} ruby-rspec-expectations{a} ruby-rspec-mocks{a} ruby-rspec-support{a} ruby-ruby2-keywords{a} ruby-rubygems{a} ruby-test-unit{a} ruby-webrick{a} ruby-xmlrpc{a} ruby3.3{a} ruby3.3-dev{a} rubygems-integration{a} sensible-utils{a} sopv-gpgv{a} tzdata{a} wdiff{a} The following packages are RECOMMENDED but will NOT be installed: apt-file curl dctrl-tools debian-keyring dput dput-ng dupload equivs fonts-lato gnupg libarchive-cpio-perl libdata-dump-perl libdistro-info-perl libgit-wrapper-perl libgitlab-api-v4-perl libgpg-error-l10n libhtml-form-perl libhtml-format-perl libhttp-daemon-perl libio-compress-brotli-perl libjs-jquery libjson-perl liblist-compare-perl libltdl-dev libmail-sendmail-perl libmailtools-perl libnamespace-clean-perl libsoap-lite-perl libstring-shellquote-perl libxstring-perl licensecheck lintian lynx lzip pristine-tar python3-apt python3-argcomplete python3-debian python3-magic python3-requests python3-unidiff python3-xdg ruby-sdbm ruby3.3-doc sopv-doc strace unzip wget zip 0 packages upgraded, 125 newly installed, 0 to remove and 0 not upgraded. Need to get 35.4 MB of archives. After unpacking 129 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 libpython3.13-minimal amd64 3.13.3-2 [861 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libexpat1 amd64 2.7.1-1 [108 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 python3.13-minimal amd64 3.13.3-2 [2212 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 python3-minimal amd64 3.13.3-1 [27.2 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 media-types all 13.0.0 [29.3 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 netbase all 6.5 [12.4 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 tzdata all 2025b-2 [260 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 libffi8 amd64 3.4.8-1 [24.1 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 readline-common all 8.2-6 [69.4 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 libreadline8t64 amd64 8.2-6 [169 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 libpython3.13-stdlib amd64 3.13.3-2 [1953 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 python3.13 amd64 3.13.3-2 [751 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 libpython3-stdlib amd64 3.13.3-1 [10.2 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 python3 amd64 3.13.3-1 [28.2 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.25 [25.0 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 openssl amd64 3.5.0-1 [1491 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20250419 [162 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.46-5 [338 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.46-5 [109 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.46-5 [43.6 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.23.1-1 [243 kB] Get: 22 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-7 [1185 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.41-4 [94.6 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-8 [294 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3.1 [494 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20240727.1 [60.2 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.17-4 [862 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.23.1-1 [770 kB] Get: 32 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.24.2 [90.9 kB] Get: 33 http://deb.debian.org/debian unstable/main amd64 libtool all 2.5.4-4 [539 kB] Get: 34 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 36 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.1-2 [8620 B] Get: 38 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 39 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 libunistring5 amd64 1.3-2 [477 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.4 [698 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.23.1-1 [1680 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.24.2 [919 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 libgpg-error0 amd64 1.51-4 [82.1 kB] Get: 47 http://deb.debian.org/debian unstable/main amd64 libassuan9 amd64 3.0.2-2 [61.5 kB] Get: 48 http://deb.debian.org/debian unstable/main amd64 libgcrypt20 amd64 1.11.0-7 [843 kB] Get: 49 http://deb.debian.org/debian unstable/main amd64 gpgconf amd64 2.4.7-15 [128 kB] Get: 50 http://deb.debian.org/debian unstable/main amd64 libksba8 amd64 1.6.7-2+b1 [136 kB] Get: 51 http://deb.debian.org/debian unstable/main amd64 libnpth0t64 amd64 1.8-3 [23.2 kB] Get: 52 http://deb.debian.org/debian unstable/main amd64 gpg amd64 2.4.7-15 [633 kB] Get: 53 http://deb.debian.org/debian unstable/main amd64 pinentry-curses amd64 1.3.1-2 [86.4 kB] Get: 54 http://deb.debian.org/debian unstable/main amd64 gpg-agent amd64 2.4.7-15 [270 kB] Get: 55 http://deb.debian.org/debian unstable/main amd64 libfile-dirlist-perl all 0.05-3 [7600 B] Get: 56 http://deb.debian.org/debian unstable/main amd64 libfile-which-perl all 1.27-2 [15.1 kB] Get: 57 http://deb.debian.org/debian unstable/main amd64 libfile-homedir-perl all 1.006-2 [42.4 kB] Get: 58 http://deb.debian.org/debian unstable/main amd64 libfile-touch-perl all 0.12-2 [8816 B] Get: 59 http://deb.debian.org/debian unstable/main amd64 libclass-method-modifiers-perl all 2.15-1 [18.0 kB] Get: 60 http://deb.debian.org/debian unstable/main amd64 libclass-xsaccessor-perl amd64 1.19-4+b5 [36.1 kB] Get: 61 http://deb.debian.org/debian unstable/main amd64 libb-hooks-op-check-perl amd64 0.22-3+b2 [10.6 kB] Get: 62 http://deb.debian.org/debian unstable/main amd64 libdynaloader-functions-perl all 0.004-2 [12.2 kB] Get: 63 http://deb.debian.org/debian unstable/main amd64 libdevel-callchecker-perl amd64 0.009-2 [15.6 kB] Get: 64 http://deb.debian.org/debian unstable/main amd64 libparams-classify-perl amd64 0.015-2+b4 [22.5 kB] Get: 65 http://deb.debian.org/debian unstable/main amd64 libmodule-runtime-perl all 0.017-1 [17.9 kB] Get: 66 http://deb.debian.org/debian unstable/main amd64 libimport-into-perl all 1.002005-2 [11.3 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 librole-tiny-perl all 2.002004-1 [21.4 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 libsub-quote-perl all 2.006008-1 [21.8 kB] Get: 69 http://deb.debian.org/debian unstable/main amd64 libmoo-perl all 2.005005-1 [58.0 kB] Get: 70 http://deb.debian.org/debian unstable/main amd64 libencode-locale-perl all 1.05-3 [12.9 kB] Get: 71 http://deb.debian.org/debian unstable/main amd64 libtimedate-perl all 2.3300-2 [39.3 kB] Get: 72 http://deb.debian.org/debian unstable/main amd64 libhttp-date-perl all 6.06-1 [10.7 kB] Get: 73 http://deb.debian.org/debian unstable/main amd64 libfile-listing-perl all 6.16-1 [12.4 kB] Get: 74 http://deb.debian.org/debian unstable/main amd64 libhtml-tagset-perl all 3.24-1 [14.7 kB] Get: 75 http://deb.debian.org/debian unstable/main amd64 liburi-perl all 5.30-1 [105 kB] Get: 76 http://deb.debian.org/debian unstable/main amd64 libhtml-parser-perl amd64 3.83-1+b2 [99.7 kB] Get: 77 http://deb.debian.org/debian unstable/main amd64 libhtml-tree-perl all 5.07-3 [211 kB] Get: 78 http://deb.debian.org/debian unstable/main amd64 libclone-perl amd64 0.47-1+b1 [13.9 kB] Get: 79 http://deb.debian.org/debian unstable/main amd64 libio-html-perl all 1.004-3 [16.2 kB] Get: 80 http://deb.debian.org/debian unstable/main amd64 liblwp-mediatypes-perl all 6.04-2 [20.2 kB] Get: 81 http://deb.debian.org/debian unstable/main amd64 libhttp-message-perl all 7.00-2 [79.8 kB] Get: 82 http://deb.debian.org/debian unstable/main amd64 libhttp-cookies-perl all 6.11-1 [19.1 kB] Get: 83 http://deb.debian.org/debian unstable/main amd64 libhttp-negotiate-perl all 6.01-2 [13.1 kB] Get: 84 http://deb.debian.org/debian unstable/main amd64 perl-openssl-defaults amd64 7+b2 [6724 B] Get: 85 http://deb.debian.org/debian unstable/main amd64 libnet-ssleay-perl amd64 1.94-3 [339 kB] Get: 86 http://deb.debian.org/debian unstable/main amd64 libio-socket-ssl-perl all 2.089-1 [223 kB] Get: 87 http://deb.debian.org/debian unstable/main amd64 libnet-http-perl all 6.23-1 [23.9 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 liblwp-protocol-https-perl all 6.14-1 [10.8 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 libtry-tiny-perl all 0.32-1 [22.9 kB] Get: 90 http://deb.debian.org/debian unstable/main amd64 libwww-robotrules-perl all 6.02-1 [12.9 kB] Get: 91 http://deb.debian.org/debian unstable/main amd64 libwww-perl all 6.78-1 [183 kB] Get: 92 http://deb.debian.org/debian unstable/main amd64 patchutils amd64 0.4.2-1 [77.5 kB] Get: 93 http://deb.debian.org/debian unstable/main amd64 gpgv amd64 2.4.7-15 [240 kB] Get: 94 http://deb.debian.org/debian unstable/main amd64 sopv-gpgv all 0.1.4-1 [11.3 kB] Get: 95 http://deb.debian.org/debian unstable/main amd64 wdiff amd64 1.2.2-9 [122 kB] Get: 96 http://deb.debian.org/debian unstable/main amd64 devscripts all 2.25.10 [1062 kB] Get: 97 http://deb.debian.org/debian unstable/main amd64 rubygems-integration all 1.19 [5488 B] Get: 98 http://deb.debian.org/debian unstable/main amd64 ruby-csv all 3.3.4-1 [42.2 kB] Get: 99 http://deb.debian.org/debian unstable/main amd64 ruby-did-you-mean all 1.6.3-2 [20.9 kB] Get: 100 http://deb.debian.org/debian unstable/main amd64 ruby-minitest all 5.25.4-2 [66.2 kB] Get: 101 http://deb.debian.org/debian unstable/main amd64 ruby-net-telnet all 0.2.0-1 [13.1 kB] Get: 102 http://deb.debian.org/debian unstable/main amd64 ruby-ruby2-keywords all 0.0.5-1 [4300 B] Get: 103 http://deb.debian.org/debian unstable/main amd64 ruby-power-assert all 2.0.3-1 [11.8 kB] Get: 104 http://deb.debian.org/debian unstable/main amd64 ruby-test-unit all 3.6.2-1 [79.1 kB] Get: 105 http://deb.debian.org/debian unstable/main amd64 ruby-webrick all 1.9.1-1 [59.6 kB] Get: 106 http://deb.debian.org/debian unstable/main amd64 ruby-xmlrpc all 0.3.3-2 [24.4 kB] Get: 107 http://deb.debian.org/debian unstable/main amd64 libyaml-0-2 amd64 0.2.5-2 [52.5 kB] Get: 108 http://deb.debian.org/debian unstable/main amd64 libruby3.3 amd64 3.3.8-1 [6300 kB] Get: 109 http://deb.debian.org/debian unstable/main amd64 ruby3.3 amd64 3.3.8-1 [834 kB] Get: 110 http://deb.debian.org/debian unstable/main amd64 libruby amd64 1:3.3+b1 [5440 B] Get: 111 http://deb.debian.org/debian unstable/main amd64 ruby-rubygems all 3.6.7-2 [407 kB] Get: 112 http://deb.debian.org/debian unstable/main amd64 ruby amd64 1:3.3+b1 [6560 B] Get: 113 http://deb.debian.org/debian unstable/main amd64 rake all 13.2.1-1 [65.2 kB] Get: 114 http://deb.debian.org/debian unstable/main amd64 gem2deb-test-runner amd64 2.2.5 [17.9 kB] Get: 115 http://deb.debian.org/debian unstable/main amd64 libgmpxx4ldbl amd64 2:6.3.0+dfsg-3 [329 kB] Get: 116 http://deb.debian.org/debian unstable/main amd64 libgmp-dev amd64 2:6.3.0+dfsg-3 [642 kB] Get: 117 http://deb.debian.org/debian unstable/main amd64 ruby3.3-dev amd64 3.3.8-1 [1045 kB] Get: 118 http://deb.debian.org/debian unstable/main amd64 ruby-all-dev amd64 1:3.3+b1 [6496 B] Get: 119 http://deb.debian.org/debian unstable/main amd64 gem2deb amd64 2.2.5 [48.0 kB] Get: 120 http://deb.debian.org/debian unstable/main amd64 ruby-diff-lcs all 1.5.1-1 [28.1 kB] Get: 121 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-support all 3.13.0c0e0m0s1-2 [28.5 kB] Get: 122 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-core all 3.13.0c0e0m0s1-2 [164 kB] Get: 123 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 124 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 125 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Fetched 35.4 MB in 1s (35.2 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal: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 ... 19839 files and directories currently installed.) Preparing to unpack .../libpython3.13-minimal_3.13.3-2_amd64.deb ... Unpacking libpython3.13-minimal:amd64 (3.13.3-2) ... Selecting previously unselected package libexpat1:amd64. Preparing to unpack .../libexpat1_2.7.1-1_amd64.deb ... Unpacking libexpat1:amd64 (2.7.1-1) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.3-2_amd64.deb ... Unpacking python3.13-minimal (3.13.3-2) ... Setting up libpython3.13-minimal:amd64 (3.13.3-2) ... Setting up libexpat1:amd64 (2.7.1-1) ... Setting up python3.13-minimal (3.13.3-2) ... Selecting previously unselected package python3-minimal. (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 ... 20173 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.3-1_amd64.deb ... Unpacking python3-minimal (3.13.3-1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_13.0.0_all.deb ... Unpacking media-types (13.0.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.5_all.deb ... Unpacking netbase (6.5) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2025b-2_all.deb ... Unpacking tzdata (2025b-2) ... Selecting previously unselected package libffi8:amd64. Preparing to unpack .../4-libffi8_3.4.8-1_amd64.deb ... Unpacking libffi8:amd64 (3.4.8-1) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.2-6_all.deb ... Unpacking readline-common (8.2-6) ... Selecting previously unselected package libreadline8t64:amd64. Preparing to unpack .../6-libreadline8t64_8.2-6_amd64.deb ... Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8 to /lib/x86_64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8.2 to /lib/x86_64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8 to /lib/x86_64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8.2 to /lib/x86_64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:amd64 (8.2-6) ... Selecting previously unselected package libpython3.13-stdlib:amd64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.3-2_amd64.deb ... Unpacking libpython3.13-stdlib:amd64 (3.13.3-2) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.3-2_amd64.deb ... Unpacking python3.13 (3.13.3-2) ... Selecting previously unselected package libpython3-stdlib:amd64. Preparing to unpack .../9-libpython3-stdlib_3.13.3-1_amd64.deb ... Unpacking libpython3-stdlib:amd64 (3.13.3-1) ... Setting up python3-minimal (3.13.3-1) ... Selecting previously unselected package python3. (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 ... 21185 files and directories currently installed.) Preparing to unpack .../000-python3_3.13.3-1_amd64.deb ... Unpacking python3 (3.13.3-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../001-sensible-utils_0.0.25_all.deb ... Unpacking sensible-utils (0.0.25) ... Selecting previously unselected package openssl. Preparing to unpack .../002-openssl_3.5.0-1_amd64.deb ... Unpacking openssl (3.5.0-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../003-ca-certificates_20250419_all.deb ... Unpacking ca-certificates (20250419) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../004-libmagic-mgc_1%3a5.46-5_amd64.deb ... Unpacking libmagic-mgc (1:5.46-5) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../005-libmagic1t64_1%3a5.46-5_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.46-5) ... Selecting previously unselected package file. Preparing to unpack .../006-file_1%3a5.46-5_amd64.deb ... Unpacking file (1:5.46-5) ... Selecting previously unselected package gettext-base. Preparing to unpack .../007-gettext-base_0.23.1-1_amd64.deb ... Unpacking gettext-base (0.23.1-1) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../008-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../009-groff-base_1.23.0-7_amd64.deb ... Unpacking groff-base (1.23.0-7) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../010-bsdextrautils_2.41-4_amd64.deb ... Unpacking bsdextrautils (2.41-4) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../011-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../012-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../013-m4_1.4.19-8_amd64.deb ... Unpacking m4 (1.4.19-8) ... Selecting previously unselected package autoconf. Preparing to unpack .../014-autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../015-autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../016-automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../017-autopoint_0.23.1-1_all.deb ... Unpacking autopoint (0.23.1-1) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../018-libdebhelper-perl_13.24.2_all.deb ... Unpacking libdebhelper-perl (13.24.2) ... Selecting previously unselected package libtool. Preparing to unpack .../019-libtool_2.5.4-4_all.deb ... Unpacking libtool (2.5.4-4) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../020-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../021-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../022-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../023-dh-strip-nondeterminism_1.14.1-2_all.deb ... Unpacking dh-strip-nondeterminism (1.14.1-2) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../024-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../025-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libunistring5:amd64. Preparing to unpack .../026-libunistring5_1.3-2_amd64.deb ... Unpacking libunistring5:amd64 (1.3-2) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../027-libxml2_2.12.7+dfsg+really2.9.14-0.4_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Selecting previously unselected package gettext. Preparing to unpack .../028-gettext_0.23.1-1_amd64.deb ... Unpacking gettext (0.23.1-1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../029-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../030-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../031-debhelper_13.24.2_all.deb ... Unpacking debhelper (13.24.2) ... Selecting previously unselected package libgpg-error0:amd64. Preparing to unpack .../032-libgpg-error0_1.51-4_amd64.deb ... Unpacking libgpg-error0:amd64 (1.51-4) ... Selecting previously unselected package libassuan9:amd64. Preparing to unpack .../033-libassuan9_3.0.2-2_amd64.deb ... Unpacking libassuan9:amd64 (3.0.2-2) ... Selecting previously unselected package libgcrypt20:amd64. Preparing to unpack .../034-libgcrypt20_1.11.0-7_amd64.deb ... Unpacking libgcrypt20:amd64 (1.11.0-7) ... Selecting previously unselected package gpgconf. Preparing to unpack .../035-gpgconf_2.4.7-15_amd64.deb ... Unpacking gpgconf (2.4.7-15) ... Selecting previously unselected package libksba8:amd64. Preparing to unpack .../036-libksba8_1.6.7-2+b1_amd64.deb ... Unpacking libksba8:amd64 (1.6.7-2+b1) ... Selecting previously unselected package libnpth0t64:amd64. Preparing to unpack .../037-libnpth0t64_1.8-3_amd64.deb ... Unpacking libnpth0t64:amd64 (1.8-3) ... Selecting previously unselected package gpg. Preparing to unpack .../038-gpg_2.4.7-15_amd64.deb ... Unpacking gpg (2.4.7-15) ... Selecting previously unselected package pinentry-curses. Preparing to unpack .../039-pinentry-curses_1.3.1-2_amd64.deb ... Unpacking pinentry-curses (1.3.1-2) ... Selecting previously unselected package gpg-agent. Preparing to unpack .../040-gpg-agent_2.4.7-15_amd64.deb ... Unpacking gpg-agent (2.4.7-15) ... Selecting previously unselected package libfile-dirlist-perl. Preparing to unpack .../041-libfile-dirlist-perl_0.05-3_all.deb ... Unpacking libfile-dirlist-perl (0.05-3) ... Selecting previously unselected package libfile-which-perl. Preparing to unpack .../042-libfile-which-perl_1.27-2_all.deb ... Unpacking libfile-which-perl (1.27-2) ... Selecting previously unselected package libfile-homedir-perl. Preparing to unpack .../043-libfile-homedir-perl_1.006-2_all.deb ... Unpacking libfile-homedir-perl (1.006-2) ... Selecting previously unselected package libfile-touch-perl. Preparing to unpack .../044-libfile-touch-perl_0.12-2_all.deb ... Unpacking libfile-touch-perl (0.12-2) ... Selecting previously unselected package libclass-method-modifiers-perl. Preparing to unpack .../045-libclass-method-modifiers-perl_2.15-1_all.deb ... Unpacking libclass-method-modifiers-perl (2.15-1) ... Selecting previously unselected package libclass-xsaccessor-perl. Preparing to unpack .../046-libclass-xsaccessor-perl_1.19-4+b5_amd64.deb ... Unpacking libclass-xsaccessor-perl (1.19-4+b5) ... Selecting previously unselected package libb-hooks-op-check-perl:amd64. Preparing to unpack .../047-libb-hooks-op-check-perl_0.22-3+b2_amd64.deb ... Unpacking libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Selecting previously unselected package libdynaloader-functions-perl. Preparing to unpack .../048-libdynaloader-functions-perl_0.004-2_all.deb ... Unpacking libdynaloader-functions-perl (0.004-2) ... Selecting previously unselected package libdevel-callchecker-perl:amd64. Preparing to unpack .../049-libdevel-callchecker-perl_0.009-2_amd64.deb ... Unpacking libdevel-callchecker-perl:amd64 (0.009-2) ... Selecting previously unselected package libparams-classify-perl:amd64. Preparing to unpack .../050-libparams-classify-perl_0.015-2+b4_amd64.deb ... Unpacking libparams-classify-perl:amd64 (0.015-2+b4) ... Selecting previously unselected package libmodule-runtime-perl. Preparing to unpack .../051-libmodule-runtime-perl_0.017-1_all.deb ... Unpacking libmodule-runtime-perl (0.017-1) ... Selecting previously unselected package libimport-into-perl. Preparing to unpack .../052-libimport-into-perl_1.002005-2_all.deb ... Unpacking libimport-into-perl (1.002005-2) ... Selecting previously unselected package librole-tiny-perl. Preparing to unpack .../053-librole-tiny-perl_2.002004-1_all.deb ... Unpacking librole-tiny-perl (2.002004-1) ... Selecting previously unselected package libsub-quote-perl. Preparing to unpack .../054-libsub-quote-perl_2.006008-1_all.deb ... Unpacking libsub-quote-perl (2.006008-1) ... Selecting previously unselected package libmoo-perl. Preparing to unpack .../055-libmoo-perl_2.005005-1_all.deb ... Unpacking libmoo-perl (2.005005-1) ... Selecting previously unselected package libencode-locale-perl. Preparing to unpack .../056-libencode-locale-perl_1.05-3_all.deb ... Unpacking libencode-locale-perl (1.05-3) ... Selecting previously unselected package libtimedate-perl. Preparing to unpack .../057-libtimedate-perl_2.3300-2_all.deb ... Unpacking libtimedate-perl (2.3300-2) ... Selecting previously unselected package libhttp-date-perl. Preparing to unpack .../058-libhttp-date-perl_6.06-1_all.deb ... Unpacking libhttp-date-perl (6.06-1) ... Selecting previously unselected package libfile-listing-perl. Preparing to unpack .../059-libfile-listing-perl_6.16-1_all.deb ... Unpacking libfile-listing-perl (6.16-1) ... Selecting previously unselected package libhtml-tagset-perl. Preparing to unpack .../060-libhtml-tagset-perl_3.24-1_all.deb ... Unpacking libhtml-tagset-perl (3.24-1) ... Selecting previously unselected package liburi-perl. Preparing to unpack .../061-liburi-perl_5.30-1_all.deb ... Unpacking liburi-perl (5.30-1) ... Selecting previously unselected package libhtml-parser-perl:amd64. Preparing to unpack .../062-libhtml-parser-perl_3.83-1+b2_amd64.deb ... Unpacking libhtml-parser-perl:amd64 (3.83-1+b2) ... Selecting previously unselected package libhtml-tree-perl. Preparing to unpack .../063-libhtml-tree-perl_5.07-3_all.deb ... Unpacking libhtml-tree-perl (5.07-3) ... Selecting previously unselected package libclone-perl:amd64. Preparing to unpack .../064-libclone-perl_0.47-1+b1_amd64.deb ... Unpacking libclone-perl:amd64 (0.47-1+b1) ... Selecting previously unselected package libio-html-perl. Preparing to unpack .../065-libio-html-perl_1.004-3_all.deb ... Unpacking libio-html-perl (1.004-3) ... Selecting previously unselected package liblwp-mediatypes-perl. Preparing to unpack .../066-liblwp-mediatypes-perl_6.04-2_all.deb ... Unpacking liblwp-mediatypes-perl (6.04-2) ... Selecting previously unselected package libhttp-message-perl. Preparing to unpack .../067-libhttp-message-perl_7.00-2_all.deb ... Unpacking libhttp-message-perl (7.00-2) ... Selecting previously unselected package libhttp-cookies-perl. Preparing to unpack .../068-libhttp-cookies-perl_6.11-1_all.deb ... Unpacking libhttp-cookies-perl (6.11-1) ... Selecting previously unselected package libhttp-negotiate-perl. Preparing to unpack .../069-libhttp-negotiate-perl_6.01-2_all.deb ... Unpacking libhttp-negotiate-perl (6.01-2) ... Selecting previously unselected package perl-openssl-defaults:amd64. Preparing to unpack .../070-perl-openssl-defaults_7+b2_amd64.deb ... Unpacking perl-openssl-defaults:amd64 (7+b2) ... Selecting previously unselected package libnet-ssleay-perl:amd64. Preparing to unpack .../071-libnet-ssleay-perl_1.94-3_amd64.deb ... Unpacking libnet-ssleay-perl:amd64 (1.94-3) ... Selecting previously unselected package libio-socket-ssl-perl. Preparing to unpack .../072-libio-socket-ssl-perl_2.089-1_all.deb ... Unpacking libio-socket-ssl-perl (2.089-1) ... Selecting previously unselected package libnet-http-perl. Preparing to unpack .../073-libnet-http-perl_6.23-1_all.deb ... Unpacking libnet-http-perl (6.23-1) ... Selecting previously unselected package liblwp-protocol-https-perl. Preparing to unpack .../074-liblwp-protocol-https-perl_6.14-1_all.deb ... Unpacking liblwp-protocol-https-perl (6.14-1) ... Selecting previously unselected package libtry-tiny-perl. Preparing to unpack .../075-libtry-tiny-perl_0.32-1_all.deb ... Unpacking libtry-tiny-perl (0.32-1) ... Selecting previously unselected package libwww-robotrules-perl. Preparing to unpack .../076-libwww-robotrules-perl_6.02-1_all.deb ... Unpacking libwww-robotrules-perl (6.02-1) ... Selecting previously unselected package libwww-perl. Preparing to unpack .../077-libwww-perl_6.78-1_all.deb ... Unpacking libwww-perl (6.78-1) ... Selecting previously unselected package patchutils. Preparing to unpack .../078-patchutils_0.4.2-1_amd64.deb ... Unpacking patchutils (0.4.2-1) ... Selecting previously unselected package gpgv. Preparing to unpack .../079-gpgv_2.4.7-15_amd64.deb ... Unpacking gpgv (2.4.7-15) ... Selecting previously unselected package sopv-gpgv. Preparing to unpack .../080-sopv-gpgv_0.1.4-1_all.deb ... Unpacking sopv-gpgv (0.1.4-1) ... Selecting previously unselected package wdiff. Preparing to unpack .../081-wdiff_1.2.2-9_amd64.deb ... Unpacking wdiff (1.2.2-9) ... Selecting previously unselected package devscripts. Preparing to unpack .../082-devscripts_2.25.10_all.deb ... Unpacking devscripts (2.25.10) ... Selecting previously unselected package rubygems-integration. Preparing to unpack .../083-rubygems-integration_1.19_all.deb ... Unpacking rubygems-integration (1.19) ... Selecting previously unselected package ruby-csv. Preparing to unpack .../084-ruby-csv_3.3.4-1_all.deb ... Unpacking ruby-csv (3.3.4-1) ... Selecting previously unselected package ruby-did-you-mean. Preparing to unpack .../085-ruby-did-you-mean_1.6.3-2_all.deb ... Unpacking ruby-did-you-mean (1.6.3-2) ... Selecting previously unselected package ruby-minitest. Preparing to unpack .../086-ruby-minitest_5.25.4-2_all.deb ... Unpacking ruby-minitest (5.25.4-2) ... Selecting previously unselected package ruby-net-telnet. Preparing to unpack .../087-ruby-net-telnet_0.2.0-1_all.deb ... Unpacking ruby-net-telnet (0.2.0-1) ... Selecting previously unselected package ruby-ruby2-keywords. Preparing to unpack .../088-ruby-ruby2-keywords_0.0.5-1_all.deb ... Unpacking ruby-ruby2-keywords (0.0.5-1) ... Selecting previously unselected package ruby-power-assert. Preparing to unpack .../089-ruby-power-assert_2.0.3-1_all.deb ... Unpacking ruby-power-assert (2.0.3-1) ... Selecting previously unselected package ruby-test-unit. Preparing to unpack .../090-ruby-test-unit_3.6.2-1_all.deb ... Unpacking ruby-test-unit (3.6.2-1) ... Selecting previously unselected package ruby-webrick. Preparing to unpack .../091-ruby-webrick_1.9.1-1_all.deb ... Unpacking ruby-webrick (1.9.1-1) ... Selecting previously unselected package ruby-xmlrpc. Preparing to unpack .../092-ruby-xmlrpc_0.3.3-2_all.deb ... Unpacking ruby-xmlrpc (0.3.3-2) ... Selecting previously unselected package libyaml-0-2:amd64. Preparing to unpack .../093-libyaml-0-2_0.2.5-2_amd64.deb ... Unpacking libyaml-0-2:amd64 (0.2.5-2) ... Selecting previously unselected package libruby3.3:amd64. Preparing to unpack .../094-libruby3.3_3.3.8-1_amd64.deb ... Unpacking libruby3.3:amd64 (3.3.8-1) ... Selecting previously unselected package ruby3.3. Preparing to unpack .../095-ruby3.3_3.3.8-1_amd64.deb ... Unpacking ruby3.3 (3.3.8-1) ... Selecting previously unselected package libruby:amd64. Preparing to unpack .../096-libruby_1%3a3.3+b1_amd64.deb ... Unpacking libruby:amd64 (1:3.3+b1) ... Selecting previously unselected package ruby-rubygems. Preparing to unpack .../097-ruby-rubygems_3.6.7-2_all.deb ... Unpacking ruby-rubygems (3.6.7-2) ... Selecting previously unselected package ruby. Preparing to unpack .../098-ruby_1%3a3.3+b1_amd64.deb ... Unpacking ruby (1:3.3+b1) ... Selecting previously unselected package rake. Preparing to unpack .../099-rake_13.2.1-1_all.deb ... Unpacking rake (13.2.1-1) ... Selecting previously unselected package gem2deb-test-runner. Preparing to unpack .../100-gem2deb-test-runner_2.2.5_amd64.deb ... Unpacking gem2deb-test-runner (2.2.5) ... Selecting previously unselected package libgmpxx4ldbl:amd64. Preparing to unpack .../101-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package libgmp-dev:amd64. Preparing to unpack .../102-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ... Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Selecting previously unselected package ruby3.3-dev:amd64. Preparing to unpack .../103-ruby3.3-dev_3.3.8-1_amd64.deb ... Unpacking ruby3.3-dev:amd64 (3.3.8-1) ... Selecting previously unselected package ruby-all-dev:amd64. Preparing to unpack .../104-ruby-all-dev_1%3a3.3+b1_amd64.deb ... Unpacking ruby-all-dev:amd64 (1:3.3+b1) ... Selecting previously unselected package gem2deb. Preparing to unpack .../105-gem2deb_2.2.5_amd64.deb ... Unpacking gem2deb (2.2.5) ... Selecting previously unselected package ruby-diff-lcs. Preparing to unpack .../106-ruby-diff-lcs_1.5.1-1_all.deb ... Unpacking ruby-diff-lcs (1.5.1-1) ... Selecting previously unselected package ruby-rspec-support. Preparing to unpack .../107-ruby-rspec-support_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-support (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-core. Preparing to unpack .../108-ruby-rspec-core_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-core (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-expectations. Preparing to unpack .../109-ruby-rspec-expectations_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec-mocks. Preparing to unpack .../110-ruby-rspec-mocks_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Selecting previously unselected package ruby-rspec. Preparing to unpack .../111-ruby-rspec_3.13.0c0e0m0s1-2_all.deb ... Unpacking ruby-rspec (3.13.0c0e0m0s1-2) ... Setting up media-types (13.0.0) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up wdiff (1.2.2-9) ... Setting up libfile-which-perl (1.27-2) ... Setting up libnpth0t64:amd64 (1.8-3) ... Setting up ruby-ruby2-keywords (0.0.5-1) ... Setting up bsdextrautils (2.41-4) ... Setting up libgpg-error0:amd64 (1.51-4) ... Setting up libdynaloader-functions-perl (0.004-2) ... Setting up libclass-method-modifiers-perl (2.15-1) ... Setting up ruby-power-assert (2.0.3-1) ... Setting up libmagic-mgc (1:5.46-5) ... Setting up libclone-perl:amd64 (0.47-1+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:amd64 (0.2.5-2) ... Setting up libhtml-tagset-perl (3.24-1) ... Setting up libdebhelper-perl (13.24.2) ... Setting up liblwp-mediatypes-perl (6.04-2) ... Setting up libmagic1t64:amd64 (1:5.46-5) ... Setting up libtry-tiny-perl (0.32-1) ... Setting up perl-openssl-defaults:amd64 (7+b2) ... Setting up gettext-base (0.23.1-1) ... Setting up m4 (1.4.19-8) ... Setting up libgcrypt20:amd64 (1.11.0-7) ... Setting up libencode-locale-perl (1.05-3) ... Setting up file (1:5.46-5) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up tzdata (2025b-2) ... Current default time zone: 'Etc/UTC' Local time is now: Thu Apr 24 02:53:02 UTC 2025. Universal Time is now: Thu Apr 24 02:53:02 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up ruby-minitest (5.25.4-2) ... Setting up autotools-dev (20240727.1) ... Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ... Setting up ruby-test-unit (3.6.2-1) ... Setting up ruby-net-telnet (0.2.0-1) ... Setting up ruby-csv (3.3.4-1) ... Setting up libunistring5:amd64 (1.3-2) ... Setting up libio-html-perl (1.004-3) ... Setting up autopoint (0.23.1-1) ... Setting up libb-hooks-op-check-perl:amd64 (0.22-3+b2) ... Setting up autoconf (2.72-3.1) ... Setting up ruby-rspec-support (3.13.0c0e0m0s1-2) ... Setting up libtimedate-perl (2.3300-2) ... Setting up ruby-webrick (1.9.1-1) ... Setting up libffi8:amd64 (3.4.8-1) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.25) ... Setting up gpgv (2.4.7-15) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up libassuan9:amd64 (3.0.2-2) ... Setting up librole-tiny-perl (2.002004-1) ... Setting up netbase (6.5) ... Setting up libsub-quote-perl (2.006008-1) ... Setting up libclass-xsaccessor-perl (1.19-4+b5) ... Setting up ruby-did-you-mean (1.6.3-2) ... Setting up libfile-dirlist-perl (0.05-3) ... Setting up libfile-homedir-perl (1.006-2) ... Setting up openssl (3.5.0-1) ... Setting up readline-common (8.2-6) ... Setting up ruby-xmlrpc (0.3.3-2) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.4) ... Setting up liburi-perl (5.30-1) ... Setting up libfile-touch-perl (0.12-2) ... Setting up libnet-ssleay-perl:amd64 (1.94-3) ... Setting up automake (1:1.17-4) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode Setting up libksba8:amd64 (1.6.7-2+b1) ... Setting up pinentry-curses (1.3.1-2) ... Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... Setting up libhttp-date-perl (6.06-1) ... Setting up gettext (0.23.1-1) ... Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ... Setting up libfile-listing-perl (6.16-1) ... Setting up libtool (2.5.4-4) ... Setting up libnet-http-perl (6.23-1) ... Setting up libdevel-callchecker-perl:amd64 (0.009-2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up patchutils (0.4.2-1) ... Setting up ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 150 added, 0 removed; done. Setting up libreadline8t64:amd64 (8.2-6) ... Setting up dh-strip-nondeterminism (1.14.1-2) ... Setting up libwww-robotrules-perl (6.02-1) ... Setting up groff-base (1.23.0-7) ... Setting up libhtml-parser-perl:amd64 (3.83-1+b2) ... Setting up gpgconf (2.4.7-15) ... Setting up libpython3.13-stdlib:amd64 (3.13.3-2) ... Setting up libio-socket-ssl-perl (2.089-1) ... Setting up gpg (2.4.7-15) ... Setting up libpython3-stdlib:amd64 (3.13.3-1) ... Setting up libhttp-message-perl (7.00-2) ... Setting up libhttp-negotiate-perl (6.01-2) ... Setting up gpg-agent (2.4.7-15) ... Setting up libhttp-cookies-perl (6.11-1) ... Setting up python3.13 (3.13.3-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libhtml-tree-perl (5.07-3) ... Setting up libparams-classify-perl:amd64 (0.015-2+b4) ... Setting up python3 (3.13.3-1) ... Setting up rubygems-integration (1.19) ... Setting up sopv-gpgv (0.1.4-1) ... update-alternatives: using /usr/bin/sopv-gpgv to provide /usr/bin/sopv (sopv) in auto mode Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up libmodule-runtime-perl (0.017-1) ... Setting up libimport-into-perl (1.002005-2) ... Setting up libmoo-perl (2.005005-1) ... Setting up debhelper (13.24.2) ... Setting up rake (13.2.1-1) ... Setting up liblwp-protocol-https-perl (6.14-1) ... Setting up libwww-perl (6.78-1) ... Setting up libruby3.3:amd64 (3.3.8-1) ... Setting up ruby-rubygems (3.6.7-2) ... Setting up devscripts (2.25.10) ... Setting up ruby3.3-dev:amd64 (3.3.8-1) ... Setting up ruby3.3 (3.3.8-1) ... Setting up libruby:amd64 (1:3.3+b1) ... Setting up ruby-all-dev:amd64 (1:3.3+b1) ... Setting up ruby (1:3.3+b1) ... Setting up ruby-rspec-core (3.13.0c0e0m0s1-2) ... Setting up ruby-diff-lcs (1.5.1-1) ... Setting up gem2deb-test-runner (2.2.5) ... Setting up ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... Setting up ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... Setting up gem2deb (2.2.5) ... Setting up ruby-rspec (3.13.0c0e0m0s1-2) ... Processing triggers for libc-bin (2.41-7) ... Processing triggers for ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for unstable I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/ruby-semantic-puppet-1.1.0/ && 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-semantic-puppet_1.1.0-1_source.changes dpkg-buildpackage: info: source package ruby-semantic-puppet dpkg-buildpackage: info: source version 1.1.0-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Jérôme Charaoui dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --buildsystem=ruby --with ruby dh_auto_clean -O--buildsystem=ruby dh_ruby --clean dh_autoreconf_clean -O--buildsystem=ruby dh_clean -O--buildsystem=ruby debian/rules binary dh binary --buildsystem=ruby --with ruby dh_update_autotools_config -O--buildsystem=ruby dh_autoreconf -O--buildsystem=ruby dh_auto_configure -O--buildsystem=ruby dh_ruby --configure dh_auto_build -O--buildsystem=ruby dh_ruby --build dh_auto_test -O--buildsystem=ruby dh_ruby --test create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=ruby dh_prep -O--buildsystem=ruby dh_auto_install --destdir=debian/ruby-semantic-puppet/ -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet ┌──────────────────────────────────────────────────────────────────────────────┐ │ ruby-semantic-puppet: Installing files and building extensions for ruby3.3 │ └──────────────────────────────────────────────────────────────────────────────┘ /usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20250424-4008489-4d777/gemspec WARNING: open-ended dependency on rake (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on rspec (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on simplecov (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on cane (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on yard (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on redcarpet (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: See https://guides.rubygems.org/specification-reference/ for help Successfully built RubyGem Name: semantic_puppet Version: 1.1.0 File: semantic_puppet-1.1.0.gem /usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-semantic-puppet/usr/share/rubygems-integration/all /tmp/d20250424-4008489-4d777/semantic_puppet-1.1.0.gem /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph_node.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/module_release.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/source.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/unsatisfiable_graph.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/gem_version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/version_range.rb Successfully installed semantic_puppet-1.1.0 1 gem installed cd debian/ruby-semantic-puppet/usr/share/rubygems-integration/all rm -rf bin rm -rf build_info rm -rf cache rm -rf doc rm -rf extensions rmdir plugins cd gems/semantic_puppet-1.1.0 rm -f chmod 644 lib/semantic_puppet/dependency/graph.rb lib/semantic_puppet/dependency/graph_node.rb lib/semantic_puppet/dependency/module_release.rb lib/semantic_puppet/dependency/source.rb lib/semantic_puppet/dependency/unsatisfiable_graph.rb lib/semantic_puppet/dependency.rb lib/semantic_puppet/gem_version.rb lib/semantic_puppet/version.rb lib/semantic_puppet/version_range.rb lib/semantic_puppet.rb find lib/ -type d -empty -delete cd - cd - dh_installchangelogs -pruby-semantic-puppet /build/reproducible-path/ruby-semantic-puppet-1.1.0/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-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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\ \"semantic_puppet\" ┌──────────────────────────────────────────────────────────────────────────────┐ │ Run tests for ruby3.3 from debian/ruby-tests.rake │ └──────────────────────────────────────────────────────────────────────────────┘ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-semantic-puppet-1.1.0/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 /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 Run options: include {:focus=>true} All examples were filtered out; ignoring {:focus=>true} Randomized with seed 58691 SemanticPuppet::VersionRange .parse "reasonably close" expressions "~ 1.2" includes 1.2.999 parse("~1.2").to_s excludes 1.3.0-0 parse("~1.2").to_s includes 1.2.999 parse("~ 1.2").to_s includes 1.2.0 "~ 1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 parse("~1.2.3").to_s excludes 1.3.0-0 parse("~1.2").to_s excludes 1.1.999 parse("~1.2").to_s excludes 1.2.0-0 "~1.2.3" includes 1.2.5 "~1" stringifies as >=1.0.0 <2.0.0 "~ 1.2.3-alpha" excludes 1.2.3-alph "~ 1" excludes 2.0.0-0 parse("~ 1").to_s excludes 1.0.0-0 "~ 1" excludes 0.999.999 parse("~ 1.2.3").to_s excludes 1.3.0-0 "~ 1" excludes 1.0.0-0 parse("~ 1.2.3-alpha").to_s excludes 1.2.3-alph parse("~1.2.3").to_s excludes 1.2.2 "~1" includes 1.999.999 "~ 1.2.3" excludes 1.3.0-0 "~1.2.3-alpha" includes 1.2.3-alpha "~ 1.2" stringifies as >=1.2.0 <1.3.0 "~1.2.3" excludes 1.2.3-0 parse("~ 1.2.3").to_s includes 1.2.5 "~1.2.3" includes 1.2.3 "~ 1.2" excludes 1.3.0-0 "~ 1" stringifies as >=1.0.0 <2.0.0 parse("~ 1").to_s excludes 0.999.999 "~ 1.2.3-alpha" includes 1.2.3-alpha "~1.2.3" excludes 1.3.0-0 parse("~ 1").to_s excludes 2.0.0-0 parse("~ 1.2").to_s excludes 1.2.0-0 "~1.2.3" excludes 1.2.2 parse("~1.2.3-alpha").to_s includes 1.2.3-alpha parse("~1.2.3").to_s includes 1.2.3 parse("~ 1.2.3").to_s excludes 1.2.2 parse("~1.2").to_s includes 1.2.0 parse("~ 1.2.3-alpha").to_s includes 1.2.3-alpha "~1.2" stringifies as >=1.2.0 <1.3.0 "~1.2" excludes 1.3.0-0 "~ 1" includes 1.999.999 parse("~1").to_s includes 1.0.0 "~ 1.2" includes 1.2.0 "~1" excludes 0.999.999 "~1.2" excludes 1.1.999 "~ 1.2.3" includes 1.2.3 "~ 1.2.3-alpha" excludes 1.2.4-0 parse("~ 1").to_s includes 1.999.999 parse("~1.2.3").to_s excludes 1.2.3-0 "~1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 parse("~1.2.3-alpha").to_s excludes 1.2.4-0 "~1.2.3-alpha" includes 1.2.3 parse("~1.2.3").to_s includes 1.2.5 "~1.2" includes 1.2.999 parse("~ 1.2").to_s excludes 1.3.0-0 "~1" excludes 2.0.0-0 "~ 1.2.3-alpha" includes 1.2.3 parse("~1").to_s excludes 1.0.0-0 parse("~ 1.2.3-alpha").to_s excludes 1.2.4-0 parse("~1").to_s includes 1.999.999 "~ 1.2.3" excludes 1.2.3-0 parse("~ 1.2.3").to_s excludes 1.2.3-0 "~1.2" excludes 1.2.0-0 parse("~1.2.3-alpha").to_s includes 1.2.3 "~1" includes 1.0.0 parse("~1").to_s excludes 2.0.0-0 parse("~1.2.3-alpha").to_s excludes 1.2.3-alph "~1.2.3-alpha" excludes 1.2.4-0 parse("~ 1.2.3-alpha").to_s includes 1.2.3 parse("~ 1.2").to_s includes 1.2.999 "~1.2.3" stringifies as >=1.2.3 <1.3.0 "~ 1" includes 1.0.0 parse("~1").to_s excludes 0.999.999 "~ 1.2.3" includes 1.2.5 parse("~ 1.2.3").to_s includes 1.2.3 parse("~ 1").to_s includes 1.0.0 parse("~ 1.2").to_s excludes 1.1.999 "~ 1.2" excludes 1.2.0-0 "~ 1.2.3" excludes 1.2.2 "~1" excludes 1.0.0-0 "~1.2" includes 1.2.0 "~1.2.3-alpha" excludes 1.2.3-alph "~ 1.2" excludes 1.1.999 "~ 1.2.3" stringifies as >=1.2.3 <1.3.0 invalid expressions raise an appropriate exception unioned expressions ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" stringifies as >=3.0.0 <5.0.0 "1.2 <1.2.5" includes 1.2.0 "1.2 <1.2.5" excludes 1.2.5-0 "1.2 <1.2.5" stringifies as >=1.2.0 <1.2.5 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 3.0.0 parse("1 <=1.2.5").to_s excludes 1.2.6-0 "1 <=1.2.5" includes 1.0.0 "<1.0.0 >2.0.0" excludes 0.0.0-0 parse("1 <=1.2.5").to_s includes 1.2.5 parse("1.2 <1.2.5").to_s includes 1.2.0 "1 <=1.2.5" includes 1.2.5 "1 <=1.2.5" excludes 1.9.0 "1.2 <1.2.5" excludes 1.1.999 "1.2 <1.2.5" excludes 1.9.0 parse("1.2 <1.2.5").to_s excludes 1.1.999 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0 "<1.0.0 >2.0.0" stringifies as <0.0.0 parse("<1.0.0 >2.0.0").to_s excludes 0.0.0-0 "1.2 <1.2.5" includes 1.2.4 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 3.0.0-0 parse("1 <=1.2.5").to_s excludes 1.9.0 "1.2 <1.2.5" excludes 1.2.0-0 "1 <=1.2.5" stringifies as >=1.0.0 <=1.2.5 parse("1.2 <1.2.5").to_s includes 1.2.4 "1 <=1.2.5" excludes 1.2.6-0 "1 <=1.2.5" excludes 0.999.999 parse("1 <=1.2.5").to_s excludes 0.999.999 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 3.0.0-0 parse("1.2 <1.2.5").to_s excludes 1.2.5-0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 5.0.0-0 parse("1 <=1.2.5").to_s includes 1.0.0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 5.0.0-0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 2.999.999 "1 <=1.2.5" excludes 1.0.0-0 parse("1.2 <1.2.5").to_s excludes 1.2.0-0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 3.0.0 ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 4.999.999 "<1.0.0 >2.0.0" excludes 0.0.0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 4.999.999 parse("1 <=1.2.5").to_s excludes 1.0.0-0 parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 2.999.999 parse("1.2 <1.2.5").to_s excludes 1.9.0 loose version expressions "1.2.3-alpha" includes 1.2.3-alpha "1.2.x" includes 1.2.0 "1.2" excludes 1.3.0-0 "1.x" excludes 1.0.0-alpha "1.x" excludes 0.999.999 "1.2.3" stringifies as 1.2.3 parse("1.2").to_s includes 1.2.0 "1.2" excludes 1.1.999 "1" includes 1.999.0 "1.2.3" excludes 1.2.2 parse("1.2.3-alpha").to_s excludes 1.2.3-999 "1" includes 1.0.0 parse("1").to_s excludes 1.0.0-alpha parse("1").to_s includes 1.0.0 "1.2.3" includes 1.2.3 parse("1.2.3-alpha").to_s excludes 1.2.3-beta "1" excludes 0.999.999 parse("1.X").to_s excludes 1.0.0-alpha parse("1.2.3-alpha").to_s includes 1.2.3-alpha parse("1.x").to_s excludes 1.0.0-alpha "1.X" excludes 2.0.0-0 parse("1.2.3").to_s excludes 1.2.2 "1.2.x" excludes 1.1.999 "1.2.x" excludes 1.2.0-alpha parse("1").to_s excludes 2.0.0-0 parse("1.2.x").to_s includes 1.2.999 "1.2.x" excludes 1.3.0-0 "1.2.X" excludes 1.1.999 "1.2.3" excludes 1.2.4-alpha parse("1.2.x").to_s excludes 1.3.0-0 parse("1.2.3").to_s excludes 1.2.3-alpha "1.X" includes 1.0.0 "1.2" stringifies as >=1.2.0 <1.3.0 parse("1.2.3").to_s excludes 1.2.4-alpha "1" stringifies as >=1.0.0 <2.0.0 parse("1.2.X").to_s includes 1.2.0 parse("1.2.x").to_s excludes 1.1.999 "1.2.X" stringifies as >=1.2.0 <1.3.0 parse("1.2.X").to_s excludes 1.3.0-0 "1.2.X" includes 1.2.0 parse("1.2.X").to_s excludes 1.2.0-alpha parse("1.X").to_s includes 1.999.0 "1.2.3" excludes 1.2.3-alpha parse("1.X").to_s excludes 0.999.999 "1.x" includes 1.999.0 "1.2.3-alpha" stringifies as 1.2.3-alpha parse("1.x").to_s excludes 2.0.0-0 "1.2.X" includes 1.2.999 parse("1").to_s excludes 0.999.999 "1.X" includes 1.999.0 parse("1.x").to_s includes 1.999.0 "1.2" includes 1.2.0 "1.2" excludes 1.2.0-alpha parse("1.2").to_s excludes 1.1.999 parse("1.X").to_s includes 1.0.0 "1.2.X" excludes 1.3.0-0 "1.x" excludes 2.0.0-0 parse("1.x").to_s excludes 0.999.999 "1.2.x" stringifies as >=1.2.0 <1.3.0 parse("1.x").to_s includes 1.0.0 "1.x" includes 1.0.0 parse("1.2.3").to_s includes 1.2.3 parse("1.2.x").to_s includes 1.2.0 "1.X" excludes 0.999.999 "1.2" includes 1.2.999 parse("1.2.X").to_s includes 1.2.999 parse("1").to_s includes 1.999.0 "1" excludes 1.0.0-alpha "1.2.X" excludes 1.2.0-alpha "1.2.3-alpha" excludes 1.2.3-999 parse("1.2").to_s excludes 1.2.0-alpha "1.2.3-alpha" excludes 1.2.3-beta parse("1.2").to_s excludes 1.3.0-0 parse("1.X").to_s excludes 2.0.0-0 "1.2.x" includes 1.2.999 parse("1.2.X").to_s excludes 1.1.999 parse("1.2").to_s includes 1.2.999 "1" excludes 2.0.0-0 parse("1.2.x").to_s excludes 1.2.0-alpha "1.x" stringifies as >=1.0.0 <2.0.0 "1.X" excludes 1.0.0-alpha "1.X" stringifies as >=1.0.0 <2.0.0 open-ended expressions "<1.2.3" excludes 0.0.0-0 ">=1.2.3-alpha" includes 1.2.3-alpha0 parse(">=1.2.3").to_s includes 999.0.0 "< 1.2.3" excludes 2.0.0 ">1.2.3" stringifies as >1.2.3 "> 1.2.3-alpha" excludes 1.2.3-alpha parse("<1.2.3-alpha").to_s excludes 1.2.3-alpha parse("<= 1.2.3").to_s includes 0.0.0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha.0 parse(">1.2.3").to_s excludes 1.2.4-0 "<= 1.2.3-alpha" excludes 1.2.3-alpha.0 "> 1.2.3-alpha" includes 1.2.3-alpha.0 parse("<= 1.2.3-alpha").to_s includes 1.2.3-alpha parse(">=1.2.3").to_s excludes 1.2.2 parse("<=1.2.3").to_s includes 0.0.0 ">=1.2.3-alpha" includes 999.0.0 ">=1.2.3-alpha" excludes 1.2.3-alph parse("< 1.2.3-alpha").to_s excludes 1.2.3-alpha "> 1.2.3-alpha" stringifies as >1.2.3-alpha "<= 1.2.3" excludes 1.2.3-0 "<1.2.3" excludes 1.2.3-0 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha0 "<=1.2.3-alpha" includes 0.0.0 "<=1.2.3-alpha" includes 1.2.3-alpha "> 1.2.3-alpha" includes 1.2.3-alpha0 parse("<1.2.3").to_s excludes 0.0.0-0 ">= 1.2.3-alpha" includes 999.0.0 "<=1.2.3-alpha" excludes 1.2.3-alphb "<= 1.2.3-alpha" excludes 1.2.3-alphb parse(">= 1.2.3-alpha").to_s excludes 1.2.3-alph "<1.2.3-alpha" includes 0.0.0 ">= 1.2.3-alpha" excludes 1.2.4-alpha parse("<= 1.2.3-alpha").to_s excludes 0.0.0-0 parse("<1.2.3-alpha").to_s includes 0.0.0 parse("<1.2.3-alpha").to_s excludes 0.0.0-0 parse("< 1.2.3").to_s excludes 0.0.0-0 parse(">=1.2.3-alpha").to_s excludes 1.2.3-alph parse("<=1.2.3").to_s excludes 0.0.0-0 ">1.2.3-alpha" includes 1.2.3-alpha.0 "<= 1.2.3-alpha" includes 0.0.0 parse(">=1.2.3-alpha").to_s includes 999.0.0 ">=1.2.3" stringifies as >=1.2.3 "<= 1.2.3-alpha" stringifies as <=1.2.3-alpha parse("< 1.2.3").to_s excludes 2.0.0 parse("< 1.2.3-alpha").to_s excludes 2.0.0 ">=1.2.3" includes 999.0.0 "< 1.2.3-alpha" excludes 0.0.0-0 ">= 1.2.3" excludes 1.2.2 parse("<=1.2.3-alpha").to_s includes 0.0.0 parse("<= 1.2.3").to_s excludes 0.0.0-0 "< 1.2.3-alpha" stringifies as <1.2.3-alpha "<=1.2.3" includes 0.0.0 "<1.2.3-alpha" excludes 1.2.3-alpha "< 1.2.3-alpha" includes 1.2.3-alph parse("< 1.2.3-alpha").to_s includes 1.2.3-alph ">1.2.3" excludes 1.2.3 parse("<=1.2.3").to_s includes 1.2.3 parse("> 1.2.3-alpha").to_s excludes 1.2.3-alpha ">=1.2.3-alpha" stringifies as >=1.2.3-alpha parse("< 1.2.3-alpha").to_s includes 0.0.0 parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha0 "<=1.2.3" excludes 1.2.3-0 "< 1.2.3-alpha" includes 0.0.0 parse(">1.2.3").to_s includes 999.0.0 "<1.2.3-alpha" excludes 0.0.0-0 parse("<1.2.3").to_s includes 1.2.2 "< 1.2.3" excludes 1.2.3-0 parse(">=1.2.3-alpha").to_s excludes 1.2.4-alpha "<1.2.3" stringifies as <1.2.3 "<1.2.3" includes 0.0.0 ">= 1.2.3-alpha" includes 1.2.3-alpha parse(">= 1.2.3-alpha").to_s excludes 1.2.4-alpha parse(">= 1.2.3").to_s excludes 1.2.2 "<=1.2.3" stringifies as <=1.2.3 "<= 1.2.3" excludes 0.0.0-0 "> 1.2.3-alpha" includes 999.0.0 parse("<=1.2.3-alpha").to_s includes 1.2.3-alpha parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alphb ">= 1.2.3" stringifies as >=1.2.3 "< 1.2.3" includes 1.2.2 "< 1.2.3" stringifies as <1.2.3 ">= 1.2.3-alpha" includes 1.2.3-alpha0 parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha ">1.2.3-alpha" stringifies as >1.2.3-alpha parse("<1.2.3").to_s excludes 1.2.3-0 parse(">= 1.2.3").to_s includes 999.0.0 parse("<1.2.3-alpha").to_s excludes 2.0.0 ">= 1.2.3" excludes 1.2.3-0 parse("> 1.2.3-alpha").to_s includes 999.0.0 parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha0 parse("< 1.2.3").to_s includes 1.2.2 ">= 1.2.3-alpha" stringifies as >=1.2.3-alpha parse("<1.2.3").to_s includes 0.0.0 ">1.2.3-alpha" includes 999.0.0 ">1.2.3" excludes 1.2.4-0 parse("<= 1.2.3").to_s excludes 1.2.3-0 parse("< 1.2.3").to_s includes 0.0.0 parse("> 1.2.3").to_s includes 999.0.0 parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha.0 ">= 1.2.3-alpha" excludes 1.2.3-alph parse(">1.2.3-alpha").to_s excludes 1.2.3-alpha parse(">= 1.2.3-alpha").to_s includes 999.0.0 parse("<= 1.2.3-alpha").to_s includes 0.0.0 parse(">1.2.3-alpha").to_s includes 999.0.0 "<1.2.3" includes 1.2.2 ">= 1.2.3" includes 999.0.0 ">=1.2.3-alpha" includes 1.2.3-alpha parse("<=1.2.3-alpha").to_s excludes 0.0.0-0 "<1.2.3-alpha" stringifies as <1.2.3-alpha "<= 1.2.3" includes 0.0.0 ">1.2.3-alpha" excludes 1.2.3-alpha "> 1.2.3" excludes 1.2.3 parse("> 1.2.3").to_s excludes 1.2.3 "< 1.2.3-alpha" excludes 1.2.3-alpha "<1.2.3" excludes 2.0.0 "<=1.2.3-alpha" excludes 0.0.0-0 parse("<= 1.2.3").to_s includes 1.2.3 ">1.2.3" includes 999.0.0 "<= 1.2.3-alpha" includes 1.2.3-alpha parse(">= 1.2.3").to_s excludes 1.2.3-0 ">1.2.3-alpha" includes 1.2.3-alpha0 "<=1.2.3" excludes 0.0.0-0 parse(">=1.2.3").to_s excludes 1.2.3-0 "<= 1.2.3" includes 1.2.3 "<=1.2.3" includes 1.2.3 parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha "< 1.2.3" includes 0.0.0 "<=1.2.3-alpha" excludes 1.2.3-alpha.0 "< 1.2.3" excludes 0.0.0-0 parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha.0 "> 1.2.3" includes 999.0.0 "< 1.2.3-alpha" excludes 2.0.0 "> 1.2.3" excludes 1.2.4-0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha0 ">=1.2.3" excludes 1.2.3-0 "<1.2.3-alpha" excludes 2.0.0 "<= 1.2.3" stringifies as <=1.2.3 "<1.2.3-alpha" includes 1.2.3-alph parse("< 1.2.3").to_s excludes 1.2.3-0 ">=1.2.3" excludes 1.2.2 "<= 1.2.3-alpha" excludes 1.2.3-alpha0 parse("<=1.2.3").to_s excludes 1.2.3-0 "<= 1.2.3-alpha" excludes 0.0.0-0 parse("<1.2.3").to_s excludes 2.0.0 "<=1.2.3-alpha" excludes 1.2.3-alpha0 parse("<=1.2.3-alpha").to_s excludes 1.2.3-alphb parse(">1.2.3").to_s excludes 1.2.3 parse(">1.2.3-alpha").to_s includes 1.2.3-alpha.0 parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha0 parse("<1.2.3-alpha").to_s includes 1.2.3-alph "> 1.2.3" stringifies as >1.2.3 parse("> 1.2.3").to_s excludes 1.2.4-0 ">=1.2.3-alpha" excludes 1.2.4-alpha "<=1.2.3-alpha" stringifies as <=1.2.3-alpha parse("< 1.2.3-alpha").to_s excludes 0.0.0-0 ored expressions non-overlapping "1.2.3 || 1.2.5" stringifies as 1.2.3 || 1.2.5 returns nil on end parse("1.2.3 || 1.2.5").to_s includes 1.2.3 returns nil on begin parse("1.2.3 || 1.2.5").to_s excludes 1.2.5-0 parse("1.2.3 || 1.2.5").to_s includes 1.2.5 "1.2.3 || 1.2.5" includes 1.2.5 parse("1.2.3 || 1.2.5").to_s excludes 1.2.4 "1.2.3 || 1.2.5" excludes 1.2.5-0 "1.2.3 || 1.2.5" excludes 1.2.4 "1.2.3 || 1.2.5" includes 1.2.3 returns nil on exclude_end? returns nil on exclude_begin? "1.2.3 || 1.2.5" excludes 1.2.3-0 parse("1.2.3 || 1.2.5").to_s excludes 1.2.3-0 adjacent parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.5-0 "1.2.3 || 1.2.4 || 1.2.5" stringifies as >=1.2.3 <=1.2.5 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 returns nil on exclude_begin? parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.5 parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.3-0 returns nil on exclude_end? parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 returns expected begin "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.3 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.3-0 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 returns nil on end parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.3 "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.5-0 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.5 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 overlapping ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.4 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 ">=1.2.3 || 1.2.5" stringifies as >=1.2.3 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.3-0 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 ">=1.2.3 || 1.2.5" includes 1.2.3 ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 ">=1.2.3 || 1.2.5" includes 1.2.4 parse(">=1.2.3 || 1.2.5").to_s includes 1.2.3 ">=1.2.3 || 1.2.5" excludes 1.2.4-0 parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.4-0 ">=1.2.3 || 1.2.5" excludes 1.2.3-0 parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 inclusive range expressions parse("1.2.3 - 1.3.4").to_s excludes 1.3.5-0 parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.5 parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.2.3-alpha "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.4-alpha0 "1.2.3 - 1.3.4-alpha" includes 1.3.4-alpha "1.2.3 - 1.3.4" excludes 1.2.3-0 "1.2.3 - 1.3.4-alpha" includes 1.2.3 parse("1.2.3 - 1.3.4").to_s includes 1.3.4 "1.2.3-alpha - 1.3.4" includes 1.3.4 parse("1.2.3 - 1.3.4").to_s includes 1.2.3 "1.2.3 - 1.3.4" excludes 1.2.2 "1.2.3 - 1.3.4" stringifies as >=1.2.3 <=1.3.4 "1.2.3-alpha - 1.3.4" stringifies as >=1.2.3-alpha <=1.3.4 "1.2.3 - 1.3.4-alpha" stringifies as >=1.2.3 <=1.3.4-alpha parse("1.2.3 - 1.3.4-alpha").to_s includes 1.3.4-alpha "1.2.3 - 1.3.4" includes 1.3.4 parse("1.2.3-alpha - 1.3.4").to_s excludes 1.3.5-0 "1.2.3 - 1.3.4-alpha" excludes 1.2.3-0 "1.2.3-alpha - 1.3.4-alpha" includes 1.3.4-alpha parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.2.3-alph "1.2.3 - 1.3.4-alpha" excludes 1.3.4-alpha0 "1.2.3-alpha - 1.3.4-alpha" stringifies as >=1.2.3-alpha <=1.3.4-alpha parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.2 "1.2.3 - 1.3.4-alpha" excludes 1.3.5 parse("1.2.3-alpha - 1.3.4").to_s includes 1.3.4 "1.2.3 - 1.3.4-alpha" excludes 1.2.2 "1.2.3 - 1.3.4" includes 1.2.3 "1.2.3-alpha - 1.3.4" includes 1.2.3-alpha "1.2.3-alpha - 1.3.4" excludes 1.2.3-alph parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.3.4-alpha parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.5 parse("1.2.3-alpha - 1.3.4").to_s includes 1.2.3-alpha "1.2.3 - 1.3.4" excludes 1.3.5-0 parse("1.2.3 - 1.3.4").to_s excludes 1.2.3-0 parse("1.2.3-alpha - 1.3.4").to_s excludes 1.2.3-alph "1.2.3-alpha - 1.3.4-alpha" excludes 1.2.3-alph "1.2.3-alpha - 1.3.4-alpha" includes 1.2.3-alpha parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 "1.2.3-alpha - 1.3.4" excludes 1.3.5-0 parse("1.2.3 - 1.3.4").to_s excludes 1.2.2 parse("1.2.3 - 1.3.4-alpha").to_s includes 1.2.3 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.5 parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.3-0 The version 3.1.3 should be above range 2.x.x 3.5.0 should not be above range ^0.1.0 || ~3.0.1 || >4 <=5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 0.8.0-asdf should be above range =0.7.x 1.1.0 should not be below range >=1.0.0 1.2.3 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 1.0.1 should not be below range >1.0.0 0.1.97 should not be above range >=0.1.97(>=0.1.97) 0.7.0-asdf should not be above range >=0.7.x(>=0.7.0) 2.0.0 should not be below range <= 2.0.0 1.0.0-0 should be below range ^1 0.7.2 should not be below range =0.7.x 1.2.3-foo should not be above range *(*) 0.0.0 should not be below range >=0.2.3 || <0.0.1 0.6.0 should be below range >=0.7.x 1.2.3 should not be above range ~> 1(>=1.0.0 <2.0.0) 2.2.3 should be above range 1.0.0 - 2.0.0 2.0.0-beta should be above range 1 1.0.1 should not be below range > 1.0.0 3.2.0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 1.2.3 should not be above range 1.2.x(>=1.2.0 <1.3.0) 1.9999.9999 should not be above range <= 2.0.0(<=2.0.0) 1.2.4 should not be above range 0.1.20 || >1.2.4(0.1.20 || >1.2.4) 1.0.1 should not be below range >=1.0.0 1.0.0-beta should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 0.2.9 should not be above range < 2.0.0(<2.0.0) 4.0.0 should be above range 1.2.* || 2.* 0.2.9 should not be below range < 2.0.0 1.3.0 should be above range ~1.2.2 0.7.2 should be above range <0.7.x 0.2.4 should not be below range >=0.2.3 <=0.2.4 1.2.1 should be below range ~1.2.2 1.0.0 should not be below range >=1.0.0 2.0.0 should not be above range ^1.0.0 || ~2.0.1(>=1.0.0 <2.0.0 || >=2.0.1 <2.1.0) 2.0.0 should be below range >2.0.0 1.9999.9999 should not be above range <=2.0.0(<=2.0.0) 1.2.3 should not be above range ~>1(>=1.0.0 <2.0.0) 0.0.1 should be below range 1.0.0 1.2.9 should be below range >=2.0.0 0.6.1-0 should be below range ~0.6.1-1 3.2.2 should not be above range ~>3.2.1(>=3.2.1 <3.3.0) 0.2.3 should be below range ~1 1.0.0-beta.1 should be below range 1.0.0-beta.2 0.6.1-1 should not be above range ~0.6.1-1(>=0.6.1-1 <0.7.0) 1.2.9 should be below range >2.0.0 1.0.0 should not be below range >=1 1.3.3 should be above range 1.2.* 1.0.0-beta should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.2.3 should not be below range 0.1.20 || 1.2.4 1.0.2 should not be above range ~1.0(>=1.0.0 <1.1.0) 2.2.2 should be below range 2.3 2.1.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 1.3.0 should be above range 1.2.x 1.1.0 should be above range ~ 1.0 3.0.0 should be above range 2 0.2.4 should be below range ~>1 2.0.0 should be below range >2.0.0 1.2.3 should not be below range 1.2.x || 2.x 2.1.3 should not be below range 2.*.* 1.0.0 should not be below range 3.2.0 should be below range ~>3.2.1 0.2.9 should not be above range <= 2.0.0(<=2.0.0) 1.1.1 should not be above range <1.2(<1.2.0) 1.0.0-beta should not be below range ^1.0.0-alpha 1.0.0 should be below range 2.x.x 1.1.1 should be below range >=2.0.0 1.2.9 should be below range >=2.0.0 0.6.0-asdf should be below range =0.7.x 0.2.9 should not be below range <2.0.0 2.0.0 should not be above range <=2.0.0(<=2.0.0) 1.0.0 should be below range 1.2.x || 2.x 2.0.0 should not be above range ^3.0.0(>=3.0.0 <4.0.0) 2.1.3 should not be above range 2.*.*(>=2.0.0 <3.0.0) 2.5.0 should be above range ~2.4 1.0.0 should not be above range >= 1(>=1.0.0) 1.0.1 should not be below range >= 1.0.0 2.1.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 1.1.0 should not be above range >=1.0.0(>=1.0.0) 1.2.4 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 0.2.9 should not be below range <=2.0.0 1.1.0 should not be above range >= 1.0.0(>=1.0.0) 1.0.1 should be above range 1.0.0 2.1.3 should not be below range 1.2.x || 2.x 0.7.2 should not be above range =0.7.x(>=0.7.0 <0.8.0) 2.0.0 should not be above range <= 2.0.0(<=2.0.0) 1.0.0 should not be below range >= 1.0.0 1.3.3 should be above range 1.2.x 1.2.3 should not be below range 1.2.* || 2.* 1.0.0 should not be above range >=1.0.0(>=1.0.0) 1.2.3 should not be below range 1.2.* || 2.* 0.5.4-alpha should be below range ~v0.5.4-pre 2.4.2 should be above range 2.3 1.0.0 should not be above range 1.0.0(1.0.0) 1.0.1-beta1 should be above range 1.0.0 0.2.4 should not be above range >=0.2.3 <=0.2.4(>=0.2.3 <=0.2.4) 0.6.1-1 should not be below range ~0.6.1-1 3.1.3 should be above range 1.2.x || 2.x 1.1.1 should not be below range < 1.2 1.1.0 should be below range 1.2.x 1.2.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 0.2.4 should not be above range >=*(>=0.0.0) 2.2.9 should be above range <2.0.0 1.0.2 should not be below range ~ 1.0 1.3.0 should be above range ~1.2.2 1.2.1 should be below range > 1.2 1.2.3 should not be below range 1.2.* 1.2.3 should not be below range * 0.5.5 should not be below range ~v0.5.4-pre 1.1.3 should be below range 1.2.* 3.3.2 should be above range ~>3.2.1 3.2.9 should be above range <=2.0.0 1.2.3 should not be below range ~> 1 1.2.3 should not be below range ~1 3.0.0 should be above range <=2.0.0 0.8.0 should be above range =0.7.x 1.0.0 should not be above range (*) 0.5.5 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 2.2.3 should be above range ~1 0.2.3 should be below range ~>1 1.2.3 should not be below range * 1.0.0 should be below range >1 3.0.0 should be above range 2.x.x 2.4.0 should not be below range ~2.4 0.6.2 should not be below range <=0.7.x 1.1.9999 should be below range 1.2.* || 2.* 0.1.20 should not be below range 0.1.20 || 1.2.4 1.1.3 should be below range 2.x.x 0.2.3 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 0.6.0 should be below range =0.7.x 1.2.3 should not be below range 1.0.0 - 2.0.0 0.6.1-pre should be above range ~v0.5.4-pre 2.0.0 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 1.2.3 should not be above range *(*) 0.8.2 should be above range =0.7.x 0.7.0-asdf should be below range >=0.7.x 1.9999.9999 should not be above range <2.0.0(<2.0.0) 0.2.3 should be below range ~> 1 1.0.0-beta should be above range <1 0.6.2 should not be above range <=0.7.x(<0.8.0) 2.1.3 should not be below range 1.2.* || 2.* 2.9.9 should not be below range 1.0.0 - 2.0.0 0.2.3 should be below range ~1 2.0.0 should be above range <2.0.0 1.2.3 should not be below range x 1.0.0 should not be below range =0.1.0 0.2.5 should not be above range >0.2.3 >0.2.4 <=0.2.5(>0.2.4 <=0.2.5) 2.2.3 should be above range ~>1 2.4.0 should not be above range ~2.4(>=2.4.0 <2.5.0) 2.5.5 should be above range ~2.4 2.1.3 should not be below range 2.x.x 1.0.0-beta should be above range < 1 1.0.2 should not be below range ~1.0 1.0.0 should not be above range >= 1.0.0(>=1.0.0) 1.1.0 should not be below range > 1.0.0 1.0.0-beta should not be above range 1(>=1.0.0 <2.0.0) 2.0.0 should not be below range <=2.0.0 3.1.3 should be above range 2.*.* 1.1.0 should not be below range ~ 1.0 3.5.0 should not be below range ^0.1.0 || ~3.0.1 || >4 <=5.0.0 0.1.2 should be below range ~1.0 1.1.1 should not be above range < 1.2(<1.2.0) 2.2.4 should be above range ~>1 0.0.0 should be below range 1.0.0 0.7.0 should be above range <0.7.x 2.9999.9999 should be above range <=2.0.0 1.0.0-beta should be below range >1 0.1.97 should not be above range >=0.1.97(>=0.1.97) 2.1.1 should be above range <=2.0.0 2.3.5 should be below range ~2.4 1.1.0 should not be above range > 1.0.0(>1.0.0) 1.0.0 should not be above range >=1(>=1.0.0) 1.1.3 should be below range 2.*.* 0.9.9 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 1.0.0-beta should be below range 2 1.9999.9999 should not be below range < 2.0.0 1.1.3 should be below range 1.2.x || 2.x 2.1.2 should not be below range 2 0.0.0-beta should be below range 1 2.3.1 should not be below range 2.3 1.0.2 should not be above range ~ 1.0(>=1.0.0 <1.1.0) 2.0.0-beta should be above range 1 0.2.4 should not be below range >=0.2.3 || <0.0.1 0.0.0-0 should not be above range ^1(>=1.0.0 <2.0.0) 2.5.0 should be above range ~2.4 1.1.0 should not be above range >1.0.0(>1.0.0) 5.0.0-0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 1.2.3 should not be below range 1.2.x 0.6.0 should be above range ~v0.5.4-pre 1.0.1 should be below range 2.*.* 0.0.0 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 1.0.0 should be below range >=2.0.0 2.3.0 should be below range ~2.4 1.0.1 should not be above range >= 1.0.0(>=1.0.0) 1.1.0 should not be below range >= 1.0.0 2.2.9 should be above range <=2.0.0 3.1.2 should be above range 2 3.1.3 should be above range 1.2.* || 2.* 0.0.0 should be below range ~1.0 1.2.3 should not be above range 1.2.*(>=1.2.0 <1.3.0) 1.2.3 should not be below range ~>1 1.2.0 should be above range <1.2 2.9999.9999 should be above range <2.0.0 1.0.0 should be above range <1 4.0.0 should not be below range ^3.0.0 2.4.5 should not be above range ~2.4(>=2.4.0 <2.5.0) 1.1.0 should not be below range >1.0.0 2.4.5 should not be below range ~2.4 1.0.0 should not be below range 1.0.0 1.0.0 should be below range 2 0.2.5 should not be below range >0.2.3 >0.2.4 <=0.2.5 2.2.3 should be above range ~1 0.2.9 should not be below range <= 2.0.0 2.3.2 should be below range ~>3.2.1 0.7.2 should not be above range >=0.7.x(>=0.7.0) 0.0.1 should be below range 1.0.0 - 2.0.0 1.3.4 should not be below range || 1.1.3 should be below range 1.2.* || 2.* 3.2.2 should not be below range ~>3.2.1 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 0.2.9 should not be above range <=2.0.0(<=2.0.0) 2.3.0 should be below range ~2.4 0.2.4 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) 2.0.0 should not be below range ^1.0.0 || ~2.0.1 1.3.4 should not be above range ||(*) 2.0.0 should be above range 1.0.0 1.2.5 should be above range 0.1.20 || 1.2.4 0.1.5 should be below range 0.1.20 || 1.2.4 1.0.1 should not be above range >1.0.0(>1.0.0) 1.2.3 should not be above range ~1(>=1.0.0 <2.0.0) 2.2.1 should be below range 2.3 0.5.4 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) 1.9999.9999 should be below range >=2.0.0 1.0.0-beta should be below range 1 1.2.4 should not be below range 0.1.20 || >1.2.4 2.0.0 should not be below range 1.0.0 - 2.0.0 0.2.3 should not be below range >=0.2.3 || <0.0.1 5.0.1 should be above range 2.*.* 1.3.3 should be above range 1.2.* 1.2.1 should be below range ~1.2.2 3.0.0 should be above range 1.2.x || 2.x 1.1.3 should be below range 1.2.* 0.5.4 should not be below range ~v0.5.4-pre 2.3.1 should not be above range 2.3(>=2.3.0 <2.4.0) 1.9999.9999 should not be below range <= 2.0.0 0.7.0-asdf should not be above range =0.7.x(>=0.7.0 <0.8.0) 0.7.2 should not be below range >=0.7.x 1.1.3 should be below range 1.2.x 1.2.3 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) 1.9999.9999 should not be above range < 2.0.0(<2.0.0) 0.5.4-alpha should be below range ~v0.5.4-pre 0.1.0 should be below range ~ 1.0 0.2.3 should be below range 1.0.0 - 2.0.0 0.2.9 should not be above range <2.0.0(<2.0.0) 2.1.2 should not be above range 2(>=2.0.0 <3.0.0) 1.1.2 should be above range ~1.0 5.0.0-0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.2.0 should be below range >1.2 3.2.3 should be above range ~> 1 2.1.3 should not be above range 2.x.x(>=2.0.0 <3.0.0) 3.3.0 should be above range ~>3.2.1 1.2.3 should not be above range *(*) 1.2.1 should be above range < 1.2 2.4.1 should be above range 2.3 0.6.2 should be below range >=0.7.x 0.6.2 should be below range =0.7.x 3.2.0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) 1.1.0 should be above range ~1.0 1.9999.9999 should not be below range <2.0.0 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) 1.0.0-beta should be below range > 1 0.1.20 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) 0.2.4 should not be below range >=* 1.0.1 should not be above range > 1.0.0(>1.0.0) 1.2.3 should not be above range x(*) 0.1.97 should not be below range >=0.1.97 1.1.1 should not be below range <1.2 1.0.0-beta should not be below range ~1.0.0-alpha 2.0.1 should be above range 1.0.0 - 2.0.0 0.7.1-1 should be above range ~0.6.1-1 1.2.4 should not be below range 0.1.20 || 1.2.4 1.9999.9999 should not be below range <=2.0.0 0.7.0-asdf should be below range =0.7.x 1.0.0 should not be below range >= 1 1.0.1 should not be above range >=1.0.0(>=1.0.0) 1.9999.9999 should be below range 2 #intersection cannot intersect with non-VersionRanges between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 6.0.0 - 1.0.0 4.0.0 - 1.0.0 11.0.0 - 4.0.0 10.0.0 - 5.0.0 15.0.0 - 11.0.0 >=10.0.0 <5.0.0 9.0.0 - 6.0.0 15.0.0 - 9.0.0 15.0.0 - 10.0.0 >=7.0.0 <1.0.0 >=5.0.0 <1.0.0 between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 >=7.0.0 <1.0.0 6.0.0 - 1.0.0 10.0.0 - 5.0.0 11.0.0 - 4.0.0 >=5.0.0 <1.0.0 9.0.0 - 6.0.0 4.0.0 - 1.0.0 5.0.0 - 1.0.0 15.0.0 - 9.0.0 15.0.0 - 11.0.0 15.0.0 - 10.0.0 is commutative between >=10.0.0 <5.0.0 & 15.0.0 - 9.0.0 between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 between 10.0.0 - 5.0.0 & >=10.0.0 <5.0.0 between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 between 10.0.0 - 5.0.0 & 11.0.0 - 4.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 11.0.0 between >=10.0.0 <5.0.0 & 15.0.0 - 10.0.0 between >=10.0.0 <5.0.0 & 4.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & 4.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 10.0.0 - 5.0.0 between >=10.0.0 <5.0.0 & >=7.0.0 <1.0.0 between >=10.0.0 <5.0.0 & >=5.0.0 <1.0.0 between >=10.0.0 <5.0.0 & 11.0.0 - 4.0.0 between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & >=5.0.0 <1.0.0 between 10.0.0 - 5.0.0 & 6.0.0 - 1.0.0 between >=10.0.0 <5.0.0 & 6.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 10.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 9.0.0 between 10.0.0 - 5.0.0 & >=7.0.0 <1.0.0 between 10.0.0 - 5.0.0 & 10.0.0 - 5.0.0 between >=10.0.0 <5.0.0 & 5.0.0 - 1.0.0 between 10.0.0 - 5.0.0 & 15.0.0 - 11.0.0 SemanticPuppet::Dependency .query without sources returns an unsatisfied ModuleRelease with one source queries the source for each dependency only once queries the source for release information returns a ModuleRelease with the requested dependencies populates all returned ModuleReleases with related dependencies populates the returned ModuleRelease with related dependencies queries the source for each dependency with multiple sources queries each source in turn resolves all dependencies against all sources .resolve for a module with circular dependencies that can be resolved terminates that cannot be resolved fails with an appropriate message for a module with dependencies returns the greatest releases matching the dependency range when the dependency has both stable and prerelease versions returns the greatest stable release matching the range when the dependency has no stable versions returns the greatest prerelease version matching the range when the dependency cannot be satisfied sets unsatisfiable fails with an appropriate message that violate graph constraints that cannot be resolved fails with an appropriate message that can be resolved terminates for a module with competing dependencies that overlap returns the greatest release satisfying all dependencies that do not overlap fails with an appropriate message for a module without dependencies returns the greatest release matching the version range when the query includes both stable and prerelease versions returns the greatest stable release matching the range when the query omits all stable versions returns the greatest prerelease version matching the range when the query omits all versions fails with an appropriate message for a module with dependencies that violate module constraints on the graph that can be resolved terminates that cannot be resolved fails with an appropriate message .sources can be emptied by using #clear_sources can be modified by using #add_source defaults to an empty list is frozen SemanticPuppet::Dependency::UnsatisfiableGraph #message is expected to match /foo, bar, and baz/ #sentence_from_list with a list of two items is expected to eql "foo and bar" with a list of three items is expected to eql "foo, bar, and baz" with a list of one item is expected to eql "foo" with a list of more than three items is expected to eql "foo, bar, baz, and quux" SemanticPuppet::Version #== should yield false when the major differs should yield false when the patch differs should yield false when the minor differs should yield false when the prerelease differs should yield true when comparing two equal instances should yield false when compared to something that is not a Version .parse Spec v1.0.0 Section 2 rejects versions that contain non-integers rejects versions that contain too few parts rejects versions that contain too many parts permits zeroes in version number parts examples 1.9.0 1.10.0 1.11.0 Section 4 rejects numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions examples 1.0.0-beta2 1.0.0-beta1 1.0.0-alpha1 1.0.0-rc1 Spec v2.0.0 Section 10 rejects empty build metadata permits numeric build identifiers of zero rejects build identifiers with non-alphanumerics rejects empty build identifiers permits numeric build identifiers with leading zeroes permits non-numeric build identifiers with leading zeroes examples 1.0.0-beta+exp.sha.5114f85 1.0.0-alpha+001 1.0.0+20130313144700 Section 2 rejects version numbers containing leading zeroes rejects versions that contain negative integers rejects versions that contain non-integers rejects versions that contain too few parts rejects versions that contain too many parts permits zeroes in version number parts examples 1.11.0 1.10.0 1.9.0 Section 9 rejects prerelease identifiers with non-alphanumerics rejects empty prerelease version identifiers permits numeric prerelease identifiers of zero rejects numeric prerelease identifiers with leading zeroes rejects empty prerelease versions permits non-numeric prerelease identifiers with leading zeroes examples 1.0.0-alpha 1.0.0-alpha.1 1.0.0-x.7.z.92 1.0.0-0.3.7 #<=> Spec v1.0.0 Section 4 sorted order Spec v2.0.0 Section 11 comparisions between prereleases identifiers are parsed left-to-right larger identifier sets have precendence non-numeric identifiers have a higher precendence build metadata does figure into equality build metadata does not figure into precendence non-numeric identifiers sort ASCIIbetically sorted order identical prereleases are equal numeric identifiers sort numerically comparisons against prereleases prereleases have lower precedence comparisons without prereleases sorted order #next with :patch does not modify the original version removes any build information returns the next patch version removes any prerelease information with :major resets the minor and patch versions to 0 does not modify the original version removes any build information removes any prerelease information returns the next major version with :minor removes any build information resets the patch version to 0 removes any prerelease information returns the next minor version does not modify the original version .valid? Spec v2.0.0 Section 9 rejects empty prerelease version identifiers rejects numeric prerelease identifiers with leading zeroes permits non-numeric prerelease identifiers permits non-numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero rejects empty prerelease versions rejects prerelease identifiers with non-alphanumerics Section 2 permits zeroes in version number parts rejects version numbers containing leading zeroes rejects versions that contain too few parts rejects versions that contain negative integers rejects versions that contain too many parts rejects versions that contain non-integers Section 10 rejects empty build identifiers permits numeric build identifiers of zero rejects empty build metadata rejects build identifiers with non-alphanumerics permits numeric build identifiers with leading zeroes permits non-numeric build identifiers with leading zeroes Spec v1.0.0 Section 4 permits non-numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero rejects prerelease identifiers with non-alphanumerics rejects numeric prerelease identifiers with leading zeroes rejects empty prerelease versions Section 2 rejects versions that contain non-integers rejects versions that contain too many parts permits zeroes in version number parts rejects versions that contain too few parts SemanticPuppet::Dependency::ModuleRelease #<=> orders releases by name first considers releases with greater version numbers greater considers releases with lesser version numbers lesser orders releases with different names lexographically #to_s is expected to =~ /1.2.3/ is expected to =~ /foobarbaz/ #<< does not mark mis-matching dependency names as satisfied marks matching dependencies as satisfied does not mark mis-matching dependency versions as satisfied #satisfies_dependency? returns false when there are no dependencies to satisfy returns false when the release does not match the dependency name returns true when the release matches the dependency returns false when the release does not match the dependency version #satisfied? returns false when no dependencies have been satisified returns false when not all dependencies have been satisified returns true when there are no dependencies to satisfy returns false when not all dependency versions have been satisified returns true when all dependencies have been satisified #dependency_names lists the names of all the release's dependencies #== can compare a release with something that is not a release considers two releases with different names to be different considers two releases with different versions to be different considers two equal releases to be equal considers a release different from something that is not a release SemanticPuppet::Dependency::Graph #satisfies_graph? returns true if the solution violates no graph constraints returns false if the solution violates any graph constraint returns false if the solution violates a graph constraint #satisfies_dependency? is not satisfied by modules that do not fulfill the constraint is not satisfied by modules that do not fulfill all the constraints is not satisfied by modules it does not depend on is satisfied by modules that do fulfill all the constraints #add_graph_constraint permits multiple graph constraints can create a new constraint on a graph #add_constraint can create a new constraint on a module permits multiple constraints against the same module name #initialize implements the GraphNode protocol adds the named dependencies for every key in the passed hash adds constraints for every key in the passed hash can be called without arguments SemanticPuppet::Dependency::GraphNode #satisfied is unsatisfied when no nodes have been appended is satisfied when all dependencies are fulfilled is unsatisfied when any dependencies are missing #populate_children saves all relevant nodes as its children accepts a graph solution and populates it across all nodes #<=> can be compared #<< does not append nodes with unknown names sorts the dependencies for each addition to the same node appends satisfying nodes to the dependencies sorts once the dependencies for a specific node does not append unsatisfying nodes dependencies are added by #add_dependency are maintained in the #dependencies Hash Finished in 0.73149 seconds (files took 0.50549 seconds to load) 988 examples, 0 failures Randomized with seed 58691 ┌──────────────────────────────────────────────────────────────────────────────┐ │ dh_ruby --install finished │ └──────────────────────────────────────────────────────────────────────────────┘ dh_installdocs -O--buildsystem=ruby dh_ruby_fixdocs -O--buildsystem=ruby debian/rules override_dh_installchangelogs make[1]: Entering directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installchangelogs CHANGELOG.md -O--buildsystem=ruby make[1]: Leaving directory '/build/reproducible-path/ruby-semantic-puppet-1.1.0' dh_installsystemduser -O--buildsystem=ruby dh_perl -O--buildsystem=ruby dh_link -O--buildsystem=ruby dh_strip_nondeterminism -O--buildsystem=ruby dh_compress -X.rb -O--buildsystem=ruby dh_fixperms -O--buildsystem=ruby dh_missing -O--buildsystem=ruby dh_ruby_fixdepends -O--buildsystem=ruby dh_installdeb -O--buildsystem=ruby dh_gencontrol -O--buildsystem=ruby dpkg-gencontrol: warning: Depends field of package ruby-semantic-puppet: substitution variable ${shlibs:Depends} used, but is not defined dh_md5sums -O--buildsystem=ruby dh_builddeb -O--buildsystem=ruby dpkg-deb: building package 'ruby-semantic-puppet' in '../ruby-semantic-puppet_1.1.0-1_all.deb'. dpkg-genbuildinfo --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.buildinfo dpkg-genchanges --build=binary -O../ruby-semantic-puppet_1.1.0-1_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . 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/3978756/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/3978756/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/3978756 and its subdirectories I: Current time: Thu Apr 24 16:54:24 +14 2025 I: pbuilder-time-stamp: 1745463264 + false + set +x Thu Apr 24 02:54:24 UTC 2025 I: Signing ./b2/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo as ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc Thu Apr 24 02:54:24 UTC 2025 I: Signed ./b2/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo as ./b2/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc Thu Apr 24 02:54:24 UTC 2025 - build #2 for ruby-semantic-puppet/unstable/amd64 on ionos1-amd64 done. Starting cleanup. All cleanup done. Thu Apr 24 02:54:24 UTC 2025 - reproducible_build.sh stopped running as /tmp/jenkins-script-46SAMkDp, removing. /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9: total 128 drwxr-xr-x 2 jenkins jenkins 4096 Apr 24 02:50 b1 drwxr-xr-x 2 jenkins jenkins 4096 Apr 24 02:54 b2 -rw------- 1 jenkins jenkins 111289 Apr 24 02:50 rbuildlog.34JXe31 -rw-r--r-- 1 jenkins jenkins 1549 Nov 18 05:38 ruby-semantic-puppet_1.1.0-1.dsc /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b1: total 196 -rw-r--r-- 1 jenkins jenkins 108260 Apr 24 02:50 build.log -rw-r--r-- 1 jenkins jenkins 2836 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1549 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1.dsc -rw-r--r-- 1 jenkins jenkins 15108 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_all.deb -rw-r--r-- 1 jenkins jenkins 7606 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 8488 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1300 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_amd64.changes -rw-r--r-- 1 jenkins jenkins 1753 Apr 24 02:50 ruby-semantic-puppet_1.1.0-1_source.changes -rw-r--r-- 1 jenkins jenkins 28963 Apr 24 02:50 ruby-semantic-puppet_1.1.0.orig.tar.gz /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b2: total 192 -rw-r--r-- 1 jenkins jenkins 110179 Apr 24 02:54 build.log -rw-r--r-- 1 jenkins jenkins 2836 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1549 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1.dsc -rw-r--r-- 1 jenkins jenkins 15108 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1_all.deb -rw-r--r-- 1 jenkins jenkins 7595 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 8477 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1300 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1_amd64.changes -rw-r--r-- 1 jenkins jenkins 1753 Apr 24 02:54 ruby-semantic-puppet_1.1.0-1_source.changes -rw-r--r-- 1 jenkins jenkins 28963 Apr 24 02:54 ruby-semantic-puppet_1.1.0.orig.tar.gz Thu Apr 24 02:54:25 UTC 2025 I: Deleting $TMPDIR on ionos1-amd64.debian.net. Thu Apr 24 02:54:26 UTC 2025 I: ruby-semantic-puppet_1.1.0-1_amd64.changes: Format: 1.8 Date: Mon, 18 Nov 2024 00:22:21 -0500 Source: ruby-semantic-puppet Binary: ruby-semantic-puppet Architecture: all Version: 1.1.0-1 Distribution: unstable Urgency: medium Maintainer: Puppet Package Maintainers Changed-By: Jérôme Charaoui Description: ruby-semantic-puppet - Useful tools for working with semantic versions with Puppet Changes: ruby-semantic-puppet (1.1.0-1) unstable; urgency=medium . * Team upload. . * New upstream version 1.1.0 * d/control: drop obsolete X*-Ruby-Versions * d/control: bump Standards-Version, no changes needed * run wrap-and-sort -bastk Checksums-Sha1: c4ac6f5f99e47a02f5255999623c4d6137d48eb8 15108 ruby-semantic-puppet_1.1.0-1_all.deb 075dda90cf0a8cac93a5d9d9dc7e0f3e3deee605 7606 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo Checksums-Sha256: 7e9e7c75b0ad379340e749153b2d7f1bf7b0113fd8830ce9a50de8ec7e21452c 15108 ruby-semantic-puppet_1.1.0-1_all.deb e469411617b38461650ef0818d15a3b2de445384a4c63335d05e93686f334024 7606 ruby-semantic-puppet_1.1.0-1_amd64.buildinfo Files: 473ac5138497b695bbf015c605e95cd0 15108 ruby optional ruby-semantic-puppet_1.1.0-1_all.deb 97777091ab77bf068c15abf837299370 7606 ruby optional ruby-semantic-puppet_1.1.0-1_amd64.buildinfo removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/ruby-semantic-puppet_1.1.0-1.rbuild.log' removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/ruby-semantic-puppet_1.1.0-1.rbuild.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/amd64/ruby-semantic-puppet_1.1.0-1.build1.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/amd64/ruby-semantic-puppet_1.1.0-1.build2.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/buildinfo/unstable/amd64/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo' removed '/var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/ruby-semantic-puppet_1.1.0-1.diff.gz' Diff of the two buildlogs: -- --- b1/build.log 2025-04-24 02:50:40.508819885 +0000 +++ b2/build.log 2025-04-24 02:54:25.488031613 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue May 26 21:12:41 -12 2026 -I: pbuilder-time-stamp: 1779873161 +I: Current time: Thu Apr 24 16:50:44 +14 2025 +I: pbuilder-time-stamp: 1745463044 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -22,52 +22,84 @@ dpkg-source: info: unpacking ruby-semantic-puppet_1.1.0-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1808992/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3978756/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 Apr 24 02:51 /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/3978756/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3978756/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='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=40 ' + 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='52ddfad35c24475e8c4d5ab875183a1b' - 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='1808992' - PS1='# ' - PS2='> ' + INVOCATION_ID=fcbd7db67971459f89ee84c29ece6bbf + 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=3978756 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.jHOxZbK9/pbuilderrc_7375 --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.jHOxZbK9/b1 --logfile b1/build.log ruby-semantic-puppet_1.1.0-1.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.jHOxZbK9/pbuilderrc_ZWPi --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.jHOxZbK9/b2 --logfile b2/build.log ruby-semantic-puppet_1.1.0-1.dsc' + SUDO_GID=110 + 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 ionos15-amd64 6.12.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-33-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.133-1 (2025-04-10) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1808992/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -234,7 +266,7 @@ Get: 123 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 124 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 125 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] -Fetched 35.4 MB in 0s (101 MB/s) +Fetched 35.4 MB in 1s (35.2 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal: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 ... 19839 files and directories currently installed.) @@ -652,8 +684,8 @@ Setting up tzdata (2025b-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed May 27 09:13:24 UTC 2026. -Universal Time is now: Wed May 27 09:13:24 UTC 2026. +Local time is now: Thu Apr 24 02:53:02 UTC 2025. +Universal Time is now: Thu Apr 24 02:53:02 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up ruby-minitest (5.25.4-2) ... @@ -769,7 +801,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/ruby-semantic-puppet-1.1.0/ && 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-semantic-puppet_1.1.0-1_source.changes +I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/3978756/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-semantic-puppet-1.1.0/ && 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-semantic-puppet_1.1.0-1_source.changes dpkg-buildpackage: info: source package ruby-semantic-puppet dpkg-buildpackage: info: source version 1.1.0-1 dpkg-buildpackage: info: source distribution unstable @@ -802,7 +838,7 @@ │ ruby-semantic-puppet: Installing files and building extensions for ruby3.3 │ └──────────────────────────────────────────────────────────────────────────────┘ -/usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20260526-1821003-5pysn/gemspec +/usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20250424-4008489-4d777/gemspec WARNING: open-ended dependency on rake (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on rspec (>= 0, development) is not recommended @@ -820,7 +856,7 @@ Name: semantic_puppet Version: 1.1.0 File: semantic_puppet-1.1.0.gem -/usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-semantic-puppet/usr/share/rubygems-integration/all /tmp/d20260526-1821003-5pysn/semantic_puppet-1.1.0.gem +/usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-semantic-puppet/usr/share/rubygems-integration/all /tmp/d20250424-4008489-4d777/semantic_puppet-1.1.0.gem /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency.rb /build/reproducible-path/ruby-semantic-puppet-1.1.0/debian/ruby-semantic-puppet/usr/share/rubygems-integration/all/gems/semantic_puppet-1.1.0/lib/semantic_puppet/dependency/graph.rb @@ -865,1114 +901,1114 @@ All examples were filtered out; ignoring {:focus=>true} -Randomized with seed 31987 +Randomized with seed 58691 + +SemanticPuppet::VersionRange + .parse + "reasonably close" expressions + "~ 1.2" includes 1.2.999 + parse("~1.2").to_s excludes 1.3.0-0 + parse("~1.2").to_s includes 1.2.999 + parse("~ 1.2").to_s includes 1.2.0 + "~ 1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 + parse("~1.2.3").to_s excludes 1.3.0-0 + parse("~1.2").to_s excludes 1.1.999 + parse("~1.2").to_s excludes 1.2.0-0 + "~1.2.3" includes 1.2.5 + "~1" stringifies as >=1.0.0 <2.0.0 + "~ 1.2.3-alpha" excludes 1.2.3-alph + "~ 1" excludes 2.0.0-0 + parse("~ 1").to_s excludes 1.0.0-0 + "~ 1" excludes 0.999.999 + parse("~ 1.2.3").to_s excludes 1.3.0-0 + "~ 1" excludes 1.0.0-0 + parse("~ 1.2.3-alpha").to_s excludes 1.2.3-alph + parse("~1.2.3").to_s excludes 1.2.2 + "~1" includes 1.999.999 + "~ 1.2.3" excludes 1.3.0-0 + "~1.2.3-alpha" includes 1.2.3-alpha + "~ 1.2" stringifies as >=1.2.0 <1.3.0 + "~1.2.3" excludes 1.2.3-0 + parse("~ 1.2.3").to_s includes 1.2.5 + "~1.2.3" includes 1.2.3 + "~ 1.2" excludes 1.3.0-0 + "~ 1" stringifies as >=1.0.0 <2.0.0 + parse("~ 1").to_s excludes 0.999.999 + "~ 1.2.3-alpha" includes 1.2.3-alpha + "~1.2.3" excludes 1.3.0-0 + parse("~ 1").to_s excludes 2.0.0-0 + parse("~ 1.2").to_s excludes 1.2.0-0 + "~1.2.3" excludes 1.2.2 + parse("~1.2.3-alpha").to_s includes 1.2.3-alpha + parse("~1.2.3").to_s includes 1.2.3 + parse("~ 1.2.3").to_s excludes 1.2.2 + parse("~1.2").to_s includes 1.2.0 + parse("~ 1.2.3-alpha").to_s includes 1.2.3-alpha + "~1.2" stringifies as >=1.2.0 <1.3.0 + "~1.2" excludes 1.3.0-0 + "~ 1" includes 1.999.999 + parse("~1").to_s includes 1.0.0 + "~ 1.2" includes 1.2.0 + "~1" excludes 0.999.999 + "~1.2" excludes 1.1.999 + "~ 1.2.3" includes 1.2.3 + "~ 1.2.3-alpha" excludes 1.2.4-0 + parse("~ 1").to_s includes 1.999.999 + parse("~1.2.3").to_s excludes 1.2.3-0 + "~1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 + parse("~1.2.3-alpha").to_s excludes 1.2.4-0 + "~1.2.3-alpha" includes 1.2.3 + parse("~1.2.3").to_s includes 1.2.5 + "~1.2" includes 1.2.999 + parse("~ 1.2").to_s excludes 1.3.0-0 + "~1" excludes 2.0.0-0 + "~ 1.2.3-alpha" includes 1.2.3 + parse("~1").to_s excludes 1.0.0-0 + parse("~ 1.2.3-alpha").to_s excludes 1.2.4-0 + parse("~1").to_s includes 1.999.999 + "~ 1.2.3" excludes 1.2.3-0 + parse("~ 1.2.3").to_s excludes 1.2.3-0 + "~1.2" excludes 1.2.0-0 + parse("~1.2.3-alpha").to_s includes 1.2.3 + "~1" includes 1.0.0 + parse("~1").to_s excludes 2.0.0-0 + parse("~1.2.3-alpha").to_s excludes 1.2.3-alph + "~1.2.3-alpha" excludes 1.2.4-0 + parse("~ 1.2.3-alpha").to_s includes 1.2.3 + parse("~ 1.2").to_s includes 1.2.999 + "~1.2.3" stringifies as >=1.2.3 <1.3.0 + "~ 1" includes 1.0.0 + parse("~1").to_s excludes 0.999.999 + "~ 1.2.3" includes 1.2.5 + parse("~ 1.2.3").to_s includes 1.2.3 + parse("~ 1").to_s includes 1.0.0 + parse("~ 1.2").to_s excludes 1.1.999 + "~ 1.2" excludes 1.2.0-0 + "~ 1.2.3" excludes 1.2.2 + "~1" excludes 1.0.0-0 + "~1.2" includes 1.2.0 + "~1.2.3-alpha" excludes 1.2.3-alph + "~ 1.2" excludes 1.1.999 + "~ 1.2.3" stringifies as >=1.2.3 <1.3.0 + invalid expressions + raise an appropriate exception + unioned expressions + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" stringifies as >=3.0.0 <5.0.0 + "1.2 <1.2.5" includes 1.2.0 + "1.2 <1.2.5" excludes 1.2.5-0 + "1.2 <1.2.5" stringifies as >=1.2.0 <1.2.5 + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 3.0.0 + parse("1 <=1.2.5").to_s excludes 1.2.6-0 + "1 <=1.2.5" includes 1.0.0 + "<1.0.0 >2.0.0" excludes 0.0.0-0 + parse("1 <=1.2.5").to_s includes 1.2.5 + parse("1.2 <1.2.5").to_s includes 1.2.0 + "1 <=1.2.5" includes 1.2.5 + "1 <=1.2.5" excludes 1.9.0 + "1.2 <1.2.5" excludes 1.1.999 + "1.2 <1.2.5" excludes 1.9.0 + parse("1.2 <1.2.5").to_s excludes 1.1.999 + parse("<1.0.0 >2.0.0").to_s excludes 0.0.0 + "<1.0.0 >2.0.0" stringifies as <0.0.0 + parse("<1.0.0 >2.0.0").to_s excludes 0.0.0-0 + "1.2 <1.2.5" includes 1.2.4 + parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 3.0.0-0 + parse("1 <=1.2.5").to_s excludes 1.9.0 + "1.2 <1.2.5" excludes 1.2.0-0 + "1 <=1.2.5" stringifies as >=1.0.0 <=1.2.5 + parse("1.2 <1.2.5").to_s includes 1.2.4 + "1 <=1.2.5" excludes 1.2.6-0 + "1 <=1.2.5" excludes 0.999.999 + parse("1 <=1.2.5").to_s excludes 0.999.999 + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 3.0.0-0 + parse("1.2 <1.2.5").to_s excludes 1.2.5-0 + parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 5.0.0-0 + parse("1 <=1.2.5").to_s includes 1.0.0 + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 5.0.0-0 + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 2.999.999 + "1 <=1.2.5" excludes 1.0.0-0 + parse("1.2 <1.2.5").to_s excludes 1.2.0-0 + parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 3.0.0 + ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 4.999.999 + "<1.0.0 >2.0.0" excludes 0.0.0 + parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 4.999.999 + parse("1 <=1.2.5").to_s excludes 1.0.0-0 + parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 2.999.999 + parse("1.2 <1.2.5").to_s excludes 1.9.0 + loose version expressions + "1.2.3-alpha" includes 1.2.3-alpha + "1.2.x" includes 1.2.0 + "1.2" excludes 1.3.0-0 + "1.x" excludes 1.0.0-alpha + "1.x" excludes 0.999.999 + "1.2.3" stringifies as 1.2.3 + parse("1.2").to_s includes 1.2.0 + "1.2" excludes 1.1.999 + "1" includes 1.999.0 + "1.2.3" excludes 1.2.2 + parse("1.2.3-alpha").to_s excludes 1.2.3-999 + "1" includes 1.0.0 + parse("1").to_s excludes 1.0.0-alpha + parse("1").to_s includes 1.0.0 + "1.2.3" includes 1.2.3 + parse("1.2.3-alpha").to_s excludes 1.2.3-beta + "1" excludes 0.999.999 + parse("1.X").to_s excludes 1.0.0-alpha + parse("1.2.3-alpha").to_s includes 1.2.3-alpha + parse("1.x").to_s excludes 1.0.0-alpha + "1.X" excludes 2.0.0-0 + parse("1.2.3").to_s excludes 1.2.2 + "1.2.x" excludes 1.1.999 + "1.2.x" excludes 1.2.0-alpha + parse("1").to_s excludes 2.0.0-0 + parse("1.2.x").to_s includes 1.2.999 + "1.2.x" excludes 1.3.0-0 + "1.2.X" excludes 1.1.999 + "1.2.3" excludes 1.2.4-alpha + parse("1.2.x").to_s excludes 1.3.0-0 + parse("1.2.3").to_s excludes 1.2.3-alpha + "1.X" includes 1.0.0 + "1.2" stringifies as >=1.2.0 <1.3.0 + parse("1.2.3").to_s excludes 1.2.4-alpha + "1" stringifies as >=1.0.0 <2.0.0 + parse("1.2.X").to_s includes 1.2.0 + parse("1.2.x").to_s excludes 1.1.999 + "1.2.X" stringifies as >=1.2.0 <1.3.0 + parse("1.2.X").to_s excludes 1.3.0-0 + "1.2.X" includes 1.2.0 + parse("1.2.X").to_s excludes 1.2.0-alpha + parse("1.X").to_s includes 1.999.0 + "1.2.3" excludes 1.2.3-alpha + parse("1.X").to_s excludes 0.999.999 + "1.x" includes 1.999.0 + "1.2.3-alpha" stringifies as 1.2.3-alpha + parse("1.x").to_s excludes 2.0.0-0 + "1.2.X" includes 1.2.999 + parse("1").to_s excludes 0.999.999 + "1.X" includes 1.999.0 + parse("1.x").to_s includes 1.999.0 + "1.2" includes 1.2.0 + "1.2" excludes 1.2.0-alpha + parse("1.2").to_s excludes 1.1.999 + parse("1.X").to_s includes 1.0.0 + "1.2.X" excludes 1.3.0-0 + "1.x" excludes 2.0.0-0 + parse("1.x").to_s excludes 0.999.999 + "1.2.x" stringifies as >=1.2.0 <1.3.0 + parse("1.x").to_s includes 1.0.0 + "1.x" includes 1.0.0 + parse("1.2.3").to_s includes 1.2.3 + parse("1.2.x").to_s includes 1.2.0 + "1.X" excludes 0.999.999 + "1.2" includes 1.2.999 + parse("1.2.X").to_s includes 1.2.999 + parse("1").to_s includes 1.999.0 + "1" excludes 1.0.0-alpha + "1.2.X" excludes 1.2.0-alpha + "1.2.3-alpha" excludes 1.2.3-999 + parse("1.2").to_s excludes 1.2.0-alpha + "1.2.3-alpha" excludes 1.2.3-beta + parse("1.2").to_s excludes 1.3.0-0 + parse("1.X").to_s excludes 2.0.0-0 + "1.2.x" includes 1.2.999 + parse("1.2.X").to_s excludes 1.1.999 + parse("1.2").to_s includes 1.2.999 + "1" excludes 2.0.0-0 + parse("1.2.x").to_s excludes 1.2.0-alpha + "1.x" stringifies as >=1.0.0 <2.0.0 + "1.X" excludes 1.0.0-alpha + "1.X" stringifies as >=1.0.0 <2.0.0 + open-ended expressions + "<1.2.3" excludes 0.0.0-0 + ">=1.2.3-alpha" includes 1.2.3-alpha0 + parse(">=1.2.3").to_s includes 999.0.0 + "< 1.2.3" excludes 2.0.0 + ">1.2.3" stringifies as >1.2.3 + "> 1.2.3-alpha" excludes 1.2.3-alpha + parse("<1.2.3-alpha").to_s excludes 1.2.3-alpha + parse("<= 1.2.3").to_s includes 0.0.0 + parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha.0 + parse(">1.2.3").to_s excludes 1.2.4-0 + "<= 1.2.3-alpha" excludes 1.2.3-alpha.0 + "> 1.2.3-alpha" includes 1.2.3-alpha.0 + parse("<= 1.2.3-alpha").to_s includes 1.2.3-alpha + parse(">=1.2.3").to_s excludes 1.2.2 + parse("<=1.2.3").to_s includes 0.0.0 + ">=1.2.3-alpha" includes 999.0.0 + ">=1.2.3-alpha" excludes 1.2.3-alph + parse("< 1.2.3-alpha").to_s excludes 1.2.3-alpha + "> 1.2.3-alpha" stringifies as >1.2.3-alpha + "<= 1.2.3" excludes 1.2.3-0 + "<1.2.3" excludes 1.2.3-0 + parse(">1.2.3-alpha").to_s includes 1.2.3-alpha0 + "<=1.2.3-alpha" includes 0.0.0 + "<=1.2.3-alpha" includes 1.2.3-alpha + "> 1.2.3-alpha" includes 1.2.3-alpha0 + parse("<1.2.3").to_s excludes 0.0.0-0 + ">= 1.2.3-alpha" includes 999.0.0 + "<=1.2.3-alpha" excludes 1.2.3-alphb + "<= 1.2.3-alpha" excludes 1.2.3-alphb + parse(">= 1.2.3-alpha").to_s excludes 1.2.3-alph + "<1.2.3-alpha" includes 0.0.0 + ">= 1.2.3-alpha" excludes 1.2.4-alpha + parse("<= 1.2.3-alpha").to_s excludes 0.0.0-0 + parse("<1.2.3-alpha").to_s includes 0.0.0 + parse("<1.2.3-alpha").to_s excludes 0.0.0-0 + parse("< 1.2.3").to_s excludes 0.0.0-0 + parse(">=1.2.3-alpha").to_s excludes 1.2.3-alph + parse("<=1.2.3").to_s excludes 0.0.0-0 + ">1.2.3-alpha" includes 1.2.3-alpha.0 + "<= 1.2.3-alpha" includes 0.0.0 + parse(">=1.2.3-alpha").to_s includes 999.0.0 + ">=1.2.3" stringifies as >=1.2.3 + "<= 1.2.3-alpha" stringifies as <=1.2.3-alpha + parse("< 1.2.3").to_s excludes 2.0.0 + parse("< 1.2.3-alpha").to_s excludes 2.0.0 + ">=1.2.3" includes 999.0.0 + "< 1.2.3-alpha" excludes 0.0.0-0 + ">= 1.2.3" excludes 1.2.2 + parse("<=1.2.3-alpha").to_s includes 0.0.0 + parse("<= 1.2.3").to_s excludes 0.0.0-0 + "< 1.2.3-alpha" stringifies as <1.2.3-alpha + "<=1.2.3" includes 0.0.0 + "<1.2.3-alpha" excludes 1.2.3-alpha + "< 1.2.3-alpha" includes 1.2.3-alph + parse("< 1.2.3-alpha").to_s includes 1.2.3-alph + ">1.2.3" excludes 1.2.3 + parse("<=1.2.3").to_s includes 1.2.3 + parse("> 1.2.3-alpha").to_s excludes 1.2.3-alpha + ">=1.2.3-alpha" stringifies as >=1.2.3-alpha + parse("< 1.2.3-alpha").to_s includes 0.0.0 + parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha0 + parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha0 + "<=1.2.3" excludes 1.2.3-0 + "< 1.2.3-alpha" includes 0.0.0 + parse(">1.2.3").to_s includes 999.0.0 + "<1.2.3-alpha" excludes 0.0.0-0 + parse("<1.2.3").to_s includes 1.2.2 + "< 1.2.3" excludes 1.2.3-0 + parse(">=1.2.3-alpha").to_s excludes 1.2.4-alpha + "<1.2.3" stringifies as <1.2.3 + "<1.2.3" includes 0.0.0 + ">= 1.2.3-alpha" includes 1.2.3-alpha + parse(">= 1.2.3-alpha").to_s excludes 1.2.4-alpha + parse(">= 1.2.3").to_s excludes 1.2.2 + "<=1.2.3" stringifies as <=1.2.3 + "<= 1.2.3" excludes 0.0.0-0 + "> 1.2.3-alpha" includes 999.0.0 + parse("<=1.2.3-alpha").to_s includes 1.2.3-alpha + parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alphb + ">= 1.2.3" stringifies as >=1.2.3 + "< 1.2.3" includes 1.2.2 + "< 1.2.3" stringifies as <1.2.3 + ">= 1.2.3-alpha" includes 1.2.3-alpha0 + parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha + ">1.2.3-alpha" stringifies as >1.2.3-alpha + parse("<1.2.3").to_s excludes 1.2.3-0 + parse(">= 1.2.3").to_s includes 999.0.0 + parse("<1.2.3-alpha").to_s excludes 2.0.0 + ">= 1.2.3" excludes 1.2.3-0 + parse("> 1.2.3-alpha").to_s includes 999.0.0 + parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha0 + parse("< 1.2.3").to_s includes 1.2.2 + ">= 1.2.3-alpha" stringifies as >=1.2.3-alpha + parse("<1.2.3").to_s includes 0.0.0 + ">1.2.3-alpha" includes 999.0.0 + ">1.2.3" excludes 1.2.4-0 + parse("<= 1.2.3").to_s excludes 1.2.3-0 + parse("< 1.2.3").to_s includes 0.0.0 + parse("> 1.2.3").to_s includes 999.0.0 + parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha.0 + ">= 1.2.3-alpha" excludes 1.2.3-alph + parse(">1.2.3-alpha").to_s excludes 1.2.3-alpha + parse(">= 1.2.3-alpha").to_s includes 999.0.0 + parse("<= 1.2.3-alpha").to_s includes 0.0.0 + parse(">1.2.3-alpha").to_s includes 999.0.0 + "<1.2.3" includes 1.2.2 + ">= 1.2.3" includes 999.0.0 + ">=1.2.3-alpha" includes 1.2.3-alpha + parse("<=1.2.3-alpha").to_s excludes 0.0.0-0 + "<1.2.3-alpha" stringifies as <1.2.3-alpha + "<= 1.2.3" includes 0.0.0 + ">1.2.3-alpha" excludes 1.2.3-alpha + "> 1.2.3" excludes 1.2.3 + parse("> 1.2.3").to_s excludes 1.2.3 + "< 1.2.3-alpha" excludes 1.2.3-alpha + "<1.2.3" excludes 2.0.0 + "<=1.2.3-alpha" excludes 0.0.0-0 + parse("<= 1.2.3").to_s includes 1.2.3 + ">1.2.3" includes 999.0.0 + "<= 1.2.3-alpha" includes 1.2.3-alpha + parse(">= 1.2.3").to_s excludes 1.2.3-0 + ">1.2.3-alpha" includes 1.2.3-alpha0 + "<=1.2.3" excludes 0.0.0-0 + parse(">=1.2.3").to_s excludes 1.2.3-0 + "<= 1.2.3" includes 1.2.3 + "<=1.2.3" includes 1.2.3 + parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha + "< 1.2.3" includes 0.0.0 + "<=1.2.3-alpha" excludes 1.2.3-alpha.0 + "< 1.2.3" excludes 0.0.0-0 + parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha.0 + "> 1.2.3" includes 999.0.0 + "< 1.2.3-alpha" excludes 2.0.0 + "> 1.2.3" excludes 1.2.4-0 + parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha0 + ">=1.2.3" excludes 1.2.3-0 + "<1.2.3-alpha" excludes 2.0.0 + "<= 1.2.3" stringifies as <=1.2.3 + "<1.2.3-alpha" includes 1.2.3-alph + parse("< 1.2.3").to_s excludes 1.2.3-0 + ">=1.2.3" excludes 1.2.2 + "<= 1.2.3-alpha" excludes 1.2.3-alpha0 + parse("<=1.2.3").to_s excludes 1.2.3-0 + "<= 1.2.3-alpha" excludes 0.0.0-0 + parse("<1.2.3").to_s excludes 2.0.0 + "<=1.2.3-alpha" excludes 1.2.3-alpha0 + parse("<=1.2.3-alpha").to_s excludes 1.2.3-alphb + parse(">1.2.3").to_s excludes 1.2.3 + parse(">1.2.3-alpha").to_s includes 1.2.3-alpha.0 + parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha0 + parse("<1.2.3-alpha").to_s includes 1.2.3-alph + "> 1.2.3" stringifies as >1.2.3 + parse("> 1.2.3").to_s excludes 1.2.4-0 + ">=1.2.3-alpha" excludes 1.2.4-alpha + "<=1.2.3-alpha" stringifies as <=1.2.3-alpha + parse("< 1.2.3-alpha").to_s excludes 0.0.0-0 + ored expressions + non-overlapping + "1.2.3 || 1.2.5" stringifies as 1.2.3 || 1.2.5 + returns nil on end + parse("1.2.3 || 1.2.5").to_s includes 1.2.3 + returns nil on begin + parse("1.2.3 || 1.2.5").to_s excludes 1.2.5-0 + parse("1.2.3 || 1.2.5").to_s includes 1.2.5 + "1.2.3 || 1.2.5" includes 1.2.5 + parse("1.2.3 || 1.2.5").to_s excludes 1.2.4 + "1.2.3 || 1.2.5" excludes 1.2.5-0 + "1.2.3 || 1.2.5" excludes 1.2.4 + "1.2.3 || 1.2.5" includes 1.2.3 + returns nil on exclude_end? + returns nil on exclude_begin? + "1.2.3 || 1.2.5" excludes 1.2.3-0 + parse("1.2.3 || 1.2.5").to_s excludes 1.2.3-0 + adjacent + parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.5-0 + "1.2.3 || 1.2.4 || 1.2.5" stringifies as >=1.2.3 <=1.2.5 + parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 + returns nil on exclude_begin? + parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.5 + parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.3-0 + returns nil on exclude_end? + parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 + returns expected begin + "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.3 + "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.3-0 + ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 + returns nil on end + parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 + parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 + parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.3 + "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.5-0 + ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 + "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.5 + ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 + ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 + ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 + overlapping + ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 + parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 + ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 + parse(">=1.2.3 || 1.2.5").to_s includes 1.2.4 + parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 + ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 + ">=1.2.3 || 1.2.5" stringifies as >=1.2.3 + parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.3-0 + ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 + ">=1.2.3 || 1.2.5" includes 1.2.3 + ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 + parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 + ">=1.2.3 || 1.2.5" includes 1.2.4 + parse(">=1.2.3 || 1.2.5").to_s includes 1.2.3 + ">=1.2.3 || 1.2.5" excludes 1.2.4-0 + parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.4-0 + ">=1.2.3 || 1.2.5" excludes 1.2.3-0 + parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 + inclusive range expressions + parse("1.2.3 - 1.3.4").to_s excludes 1.3.5-0 + parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.5 + parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.2.3-alpha + "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.4-alpha0 + "1.2.3 - 1.3.4-alpha" includes 1.3.4-alpha + "1.2.3 - 1.3.4" excludes 1.2.3-0 + "1.2.3 - 1.3.4-alpha" includes 1.2.3 + parse("1.2.3 - 1.3.4").to_s includes 1.3.4 + "1.2.3-alpha - 1.3.4" includes 1.3.4 + parse("1.2.3 - 1.3.4").to_s includes 1.2.3 + "1.2.3 - 1.3.4" excludes 1.2.2 + "1.2.3 - 1.3.4" stringifies as >=1.2.3 <=1.3.4 + "1.2.3-alpha - 1.3.4" stringifies as >=1.2.3-alpha <=1.3.4 + "1.2.3 - 1.3.4-alpha" stringifies as >=1.2.3 <=1.3.4-alpha + parse("1.2.3 - 1.3.4-alpha").to_s includes 1.3.4-alpha + "1.2.3 - 1.3.4" includes 1.3.4 + parse("1.2.3-alpha - 1.3.4").to_s excludes 1.3.5-0 + "1.2.3 - 1.3.4-alpha" excludes 1.2.3-0 + "1.2.3-alpha - 1.3.4-alpha" includes 1.3.4-alpha + parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.2.3-alph + "1.2.3 - 1.3.4-alpha" excludes 1.3.4-alpha0 + "1.2.3-alpha - 1.3.4-alpha" stringifies as >=1.2.3-alpha <=1.3.4-alpha + parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.2 + "1.2.3 - 1.3.4-alpha" excludes 1.3.5 + parse("1.2.3-alpha - 1.3.4").to_s includes 1.3.4 + "1.2.3 - 1.3.4-alpha" excludes 1.2.2 + "1.2.3 - 1.3.4" includes 1.2.3 + "1.2.3-alpha - 1.3.4" includes 1.2.3-alpha + "1.2.3-alpha - 1.3.4" excludes 1.2.3-alph + parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.3.4-alpha + parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 + "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.5 + parse("1.2.3-alpha - 1.3.4").to_s includes 1.2.3-alpha + "1.2.3 - 1.3.4" excludes 1.3.5-0 + parse("1.2.3 - 1.3.4").to_s excludes 1.2.3-0 + parse("1.2.3-alpha - 1.3.4").to_s excludes 1.2.3-alph + "1.2.3-alpha - 1.3.4-alpha" excludes 1.2.3-alph + "1.2.3-alpha - 1.3.4-alpha" includes 1.2.3-alpha + parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 + "1.2.3-alpha - 1.3.4" excludes 1.3.5-0 + parse("1.2.3 - 1.3.4").to_s excludes 1.2.2 + parse("1.2.3 - 1.3.4-alpha").to_s includes 1.2.3 + parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.5 + parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.3-0 + The version + 3.1.3 should be above range 2.x.x + 3.5.0 should not be above range ^0.1.0 || ~3.0.1 || >4 <=5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) + 0.8.0-asdf should be above range =0.7.x + 1.1.0 should not be below range >=1.0.0 + 1.2.3 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) + 1.0.1 should not be below range >1.0.0 + 0.1.97 should not be above range >=0.1.97(>=0.1.97) + 0.7.0-asdf should not be above range >=0.7.x(>=0.7.0) + 2.0.0 should not be below range <= 2.0.0 + 1.0.0-0 should be below range ^1 + 0.7.2 should not be below range =0.7.x + 1.2.3-foo should not be above range *(*) + 0.0.0 should not be below range >=0.2.3 || <0.0.1 + 0.6.0 should be below range >=0.7.x + 1.2.3 should not be above range ~> 1(>=1.0.0 <2.0.0) + 2.2.3 should be above range 1.0.0 - 2.0.0 + 2.0.0-beta should be above range 1 + 1.0.1 should not be below range > 1.0.0 + 3.2.0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 + 1.2.3 should not be above range 1.2.x(>=1.2.0 <1.3.0) + 1.9999.9999 should not be above range <= 2.0.0(<=2.0.0) + 1.2.4 should not be above range 0.1.20 || >1.2.4(0.1.20 || >1.2.4) + 1.0.1 should not be below range >=1.0.0 + 1.0.0-beta should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 + 0.2.9 should not be above range < 2.0.0(<2.0.0) + 4.0.0 should be above range 1.2.* || 2.* + 0.2.9 should not be below range < 2.0.0 + 1.3.0 should be above range ~1.2.2 + 0.7.2 should be above range <0.7.x + 0.2.4 should not be below range >=0.2.3 <=0.2.4 + 1.2.1 should be below range ~1.2.2 + 1.0.0 should not be below range >=1.0.0 + 2.0.0 should not be above range ^1.0.0 || ~2.0.1(>=1.0.0 <2.0.0 || >=2.0.1 <2.1.0) + 2.0.0 should be below range >2.0.0 + 1.9999.9999 should not be above range <=2.0.0(<=2.0.0) + 1.2.3 should not be above range ~>1(>=1.0.0 <2.0.0) + 0.0.1 should be below range 1.0.0 + 1.2.9 should be below range >=2.0.0 + 0.6.1-0 should be below range ~0.6.1-1 + 3.2.2 should not be above range ~>3.2.1(>=3.2.1 <3.3.0) + 0.2.3 should be below range ~1 + 1.0.0-beta.1 should be below range 1.0.0-beta.2 + 0.6.1-1 should not be above range ~0.6.1-1(>=0.6.1-1 <0.7.0) + 1.2.9 should be below range >2.0.0 + 1.0.0 should not be below range >=1 + 1.3.3 should be above range 1.2.* + 1.0.0-beta should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) + 1.2.3 should not be below range 0.1.20 || 1.2.4 + 1.0.2 should not be above range ~1.0(>=1.0.0 <1.1.0) + 2.2.2 should be below range 2.3 + 2.1.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) + 1.3.0 should be above range 1.2.x + 1.1.0 should be above range ~ 1.0 + 3.0.0 should be above range 2 + 0.2.4 should be below range ~>1 + 2.0.0 should be below range >2.0.0 + 1.2.3 should not be below range 1.2.x || 2.x + 2.1.3 should not be below range 2.*.* + 1.0.0 should not be below range + 3.2.0 should be below range ~>3.2.1 + 0.2.9 should not be above range <= 2.0.0(<=2.0.0) + 1.1.1 should not be above range <1.2(<1.2.0) + 1.0.0-beta should not be below range ^1.0.0-alpha + 1.0.0 should be below range 2.x.x + 1.1.1 should be below range >=2.0.0 + 1.2.9 should be below range >=2.0.0 + 0.6.0-asdf should be below range =0.7.x + 0.2.9 should not be below range <2.0.0 + 2.0.0 should not be above range <=2.0.0(<=2.0.0) + 1.0.0 should be below range 1.2.x || 2.x + 2.0.0 should not be above range ^3.0.0(>=3.0.0 <4.0.0) + 2.1.3 should not be above range 2.*.*(>=2.0.0 <3.0.0) + 2.5.0 should be above range ~2.4 + 1.0.0 should not be above range >= 1(>=1.0.0) + 1.0.1 should not be below range >= 1.0.0 + 2.1.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) + 1.1.0 should not be above range >=1.0.0(>=1.0.0) + 1.2.4 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) + 0.2.9 should not be below range <=2.0.0 + 1.1.0 should not be above range >= 1.0.0(>=1.0.0) + 1.0.1 should be above range 1.0.0 + 2.1.3 should not be below range 1.2.x || 2.x + 0.7.2 should not be above range =0.7.x(>=0.7.0 <0.8.0) + 2.0.0 should not be above range <= 2.0.0(<=2.0.0) + 1.0.0 should not be below range >= 1.0.0 + 1.3.3 should be above range 1.2.x + 1.2.3 should not be below range 1.2.* || 2.* + 1.0.0 should not be above range >=1.0.0(>=1.0.0) + 1.2.3 should not be below range 1.2.* || 2.* + 0.5.4-alpha should be below range ~v0.5.4-pre + 2.4.2 should be above range 2.3 + 1.0.0 should not be above range 1.0.0(1.0.0) + 1.0.1-beta1 should be above range 1.0.0 + 0.2.4 should not be above range >=0.2.3 <=0.2.4(>=0.2.3 <=0.2.4) + 0.6.1-1 should not be below range ~0.6.1-1 + 3.1.3 should be above range 1.2.x || 2.x + 1.1.1 should not be below range < 1.2 + 1.1.0 should be below range 1.2.x + 1.2.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) + 0.2.4 should not be above range >=*(>=0.0.0) + 2.2.9 should be above range <2.0.0 + 1.0.2 should not be below range ~ 1.0 + 1.3.0 should be above range ~1.2.2 + 1.2.1 should be below range > 1.2 + 1.2.3 should not be below range 1.2.* + 1.2.3 should not be below range * + 0.5.5 should not be below range ~v0.5.4-pre + 1.1.3 should be below range 1.2.* + 3.3.2 should be above range ~>3.2.1 + 3.2.9 should be above range <=2.0.0 + 1.2.3 should not be below range ~> 1 + 1.2.3 should not be below range ~1 + 3.0.0 should be above range <=2.0.0 + 0.8.0 should be above range =0.7.x + 1.0.0 should not be above range (*) + 0.5.5 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) + 2.2.3 should be above range ~1 + 0.2.3 should be below range ~>1 + 1.2.3 should not be below range * + 1.0.0 should be below range >1 + 3.0.0 should be above range 2.x.x + 2.4.0 should not be below range ~2.4 + 0.6.2 should not be below range <=0.7.x + 1.1.9999 should be below range 1.2.* || 2.* + 0.1.20 should not be below range 0.1.20 || 1.2.4 + 1.1.3 should be below range 2.x.x + 0.2.3 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) + 0.6.0 should be below range =0.7.x + 1.2.3 should not be below range 1.0.0 - 2.0.0 + 0.6.1-pre should be above range ~v0.5.4-pre + 2.0.0 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) + 1.2.3 should not be above range *(*) + 0.8.2 should be above range =0.7.x + 0.7.0-asdf should be below range >=0.7.x + 1.9999.9999 should not be above range <2.0.0(<2.0.0) + 0.2.3 should be below range ~> 1 + 1.0.0-beta should be above range <1 + 0.6.2 should not be above range <=0.7.x(<0.8.0) + 2.1.3 should not be below range 1.2.* || 2.* + 2.9.9 should not be below range 1.0.0 - 2.0.0 + 0.2.3 should be below range ~1 + 2.0.0 should be above range <2.0.0 + 1.2.3 should not be below range x + 1.0.0 should not be below range =0.1.0 + 0.2.5 should not be above range >0.2.3 >0.2.4 <=0.2.5(>0.2.4 <=0.2.5) + 2.2.3 should be above range ~>1 + 2.4.0 should not be above range ~2.4(>=2.4.0 <2.5.0) + 2.5.5 should be above range ~2.4 + 2.1.3 should not be below range 2.x.x + 1.0.0-beta should be above range < 1 + 1.0.2 should not be below range ~1.0 + 1.0.0 should not be above range >= 1.0.0(>=1.0.0) + 1.1.0 should not be below range > 1.0.0 + 1.0.0-beta should not be above range 1(>=1.0.0 <2.0.0) + 2.0.0 should not be below range <=2.0.0 + 3.1.3 should be above range 2.*.* + 1.1.0 should not be below range ~ 1.0 + 3.5.0 should not be below range ^0.1.0 || ~3.0.1 || >4 <=5.0.0 + 0.1.2 should be below range ~1.0 + 1.1.1 should not be above range < 1.2(<1.2.0) + 2.2.4 should be above range ~>1 + 0.0.0 should be below range 1.0.0 + 0.7.0 should be above range <0.7.x + 2.9999.9999 should be above range <=2.0.0 + 1.0.0-beta should be below range >1 + 0.1.97 should not be above range >=0.1.97(>=0.1.97) + 2.1.1 should be above range <=2.0.0 + 2.3.5 should be below range ~2.4 + 1.1.0 should not be above range > 1.0.0(>1.0.0) + 1.0.0 should not be above range >=1(>=1.0.0) + 1.1.3 should be below range 2.*.* + 0.9.9 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) + 1.0.0-beta should be below range 2 + 1.9999.9999 should not be below range < 2.0.0 + 1.1.3 should be below range 1.2.x || 2.x + 2.1.2 should not be below range 2 + 0.0.0-beta should be below range 1 + 2.3.1 should not be below range 2.3 + 1.0.2 should not be above range ~ 1.0(>=1.0.0 <1.1.0) + 2.0.0-beta should be above range 1 + 0.2.4 should not be below range >=0.2.3 || <0.0.1 + 0.0.0-0 should not be above range ^1(>=1.0.0 <2.0.0) + 2.5.0 should be above range ~2.4 + 1.1.0 should not be above range >1.0.0(>1.0.0) + 5.0.0-0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 + 1.2.3 should not be below range 1.2.x + 0.6.0 should be above range ~v0.5.4-pre + 1.0.1 should be below range 2.*.* + 0.0.0 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) + 1.0.0 should be below range >=2.0.0 + 2.3.0 should be below range ~2.4 + 1.0.1 should not be above range >= 1.0.0(>=1.0.0) + 1.1.0 should not be below range >= 1.0.0 + 2.2.9 should be above range <=2.0.0 + 3.1.2 should be above range 2 + 3.1.3 should be above range 1.2.* || 2.* + 0.0.0 should be below range ~1.0 + 1.2.3 should not be above range 1.2.*(>=1.2.0 <1.3.0) + 1.2.3 should not be below range ~>1 + 1.2.0 should be above range <1.2 + 2.9999.9999 should be above range <2.0.0 + 1.0.0 should be above range <1 + 4.0.0 should not be below range ^3.0.0 + 2.4.5 should not be above range ~2.4(>=2.4.0 <2.5.0) + 1.1.0 should not be below range >1.0.0 + 2.4.5 should not be below range ~2.4 + 1.0.0 should not be below range 1.0.0 + 1.0.0 should be below range 2 + 0.2.5 should not be below range >0.2.3 >0.2.4 <=0.2.5 + 2.2.3 should be above range ~1 + 0.2.9 should not be below range <= 2.0.0 + 2.3.2 should be below range ~>3.2.1 + 0.7.2 should not be above range >=0.7.x(>=0.7.0) + 0.0.1 should be below range 1.0.0 - 2.0.0 + 1.3.4 should not be below range || + 1.1.3 should be below range 1.2.* || 2.* + 3.2.2 should not be below range ~>3.2.1 + 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) + 0.2.9 should not be above range <=2.0.0(<=2.0.0) + 2.3.0 should be below range ~2.4 + 0.2.4 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) + 2.0.0 should not be below range ^1.0.0 || ~2.0.1 + 1.3.4 should not be above range ||(*) + 2.0.0 should be above range 1.0.0 + 1.2.5 should be above range 0.1.20 || 1.2.4 + 0.1.5 should be below range 0.1.20 || 1.2.4 + 1.0.1 should not be above range >1.0.0(>1.0.0) + 1.2.3 should not be above range ~1(>=1.0.0 <2.0.0) + 2.2.1 should be below range 2.3 + 0.5.4 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) + 1.9999.9999 should be below range >=2.0.0 + 1.0.0-beta should be below range 1 + 1.2.4 should not be below range 0.1.20 || >1.2.4 + 2.0.0 should not be below range 1.0.0 - 2.0.0 + 0.2.3 should not be below range >=0.2.3 || <0.0.1 + 5.0.1 should be above range 2.*.* + 1.3.3 should be above range 1.2.* + 1.2.1 should be below range ~1.2.2 + 3.0.0 should be above range 1.2.x || 2.x + 1.1.3 should be below range 1.2.* + 0.5.4 should not be below range ~v0.5.4-pre + 2.3.1 should not be above range 2.3(>=2.3.0 <2.4.0) + 1.9999.9999 should not be below range <= 2.0.0 + 0.7.0-asdf should not be above range =0.7.x(>=0.7.0 <0.8.0) + 0.7.2 should not be below range >=0.7.x + 1.1.3 should be below range 1.2.x + 1.2.3 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) + 1.9999.9999 should not be above range < 2.0.0(<2.0.0) + 0.5.4-alpha should be below range ~v0.5.4-pre + 0.1.0 should be below range ~ 1.0 + 0.2.3 should be below range 1.0.0 - 2.0.0 + 0.2.9 should not be above range <2.0.0(<2.0.0) + 2.1.2 should not be above range 2(>=2.0.0 <3.0.0) + 1.1.2 should be above range ~1.0 + 5.0.0-0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) + 1.2.0 should be below range >1.2 + 3.2.3 should be above range ~> 1 + 2.1.3 should not be above range 2.x.x(>=2.0.0 <3.0.0) + 3.3.0 should be above range ~>3.2.1 + 1.2.3 should not be above range *(*) + 1.2.1 should be above range < 1.2 + 2.4.1 should be above range 2.3 + 0.6.2 should be below range >=0.7.x + 0.6.2 should be below range =0.7.x + 3.2.0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) + 1.1.0 should be above range ~1.0 + 1.9999.9999 should not be below range <2.0.0 + 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) + 1.0.0-beta should be below range > 1 + 0.1.20 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) + 0.2.4 should not be below range >=* + 1.0.1 should not be above range > 1.0.0(>1.0.0) + 1.2.3 should not be above range x(*) + 0.1.97 should not be below range >=0.1.97 + 1.1.1 should not be below range <1.2 + 1.0.0-beta should not be below range ~1.0.0-alpha + 2.0.1 should be above range 1.0.0 - 2.0.0 + 0.7.1-1 should be above range ~0.6.1-1 + 1.2.4 should not be below range 0.1.20 || 1.2.4 + 1.9999.9999 should not be below range <=2.0.0 + 0.7.0-asdf should be below range =0.7.x + 1.0.0 should not be below range >= 1 + 1.0.1 should not be above range >=1.0.0(>=1.0.0) + 1.9999.9999 should be below range 2 + #intersection + cannot intersect with non-VersionRanges + between 10.0.0 - 5.0.0 & + 5.0.0 - 1.0.0 + 6.0.0 - 1.0.0 + 4.0.0 - 1.0.0 + 11.0.0 - 4.0.0 + 10.0.0 - 5.0.0 + 15.0.0 - 11.0.0 + >=10.0.0 <5.0.0 + 9.0.0 - 6.0.0 + 15.0.0 - 9.0.0 + 15.0.0 - 10.0.0 + >=7.0.0 <1.0.0 + >=5.0.0 <1.0.0 + between >=10.0.0 <5.0.0 & + >=10.0.0 <5.0.0 + >=7.0.0 <1.0.0 + 6.0.0 - 1.0.0 + 10.0.0 - 5.0.0 + 11.0.0 - 4.0.0 + >=5.0.0 <1.0.0 + 9.0.0 - 6.0.0 + 4.0.0 - 1.0.0 + 5.0.0 - 1.0.0 + 15.0.0 - 9.0.0 + 15.0.0 - 11.0.0 + 15.0.0 - 10.0.0 + is commutative + between >=10.0.0 <5.0.0 & 15.0.0 - 9.0.0 + between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 + between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 + between 10.0.0 - 5.0.0 & >=10.0.0 <5.0.0 + between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 + between 10.0.0 - 5.0.0 & 11.0.0 - 4.0.0 + between >=10.0.0 <5.0.0 & 15.0.0 - 11.0.0 + between >=10.0.0 <5.0.0 & 15.0.0 - 10.0.0 + between >=10.0.0 <5.0.0 & 4.0.0 - 1.0.0 + between 10.0.0 - 5.0.0 & 4.0.0 - 1.0.0 + between >=10.0.0 <5.0.0 & 10.0.0 - 5.0.0 + between >=10.0.0 <5.0.0 & >=7.0.0 <1.0.0 + between >=10.0.0 <5.0.0 & >=5.0.0 <1.0.0 + between >=10.0.0 <5.0.0 & 11.0.0 - 4.0.0 + between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 + between 10.0.0 - 5.0.0 & >=5.0.0 <1.0.0 + between 10.0.0 - 5.0.0 & 6.0.0 - 1.0.0 + between >=10.0.0 <5.0.0 & 6.0.0 - 1.0.0 + between 10.0.0 - 5.0.0 & 15.0.0 - 10.0.0 + between 10.0.0 - 5.0.0 & 15.0.0 - 9.0.0 + between 10.0.0 - 5.0.0 & >=7.0.0 <1.0.0 + between 10.0.0 - 5.0.0 & 10.0.0 - 5.0.0 + between >=10.0.0 <5.0.0 & 5.0.0 - 1.0.0 + between 10.0.0 - 5.0.0 & 15.0.0 - 11.0.0 + +SemanticPuppet::Dependency + .query + without sources + returns an unsatisfied ModuleRelease + with one source + queries the source for each dependency only once + queries the source for release information + returns a ModuleRelease with the requested dependencies + populates all returned ModuleReleases with related dependencies + populates the returned ModuleRelease with related dependencies + queries the source for each dependency + with multiple sources + queries each source in turn + resolves all dependencies against all sources + .resolve + for a module with circular dependencies + that can be resolved + terminates + that cannot be resolved + fails with an appropriate message + for a module with dependencies + returns the greatest releases matching the dependency range + when the dependency has both stable and prerelease versions + returns the greatest stable release matching the range + when the dependency has no stable versions + returns the greatest prerelease version matching the range + when the dependency cannot be satisfied + sets unsatisfiable + fails with an appropriate message + that violate graph constraints + that cannot be resolved + fails with an appropriate message + that can be resolved + terminates + for a module with competing dependencies + that overlap + returns the greatest release satisfying all dependencies + that do not overlap + fails with an appropriate message + for a module without dependencies + returns the greatest release matching the version range + when the query includes both stable and prerelease versions + returns the greatest stable release matching the range + when the query omits all stable versions + returns the greatest prerelease version matching the range + when the query omits all versions + fails with an appropriate message + for a module with dependencies + that violate module constraints on the graph + that can be resolved + terminates + that cannot be resolved + fails with an appropriate message + .sources + can be emptied by using #clear_sources + can be modified by using #add_source + defaults to an empty list + is frozen SemanticPuppet::Dependency::UnsatisfiableGraph + #message + is expected to match /foo, bar, and baz/ #sentence_from_list - with a list of three items - is expected to eql "foo, bar, and baz" with a list of two items is expected to eql "foo and bar" - with a list of more than three items - is expected to eql "foo, bar, baz, and quux" + with a list of three items + is expected to eql "foo, bar, and baz" with a list of one item is expected to eql "foo" - #message - is expected to match /foo, bar, and baz/ + with a list of more than three items + is expected to eql "foo, bar, baz, and quux" SemanticPuppet::Version + #== + should yield false when the major differs + should yield false when the patch differs + should yield false when the minor differs + should yield false when the prerelease differs + should yield true when comparing two equal instances + should yield false when compared to something that is not a Version .parse - Spec v2.0.0 + Spec v1.0.0 Section 2 - permits zeroes in version number parts - rejects versions that contain too many parts - rejects version numbers containing leading zeroes - rejects versions that contain negative integers - rejects versions that contain too few parts rejects versions that contain non-integers + rejects versions that contain too few parts + rejects versions that contain too many parts + permits zeroes in version number parts examples - 1.11.0 - 1.10.0 1.9.0 - Section 9 + 1.10.0 + 1.11.0 + Section 4 + rejects numeric prerelease identifiers with leading zeroes + permits numeric prerelease identifiers of zero rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes rejects empty prerelease versions - rejects empty prerelease version identifiers - rejects numeric prerelease identifiers with leading zeroes - permits numeric prerelease identifiers of zero examples - 1.0.0-alpha.1 - 1.0.0-0.3.7 - 1.0.0-x.7.z.92 - 1.0.0-alpha + 1.0.0-beta2 + 1.0.0-beta1 + 1.0.0-alpha1 + 1.0.0-rc1 + Spec v2.0.0 Section 10 + rejects empty build metadata + permits numeric build identifiers of zero rejects build identifiers with non-alphanumerics rejects empty build identifiers permits numeric build identifiers with leading zeroes - rejects empty build metadata - permits numeric build identifiers of zero permits non-numeric build identifiers with leading zeroes examples 1.0.0-beta+exp.sha.5114f85 1.0.0-alpha+001 1.0.0+20130313144700 - Spec v1.0.0 - Section 4 - rejects prerelease identifiers with non-alphanumerics - permits non-numeric prerelease identifiers with leading zeroes - rejects empty prerelease versions - permits numeric prerelease identifiers of zero - rejects numeric prerelease identifiers with leading zeroes - examples - 1.0.0-rc1 - 1.0.0-alpha1 - 1.0.0-beta2 - 1.0.0-beta1 Section 2 + rejects version numbers containing leading zeroes + rejects versions that contain negative integers rejects versions that contain non-integers - permits zeroes in version number parts - rejects versions that contain too many parts rejects versions that contain too few parts + rejects versions that contain too many parts + permits zeroes in version number parts examples 1.11.0 1.10.0 1.9.0 - #== - should yield false when the minor differs - should yield true when comparing two equal instances - should yield false when the patch differs - should yield false when the major differs - should yield false when the prerelease differs - should yield false when compared to something that is not a Version + Section 9 + rejects prerelease identifiers with non-alphanumerics + rejects empty prerelease version identifiers + permits numeric prerelease identifiers of zero + rejects numeric prerelease identifiers with leading zeroes + rejects empty prerelease versions + permits non-numeric prerelease identifiers with leading zeroes + examples + 1.0.0-alpha + 1.0.0-alpha.1 + 1.0.0-x.7.z.92 + 1.0.0-0.3.7 #<=> + Spec v1.0.0 + Section 4 + sorted order Spec v2.0.0 Section 11 - comparisons without prereleases - sorted order comparisions between prereleases - identical prereleases are equal - numeric identifiers sort numerically - build metadata does not figure into precendence - non-numeric identifiers sort ASCIIbetically - build metadata does figure into equality - sorted order identifiers are parsed left-to-right larger identifier sets have precendence non-numeric identifiers have a higher precendence + build metadata does figure into equality + build metadata does not figure into precendence + non-numeric identifiers sort ASCIIbetically + sorted order + identical prereleases are equal + numeric identifiers sort numerically comparisons against prereleases prereleases have lower precedence - Spec v1.0.0 - Section 4 - sorted order + comparisons without prereleases + sorted order + #next + with :patch + does not modify the original version + removes any build information + returns the next patch version + removes any prerelease information + with :major + resets the minor and patch versions to 0 + does not modify the original version + removes any build information + removes any prerelease information + returns the next major version + with :minor + removes any build information + resets the patch version to 0 + removes any prerelease information + returns the next minor version + does not modify the original version .valid? Spec v2.0.0 - Section 10 - permits numeric build identifiers of zero - permits non-numeric build identifiers with leading zeroes - permits numeric build identifiers with leading zeroes - rejects empty build metadata - rejects build identifiers with non-alphanumerics - rejects empty build identifiers Section 9 rejects empty prerelease version identifiers - rejects empty prerelease versions rejects numeric prerelease identifiers with leading zeroes - permits numeric prerelease identifiers of zero permits non-numeric prerelease identifiers - rejects prerelease identifiers with non-alphanumerics permits non-numeric prerelease identifiers with leading zeroes + permits numeric prerelease identifiers of zero + rejects empty prerelease versions + rejects prerelease identifiers with non-alphanumerics Section 2 - rejects versions that contain non-integers - rejects versions that contain too many parts permits zeroes in version number parts - rejects versions that contain negative integers rejects version numbers containing leading zeroes rejects versions that contain too few parts - Spec v1.0.0 - Section 2 + rejects versions that contain negative integers rejects versions that contain too many parts - rejects versions that contain too few parts rejects versions that contain non-integers - permits zeroes in version number parts + Section 10 + rejects empty build identifiers + permits numeric build identifiers of zero + rejects empty build metadata + rejects build identifiers with non-alphanumerics + permits numeric build identifiers with leading zeroes + permits non-numeric build identifiers with leading zeroes + Spec v1.0.0 Section 4 - rejects empty prerelease versions - rejects prerelease identifiers with non-alphanumerics + permits non-numeric prerelease identifiers with leading zeroes permits numeric prerelease identifiers of zero + rejects prerelease identifiers with non-alphanumerics rejects numeric prerelease identifiers with leading zeroes - permits non-numeric prerelease identifiers with leading zeroes - #next - with :major - removes any prerelease information - returns the next major version - removes any build information - does not modify the original version - resets the minor and patch versions to 0 - with :minor - returns the next minor version - removes any build information - does not modify the original version - removes any prerelease information - resets the patch version to 0 - with :patch - returns the next patch version - removes any build information - removes any prerelease information - does not modify the original version + rejects empty prerelease versions + Section 2 + rejects versions that contain non-integers + rejects versions that contain too many parts + permits zeroes in version number parts + rejects versions that contain too few parts -SemanticPuppet::Dependency::GraphNode - #populate_children - saves all relevant nodes as its children - accepts a graph solution and populates it across all nodes +SemanticPuppet::Dependency::ModuleRelease #<=> - can be compared - dependencies - are added by #add_dependency - are maintained in the #dependencies Hash - #satisfied - is unsatisfied when any dependencies are missing - is unsatisfied when no nodes have been appended - is satisfied when all dependencies are fulfilled + orders releases by name first + considers releases with greater version numbers greater + considers releases with lesser version numbers lesser + orders releases with different names lexographically + #to_s + is expected to =~ /1.2.3/ + is expected to =~ /foobarbaz/ #<< - appends satisfying nodes to the dependencies - sorts the dependencies for each addition to the same node - sorts once the dependencies for a specific node - does not append unsatisfying nodes - does not append nodes with unknown names + does not mark mis-matching dependency names as satisfied + marks matching dependencies as satisfied + does not mark mis-matching dependency versions as satisfied + #satisfies_dependency? + returns false when there are no dependencies to satisfy + returns false when the release does not match the dependency name + returns true when the release matches the dependency + returns false when the release does not match the dependency version + #satisfied? + returns false when no dependencies have been satisified + returns false when not all dependencies have been satisified + returns true when there are no dependencies to satisfy + returns false when not all dependency versions have been satisified + returns true when all dependencies have been satisified + #dependency_names + lists the names of all the release's dependencies + #== + can compare a release with something that is not a release + considers two releases with different names to be different + considers two releases with different versions to be different + considers two equal releases to be equal + considers a release different from something that is not a release SemanticPuppet::Dependency::Graph - #initialize - can be called without arguments - adds the named dependencies for every key in the passed hash - implements the GraphNode protocol - adds constraints for every key in the passed hash #satisfies_graph? + returns true if the solution violates no graph constraints returns false if the solution violates any graph constraint returns false if the solution violates a graph constraint - returns true if the solution violates no graph constraints - #add_graph_constraint - permits multiple graph constraints - can create a new constraint on a graph #satisfies_dependency? - is satisfied by modules that do fulfill all the constraints - is not satisfied by modules that do not fulfill all the constraints is not satisfied by modules that do not fulfill the constraint + is not satisfied by modules that do not fulfill all the constraints is not satisfied by modules it does not depend on + is satisfied by modules that do fulfill all the constraints + #add_graph_constraint + permits multiple graph constraints + can create a new constraint on a graph #add_constraint - permits multiple constraints against the same module name can create a new constraint on a module + permits multiple constraints against the same module name + #initialize + implements the GraphNode protocol + adds the named dependencies for every key in the passed hash + adds constraints for every key in the passed hash + can be called without arguments -SemanticPuppet::Dependency - .resolve - that violate graph constraints - that can be resolved - terminates - that cannot be resolved - fails with an appropriate message - for a module with dependencies - that violate module constraints on the graph - that cannot be resolved - fails with an appropriate message - that can be resolved - terminates - for a module with dependencies - returns the greatest releases matching the dependency range - when the dependency has both stable and prerelease versions - returns the greatest stable release matching the range - when the dependency has no stable versions - returns the greatest prerelease version matching the range - when the dependency cannot be satisfied - fails with an appropriate message - sets unsatisfiable - for a module without dependencies - returns the greatest release matching the version range - when the query includes both stable and prerelease versions - returns the greatest stable release matching the range - when the query omits all stable versions - returns the greatest prerelease version matching the range - when the query omits all versions - fails with an appropriate message - for a module with circular dependencies - that can be resolved - terminates - that cannot be resolved - fails with an appropriate message - for a module with competing dependencies - that overlap - returns the greatest release satisfying all dependencies - that do not overlap - fails with an appropriate message - .query - with one source - populates the returned ModuleRelease with related dependencies - populates all returned ModuleReleases with related dependencies - returns a ModuleRelease with the requested dependencies - queries the source for each dependency - queries the source for release information - queries the source for each dependency only once - with multiple sources - queries each source in turn - resolves all dependencies against all sources - without sources - returns an unsatisfied ModuleRelease - .sources - can be emptied by using #clear_sources - is frozen - can be modified by using #add_source - defaults to an empty list - -SemanticPuppet::Dependency::ModuleRelease - #== - can compare a release with something that is not a release - considers two equal releases to be equal - considers two releases with different versions to be different - considers two releases with different names to be different - considers a release different from something that is not a release - #to_s - is expected to =~ /foobarbaz/ - is expected to =~ /1.2.3/ - #satisfied? - returns false when no dependencies have been satisified - returns true when there are no dependencies to satisfy - returns false when not all dependency versions have been satisified - returns true when all dependencies have been satisified - returns false when not all dependencies have been satisified - #<< - does not mark mis-matching dependency versions as satisfied - does not mark mis-matching dependency names as satisfied - marks matching dependencies as satisfied - #dependency_names - lists the names of all the release's dependencies - #satisfies_dependency? - returns true when the release matches the dependency - returns false when the release does not match the dependency name - returns false when the release does not match the dependency version - returns false when there are no dependencies to satisfy +SemanticPuppet::Dependency::GraphNode + #satisfied + is unsatisfied when no nodes have been appended + is satisfied when all dependencies are fulfilled + is unsatisfied when any dependencies are missing + #populate_children + saves all relevant nodes as its children + accepts a graph solution and populates it across all nodes #<=> - considers releases with greater version numbers greater - orders releases by name first - orders releases with different names lexographically - considers releases with lesser version numbers lesser - -SemanticPuppet::VersionRange - #intersection - cannot intersect with non-VersionRanges - is commutative - between >=10.0.0 <5.0.0 & 9.0.0 - 6.0.0 - between 10.0.0 - 5.0.0 & 6.0.0 - 1.0.0 - between >=10.0.0 <5.0.0 & >=7.0.0 <1.0.0 - between >=10.0.0 <5.0.0 & 4.0.0 - 1.0.0 - between 10.0.0 - 5.0.0 & >=5.0.0 <1.0.0 - between >=10.0.0 <5.0.0 & 15.0.0 - 10.0.0 - between >=10.0.0 <5.0.0 & 15.0.0 - 9.0.0 - between 10.0.0 - 5.0.0 & >=10.0.0 <5.0.0 - between 10.0.0 - 5.0.0 & 15.0.0 - 11.0.0 - between >=10.0.0 <5.0.0 & >=5.0.0 <1.0.0 - between 10.0.0 - 5.0.0 & >=7.0.0 <1.0.0 - between >=10.0.0 <5.0.0 & 15.0.0 - 11.0.0 - between 10.0.0 - 5.0.0 & 15.0.0 - 10.0.0 - between 10.0.0 - 5.0.0 & 15.0.0 - 9.0.0 - between 10.0.0 - 5.0.0 & 11.0.0 - 4.0.0 - between 10.0.0 - 5.0.0 & 5.0.0 - 1.0.0 - between >=10.0.0 <5.0.0 & 11.0.0 - 4.0.0 - between 10.0.0 - 5.0.0 & 10.0.0 - 5.0.0 - between 10.0.0 - 5.0.0 & 4.0.0 - 1.0.0 - between 10.0.0 - 5.0.0 & 9.0.0 - 6.0.0 - between >=10.0.0 <5.0.0 & 10.0.0 - 5.0.0 - between >=10.0.0 <5.0.0 & 6.0.0 - 1.0.0 - between >=10.0.0 <5.0.0 & >=10.0.0 <5.0.0 - between >=10.0.0 <5.0.0 & 5.0.0 - 1.0.0 - between >=10.0.0 <5.0.0 & - 9.0.0 - 6.0.0 - 6.0.0 - 1.0.0 - 11.0.0 - 4.0.0 - 10.0.0 - 5.0.0 - >=10.0.0 <5.0.0 - 4.0.0 - 1.0.0 - >=7.0.0 <1.0.0 - >=5.0.0 <1.0.0 - 5.0.0 - 1.0.0 - 15.0.0 - 9.0.0 - 15.0.0 - 11.0.0 - 15.0.0 - 10.0.0 - between 10.0.0 - 5.0.0 & - 9.0.0 - 6.0.0 - 15.0.0 - 11.0.0 - 15.0.0 - 10.0.0 - 10.0.0 - 5.0.0 - 4.0.0 - 1.0.0 - 5.0.0 - 1.0.0 - 6.0.0 - 1.0.0 - >=7.0.0 <1.0.0 - >=5.0.0 <1.0.0 - >=10.0.0 <5.0.0 - 15.0.0 - 9.0.0 - 11.0.0 - 4.0.0 - .parse - ored expressions - adjacent - "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.5 - parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.3 - parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 - parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.5-0 - returns nil on exclude_end? - parse("1.2.3 || 1.2.4 || 1.2.5").to_s includes 1.2.5 - ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 - parse("1.2.3 || 1.2.4 || 1.2.5").to_s excludes 1.2.3-0 - ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 - returns nil on exclude_begin? - ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 - returns expected begin - returns nil on end - ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 - "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.3-0 - parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 - "1.2.3 || 1.2.4 || 1.2.5" stringifies as >=1.2.3 <=1.2.5 - "1.2.3 || 1.2.4 || 1.2.5" excludes 1.2.5-0 - parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 - parse(">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 - "1.2.3 || 1.2.4 || 1.2.5" includes 1.2.3 - ">=1.2.3 <1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 - overlapping - ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.6-0 - ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.6 - parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.4-0 - parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.3-0 - parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s excludes 1.2.6-0 - ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" includes 1.2.3 - ">=1.2.3 || 1.2.5" excludes 1.2.4-0 - parse(">=1.2.3 || 1.2.5").to_s includes 1.2.4 - ">=1.2.3 || 1.2.5" excludes 1.2.3-0 - parse(">=1.2.3 || 1.2.5").to_s excludes 1.2.3-0 - parse(">=1.2.3 || 1.2.5").to_s includes 1.2.3 - ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" stringifies as >=1.2.3 <1.3.0 - ">=1.2.3 || 1.2.5" includes 1.2.4 - ">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0" excludes 1.2.3-0 - ">=1.2.3 || 1.2.5" includes 1.2.3 - ">=1.2.3 || 1.2.5" stringifies as >=1.2.3 - parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.6 - parse(">=1.2.3 <=1.2.5 || >=1.2.5 <1.3.0").to_s includes 1.2.3 - non-overlapping - "1.2.3 || 1.2.5" excludes 1.2.5-0 - "1.2.3 || 1.2.5" includes 1.2.5 - "1.2.3 || 1.2.5" excludes 1.2.4 - "1.2.3 || 1.2.5" excludes 1.2.3-0 - returns nil on begin - "1.2.3 || 1.2.5" stringifies as 1.2.3 || 1.2.5 - parse("1.2.3 || 1.2.5").to_s excludes 1.2.5-0 - parse("1.2.3 || 1.2.5").to_s includes 1.2.5 - returns nil on exclude_begin? - parse("1.2.3 || 1.2.5").to_s excludes 1.2.4 - parse("1.2.3 || 1.2.5").to_s includes 1.2.3 - returns nil on exclude_end? - "1.2.3 || 1.2.5" includes 1.2.3 - returns nil on end - parse("1.2.3 || 1.2.5").to_s excludes 1.2.3-0 - unioned expressions - "1 <=1.2.5" excludes 1.0.0-0 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 3.0.0 - parse("1.2 <1.2.5").to_s excludes 1.2.5-0 - "1.2 <1.2.5" excludes 1.1.999 - parse("1 <=1.2.5").to_s excludes 1.2.6-0 - parse("1 <=1.2.5").to_s excludes 1.0.0-0 - "1.2 <1.2.5" includes 1.2.4 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" stringifies as >=3.0.0 <5.0.0 - parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 4.999.999 - "<1.0.0 >2.0.0" excludes 0.0.0-0 - "1.2 <1.2.5" excludes 1.2.5-0 - parse("1.2 <1.2.5").to_s includes 1.2.0 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" includes 4.999.999 - parse("1.2 <1.2.5").to_s excludes 1.1.999 - "<1.0.0 >2.0.0" stringifies as <0.0.0 - parse("1 <=1.2.5").to_s includes 1.0.0 - parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 5.0.0-0 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 5.0.0-0 - "1 <=1.2.5" includes 1.0.0 - "1 <=1.2.5" stringifies as >=1.0.0 <=1.2.5 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 3.0.0-0 - "1 <=1.2.5" excludes 1.9.0 - parse("1.2 <1.2.5").to_s excludes 1.2.0-0 - "1.2 <1.2.5" excludes 1.2.0-0 - parse("1.2 <1.2.5").to_s excludes 1.9.0 - parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 3.0.0-0 - "1.2 <1.2.5" excludes 1.9.0 - "1 <=1.2.5" includes 1.2.5 - ">1.0.0 >2.0.0 >=3.0.0 <5.0.0" excludes 2.999.999 - "<1.0.0 >2.0.0" excludes 0.0.0 - "1.2 <1.2.5" stringifies as >=1.2.0 <1.2.5 - "1.2 <1.2.5" includes 1.2.0 - parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s excludes 2.999.999 - parse("<1.0.0 >2.0.0").to_s excludes 0.0.0-0 - parse(">1.0.0 >2.0.0 >=3.0.0 <5.0.0").to_s includes 3.0.0 - parse("1 <=1.2.5").to_s includes 1.2.5 - parse("<1.0.0 >2.0.0").to_s excludes 0.0.0 - parse("1 <=1.2.5").to_s excludes 0.999.999 - "1 <=1.2.5" excludes 0.999.999 - "1 <=1.2.5" excludes 1.2.6-0 - parse("1.2 <1.2.5").to_s includes 1.2.4 - parse("1 <=1.2.5").to_s excludes 1.9.0 - inclusive range expressions - "1.2.3 - 1.3.4-alpha" excludes 1.2.2 - "1.2.3-alpha - 1.3.4" includes 1.2.3-alpha - "1.2.3-alpha - 1.3.4-alpha" includes 1.2.3-alpha - "1.2.3 - 1.3.4-alpha" excludes 1.2.3-0 - "1.2.3-alpha - 1.3.4" stringifies as >=1.2.3-alpha <=1.3.4 - parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.3.4-alpha - "1.2.3 - 1.3.4-alpha" includes 1.3.4-alpha - parse("1.2.3-alpha - 1.3.4").to_s excludes 1.3.5-0 - parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.5 - parse("1.2.3 - 1.3.4").to_s excludes 1.3.5-0 - parse("1.2.3 - 1.3.4").to_s excludes 1.2.2 - "1.2.3 - 1.3.4" stringifies as >=1.2.3 <=1.3.4 - "1.2.3 - 1.3.4-alpha" stringifies as >=1.2.3 <=1.3.4-alpha - parse("1.2.3-alpha - 1.3.4").to_s excludes 1.2.3-alph - "1.2.3 - 1.3.4-alpha" includes 1.2.3 - parse("1.2.3 - 1.3.4").to_s excludes 1.2.3-0 - "1.2.3-alpha - 1.3.4-alpha" stringifies as >=1.2.3-alpha <=1.3.4-alpha - parse("1.2.3-alpha - 1.3.4").to_s includes 1.3.4 - parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 - parse("1.2.3 - 1.3.4").to_s includes 1.3.4 - "1.2.3 - 1.3.4-alpha" excludes 1.3.5 - "1.2.3-alpha - 1.3.4-alpha" excludes 1.2.3-alph - parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.2 - "1.2.3-alpha - 1.3.4-alpha" includes 1.3.4-alpha - "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.5 - parse("1.2.3-alpha - 1.3.4").to_s includes 1.2.3-alpha - "1.2.3 - 1.3.4" excludes 1.3.5-0 - parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.3.5 - "1.2.3 - 1.3.4" includes 1.3.4 - "1.2.3 - 1.3.4" excludes 1.2.3-0 - parse("1.2.3 - 1.3.4").to_s includes 1.2.3 - "1.2.3-alpha - 1.3.4-alpha" excludes 1.3.4-alpha0 - parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.3.4-alpha0 - parse("1.2.3 - 1.3.4-alpha").to_s includes 1.2.3 - parse("1.2.3-alpha - 1.3.4-alpha").to_s excludes 1.2.3-alph - "1.2.3 - 1.3.4" excludes 1.2.2 - "1.2.3-alpha - 1.3.4" excludes 1.3.5-0 - parse("1.2.3-alpha - 1.3.4-alpha").to_s includes 1.2.3-alpha - parse("1.2.3 - 1.3.4-alpha").to_s excludes 1.2.3-0 - "1.2.3-alpha - 1.3.4" excludes 1.2.3-alph - "1.2.3 - 1.3.4" includes 1.2.3 - "1.2.3 - 1.3.4-alpha" excludes 1.3.4-alpha0 - parse("1.2.3 - 1.3.4-alpha").to_s includes 1.3.4-alpha - "1.2.3-alpha - 1.3.4" includes 1.3.4 - "reasonably close" expressions - parse("~ 1.2").to_s includes 1.2.0 - "~ 1" stringifies as >=1.0.0 <2.0.0 - parse("~ 1").to_s includes 1.0.0 - parse("~1").to_s includes 1.999.999 - "~1.2.3" stringifies as >=1.2.3 <1.3.0 - parse("~ 1.2.3").to_s excludes 1.3.0-0 - parse("~ 1.2.3-alpha").to_s includes 1.2.3 - "~ 1.2.3-alpha" includes 1.2.3 - "~1" excludes 0.999.999 - "~ 1.2" excludes 1.2.0-0 - "~ 1" excludes 0.999.999 - parse("~1.2").to_s excludes 1.1.999 - "~1.2" includes 1.2.0 - "~ 1.2.3" excludes 1.2.2 - parse("~1.2.3").to_s excludes 1.2.2 - "~ 1.2.3-alpha" excludes 1.2.4-0 - parse("~ 1").to_s includes 1.999.999 - "~ 1.2" includes 1.2.999 - parse("~ 1.2.3").to_s includes 1.2.3 - parse("~1.2.3-alpha").to_s excludes 1.2.4-0 - parse("~1").to_s excludes 2.0.0-0 - parse("~ 1.2.3").to_s excludes 1.2.2 - parse("~1").to_s includes 1.0.0 - "~ 1.2.3" excludes 1.3.0-0 - parse("~ 1.2.3-alpha").to_s includes 1.2.3-alpha - parse("~1.2.3-alpha").to_s includes 1.2.3-alpha - "~1.2" excludes 1.3.0-0 - "~ 1.2" includes 1.2.0 - parse("~ 1.2").to_s includes 1.2.999 - parse("~1.2.3").to_s includes 1.2.5 - parse("~1.2.3-alpha").to_s excludes 1.2.3-alph - "~ 1" excludes 1.0.0-0 - parse("~1.2").to_s includes 1.2.0 - parse("~ 1").to_s excludes 1.0.0-0 - "~1.2" stringifies as >=1.2.0 <1.3.0 - "~ 1.2.3" includes 1.2.3 - "~1" includes 1.0.0 - parse("~1.2.3").to_s excludes 1.2.3-0 - parse("~1.2.3").to_s excludes 1.3.0-0 - "~1" excludes 2.0.0-0 - "~ 1" includes 1.0.0 - "~1.2.3-alpha" excludes 1.2.4-0 - "~1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 - "~ 1.2.3-alpha" includes 1.2.3-alpha - "~1.2" excludes 1.2.0-0 - "~ 1.2.3-alpha" excludes 1.2.3-alph - parse("~1.2").to_s excludes 1.2.0-0 - "~ 1.2.3" stringifies as >=1.2.3 <1.3.0 - parse("~1.2.3-alpha").to_s includes 1.2.3 - parse("~ 1.2").to_s excludes 1.1.999 - "~1" includes 1.999.999 - parse("~1.2.3").to_s includes 1.2.3 - "~1.2.3-alpha" includes 1.2.3-alpha - "~1.2.3-alpha" excludes 1.2.3-alph - "~ 1.2" excludes 1.1.999 - "~1.2.3" excludes 1.2.2 - "~1.2.3-alpha" includes 1.2.3 - "~ 1" excludes 2.0.0-0 - "~1.2" includes 1.2.999 - parse("~ 1.2").to_s excludes 1.3.0-0 - "~ 1.2" stringifies as >=1.2.0 <1.3.0 - "~ 1.2" excludes 1.3.0-0 - "~1.2.3" excludes 1.3.0-0 - parse("~ 1").to_s excludes 2.0.0-0 - "~ 1.2.3" includes 1.2.5 - parse("~1.2").to_s includes 1.2.999 - parse("~ 1.2.3-alpha").to_s excludes 1.2.4-0 - "~1" excludes 1.0.0-0 - "~1.2.3" includes 1.2.3 - "~1.2.3" includes 1.2.5 - parse("~ 1.2.3").to_s includes 1.2.5 - "~ 1" includes 1.999.999 - parse("~1.2").to_s excludes 1.3.0-0 - parse("~ 1").to_s excludes 0.999.999 - parse("~1").to_s excludes 1.0.0-0 - parse("~ 1.2.3").to_s excludes 1.2.3-0 - "~ 1.2.3-alpha" stringifies as >=1.2.3-alpha <1.3.0 - "~1.2" excludes 1.1.999 - "~ 1.2.3" excludes 1.2.3-0 - "~1" stringifies as >=1.0.0 <2.0.0 - parse("~1").to_s excludes 0.999.999 - parse("~ 1.2.3-alpha").to_s excludes 1.2.3-alph - "~1.2.3" excludes 1.2.3-0 - parse("~ 1.2").to_s excludes 1.2.0-0 - open-ended expressions - "<1.2.3-alpha" includes 1.2.3-alph - "< 1.2.3" includes 1.2.2 - "<=1.2.3-alpha" includes 0.0.0 - "<= 1.2.3" stringifies as <=1.2.3 - parse(">1.2.3").to_s excludes 1.2.4-0 - "< 1.2.3-alpha" excludes 1.2.3-alpha - "<1.2.3" excludes 2.0.0 - "<= 1.2.3" excludes 0.0.0-0 - parse("< 1.2.3-alpha").to_s excludes 1.2.3-alpha - "<= 1.2.3-alpha" includes 0.0.0 - "<1.2.3-alpha" includes 0.0.0 - "<= 1.2.3-alpha" stringifies as <=1.2.3-alpha - parse("<1.2.3").to_s excludes 2.0.0 - "<1.2.3-alpha" excludes 0.0.0-0 - parse(">1.2.3-alpha").to_s includes 1.2.3-alpha.0 - parse("< 1.2.3").to_s excludes 1.2.3-0 - "> 1.2.3" excludes 1.2.3 - parse("> 1.2.3-alpha").to_s includes 999.0.0 - parse("> 1.2.3").to_s excludes 1.2.3 - parse(">= 1.2.3").to_s excludes 1.2.2 - parse("<= 1.2.3").to_s excludes 1.2.3-0 - parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha0 - ">=1.2.3" excludes 1.2.3-0 - "<=1.2.3" excludes 1.2.3-0 - "<1.2.3" stringifies as <1.2.3 - "<=1.2.3" includes 1.2.3 - parse("<=1.2.3-alpha").to_s includes 1.2.3-alpha - "< 1.2.3" stringifies as <1.2.3 - parse(">= 1.2.3").to_s excludes 1.2.3-0 - parse("< 1.2.3-alpha").to_s includes 0.0.0 - parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha0 - "<= 1.2.3" excludes 1.2.3-0 - ">= 1.2.3" excludes 1.2.2 - ">1.2.3-alpha" includes 999.0.0 - parse("<1.2.3-alpha").to_s includes 1.2.3-alph - "> 1.2.3" includes 999.0.0 - ">=1.2.3-alpha" includes 1.2.3-alpha - "<=1.2.3-alpha" includes 1.2.3-alpha - parse("<=1.2.3").to_s includes 0.0.0 - "<= 1.2.3-alpha" excludes 1.2.3-alphb - parse("< 1.2.3").to_s excludes 0.0.0-0 - "<=1.2.3-alpha" excludes 1.2.3-alpha.0 - parse("> 1.2.3").to_s excludes 1.2.4-0 - ">1.2.3" stringifies as >1.2.3 - ">=1.2.3" includes 999.0.0 - parse("< 1.2.3-alpha").to_s includes 1.2.3-alph - parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alphb - "< 1.2.3-alpha" excludes 0.0.0-0 - ">=1.2.3" stringifies as >=1.2.3 - "> 1.2.3-alpha" includes 1.2.3-alpha.0 - "<1.2.3" excludes 0.0.0-0 - "<= 1.2.3-alpha" excludes 0.0.0-0 - ">= 1.2.3" stringifies as >=1.2.3 - "< 1.2.3" excludes 2.0.0 - ">=1.2.3-alpha" includes 1.2.3-alpha0 - "> 1.2.3-alpha" includes 1.2.3-alpha0 - "> 1.2.3" excludes 1.2.4-0 - parse("> 1.2.3").to_s includes 999.0.0 - "<=1.2.3-alpha" stringifies as <=1.2.3-alpha - "< 1.2.3" excludes 0.0.0-0 - ">1.2.3-alpha" includes 1.2.3-alpha0 - "> 1.2.3-alpha" stringifies as >1.2.3-alpha - parse(">1.2.3").to_s excludes 1.2.3 - parse("<=1.2.3-alpha").to_s excludes 0.0.0-0 - parse("< 1.2.3").to_s includes 1.2.2 - parse("<1.2.3").to_s excludes 0.0.0-0 - parse("<1.2.3-alpha").to_s includes 0.0.0 - parse("<= 1.2.3").to_s includes 1.2.3 - ">1.2.3-alpha" stringifies as >1.2.3-alpha - parse("> 1.2.3-alpha").to_s excludes 1.2.3-alpha - parse(">= 1.2.3").to_s includes 999.0.0 - "<= 1.2.3" includes 1.2.3 - ">1.2.3" excludes 1.2.3 - parse("<1.2.3-alpha").to_s excludes 2.0.0 - ">=1.2.3-alpha" excludes 1.2.4-alpha - parse("<= 1.2.3").to_s includes 0.0.0 - parse(">=1.2.3").to_s excludes 1.2.3-0 - "<1.2.3-alpha" stringifies as <1.2.3-alpha - parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha - "<= 1.2.3-alpha" includes 1.2.3-alpha - parse("<=1.2.3").to_s includes 1.2.3 - ">1.2.3" excludes 1.2.4-0 - ">= 1.2.3-alpha" stringifies as >=1.2.3-alpha - parse("<1.2.3-alpha").to_s excludes 0.0.0-0 - parse("< 1.2.3-alpha").to_s excludes 0.0.0-0 - parse("<1.2.3").to_s includes 0.0.0 - parse(">=1.2.3-alpha").to_s excludes 1.2.4-alpha - "<= 1.2.3" includes 0.0.0 - ">1.2.3-alpha" includes 1.2.3-alpha.0 - ">= 1.2.3" excludes 1.2.3-0 - "<1.2.3" excludes 1.2.3-0 - parse("<=1.2.3-alpha").to_s includes 0.0.0 - parse("< 1.2.3").to_s includes 0.0.0 - "< 1.2.3-alpha" stringifies as <1.2.3-alpha - parse("< 1.2.3-alpha").to_s excludes 2.0.0 - "<=1.2.3" excludes 0.0.0-0 - ">= 1.2.3-alpha" includes 1.2.3-alpha0 - "< 1.2.3-alpha" includes 0.0.0 - "< 1.2.3-alpha" excludes 2.0.0 - "<1.2.3-alpha" excludes 1.2.3-alpha - parse("< 1.2.3").to_s excludes 2.0.0 - "<= 1.2.3-alpha" excludes 1.2.3-alpha0 - "<=1.2.3-alpha" excludes 0.0.0-0 - ">1.2.3-alpha" excludes 1.2.3-alpha - "> 1.2.3-alpha" includes 999.0.0 - "<=1.2.3" stringifies as <=1.2.3 - "> 1.2.3" stringifies as >1.2.3 - parse(">=1.2.3-alpha").to_s includes 999.0.0 - ">= 1.2.3-alpha" includes 1.2.3-alpha - "<= 1.2.3-alpha" excludes 1.2.3-alpha.0 - parse("<=1.2.3-alpha").to_s excludes 1.2.3-alphb - ">1.2.3" includes 999.0.0 - parse(">=1.2.3").to_s excludes 1.2.2 - ">=1.2.3-alpha" includes 999.0.0 - parse(">= 1.2.3-alpha").to_s includes 999.0.0 - "<=1.2.3" includes 0.0.0 - ">=1.2.3-alpha" stringifies as >=1.2.3-alpha - ">= 1.2.3" includes 999.0.0 - parse("<1.2.3").to_s includes 1.2.2 - parse("<=1.2.3").to_s excludes 0.0.0-0 - parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha.0 - parse(">= 1.2.3-alpha").to_s excludes 1.2.3-alph - parse("<= 1.2.3-alpha").to_s excludes 1.2.3-alpha0 - "<1.2.3-alpha" excludes 2.0.0 - parse(">= 1.2.3-alpha").to_s excludes 1.2.4-alpha - "<1.2.3" includes 0.0.0 - "<=1.2.3-alpha" excludes 1.2.3-alphb - "<1.2.3" includes 1.2.2 - parse("<= 1.2.3-alpha").to_s includes 0.0.0 - "< 1.2.3-alpha" includes 1.2.3-alph - parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha0 - ">=1.2.3-alpha" excludes 1.2.3-alph - "< 1.2.3" excludes 1.2.3-0 - parse("<=1.2.3-alpha").to_s excludes 1.2.3-alpha.0 - parse(">=1.2.3").to_s includes 999.0.0 - parse("<= 1.2.3").to_s excludes 0.0.0-0 - parse(">= 1.2.3-alpha").to_s includes 1.2.3-alpha0 - parse("<1.2.3-alpha").to_s excludes 1.2.3-alpha - parse("<=1.2.3").to_s excludes 1.2.3-0 - parse(">=1.2.3-alpha").to_s includes 1.2.3-alpha - parse("<= 1.2.3-alpha").to_s includes 1.2.3-alpha - parse("<= 1.2.3-alpha").to_s excludes 0.0.0-0 - parse(">=1.2.3-alpha").to_s excludes 1.2.3-alph - parse("<1.2.3").to_s excludes 1.2.3-0 - parse(">1.2.3-alpha").to_s includes 999.0.0 - parse("> 1.2.3-alpha").to_s includes 1.2.3-alpha.0 - ">=1.2.3" excludes 1.2.2 - parse(">1.2.3-alpha").to_s includes 1.2.3-alpha0 - ">= 1.2.3-alpha" excludes 1.2.3-alph - ">= 1.2.3-alpha" excludes 1.2.4-alpha - "> 1.2.3-alpha" excludes 1.2.3-alpha - ">= 1.2.3-alpha" includes 999.0.0 - "<=1.2.3-alpha" excludes 1.2.3-alpha0 - parse(">1.2.3-alpha").to_s excludes 1.2.3-alpha - parse(">1.2.3").to_s includes 999.0.0 - "< 1.2.3" includes 0.0.0 - invalid expressions - raise an appropriate exception - loose version expressions - "1.2.3-alpha" stringifies as 1.2.3-alpha - "1.2.3-alpha" excludes 1.2.3-beta - parse("1.2.3").to_s includes 1.2.3 - "1.2" excludes 1.3.0-0 - parse("1.2").to_s excludes 1.3.0-0 - "1.2.X" excludes 1.2.0-alpha - "1.2.x" includes 1.2.0 - parse("1.X").to_s includes 1.0.0 - "1" stringifies as >=1.0.0 <2.0.0 - parse("1").to_s excludes 0.999.999 - parse("1.2.x").to_s excludes 1.1.999 - parse("1.2.3-alpha").to_s includes 1.2.3-alpha - "1" includes 1.999.0 - "1.2.x" excludes 1.3.0-0 - "1.X" excludes 2.0.0-0 - "1" includes 1.0.0 - "1.x" stringifies as >=1.0.0 <2.0.0 - "1.2.X" includes 1.2.999 - "1.X" excludes 0.999.999 - "1.2.3-alpha" excludes 1.2.3-999 - "1.X" includes 1.999.0 - "1.2" excludes 1.1.999 - parse("1.X").to_s excludes 1.0.0-alpha - "1.2.3" excludes 1.2.2 - parse("1").to_s includes 1.999.0 - "1.x" excludes 1.0.0-alpha - parse("1.2.x").to_s excludes 1.3.0-0 - parse("1.2.X").to_s excludes 1.3.0-0 - parse("1.2.x").to_s includes 1.2.0 - parse("1").to_s excludes 1.0.0-alpha - "1" excludes 1.0.0-alpha - "1.2" includes 1.2.999 - "1.X" excludes 1.0.0-alpha - "1.2.3" excludes 1.2.4-alpha - "1.2.3-alpha" includes 1.2.3-alpha - "1.x" excludes 0.999.999 - "1.2.3" excludes 1.2.3-alpha - parse("1.2.3-alpha").to_s excludes 1.2.3-beta - "1.2.x" excludes 1.1.999 - parse("1.x").to_s includes 1.0.0 - "1.2" stringifies as >=1.2.0 <1.3.0 - parse("1.X").to_s includes 1.999.0 - parse("1.X").to_s excludes 0.999.999 - "1.x" includes 1.999.0 - "1.2.x" excludes 1.2.0-alpha - parse("1.2.3-alpha").to_s excludes 1.2.3-999 - "1.2.x" includes 1.2.999 - parse("1.2.X").to_s excludes 1.2.0-alpha - parse("1.2").to_s excludes 1.1.999 - parse("1.2.3").to_s excludes 1.2.4-alpha - parse("1.2.X").to_s excludes 1.1.999 - parse("1.2.3").to_s excludes 1.2.2 - parse("1.2.x").to_s excludes 1.2.0-alpha - parse("1.2.3").to_s excludes 1.2.3-alpha - parse("1").to_s includes 1.0.0 - parse("1.x").to_s excludes 2.0.0-0 - "1.2" excludes 1.2.0-alpha - parse("1.2.x").to_s includes 1.2.999 - parse("1.x").to_s excludes 0.999.999 - parse("1.2").to_s includes 1.2.0 - "1.2.X" includes 1.2.0 - "1.x" includes 1.0.0 - "1" excludes 0.999.999 - "1.2.X" stringifies as >=1.2.0 <1.3.0 - parse("1.2").to_s excludes 1.2.0-alpha - "1" excludes 2.0.0-0 - "1.X" stringifies as >=1.0.0 <2.0.0 - parse("1.2.X").to_s includes 1.2.0 - parse("1.x").to_s excludes 1.0.0-alpha - "1.2.X" excludes 1.3.0-0 - "1.X" includes 1.0.0 - "1.2.x" stringifies as >=1.2.0 <1.3.0 - "1.2" includes 1.2.0 - "1.2.X" excludes 1.1.999 - parse("1.2").to_s includes 1.2.999 - parse("1.X").to_s excludes 2.0.0-0 - "1.2.3" stringifies as 1.2.3 - parse("1.2.X").to_s includes 1.2.999 - "1.x" excludes 2.0.0-0 - parse("1").to_s excludes 2.0.0-0 - parse("1.x").to_s includes 1.999.0 - "1.2.3" includes 1.2.3 - The version - 1.1.3 should be below range 2.x.x - 1.9999.9999 should not be below range < 2.0.0 - 1.9999.9999 should not be above range <=2.0.0(<=2.0.0) - 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) - 0.2.9 should not be below range < 2.0.0 - 0.6.0-asdf should be below range =0.7.x - 0.2.4 should not be below range >=0.2.3 || <0.0.1 - 1.0.0-beta should not be below range ^1.0.0-alpha - 0.0.0-0 should not be above range ^1(>=1.0.0 <2.0.0) - 2.0.0 should be above range <2.0.0 - 3.2.9 should be above range <=2.0.0 - 3.1.3 should be above range 1.2.* || 2.* - 5.0.0-0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 - 5.0.0-0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) - 1.0.0 should not be above range >=1(>=1.0.0) - 3.1.3 should be above range 2.*.* - 1.1.0 should not be above range >=1.0.0(>=1.0.0) - 0.6.1-pre should be above range ~v0.5.4-pre - 2.1.3 should not be below range 1.2.x || 2.x - 1.2.3 should not be below range 1.2.x - 1.1.0 should not be below range ~ 1.0 - 1.9999.9999 should not be below range <=2.0.0 - 1.0.1 should not be below range >=1.0.0 - 0.2.9 should not be below range <2.0.0 - 1.1.3 should be below range 1.2.* - 1.0.2 should not be below range ~ 1.0 - 2.2.1 should be below range 2.3 - 0.6.0 should be above range ~v0.5.4-pre - 1.9999.9999 should be below range 2 - 0.2.3 should be below range ~> 1 - 0.6.1-1 should not be below range ~0.6.1-1 - 1.0.0 should not be below range 1.0.0 - 2.0.0 should not be above range ^1.0.0 || ~2.0.1(>=1.0.0 <2.0.0 || >=2.0.1 <2.1.0) - 1.1.3 should be below range 2.*.* - 1.1.3 should be below range 1.2.* || 2.* - 1.1.0 should not be below range >=1.0.0 - 0.8.0-asdf should be above range =0.7.x - 0.7.0-asdf should be below range =0.7.x - 1.1.0 should not be below range > 1.0.0 - 0.5.4 should not be below range ~v0.5.4-pre - 1.2.3 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) - 2.0.0 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) - 2.4.0 should not be below range ~2.4 - 0.5.4 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) - 1.1.3 should be below range 1.2.* - 1.2.3 should not be below range 0.1.20 || 1.2.4 - 1.2.9 should be below range >=2.0.0 - 2.5.0 should be above range ~2.4 - 1.0.0 should be above range <1 - 0.6.2 should be below range =0.7.x - 2.3.1 should not be below range 2.3 - 2.0.0 should be below range >2.0.0 - 2.2.9 should be above range <=2.0.0 - 2.3.1 should not be above range 2.3(>=2.3.0 <2.4.0) - 0.7.2 should be above range <0.7.x - 0.2.3 should be below range ~1 - 1.2.3 should not be below range ~> 1 - 2.9999.9999 should be above range <2.0.0 - 1.2.3 should not be below range ~>1 - 0.2.3 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) - 0.5.4-alpha should be below range ~v0.5.4-pre - 0.7.2 should not be below range =0.7.x - 2.1.3 should not be below range 2.x.x - 0.0.0 should be below range ~1.0 - 1.3.3 should be above range 1.2.* - 2.5.0 should be above range ~2.4 - 0.6.0 should be below range >=0.7.x - 1.9999.9999 should not be below range <= 2.0.0 - 1.0.0 should be below range 2.x.x - 1.1.3 should be below range 1.2.x || 2.x - 1.0.0 should not be above range >= 1(>=1.0.0) - 0.7.0-asdf should be below range >=0.7.x - 2.0.0 should not be above range ^3.0.0(>=3.0.0 <4.0.0) - 1.2.1 should be above range < 1.2 - 0.0.1 should be below range 1.0.0 - 1.0.0 should be below range 1.2.x || 2.x - 3.1.3 should be above range 2.x.x - 1.0.1 should be above range 1.0.0 - 1.9999.9999 should not be above range <= 2.0.0(<=2.0.0) - 1.0.0-beta should not be above range 1(>=1.0.0 <2.0.0) - 1.2.1 should be below range ~1.2.2 - 1.9999.9999 should be below range >=2.0.0 - 2.1.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) - 1.2.3 should not be above range ~> 1(>=1.0.0 <2.0.0) - 0.5.5 should not be above range ~v0.5.4-pre(>=0.5.4-pre <0.6.0) - 1.2.5 should be above range 0.1.20 || 1.2.4 - 2.4.2 should be above range 2.3 - 1.1.0 should be above range ~1.0 - 2.3.5 should be below range ~2.4 - 0.1.5 should be below range 0.1.20 || 1.2.4 - 2.4.5 should not be below range ~2.4 - 0.6.0 should be below range =0.7.x - 2.4.0 should not be above range ~2.4(>=2.4.0 <2.5.0) - 1.0.0 should not be below range >=1 - 0.2.4 should not be above range >=*(>=0.0.0) - 2.0.0-beta should be above range 1 - 1.3.3 should be above range 1.2.* - 0.2.9 should not be above range <=2.0.0(<=2.0.0) - 1.2.3 should not be above range ~1(>=1.0.0 <2.0.0) - 2.0.0 should not be below range <= 2.0.0 - 1.2.3 should not be above range *(*) - 2.0.0-beta should be above range 1 - 0.1.97 should not be below range >=0.1.97 - 1.2.4 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) - 1.0.0 should not be below range >=1.0.0 - 0.2.4 should be below range ~>1 - 0.0.0-beta should be below range 1 - 3.5.0 should not be below range ^0.1.0 || ~3.0.1 || >4 <=5.0.0 - 0.7.0-asdf should not be above range =0.7.x(>=0.7.0 <0.8.0) - 1.0.0 should not be below range =0.1.0 - 1.0.1 should not be above range >= 1.0.0(>=1.0.0) - 1.2.3 should not be above range *(*) - 0.7.0 should be above range <0.7.x - 0.2.3 should be below range 1.0.0 - 2.0.0 - 0.2.9 should not be above range < 2.0.0(<2.0.0) - 2.0.0 should be above range 1.0.0 - 1.2.0 should be above range <1.2 - 0.6.1-1 should not be above range ~0.6.1-1(>=0.6.1-1 <0.7.0) - 0.2.5 should not be above range >0.2.3 >0.2.4 <=0.2.5(>0.2.4 <=0.2.5) - 1.2.3 should not be above range 1.2.*(>=1.2.0 <1.3.0) - 0.7.0-asdf should not be above range >=0.7.x(>=0.7.0) - 0.2.3 should not be below range >=0.2.3 || <0.0.1 - 4.0.0 should be above range 1.2.* || 2.* - 0.2.3 should be below range ~1 - 2.4.1 should be above range 2.3 - 1.0.0-beta.1 should be below range 1.0.0-beta.2 - 1.0.1 should not be below range >1.0.0 - 1.2.3 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) - 1.0.0-beta should be below range 2 - 1.9999.9999 should not be above range <2.0.0(<2.0.0) - 2.0.0 should not be above range <=2.0.0(<=2.0.0) - 1.1.0 should not be above range > 1.0.0(>1.0.0) - 1.2.1 should be below range ~1.2.2 - 2.1.3 should not be above range 2.x.x(>=2.0.0 <3.0.0) - 0.7.2 should not be above range >=0.7.x(>=0.7.0) - 1.0.0 should be below range >1 - 1.3.4 should not be above range ||(*) - 1.2.9 should be below range >=2.0.0 - 3.1.3 should be above range 1.2.x || 2.x - 1.0.1 should not be below range >= 1.0.0 - 3.5.0 should not be above range ^0.1.0 || ~3.0.1 || >4 <=5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) - 1.0.2 should not be above range ~1.0(>=1.0.0 <1.1.0) - 0.7.1-1 should be above range ~0.6.1-1 - 1.2.3 should not be above range ~>1(>=1.0.0 <2.0.0) - 2.5.5 should be above range ~2.4 - 2.0.0 should not be below range 1.0.0 - 2.0.0 - 5.0.1 should be above range 2.*.* - 0.1.97 should not be above range >=0.1.97(>=0.1.97) - 2.1.3 should not be below range 2.*.* - 3.0.0 should be above range 1.2.x || 2.x - 1.0.0 should not be above range >= 1.0.0(>=1.0.0) - 1.2.3 should not be below range * - 1.0.1 should not be below range > 1.0.0 - 3.3.2 should be above range ~>3.2.1 - 1.2.1 should be below range > 1.2 - 1.0.0 should not be above range >=1.0.0(>=1.0.0) - 0.8.2 should be above range =0.7.x - 2.0.1 should be above range 1.0.0 - 2.0.0 - 1.0.0-beta should be above range <1 - 0.1.97 should not be above range >=0.1.97(>=0.1.97) - 2.1.1 should be above range <=2.0.0 - 0.2.9 should not be above range <2.0.0(<2.0.0) - 0.5.4-alpha should be below range ~v0.5.4-pre - 0.2.9 should not be below range <= 2.0.0 - 3.2.2 should not be above range ~>3.2.1(>=3.2.1 <3.3.0) - 1.0.0-beta should be below range 1 - 1.1.3 should be below range 1.2.x - 0.2.4 should not be below range >=0.2.3 <=0.2.4 - 1.0.1 should not be above range >=1.0.0(>=1.0.0) - 2.9999.9999 should be above range <=2.0.0 - 2.3.0 should be below range ~2.4 - 1.2.3 should not be above range x(*) - 1.1.0 should not be below range >= 1.0.0 - 0.6.1-0 should be below range ~0.6.1-1 - 2.1.2 should not be above range 2(>=2.0.0 <3.0.0) - 1.1.0 should not be below range >1.0.0 - 2.1.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) - 2.0.0 should not be above range <= 2.0.0(<=2.0.0) - 1.1.1 should not be above range <1.2(<1.2.0) - 1.0.1-beta1 should be above range 1.0.0 - 3.2.0 should be below range ~>3.2.1 - 0.2.4 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) - 1.2.3 should not be below range 1.2.* || 2.* - 1.0.0-beta should not be below range ~1.0.0-alpha - 1.0.1 should be below range 2.*.* - 0.5.5 should not be below range ~v0.5.4-pre - 1.0.2 should not be below range ~1.0 - 1.1.0 should be below range 1.2.x - 1.1.0 should be above range ~ 1.0 - 1.1.1 should be below range >=2.0.0 - 3.2.2 should not be below range ~>3.2.1 - 1.3.3 should be above range 1.2.x - 3.3.0 should be above range ~>3.2.1 - 0.2.3 should be below range ~>1 - 1.2.3 should not be above range 1.2.x || 2.x(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) - 2.3.2 should be below range ~>3.2.1 - 1.0.1 should not be above range > 1.0.0(>1.0.0) - 4.0.0 should not be below range ^3.0.0 - 1.0.0 should not be above range (*) - 1.0.0 should not be below range >= 1.0.0 - 1.2.3 should not be below range 1.2.* || 2.* - 1.0.0 should not be above range 1.0.0(1.0.0) - 1.1.2 should be above range ~1.0 - 1.3.0 should be above range ~1.2.2 - 0.8.0 should be above range =0.7.x - 1.2.3 should not be below range ~1 - 2.0.0 should be below range >2.0.0 - 2.2.2 should be below range 2.3 - 2.0.0 should not be below range ^1.0.0 || ~2.0.1 - 2.9.9 should not be below range 1.0.0 - 2.0.0 - 1.3.0 should be above range ~1.2.2 - 1.1.0 should not be above range >= 1.0.0(>=1.0.0) - 1.2.0 should be below range >1.2 - 3.2.0 should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 - 1.0.0 should not be below range >= 1 - 1.3.0 should be above range 1.2.x - 1.2.3 should not be below range 1.0.0 - 2.0.0 - 1.0.0 should be below range >=2.0.0 - 1.2.3 should not be below range 1.2.x || 2.x - 0.0.1 should be below range 1.0.0 - 2.0.0 - 1.9999.9999 should not be below range <2.0.0 - 0.6.2 should be below range >=0.7.x - 2.2.3 should be above range ~1 - 0.2.4 should not be above range >=0.2.3 <=0.2.4(>=0.2.3 <=0.2.4) - 2.1.2 should not be below range 2 - 1.2.3 should not be above range 1.2.x(>=1.2.0 <1.3.0) - 1.1.1 should not be below range <1.2 - 1.0.0-beta should be below range >1 - 0.9.9 should not be above range 1.0.0 - 2.0.0(>=1.0.0 <=2.0.0) - 0.7.2 should not be above range =0.7.x(>=0.7.0 <0.8.0) - 1.1.0 should not be above range >1.0.0(>1.0.0) - 1.2.3 should not be below range * - 1.2.9 should be below range >2.0.0 - 2.1.3 should not be above range 2.*.*(>=2.0.0 <3.0.0) - 1.0.0-beta should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) - 2.0.0 should not be below range <=2.0.0 - 1.0.0-beta should not be below range ^0.1.0 || ~3.0.1 || 5.0.0 - 0.0.0 should not be above range >=0.2.3 || <0.0.1(>=0.2.3 || <0.0.1) - 1.0.0-0 should be below range ^1 - 0.6.2 should not be above range <=0.7.x(<0.8.0) - 3.0.0 should be above range 2.x.x - 1.0.0-beta should be below range > 1 - 1.2.3 should not be below range 1.2.* - 0.2.5 should not be below range >0.2.3 >0.2.4 <=0.2.5 - 2.2.9 should be above range <2.0.0 - 0.2.4 should not be below range >=* - 0.1.0 should be below range ~ 1.0 - 1.2.3 should not be above range 1.2.* || 2.*(>=1.2.0 <1.3.0 || >=2.0.0 <3.0.0) - 2.2.3 should be above range ~1 - 0.6.2 should not be below range <=0.7.x - 1.0.0 should be below range 2 - 0.0.0 should be below range 1.0.0 - 0.1.20 should not be above range 0.1.20 || 1.2.4(0.1.20 || 1.2.4) - 0.2.9 should not be below range <=2.0.0 - 1.2.4 should not be below range 0.1.20 || >1.2.4 - 1.2.3-foo should not be above range *(*) - 0.7.2 should not be below range >=0.7.x - 2.1.3 should not be below range 1.2.* || 2.* - 2.4.5 should not be above range ~2.4(>=2.4.0 <2.5.0) - 1.0.1 should not be above range >1.0.0(>1.0.0) - 3.2.0 should not be above range ^0.1.0 || ~3.0.1 || 5.0.0(>=0.1.0 <0.2.0 || >=3.0.1 <3.1.0 || 5.0.0) - 1.9999.9999 should not be above range < 2.0.0(<2.0.0) - 3.0.0 should be above range 2 - 1.3.4 should not be below range || - 1.2.4 should not be below range 0.1.20 || 1.2.4 - 1.2.4 should not be above range 0.1.20 || >1.2.4(0.1.20 || >1.2.4) - 0.1.2 should be below range ~1.0 - 2.2.4 should be above range ~>1 - 3.1.2 should be above range 2 - 0.1.20 should not be below range 0.1.20 || 1.2.4 - 2.3.0 should be below range ~2.4 - 1.1.9999 should be below range 1.2.* || 2.* - 0.2.9 should not be above range <= 2.0.0(<=2.0.0) - 0.0.0 should not be below range >=0.2.3 || <0.0.1 - 1.1.1 should not be below range < 1.2 - 3.0.0 should be above range <=2.0.0 - 2.2.3 should be above range ~>1 - 3.2.3 should be above range ~> 1 - 1.0.2 should not be above range ~ 1.0(>=1.0.0 <1.1.0) - 1.0.0 should not be below range - 2.2.3 should be above range 1.0.0 - 2.0.0 - 1.1.1 should not be above range < 1.2(<1.2.0) - 1.2.3 should not be below range x - 1.0.0-beta should be above range < 1 + can be compared + #<< + does not append nodes with unknown names + sorts the dependencies for each addition to the same node + appends satisfying nodes to the dependencies + sorts once the dependencies for a specific node + does not append unsatisfying nodes + dependencies + are added by #add_dependency + are maintained in the #dependencies Hash -Finished in 0.31378 seconds (files took 0.19534 seconds to load) +Finished in 0.73149 seconds (files took 0.50549 seconds to load) 988 examples, 0 failures -Randomized with seed 31987 +Randomized with seed 58691 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -2006,12 +2042,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/3978756/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3978756/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/1808992 and its subdirectories -I: Current time: Tue May 26 21:13:39 -12 2026 -I: pbuilder-time-stamp: 1779873219 +I: removing directory /srv/workspace/pbuilder/3978756 and its subdirectories +I: Current time: Thu Apr 24 16:54:24 +14 2025 +I: pbuilder-time-stamp: 1745463264 Compressing the 2nd log... /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/ruby-semantic-puppet_1.1.0-1.diff: 85.2% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/ruby-semantic-puppet_1.1.0-1.diff.gz b2/build.log: 83.2% -- replaced with stdout Compressing the 1st log... b1/build.log: 83.6% -- replaced with stdout Thu Apr 24 02:54:27 UTC 2025 I: diffoscope 294 will be used to compare the two builds: ++ date -u +%s + DIFFOSCOPE_STAMP=/var/log/reproducible-builds/diffoscope_stamp_ruby-semantic-puppet_unstable_amd64_1745463267 + touch /var/log/reproducible-builds/diffoscope_stamp_ruby-semantic-puppet_unstable_amd64_1745463267 + RESULT=0 + systemd-run '--description=diffoscope on ruby-semantic-puppet/1.1.0-1 in unstable/amd64' --slice=rb-build-diffoscope.slice -u rb-diffoscope-amd64_20-49290 '--property=SuccessExitStatus=1 124' --user --send-sighup --pipe --wait -E TMPDIR timeout 155m nice schroot --directory /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9 --run-session -c jenkins-reproducible-unstable-diffoscope-dc3cda8e-2c7d-4734-94ac-75048a5ae458 -- sh -c 'export TMPDIR=/srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/dbd-tmp-IaWOyZw ; timeout 150m diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b1/ruby-semantic-puppet_1.1.0-1_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b2/ruby-semantic-puppet_1.1.0-1_amd64.changes' + false + set +x Running as unit: rb-diffoscope-amd64_20-49290.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/ruby-semantic-puppet_1.1.0-1.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b1/ruby-semantic-puppet_1.1.0-1_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.jHOxZbK9/b2/ruby-semantic-puppet_1.1.0-1_amd64.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call diffoscope.comparators.binary.FilesystemFile ## main (total time: 0.003s) 0.003s 2 calls outputs 0.000s 1 call cleanup Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 220ms CPU time consumed: 220ms _ _ _ _ __ _ _| |__ _ _ ___ ___ _ __ ___ __ _ _ __ | |_(_) ___ | '__| | | | '_ \| | | |_____/ __|/ _ \ '_ ` _ \ / _` | '_ \| __| |/ __|____ | | | |_| | |_) | |_| |_____\__ \ __/ | | | | | (_| | | | | |_| | (_|_____| |_| \__,_|_.__/ \__, | |___/\___|_| |_| |_|\__,_|_| |_|\__|_|\___| |___/ _ _ __ _ _ _ __ _ __ ___| |_ | '_ \| | | | '_ \| '_ \ / _ \ __| | |_) | |_| | |_) | |_) | __/ |_ | .__/ \__,_| .__/| .__/ \___|\__| |_| |_| |_| Thu Apr 24 02:54:28 UTC 2025 I: diffoscope 294 found no differences in the changes files, and a .buildinfo file also exists. Thu Apr 24 02:54:28 UTC 2025 I: ruby-semantic-puppet from unstable built successfully and reproducibly on amd64. INSERT 0 1 INSERT 0 1 DELETE 1 [2025-04-24 02:54:28] INFO: Starting at 2025-04-24 02:54:28.678910 [2025-04-24 02:54:28] INFO: Generating the pages of 1 package(s) [2025-04-24 02:54:28] CRITICAL: https://tests.reproducible-builds.org/debian/unstable/amd64/ruby-semantic-puppet didn't produce a buildlog, even though it has been built. [2025-04-24 02:54:29] INFO: Finished at 2025-04-24 02:54:29.108529, took: 0:00:00.429626 Thu Apr 24 02:54:29 UTC 2025 - successfully updated the database and updated https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/ruby-semantic-puppet.html Thu Apr 24 02:54:29 UTC 2025 I: Submitting .buildinfo files to external archives: Thu Apr 24 02:54:29 UTC 2025 I: Submitting 12K b1/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc https://buildinfo.debian.net/075dda90cf0a8cac93a5d9d9dc7e0f3e3deee605/ruby-semantic-puppet_1.1.0-1_all Thu Apr 24 02:54:50 UTC 2025 I: Submitting 12K b2/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc Thu Apr 24 02:55:20 UTC 2025 E: Could not submit buildinfo from b2 to http://buildinfo.debian.net/api/submit Thu Apr 24 02:55:20 UTC 2025 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Thu Apr 24 02:55:20 UTC 2025 I: Done submitting .buildinfo files. Thu Apr 24 02:55:20 UTC 2025 I: Removing signed ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc files: removed './b1/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc' removed './b2/ruby-semantic-puppet_1.1.0-1_amd64.buildinfo.asc' 1745463320 amd64 unstable ruby-semantic-puppet Starting cleanup. /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/ruby-semantic-puppet_1.1.0-1.rbuild.log: 82.5% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/ruby-semantic-puppet_1.1.0-1.rbuild.log.gz [2025-04-24 02:55:21] INFO: Starting at 2025-04-24 02:55:21.032720 [2025-04-24 02:55:21] INFO: Generating the pages of 1 package(s) [2025-04-24 02:55:21] INFO: Finished at 2025-04-24 02:55:21.472132, took: 0:00:00.439417 All cleanup done. Thu Apr 24 02:55:21 UTC 2025 - total duration: 0h 5m 0s. Thu Apr 24 02:55:21 UTC 2025 - reproducible_build.sh stopped running as /tmp/jenkins-script-TjuLMGjv, removing. Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 5min 53.597s CPU time consumed: 7.490s