Diff of the two buildlogs: -- --- b1/build.log 2025-09-04 01:20:14.846303510 +0000 +++ b2/build.log 2025-09-04 01:25:29.714678070 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Sep 3 13:16:51 -12 2025 -I: pbuilder-time-stamp: 1756948611 +I: Current time: Wed Oct 7 21:43:20 +14 2026 +I: pbuilder-time-stamp: 1791359000 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -22,53 +22,85 @@ dpkg-source: info: unpacking golang-github-apptainer-container-library-client_1.4.10-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1082336/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2874661/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Oct 7 07:43 /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/2874661/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2874661/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=40 ' - DISTRIBUTION='forky' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='7f67968bfce244618427acaf5db2cb1b' - 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='1082336' - PS1='# ' - PS2='> ' + INVOCATION_ID=2c3d4dfa8dd74c3791f6852e63170fd4 + 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=2874661 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.zfm508R3/pbuilderrc_ZtND --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.zfm508R3/b1 --logfile b1/build.log golang-github-apptainer-container-library-client_1.4.10-1.dsc' - SUDO_GID='110' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.zfm508R3/pbuilderrc_utrg --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.zfm508R3/b2 --logfile b2/build.log golang-github-apptainer-container-library-client_1.4.10-1.dsc' + SUDO_GID=111 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos1-amd64 6.12.41+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.41-1 (2025-08-12) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.41+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.41-1 (2025-08-12) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1082336/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2874661/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -587,7 +619,7 @@ Get: 459 http://deb.debian.org/debian forky/main amd64 golang-github-mitchellh-go-homedir-dev all 1.1.0-1 [5168 B] Get: 460 http://deb.debian.org/debian forky/main amd64 golang-github-google-go-containerregistry-dev all 0.20.1+ds1-1 [214 kB] Get: 461 http://deb.debian.org/debian forky/main amd64 golang-github-sylabs-json-resp-dev all 0.6.0-3 [5452 B] -Fetched 212 MB in 2s (91.7 MB/s) +Fetched 212 MB in 33s (6392 kB/s) Preconfiguring packages ... Selecting previously unselected package golang-golang-x-sys-dev. (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 ... 19897 files and directories currently installed.) @@ -2069,8 +2101,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Thu Sep 4 01:19:34 UTC 2025. -Universal Time is now: Thu Sep 4 01:19:34 UTC 2025. +Local time is now: Wed Oct 7 07:47:37 UTC 2026. +Universal Time is now: Wed Oct 7 07:47:37 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-coreos-go-semver-dev (0.3.0-1) ... @@ -2452,7 +2484,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/golang-github-apptainer-container-library-client-1.4.10/ && 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 > ../golang-github-apptainer-container-library-client_1.4.10-1_source.changes +I: user script /srv/workspace/pbuilder/2874661/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/2874661/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/golang-github-apptainer-container-library-client-1.4.10/ && 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 > ../golang-github-apptainer-container-library-client_1.4.10-1_source.changes dpkg-buildpackage: info: source package golang-github-apptainer-container-library-client dpkg-buildpackage: info: source version 1.4.10-1 dpkg-buildpackage: info: source distribution unstable @@ -2470,181 +2506,181 @@ dh_autoreconf -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang dh_auto_build -O--builddirectory=_build -O--buildsystem=golang - cd _build && go install -trimpath -v -p 40 github.com/apptainer/container-library-client/client -internal/unsafeheader -internal/godebugs -vendor/golang.org/x/crypto/cryptobyte/asn1 + cd _build && go install -trimpath -v -p 42 github.com/apptainer/container-library-client/client +internal/goos cmp -internal/asan +internal/profilerecord internal/coverage/rtcov -unicode +crypto/internal/fips140/alias +log/internal github.com/google/go-containerregistry/pkg/v1/types +unicode/utf8 +internal/nettrace encoding +internal/itoa +internal/asan internal/msan -math/bits -internal/profilerecord -internal/byteorder +vendor/golang.org/x/crypto/cryptobyte/asn1 github.com/go-log/log -crypto/internal/fips140/alias -internal/itoa -unicode/utf8 -internal/goos -unicode/utf16 container/list +unicode +unicode/utf16 vendor/golang.org/x/crypto/internal/alias -internal/cpu -log/internal -sync/atomic -internal/runtime/syscall -crypto/internal/boring/sig -internal/nettrace -internal/goarch +internal/godebugs internal/goexperiment +crypto/internal/boring/sig +internal/unsafeheader +internal/runtime/syscall +internal/byteorder internal/runtime/atomic -crypto/internal/fips140/subtle -crypto/internal/fips140deps/byteorder -internal/chacha8rand +math/bits +sync/atomic +internal/cpu +internal/goarch internal/runtime/math internal/runtime/sys internal/abi +crypto/internal/fips140/subtle +internal/chacha8rand +crypto/internal/fips140deps/byteorder crypto/internal/fips140deps/cpu internal/bytealg -math internal/runtime/exithook +math internal/stringslite internal/race internal/sync internal/runtime/maps runtime -weak iter +weak crypto/subtle internal/reflectlite sync maps slices -errors -sort +internal/singleflight internal/testlog internal/bisect -internal/singleflight unique +runtime/cgo +internal/godebug +crypto/internal/fips140deps/godebug +errors internal/oserror io +sort +math/rand path vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 strconv -runtime/cgo syscall -internal/godebug -bytes -crypto/internal/randutil hash +bytes strings +hash/crc32 +crypto/internal/randutil +vendor/golang.org/x/text/transform crypto net/netip -hash/crc32 reflect -crypto/internal/fips140deps/godebug -math/rand -vendor/golang.org/x/text/transform crypto/internal/impl net/http/internal/ascii -crypto/internal/fips140 bufio +crypto/internal/fips140 regexp/syntax crypto/internal/fips140/sha256 crypto/tls/internal/fips140tls crypto/internal/fips140/sha3 crypto/internal/fips140/sha512 -internal/syscall/execenv -internal/syscall/unix -time -crypto/sha3 crypto/internal/fips140/hmac -crypto/internal/fips140/check +crypto/sha3 crypto/internal/fips140hash +crypto/internal/fips140/check +regexp +internal/syscall/execenv +time +internal/syscall/unix crypto/internal/fips140/hkdf crypto/internal/fips140/tls12 crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/aes crypto/internal/fips140/bigmod +crypto/internal/fips140/aes crypto/internal/fips140/nistec/fiat crypto/internal/fips140/tls13 -regexp crypto/internal/fips140/edwards25519 -context +crypto/internal/fips140/nistec +internal/fmtsort io/fs +context +encoding/binary internal/poll internal/filepathlite -crypto/internal/fips140/nistec os -internal/fmtsort -encoding/binary +encoding/base64 +vendor/golang.org/x/crypto/internal/poly1305 +encoding/pem crypto/internal/sysrand path/filepath -vendor/golang.org/x/sys/cpu fmt +vendor/golang.org/x/sys/cpu crypto/internal/entropy crypto/internal/fips140/drbg crypto/internal/fips140only +crypto/internal/fips140/ecdh crypto/internal/fips140/ed25519 +crypto/internal/fips140/ecdsa crypto/internal/fips140/mlkem crypto/internal/fips140/aes/gcm crypto/internal/fips140/rsa crypto/rc4 crypto/md5 -net -encoding/base64 -vendor/golang.org/x/crypto/internal/poly1305 -crypto/internal/fips140/ecdh -crypto/internal/fips140/ecdsa -encoding/pem crypto/cipher encoding/hex -github.com/opencontainers/image-spec/specs-go -database/sql/driver -github.com/opencontainers/go-digest net/url -encoding/json +net/http/internal log -compress/flate +github.com/opencontainers/image-spec/specs-go vendor/golang.org/x/net/http2/hpack -net/http/internal +database/sql/driver mime/quotedprintable mime -math/big +github.com/opencontainers/go-digest golang.org/x/sync/errgroup +compress/flate +encoding/json +math/big vendor/golang.org/x/text/unicode/norm -vendor/golang.org/x/crypto/chacha20 -crypto/des -crypto/internal/boring github.com/opencontainers/image-spec/specs-go/v1 +crypto/internal/boring +crypto/des +vendor/golang.org/x/crypto/chacha20 crypto/sha256 -crypto/hmac crypto/aes +crypto/hmac crypto/sha512 -crypto/sha1 crypto/ecdh vendor/golang.org/x/text/unicode/bidi +crypto/sha1 vendor/golang.org/x/crypto/chacha20poly1305 compress/gzip vendor/golang.org/x/text/secure/bidirule vendor/golang.org/x/net/idna -github.com/google/go-containerregistry/pkg/v1 github.com/blang/semver/v4 -crypto/internal/boring/bbig +github.com/google/go-containerregistry/pkg/v1 crypto/rand +crypto/internal/boring/bbig crypto/dsa -encoding/asn1 crypto/elliptic -crypto/ed25519 +encoding/asn1 crypto/internal/hpke +crypto/ed25519 crypto/rsa crypto/x509/pkix vendor/golang.org/x/crypto/cryptobyte crypto/ecdsa +net vendor/golang.org/x/net/http/httpproxy net/textproto github.com/google/uuid @@ -2661,12 +2697,12 @@ make[1]: Entering directory '/build/reproducible-path/golang-github-apptainer-container-library-client-1.4.10' cp -a client/test_data /build/reproducible-path/golang-github-apptainer-container-library-client-1.4.10/_build/src/github.com/apptainer/container-library-client/client/ dh_auto_test - cd _build && go test -vet=off -v -p 40 github.com/apptainer/container-library-client/client + cd _build && go test -vet=off -v -p 42 github.com/apptainer/container-library-client/client === RUN Test_getEntity === RUN Test_getEntity/NotFound === RUN Test_getEntity/Unauthorized === RUN Test_getEntity/ValidResponse ---- PASS: Test_getEntity (0.01s) +--- PASS: Test_getEntity (0.00s) --- PASS: Test_getEntity/NotFound (0.00s) --- PASS: Test_getEntity/Unauthorized (0.00s) --- PASS: Test_getEntity/ValidResponse (0.00s) @@ -2799,20 +2835,20 @@ === PAUSE TestMultistreamDownloader/ManyStreamsWithoutSize === CONT TestMultistreamDownloader/Basic === CONT TestMultistreamDownloader/SingleStreamWithoutSize -2025/09/03 13:20:05 size: 30, parts: 10, streams: 10, partsize: 3 === CONT TestMultistreamDownloader/ManyStreamsWithoutSize +2026/10/07 21:48:14 size: 30, parts: 10, streams: 10, partsize: 3 === CONT TestMultistreamDownloader/ManyStreams -2025/09/03 13:20:05 size: 30, parts: 30, streams: 30, partsize: 1 -=== CONT TestMultistreamDownloader/WithoutSize +2026/10/07 21:48:14 size: 30, parts: 30, streams: 30, partsize: 1 === CONT TestMultistreamDownloader/SingleStream -2025/09/03 13:20:05 size: 30, parts: 30, streams: 1, partsize: 1 +2026/10/07 21:48:14 size: 30, parts: 30, streams: 1, partsize: 1 +=== CONT TestMultistreamDownloader/WithoutSize --- PASS: TestMultistreamDownloader (0.00s) --- PASS: TestMultistreamDownloader/SingleStreamWithoutSize (0.00s) --- PASS: TestMultistreamDownloader/ManyStreamsWithoutSize (0.00s) - --- PASS: TestMultistreamDownloader/WithoutSize (0.01s) - --- PASS: TestMultistreamDownloader/Basic (0.01s) - --- PASS: TestMultistreamDownloader/ManyStreams (0.01s) - --- PASS: TestMultistreamDownloader/SingleStream (0.02s) + --- PASS: TestMultistreamDownloader/WithoutSize (0.00s) + --- PASS: TestMultistreamDownloader/Basic (0.04s) + --- PASS: TestMultistreamDownloader/ManyStreams (0.04s) + --- PASS: TestMultistreamDownloader/SingleStream (0.05s) === RUN TestOciRegistryAuth === RUN TestOciRegistryAuth/Basic === PAUSE TestOciRegistryAuth/Basic @@ -2827,10 +2863,10 @@ === CONT TestOciRegistryAuth/TwoElements === CONT TestOciRegistryAuth/NotSupported --- PASS: TestOciRegistryAuth (0.00s) - --- PASS: TestOciRegistryAuth/NotSupported (0.00s) - --- PASS: TestOciRegistryAuth/Basic (0.00s) --- PASS: TestOciRegistryAuth/ShortName (0.00s) --- PASS: TestOciRegistryAuth/TwoElements (0.00s) + --- PASS: TestOciRegistryAuth/NotSupported (0.00s) + --- PASS: TestOciRegistryAuth/Basic (0.00s) === RUN Test_DownloadImage === RUN Test_DownloadImage/Bad_library_ref === RUN Test_DownloadImage/Server_error @@ -2847,22 +2883,22 @@ === PAUSE TestParseContentLengthHeader === RUN TestLegacyDownloadImage === RUN TestLegacyDownloadImage/SingleStream -2025/09/03 13:20:05 Generated 819305 bytes of mock image data -2025/09/03 13:20:05 This library does not support architecture specific tags -2025/09/03 13:20:05 The image returned may not be the requested architecture -2025/09/03 13:20:05 Pulling from URL: v1/imagefile/entity/collection/container:tag -2025/09/03 13:20:05 Library endpoint does not support concurrent downloads; reverting to single stream -2025/09/03 13:20:05 Downloaded 819305 byte(s) +2026/10/07 21:48:15 Generated 980514 bytes of mock image data +2026/10/07 21:48:15 This library does not support architecture specific tags +2026/10/07 21:48:15 The image returned may not be the requested architecture +2026/10/07 21:48:15 Pulling from URL: v1/imagefile/entity/collection/container:tag +2026/10/07 21:48:15 Library endpoint does not support concurrent downloads; reverting to single stream +2026/10/07 21:48:15 Downloaded 980514 byte(s) === RUN TestLegacyDownloadImage/MultiStream -2025/09/03 13:20:05 Generated 905591 bytes of mock image data -2025/09/03 13:20:05 This library does not support architecture specific tags -2025/09/03 13:20:05 The image returned may not be the requested architecture -2025/09/03 13:20:05 Pulling from URL: v1/imagefile/entity/collection/container:tag -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:tag?arch=amd64 -2025/09/03 13:20:05 size: 905591, parts: 14, streams: 4, partsize: 65536 +2026/10/07 21:48:15 Generated 182781 bytes of mock image data +2026/10/07 21:48:15 This library does not support architecture specific tags +2026/10/07 21:48:15 The image returned may not be the requested architecture +2026/10/07 21:48:15 Pulling from URL: v1/imagefile/entity/collection/container:tag +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:tag?arch=amd64 +2026/10/07 21:48:15 size: 182781, parts: 3, streams: 4, partsize: 65536 --- PASS: TestLegacyDownloadImage (0.02s) --- PASS: TestLegacyDownloadImage/SingleStream (0.01s) - --- PASS: TestLegacyDownloadImage/MultiStream (0.01s) + --- PASS: TestLegacyDownloadImage/MultiStream (0.00s) === RUN Test_postFile === RUN Test_postFile/Container_not_found_response === RUN Test_postFile/Unauthorized_response @@ -2875,112 +2911,112 @@ === RUN Test_UploadImageBadPath/badPath === RUN Test_UploadImageBadPath/pathError === RUN Test_UploadImageBadPath/test -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 -2025/09/03 13:20:05 Now uploading to the library -2025/09/03 13:20:05 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } -2025/09/03 13:20:05 postFile calling v1/imagefile/ -2025/09/03 13:20:05 Upload completed OK -2025/09/03 13:20:05 Setting tags against uploaded image -2025/09/03 13:20:05 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } -2025/09/03 13:20:05 This library does not support multiple architectures per tag. -2025/09/03 13:20:05 This tag will replace any already uploaded with the same name. -2025/09/03 13:20:05 getTags calling v1/tags/ -2025/09/03 13:20:05 Setting tag tag -2025/09/03 13:20:05 setTag calling v1/tags/ ---- PASS: Test_UploadImageBadPath (0.00s) +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Now uploading to the library +2026/10/07 21:48:15 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } +2026/10/07 21:48:15 postFile calling v1/imagefile/ +2026/10/07 21:48:15 Upload completed OK +2026/10/07 21:48:15 Setting tags against uploaded image +2026/10/07 21:48:15 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } +2026/10/07 21:48:15 This library does not support multiple architectures per tag. +2026/10/07 21:48:15 This tag will replace any already uploaded with the same name. +2026/10/07 21:48:15 getTags calling v1/tags/ +2026/10/07 21:48:15 Setting tag tag +2026/10/07 21:48:15 setTag calling v1/tags/ +--- PASS: Test_UploadImageBadPath (0.01s) --- PASS: Test_UploadImageBadPath/badPath (0.00s) --- PASS: Test_UploadImageBadPath/pathError (0.00s) --- PASS: Test_UploadImageBadPath/test (0.00s) === RUN Test_UploadImage === RUN Test_UploadImage/statusOK -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 -2025/09/03 13:20:05 Now uploading to the library -2025/09/03 13:20:05 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } -2025/09/03 13:20:05 postFile calling v1/imagefile/ -2025/09/03 13:20:05 Upload completed OK -2025/09/03 13:20:05 Setting tags against uploaded image -2025/09/03 13:20:05 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } -2025/09/03 13:20:05 This library does not support multiple architectures per tag. -2025/09/03 13:20:05 This tag will replace any already uploaded with the same name. -2025/09/03 13:20:05 getTags calling v1/tags/ -2025/09/03 13:20:05 Setting tag tag -2025/09/03 13:20:05 setTag calling v1/tags/ +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Now uploading to the library +2026/10/07 21:48:15 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } +2026/10/07 21:48:15 postFile calling v1/imagefile/ +2026/10/07 21:48:15 Upload completed OK +2026/10/07 21:48:15 Setting tags against uploaded image +2026/10/07 21:48:15 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } +2026/10/07 21:48:15 This library does not support multiple architectures per tag. +2026/10/07 21:48:15 This tag will replace any already uploaded with the same name. +2026/10/07 21:48:15 getTags calling v1/tags/ +2026/10/07 21:48:15 Setting tag tag +2026/10/07 21:48:15 setTag calling v1/tags/ === RUN Test_UploadImage/badRequest -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 === RUN Test_UploadImage/internalServerError -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 === RUN Test_UploadImage/entityNotFound -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 Entity entity does not exist in library - creating it. -2025/09/03 13:20:05 apiCreate calling v1/entities +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 Entity entity does not exist in library - creating it. +2026/10/07 21:48:15 apiCreate calling v1/entities === RUN Test_UploadImage/entityBadRequest -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity === RUN Test_UploadImage/collectionNotFound -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 Collection collection does not exist in library - creating it. -2025/09/03 13:20:05 apiCreate calling v1/collections +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 Collection collection does not exist in library - creating it. +2026/10/07 21:48:15 apiCreate calling v1/collections === RUN Test_UploadImage/collectionBadRequest -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection === RUN Test_UploadImage/containerNotFound -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 Container container does not exist in library - creating it. -2025/09/03 13:20:05 apiCreate calling v1/containers +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 Container container does not exist in library - creating it. +2026/10/07 21:48:15 apiCreate calling v1/containers === RUN Test_UploadImage/containerBadRequest -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container === RUN Test_UploadImage/imageNotFound -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 -2025/09/03 13:20:05 Image 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f does not exist in library - creating it. -2025/09/03 13:20:05 apiCreate calling v1/images +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Image 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f does not exist in library - creating it. +2026/10/07 21:48:15 apiCreate calling v1/images === RUN Test_UploadImage/imageBadRequest -2025/09/03 13:20:05 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f -2025/09/03 13:20:05 Fallback to (legacy) library upload -2025/09/03 13:20:05 apiGet calling v1/entities/entity -2025/09/03 13:20:05 apiGet calling v1/collections/entity/collection -2025/09/03 13:20:05 apiGet calling v1/containers/entity/collection/container -2025/09/03 13:20:05 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 +2026/10/07 21:48:15 Image hash computed as 5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f +2026/10/07 21:48:15 Fallback to (legacy) library upload +2026/10/07 21:48:15 apiGet calling v1/entities/entity +2026/10/07 21:48:15 apiGet calling v1/collections/entity/collection +2026/10/07 21:48:15 apiGet calling v1/containers/entity/collection/container +2026/10/07 21:48:15 apiGet calling v1/images/entity/collection/container:sha256.5e8b64da785f1572e6da780648eaaffa009152d297bde80f852f068b0ec2989f?arch=amd64 --- PASS: Test_UploadImage (0.03s) --- PASS: Test_UploadImage/statusOK (0.00s) --- PASS: Test_UploadImage/badRequest (0.00s) @@ -2994,92 +3030,92 @@ --- PASS: Test_UploadImage/imageNotFound (0.00s) --- PASS: Test_UploadImage/imageBadRequest (0.00s) === RUN Test_postFileWrapper -2025/09/03 13:20:05 Now uploading to the library -2025/09/03 13:20:05 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } -2025/09/03 13:20:05 postFile calling v1/imagefile/xxx -2025/09/03 13:20:05 Upload completed OK +2026/10/07 21:48:15 Now uploading to the library +2026/10/07 21:48:15 Unable to determine remote API version: jsonresp: failed to read response: json: cannot unmarshal number into Go value of type struct { Data json.RawMessage "json:\"data\""; Page *jsonresp.PageDetails "json:\"page\""; Error *jsonresp.Error "json:\"error\"" } +2026/10/07 21:48:15 postFile calling v1/imagefile/xxx +2026/10/07 21:48:15 Upload completed OK --- PASS: Test_postFileWrapper (0.00s) === RUN Test_postFileV2 === RUN Test_postFileV2/basic -2025/09/03 13:20:05 Using legacy (single part) uploader -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/xxx -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_complete +2026/10/07 21:48:15 Using legacy (single part) uploader +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/xxx +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_complete === RUN Test_postFileV2/invalid -2025/09/03 13:20:05 Attempting to use multipart uploader -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[67108865] -2025/09/03 13:20:05 S3 compliant option: true -2025/09/03 13:20:05 Uploading part 1 (123 bytes) -2025/09/03 13:20:05 Error repositioning file pointer: strings.Reader.Seek: negative position -2025/09/03 13:20:05 Error uploading part 1: strings.Reader.Seek: negative position -2025/09/03 13:20:05 Aborting multipart upload ID: xxx -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 Attempting to use multipart uploader +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[67108865] +2026/10/07 21:48:15 S3 compliant option: true +2026/10/07 21:48:15 Uploading part 1 (123 bytes) +2026/10/07 21:48:15 Error repositioning file pointer: strings.Reader.Seek: negative position +2026/10/07 21:48:15 Error uploading part 1: strings.Reader.Seek: negative position +2026/10/07 21:48:15 Aborting multipart upload ID: xxx +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart_abort --- PASS: Test_postFileV2 (0.00s) --- PASS: Test_postFileV2/basic (0.00s) --- PASS: Test_postFileV2/invalid (0.00s) === RUN Test_postFileV2Multipart === RUN Test_postFileV2Multipart/statusOK -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] -2025/09/03 13:20:05 S3 compliant option: true -2025/09/03 13:20:05 Uploading part 1 (16 bytes) -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Part 1 accepted (ETag: thisisasampleetag) -2025/09/03 13:20:05 Uploaded 1 parts -2025/09/03 13:20:05 Completing multipart upload: xxx -2025/09/03 13:20:05 completeMultipartUpload calling v2/imagefile/xxx/_multipart_complete -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart_complete +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] +2026/10/07 21:48:15 S3 compliant option: true +2026/10/07 21:48:15 Uploading part 1 (16 bytes) +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Part 1 accepted (ETag: thisisasampleetag) +2026/10/07 21:48:15 Uploaded 1 parts +2026/10/07 21:48:15 Completing multipart upload: xxx +2026/10/07 21:48:15 completeMultipartUpload calling v2/imagefile/xxx/_multipart_complete +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart_complete === RUN Test_postFileV2Multipart/internalServerError -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Error starting multipart upload: invalid character '\'' looking for beginning of value +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Error starting multipart upload: invalid character '\'' looking for beginning of value === RUN Test_postFileV2Multipart/okBadRequest -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] -2025/09/03 13:20:05 S3 compliant option: true -2025/09/03 13:20:05 Uploading part 1 (16 bytes) -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Object store returned an error: 400 -2025/09/03 13:20:05 Error uploading part 1: http error: object store returned an error: 400 -2025/09/03 13:20:05 Aborting multipart upload ID: xxx -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] +2026/10/07 21:48:15 S3 compliant option: true +2026/10/07 21:48:15 Uploading part 1 (16 bytes) +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Object store returned an error: 400 +2026/10/07 21:48:15 Error uploading part 1: http error: object store returned an error: 400 +2026/10/07 21:48:15 Aborting multipart upload ID: xxx +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart_abort === RUN Test_postFileV2Multipart/badRequestOK -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Error starting multipart upload: http error: request did not succeed: http status code: 400 +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Error starting multipart upload: http error: request did not succeed: http status code: 400 === RUN Test_postFileV2Multipart/internalOK -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Error starting multipart upload: invalid character '\'' looking for beginning of value +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Error starting multipart upload: invalid character '\'' looking for beginning of value === RUN Test_postFileV2Multipart/okInternal -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] -2025/09/03 13:20:05 S3 compliant option: true -2025/09/03 13:20:05 Uploading part 1 (16 bytes) -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Object store returned an error: 500 -2025/09/03 13:20:05 Error uploading part 1: http error: object store returned an error: 500 -2025/09/03 13:20:05 Aborting multipart upload ID: xxx -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Multi-part upload: ID=[xxx] totalParts=[1] partSize=[16] +2026/10/07 21:48:15 S3 compliant option: true +2026/10/07 21:48:15 Uploading part 1 (16 bytes) +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Object store returned an error: 500 +2026/10/07 21:48:15 Error uploading part 1: http error: object store returned an error: 500 +2026/10/07 21:48:15 Aborting multipart upload ID: xxx +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/xxx/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_multipart_abort === RUN Test_postFileV2Multipart/internalBadRequest -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Error starting multipart upload: invalid character '\'' looking for beginning of value +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Error starting multipart upload: invalid character '\'' looking for beginning of value === RUN Test_postFileV2Multipart/badRequestInternal -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx/_multipart -2025/09/03 13:20:05 Error starting multipart upload: http error: request did not succeed: http status code: 400 +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx/_multipart +2026/10/07 21:48:15 Error starting multipart upload: http error: request did not succeed: http status code: 400 --- PASS: Test_postFileV2Multipart (0.01s) --- PASS: Test_postFileV2Multipart/statusOK (0.00s) --- PASS: Test_postFileV2Multipart/internalServerError (0.00s) @@ -3097,14 +3133,14 @@ --- PASS: Test_getPartSize/morePartsThanBytes (0.00s) === RUN Test_startMultipartUpload === RUN Test_startMultipartUpload/success -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/testID/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/testID/_multipart === RUN Test_startMultipartUpload/badRequest -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/testID/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/testID/_multipart === RUN Test_startMultipartUpload/internalServerError -2025/09/03 13:20:05 startMultipartUpload calling v2/imagefile/testID/_multipart -2025/09/03 13:20:05 apiCreate calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 startMultipartUpload calling v2/imagefile/testID/_multipart +2026/10/07 21:48:15 apiCreate calling v2/imagefile/testID/_multipart --- PASS: Test_startMultipartUpload (0.00s) --- PASS: Test_startMultipartUpload/success (0.00s) --- PASS: Test_startMultipartUpload/badRequest (0.00s) @@ -3119,64 +3155,64 @@ --- PASS: Test_remoteSHA256ChecksumSupport/NoValue (0.00s) === RUN Test_legacyPostFileV2 === RUN Test_legacyPostFileV2/Basic -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/5cb9c34d7d960d82f5f5bc55 -2025/09/03 13:20:05 apiCreate calling v2/imagefile/5cb9c34d7d960d82f5f5bc55 -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/5cb9c34d7d960d82f5f5bc55/_complete +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/5cb9c34d7d960d82f5f5bc55 +2026/10/07 21:48:15 apiCreate calling v2/imagefile/5cb9c34d7d960d82f5f5bc55 +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/5cb9c34d7d960d82f5f5bc55/_complete --- PASS: Test_legacyPostFileV2 (0.00s) --- PASS: Test_legacyPostFileV2/Basic (0.00s) === RUN Test_legacyPostFileV2URL === RUN Test_legacyPostFileV2URL/basic -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/xxx -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/xxx/_complete +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/xxx +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/xxx/_complete === RUN Test_legacyPostFileV2URL/emptyURL -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/xxx -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/xxx +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx === RUN Test_legacyPostFileV2URL/parseURLError -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/xxx -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/xxx +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx === RUN Test_legacyPostFileV2URL/unsupported -2025/09/03 13:20:05 legacyPostFileV2 calling v2/imagefile/xxx -2025/09/03 13:20:05 apiCreate calling v2/imagefile/xxx +2026/10/07 21:48:15 legacyPostFileV2 calling v2/imagefile/xxx +2026/10/07 21:48:15 apiCreate calling v2/imagefile/xxx --- PASS: Test_legacyPostFileV2URL (0.00s) --- PASS: Test_legacyPostFileV2URL/basic (0.00s) --- PASS: Test_legacyPostFileV2URL/emptyURL (0.00s) --- PASS: Test_legacyPostFileV2URL/parseURLError (0.00s) --- PASS: Test_legacyPostFileV2URL/unsupported (0.00s) === RUN Test_Test_multipartUploadPartBadSize -2025/09/03 13:20:05 Error repositioning file pointer: strings.Reader.Seek: negative position +2026/10/07 21:48:15 Error repositioning file pointer: strings.Reader.Seek: negative position --- PASS: Test_Test_multipartUploadPartBadSize (0.00s) === RUN Test_multipartUploadPart === RUN Test_multipartUploadPart/statusOK -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 Part 0 accepted (ETag: thisisasampleetag) +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 Part 0 accepted (ETag: thisisasampleetag) === RUN Test_multipartUploadPart/badRequest -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart === RUN Test_multipartUploadPart/internalServerError -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart === RUN Test_multipartUploadPart/okBadRequest -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 Object store returned an error: 400 +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 Object store returned an error: 400 === RUN Test_multipartUploadPart/badRequestOK -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart === RUN Test_multipartUploadPart/internalOK -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart === RUN Test_multipartUploadPart/okInternal -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 Object store returned an error: 500 +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 Object store returned an error: 500 === RUN Test_multipartUploadPart/internalBadRequest -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart === RUN Test_multipartUploadPart/badRequestInternal -2025/09/03 13:20:05 multipartUploadPart calling v2/imagefile/testImageID/_multipart -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 multipartUploadPart calling v2/imagefile/testImageID/_multipart +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart --- PASS: Test_multipartUploadPart (0.01s) --- PASS: Test_multipartUploadPart/statusOK (0.00s) --- PASS: Test_multipartUploadPart/badRequest (0.00s) @@ -3189,38 +3225,38 @@ --- PASS: Test_multipartUploadPart/badRequestInternal (0.00s) === RUN Test_completeMultipartUpload === RUN Test_completeMultipartUpload/statusOK -2025/09/03 13:20:05 Completing multipart upload: testUploadID -2025/09/03 13:20:05 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 Completing multipart upload: testUploadID +2026/10/07 21:48:15 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_complete === RUN Test_completeMultipartUpload/badRequest -2025/09/03 13:20:05 Completing multipart upload: testUploadID -2025/09/03 13:20:05 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_complete -2025/09/03 13:20:05 Error completing multipart upload: http error: request did not succeed: http status code: 400 +2026/10/07 21:48:15 Completing multipart upload: testUploadID +2026/10/07 21:48:15 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 Error completing multipart upload: http error: request did not succeed: http status code: 400 === RUN Test_completeMultipartUpload/internalServerError -2025/09/03 13:20:05 Completing multipart upload: testUploadID -2025/09/03 13:20:05 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_complete -2025/09/03 13:20:05 Error decoding complete multipart upload request: invalid character '\'' looking for beginning of value +2026/10/07 21:48:15 Completing multipart upload: testUploadID +2026/10/07 21:48:15 completeMultipartUpload calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_complete +2026/10/07 21:48:15 Error decoding complete multipart upload request: invalid character '\'' looking for beginning of value --- PASS: Test_completeMultipartUpload (0.00s) --- PASS: Test_completeMultipartUpload/statusOK (0.00s) --- PASS: Test_completeMultipartUpload/badRequest (0.00s) --- PASS: Test_completeMultipartUpload/internalServerError (0.00s) === RUN Test_abortMultipartUpload === RUN Test_abortMultipartUpload/statusOK -2025/09/03 13:20:05 Aborting multipart upload ID: testUploadID -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 Aborting multipart upload ID: testUploadID +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_abort === RUN Test_abortMultipartUpload/badRequest -2025/09/03 13:20:05 Aborting multipart upload ID: testUploadID -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_abort -2025/09/03 13:20:05 error aborting multipart upload: http error: request did not succeed: http status code: 400 +2026/10/07 21:48:15 Aborting multipart upload ID: testUploadID +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 error aborting multipart upload: http error: request did not succeed: http status code: 400 === RUN Test_abortMultipartUpload/internalServerError -2025/09/03 13:20:05 Aborting multipart upload ID: testUploadID -2025/09/03 13:20:05 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort -2025/09/03 13:20:05 apiUpdate calling v2/imagefile/testImageID/_multipart_abort -2025/09/03 13:20:05 error aborting multipart upload: http error: request did not succeed: http status code: 500 +2026/10/07 21:48:15 Aborting multipart upload ID: testUploadID +2026/10/07 21:48:15 abortMultipartUpload calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 apiUpdate calling v2/imagefile/testImageID/_multipart_abort +2026/10/07 21:48:15 error aborting multipart upload: http error: request did not succeed: http status code: 500 --- PASS: Test_abortMultipartUpload (0.00s) --- PASS: Test_abortMultipartUpload/statusOK (0.00s) --- PASS: Test_abortMultipartUpload/badRequest (0.00s) @@ -3518,7 +3554,7 @@ === RUN TestParseAmbiguous/IPv6HostPort === RUN TestParseAmbiguous/IPv6HostZone === RUN TestParseAmbiguous/IPv6HostZonePort ---- PASS: TestParseAmbiguous (0.01s) +--- PASS: TestParseAmbiguous (0.00s) --- PASS: TestParseAmbiguous/InvalidURL (0.00s) --- PASS: TestParseAmbiguous/NoName (0.00s) --- PASS: TestParseAmbiguous/NoNameAndTag (0.00s) @@ -3870,7 +3906,7 @@ --- PASS: TestParseContentLengthHeader/InvalidValue (0.00s) --- PASS: TestParseContentLengthHeader/EmptyValue (0.00s) PASS -ok github.com/apptainer/container-library-client/client 0.180s +ok github.com/apptainer/container-library-client/client 0.212s make[1]: Leaving directory '/build/reproducible-path/golang-github-apptainer-container-library-client-1.4.10' create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=_build -O--buildsystem=golang @@ -3898,12 +3934,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/2874661/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2874661/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/1082336 and its subdirectories -I: Current time: Wed Sep 3 13:20:14 -12 2025 -I: pbuilder-time-stamp: 1756948814 +I: removing directory /srv/workspace/pbuilder/2874661 and its subdirectories +I: Current time: Wed Oct 7 21:48:27 +14 2026 +I: pbuilder-time-stamp: 1791359307