Diff of the two buildlogs: -- --- b1/build.log 2025-10-14 20:17:40.818451186 +0000 +++ b2/build.log 2025-10-14 20:20:40.554670459 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue Oct 14 08:09:25 -12 2025 -I: pbuilder-time-stamp: 1760472565 +I: Current time: Tue Nov 17 16:40:39 +14 2026 +I: pbuilder-time-stamp: 1794883239 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -30,53 +30,85 @@ dpkg-source: info: applying fix-newer-viper.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3585682/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3417696/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 Nov 17 02:40 /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/3417696/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3417696/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]="3" [2]="3" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.3.3(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=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='08412016b36049edaf58e68ab30d0950' - 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='3585682' - PS1='# ' - PS2='> ' + INVOCATION_ID=32aaec8a616d4c089ea5eb3e0fd62b52 + 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=3417696 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.6fifZb10/pbuilderrc_1C1P --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.6fifZb10/b1 --logfile b1/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-4.dsc' - SUDO_GID='111' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='106' - 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.6fifZb10/pbuilderrc_HB3W --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.6fifZb10/b2 --logfile b2/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-4.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 ionos11-amd64 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 (2025-09-20) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3585682/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3417696/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -408,7 +440,7 @@ Get: 238 http://deb.debian.org/debian forky/main amd64 protobuf-compiler amd64 3.21.12-14 [85.0 kB] Get: 239 http://deb.debian.org/debian forky/main amd64 protoc-gen-go-1-5 amd64 1.5.4-2 [1863 kB] Get: 240 http://deb.debian.org/debian forky/main amd64 protoc-gen-go-grpc amd64 1.64.0-7+b2 [1790 kB] -Fetched 176 MB in 39s (4555 kB/s) +Fetched 176 MB in 8s (22.2 MB/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 ... 19898 files and directories currently installed.) @@ -1190,8 +1222,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Tue Oct 14 20:15:24 UTC 2025. -Universal Time is now: Tue Oct 14 20:15:24 UTC 2025. +Local time is now: Tue Nov 17 02:42:10 UTC 2026. +Universal Time is now: Tue Nov 17 02:42:10 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-cespare-xxhash-dev (2.3.0-1) ... @@ -1389,7 +1421,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && 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 > ../notary_0.7.0+git20240416.9d2b3b3+ds1-4_source.changes +I: user script /srv/workspace/pbuilder/3417696/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/3417696/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && 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 > ../notary_0.7.0+git20240416.9d2b3b3+ds1-4_source.changes dpkg-buildpackage: info: source package notary dpkg-buildpackage: info: source version 0.7.0+git20240416.9d2b3b3+ds1-4 dpkg-buildpackage: info: source distribution unstable @@ -1673,488 +1709,488 @@ src/github.com/theupdateframework/notary/utils/http.go src/github.com/theupdateframework/notary/utils/http_test.go src/github.com/theupdateframework/notary/version/version.go - cd _build && go install -trimpath -v -p 40 -tags pkcs11 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version -google.golang.org/grpc/serviceconfig -crypto/internal/fips140/alias -internal/profilerecord -unicode/utf16 + cd _build && go install -trimpath -v -p 42 -tags pkcs11 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version +internal/byteorder internal/goarch -google.golang.org/protobuf/internal/flags -unicode/utf8 -vendor/golang.org/x/crypto/cryptobyte/asn1 -internal/godebugs -github.com/spf13/viper/internal/features -log/internal +internal/coverage/rtcov internal/goos -cmp -log/slog/internal -internal/byteorder +internal/profilerecord +internal/godebugs +vendor/golang.org/x/crypto/cryptobyte/asn1 +math/bits internal/nettrace -container/list +internal/itoa +unicode/utf16 encoding -math/bits -github.com/theupdateframework/notary/version -internal/goexperiment -internal/unsafeheader internal/msan +github.com/lib/pq/oid +internal/unsafeheader +github.com/theupdateframework/notary/version vendor/golang.org/x/crypto/internal/alias -internal/asan -internal/runtime/syscall +log/slog/internal +unicode/utf8 unicode +log/internal +container/list +cmp +google.golang.org/grpc/serviceconfig +github.com/spf13/viper/internal/features +google.golang.org/protobuf/internal/flags +internal/goexperiment +internal/asan +crypto/internal/fips140/alias internal/runtime/atomic -internal/coverage/rtcov -github.com/lib/pq/oid -internal/itoa -crypto/internal/boring/sig sync/atomic +internal/runtime/syscall +crypto/internal/boring/sig internal/cpu -crypto/internal/fips140/subtle internal/runtime/math internal/runtime/sys internal/abi +crypto/internal/fips140/subtle crypto/internal/fips140deps/byteorder internal/chacha8rand -google.golang.org/protobuf/internal/set github.com/pelletier/go-toml/v2/internal/characters +google.golang.org/protobuf/internal/set +internal/runtime/exithook crypto/internal/fips140deps/cpu internal/bytealg math -internal/runtime/exithook -internal/race internal/stringslite +internal/race internal/sync internal/runtime/maps runtime -iter weak +iter +internal/reflectlite crypto/subtle -sync runtime/metrics -internal/reflectlite +sync maps slices +errors +sort +internal/testlog internal/singleflight -github.com/sagikazarmark/locafero/internal/queue -log/slog/internal/buffer internal/bisect -internal/testlog -unique google.golang.org/protobuf/internal/pragma -errors -sort +unique +github.com/sagikazarmark/locafero/internal/queue +log/slog/internal/buffer runtime/cgo io -hash -github.com/go-viper/mapstructure/internal/errors internal/oserror -internal/godebug -google.golang.org/grpc/internal/buffer path +github.com/go-viper/mapstructure/internal/errors +google.golang.org/grpc/internal/buffer vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 strconv -internal/saferio -github.com/prometheus/client_golang/prometheus/promhttp/internal -github.com/beorn7/perks/quantile -strings -bytes +internal/godebug syscall +hash +bytes crypto/internal/randutil -hash/crc32 hash/fnv +github.com/prometheus/client_golang/prometheus/promhttp/internal +internal/saferio hash/adler32 +github.com/beorn7/perks/quantile +hash/crc32 +strings +crypto/internal/fips140deps/godebug +math/rand crypto -net/netip -reflect encoding/base32 +net/netip golang.org/x/crypto/blowfish -crypto/internal/fips140deps/godebug -math/rand -github.com/dvsekhvalnov/jose2go/padding +reflect vendor/golang.org/x/text/transform golang.org/x/text/transform -crypto/internal/impl +github.com/dvsekhvalnov/jose2go/padding +google.golang.org/grpc/internal/grpcrand crypto/internal/fips140 +crypto/internal/impl net/http/internal/ascii -bufio github.com/munnerz/goautoneg net/http/internal/testcert +bufio html regexp/syntax -google.golang.org/grpc/internal/grpcrand +golang.org/x/text/runes crypto/tls/internal/fips140tls crypto/internal/fips140/sha256 crypto/internal/fips140/sha512 crypto/internal/fips140/sha3 -golang.org/x/text/runes crypto/sha3 crypto/internal/fips140/hmac -crypto/internal/fips140hash crypto/internal/fips140/check -regexp +crypto/internal/fips140hash +crypto/internal/fips140/tls12 crypto/internal/fips140/hkdf crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/bigmod -crypto/internal/fips140/tls12 crypto/internal/fips140/aes -crypto/internal/fips140/nistec/fiat +crypto/internal/fips140/bigmod internal/syscall/execenv internal/syscall/unix +crypto/internal/fips140/nistec/fiat time crypto/internal/fips140/tls13 crypto/internal/fips140/edwards25519 +regexp github.com/jinzhu/inflection -internal/fmtsort -encoding/binary +google.golang.org/grpc/backoff +google.golang.org/grpc/keepalive github.com/bugsnag/bugsnag-go/headers context -google.golang.org/grpc/keepalive io/fs -google.golang.org/grpc/backoff internal/poll crypto/internal/fips140/nistec -encoding/base64 google.golang.org/grpc/internal/backoff golang.org/x/net/context -vendor/golang.org/x/crypto/internal/poly1305 -github.com/cespare/xxhash google.golang.org/grpc/internal/grpcsync -filippo.io/edwards25519/field gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 -golang.org/x/sys/unix github.com/spf13/afero/internal/common internal/filepathlite embed +internal/fmtsort +encoding/binary google.golang.org/protobuf/internal/editiondefaults +os +encoding/base64 +vendor/golang.org/x/crypto/internal/poly1305 +github.com/cespare/xxhash +filippo.io/edwards25519/field +golang.org/x/sys/unix encoding/pem github.com/dvsekhvalnov/jose2go/base64url -os -github.com/dvsekhvalnov/jose2go/compact filippo.io/edwards25519 +github.com/dvsekhvalnov/jose2go/compact crypto/internal/sysrand io/ioutil google.golang.org/protobuf/internal/detrand github.com/bugsnag/bugsnag-go/device -google.golang.org/grpc/internal/envconfig path/filepath os/signal -internal/sysinfo -github.com/prometheus/procfs/internal/util vendor/golang.org/x/sys/cpu +github.com/prometheus/procfs/internal/util +internal/sysinfo +google.golang.org/grpc/internal/envconfig fmt +net crypto/internal/entropy crypto/internal/fips140/drbg crypto/internal/fips140only crypto/internal/fips140/ecdh crypto/internal/fips140/ecdsa crypto/internal/fips140/ed25519 -crypto/internal/fips140/rsa crypto/internal/fips140/mlkem +crypto/internal/fips140/rsa crypto/internal/fips140/aes/gcm crypto/rc4 crypto/md5 github.com/spf13/afero/mem os/exec +crypto/cipher +github.com/theupdateframework/notary +github.com/bugsnag/panicwrap +crypto/des +vendor/golang.org/x/crypto/chacha20 +crypto/internal/boring log -mime/quotedprintable -net/http/internal +encoding/hex net/url +github.com/docker/go/canonical/json +encoding/json mime +math/big +mime/quotedprintable +vendor/golang.org/x/net/http2/hpack +flag +github.com/miekg/pkcs11 encoding/csv github.com/spf13/cast/internal -flag -github.com/docker/go/canonical/json github.com/subosito/gotenv github.com/pelletier/go-toml/v2/internal/danger google.golang.org/protobuf/internal/errors -compress/flate google.golang.org/protobuf/internal/version -text/tabwriter -google.golang.org/grpc/attributes text/template/parse -google.golang.org/grpc/internal/grpclog +vendor/golang.org/x/text/unicode/norm go/token -google.golang.org/grpc/internal/idle -encoding/json -golang.org/x/net/http2/hpack -vendor/golang.org/x/net/http2/hpack -encoding/hex +text/tabwriter +google.golang.org/grpc/internal/grpclog +google.golang.org/grpc/attributes +github.com/opencontainers/image-spec/specs-go github.com/prometheus/procfs/internal/fs runtime/debug +google.golang.org/grpc/internal/idle +github.com/pkg/errors +github.com/opentracing/opentracing-go/log +os/user +net/http/internal +golang.org/x/net/http2/hpack +compress/flate database/sql/driver -golang.org/x/text/unicode/norm +gopkg.in/rethinkdb/rethinkdb-go.v6/encoding +crypto/ecdh go.yaml.in/yaml/v3 -github.com/opencontainers/image-spec/specs-go -github.com/opentracing/opentracing-go/log -github.com/pkg/errors -math/big github.com/opencontainers/go-digest -gopkg.in/rethinkdb/rethinkdb-go.v6/encoding -vendor/golang.org/x/text/unicode/norm +crypto/sha512 +golang.org/x/text/unicode/norm +crypto/sha256 +crypto/aes +crypto/hmac +crypto/sha1 +google.golang.org/protobuf/encoding/protowire +vendor/golang.org/x/crypto/chacha20poly1305 gopkg.in/rethinkdb/rethinkdb-go.v6/types runtime/trace -google.golang.org/protobuf/encoding/protowire -github.com/fsnotify/fsnotify/internal -golang.org/x/term -github.com/pmezard/go-difflib/difflib github.com/pelletier/go-toml/v2/unstable +github.com/pmezard/go-difflib/difflib +github.com/davecgh/go-spew/spew gopkg.in/yaml.v3 -github.com/bugsnag/bugsnag-go/errors -github.com/distribution/reference github.com/opencontainers/image-spec/specs-go/v1 -github.com/davecgh/go-spew/spew -github.com/fsnotify/fsnotify -go/scanner -golang.org/x/net/internal/timeseries -github.com/bugsnag/panicwrap +github.com/distribution/reference +golang.org/x/crypto/pbkdf2 +github.com/bugsnag/bugsnag-go/errors vendor/golang.org/x/text/unicode/bidi +golang.org/x/net/internal/timeseries github.com/hailocab/go-hostpool +go/scanner golang.org/x/text/unicode/bidi google.golang.org/protobuf/reflect/protoreflect database/sql -go/ast +github.com/pelletier/go-toml/v2/internal/tracker +testing compress/gzip compress/zlib -github.com/pelletier/go-toml/v2/internal/tracker +go/ast runtime/pprof internal/profile vendor/golang.org/x/text/secure/bidirule golang.org/x/text/secure/bidirule text/template -github.com/theupdateframework/notary -testing -crypto/cipher -github.com/theupdateframework/notary/passphrase -golang.org/x/net/idna +github.com/fsnotify/fsnotify/internal +golang.org/x/term google.golang.org/protobuf/internal/descopts +google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset -google.golang.org/protobuf/internal/descfmt +google.golang.org/protobuf/internal/genid google.golang.org/protobuf/internal/order google.golang.org/protobuf/runtime/protoiface -google.golang.org/protobuf/internal/genid -crypto/des -vendor/golang.org/x/crypto/chacha20 -crypto/internal/boring google.golang.org/protobuf/internal/protolazy -vendor/golang.org/x/net/idna -crypto/sha512 -crypto/hmac -crypto/sha1 -crypto/sha256 -crypto/ecdh -crypto/aes -google.golang.org/protobuf/internal/encoding/json +golang.org/x/net/idna google.golang.org/protobuf/internal/encoding/text +github.com/fsnotify/fsnotify +google.golang.org/protobuf/internal/encoding/json google.golang.org/protobuf/reflect/protoregistry -vendor/golang.org/x/crypto/chacha20poly1305 -golang.org/x/crypto/pbkdf2 -google.golang.org/protobuf/proto +vendor/golang.org/x/net/idna github.com/spf13/viper/internal/encoding/json -github.com/theupdateframework/notary/tuf/validation -google.golang.org/protobuf/internal/encoding/defval +github.com/sirupsen/logrus google.golang.org/grpc/grpclog -github.com/pelletier/go-toml/v2 log/slog -github.com/sirupsen/logrus -github.com/jinzhu/gorm +github.com/pelletier/go-toml/v2 +github.com/theupdateframework/notary/tuf/validation +github.com/theupdateframework/notary/passphrase crypto/rand crypto/internal/boring/bbig -crypto/elliptic crypto/dsa +crypto/elliptic +google.golang.org/protobuf/proto encoding/asn1 -github.com/spf13/viper/internal/encoding/yaml -crypto/ed25519 +google.golang.org/protobuf/internal/encoding/defval github.com/docker/distribution/uuid -github.com/lib/pq/scram -golang.org/x/crypto/bcrypt -github.com/dvsekhvalnov/jose2go/arrays +crypto/ed25519 crypto/internal/hpke +golang.org/x/crypto/bcrypt +github.com/lib/pq/scram crypto/rsa -html/template +github.com/dvsekhvalnov/jose2go/arrays google.golang.org/grpc/connectivity github.com/dvsekhvalnov/jose2go/aes github.com/dvsekhvalnov/jose2go/kdf -github.com/stretchr/testify/assert/yaml golang.org/x/crypto/ed25519 -os/user -github.com/miekg/pkcs11 -net +github.com/jinzhu/gorm +github.com/spf13/viper/internal/encoding/yaml +html/template +github.com/stretchr/testify/assert/yaml crypto/x509/pkix vendor/golang.org/x/crypto/cryptobyte +google.golang.org/protobuf/encoding/protodelim google.golang.org/protobuf/encoding/prototext google.golang.org/protobuf/internal/filedesc -google.golang.org/protobuf/encoding/protodelim github.com/spf13/viper/internal/encoding/toml crypto/ecdsa github.com/spf13/cast google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson -google.golang.org/protobuf/internal/impl github.com/spf13/viper/internal/encoding/dotenv +google.golang.org/protobuf/internal/impl vendor/golang.org/x/net/http/httpproxy -google.golang.org/grpc/internal google.golang.org/grpc/internal/syscall -github.com/go-viper/mapstructure google.golang.org/grpc/internal/resolver/dns/internal net/textproto +google.golang.org/grpc/internal +github.com/go-viper/mapstructure crypto/x509 github.com/google/uuid github.com/spf13/pflag github.com/prometheus/procfs -google.golang.org/protobuf/internal/filetype -google.golang.org/grpc/metadata google.golang.org/grpc/codes +google.golang.org/grpc/metadata vendor/golang.org/x/net/http/httpguts golang.org/x/net/http/httpguts mime/multipart google.golang.org/grpc/internal/balancerload -google.golang.org/grpc/internal/grpcutil -google.golang.org/grpc/tap google.golang.org/grpc/stats -google.golang.org/protobuf/runtime/protoimpl +google.golang.org/grpc/tap +google.golang.org/grpc/internal/grpcutil google.golang.org/grpc/encoding +github.com/dvsekhvalnov/jose2go/keys/ecc +github.com/theupdateframework/notary/tuf/data +crypto/tls +github.com/spf13/cobra +github.com/dvsekhvalnov/jose2go +github.com/theupdateframework/notary/client/changelist +github.com/theupdateframework/notary/tuf/utils +google.golang.org/protobuf/internal/filetype +google.golang.org/protobuf/runtime/protoimpl google.golang.org/protobuf/protoadapt -google.golang.org/protobuf/types/known/durationpb -google.golang.org/protobuf/types/known/timestamppb -google.golang.org/protobuf/types/known/anypb google.golang.org/protobuf/types/known/emptypb +google.golang.org/protobuf/types/known/anypb +google.golang.org/protobuf/types/known/timestamppb +google.golang.org/protobuf/types/known/durationpb google.golang.org/protobuf/types/descriptorpb google.golang.org/grpc/encoding/proto google.golang.org/grpc/internal/pretty github.com/golang/protobuf/ptypes/empty +github.com/golang/protobuf/ptypes/duration github.com/golang/protobuf/ptypes/timestamp github.com/prometheus/client_model/go -github.com/golang/protobuf/ptypes/duration google.golang.org/genproto/googleapis/rpc/status google.golang.org/grpc/binarylog/grpc_binarylog_v1 google.golang.org/grpc/internal/status -google.golang.org/grpc/status github.com/prometheus/common/model +google.golang.org/grpc/status google.golang.org/grpc/internal/binarylog -github.com/dvsekhvalnov/jose2go/keys/ecc -github.com/theupdateframework/notary/tuf/data -crypto/tls -github.com/dvsekhvalnov/jose2go google.golang.org/protobuf/internal/editionssupport google.golang.org/protobuf/types/gofeaturespb google.golang.org/protobuf/reflect/protodesc -github.com/spf13/cobra github.com/prometheus/client_golang/prometheus/internal -github.com/theupdateframework/notary/client/changelist -github.com/theupdateframework/notary/tuf/utils -github.com/golang/protobuf/proto -gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 net/http/httptrace github.com/docker/go-connections/tlsconfig google.golang.org/grpc/internal/credentials github.com/docker/libtrust -github.com/go-sql-driver/mysql github.com/lib/pq -google.golang.org/grpc/credentials +github.com/go-sql-driver/mysql net/http -google.golang.org/grpc/credentials/insecure +google.golang.org/grpc/credentials +github.com/golang/protobuf/proto google.golang.org/grpc/resolver -google.golang.org/grpc/peer google.golang.org/grpc/internal/channelz +google.golang.org/grpc/credentials/insecure +google.golang.org/grpc/peer google.golang.org/grpc/internal/metadata google.golang.org/grpc/internal/transport/networktype -google.golang.org/grpc/balancer/grpclb/state google.golang.org/grpc/internal/resolver/passthrough -google.golang.org/grpc/internal/resolver/unix +google.golang.org/grpc/balancer/grpclb/state google.golang.org/grpc/internal/resolver/dns +google.golang.org/grpc/internal/resolver/unix google.golang.org/grpc/resolver/dns google.golang.org/grpc/channelz google.golang.org/grpc/balancer google.golang.org/grpc/balancer/base google.golang.org/grpc/internal/serviceconfig -google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/resolver +google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/balancer/gracefulswitch -github.com/theupdateframework/notary/storage +gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 +github.com/docker/distribution/registry/auth github.com/bugsnag/bugsnag-go/sessions +github.com/theupdateframework/notary/storage github.com/docker/distribution/registry/api/errcode +net/http/httputil github.com/docker/distribution/registry/client/auth/challenge expvar -github.com/docker/distribution/registry/client/transport -github.com/docker/distribution github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header -github.com/docker/distribution/registry/auth -net/http/httputil +github.com/docker/distribution/registry/client/transport net/http/pprof +github.com/gorilla/mux net/http/httptest +github.com/prometheus/common/expfmt +github.com/docker/distribution golang.org/x/net/trace -github.com/gorilla/mux github.com/opentracing/opentracing-go -github.com/prometheus/common/expfmt github.com/spf13/afero golang.org/x/net/http2 github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil +github.com/opentracing/opentracing-go/ext github.com/theupdateframework/notary/server/errors +gopkg.in/rethinkdb/rethinkdb-go.v6 github.com/bugsnag/bugsnag-go -github.com/opentracing/opentracing-go/ext github.com/theupdateframework/notary/trustmanager github.com/stretchr/testify/assert github.com/docker/distribution/context github.com/docker/distribution/registry/api/v2 -gopkg.in/rethinkdb/rethinkdb-go.v6 github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/tuf/signed -github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus -github.com/prometheus/client_golang/prometheus -github.com/Shopify/logrus-bugsnag -github.com/docker/distribution/health github.com/docker/distribution/registry/auth/htpasswd +github.com/docker/distribution/health github.com/docker/distribution/registry/auth/token +github.com/Shopify/logrus-bugsnag +github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus +github.com/prometheus/client_golang/prometheus github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/trustmanager/yubikey +github.com/theupdateframework/notary/tuf github.com/sagikazarmark/locafero github.com/spf13/viper -github.com/theupdateframework/notary/tuf github.com/stretchr/testify/require github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/client github.com/theupdateframework/notary/utils -google.golang.org/grpc/internal/transport github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/storage/rethinkdb +google.golang.org/grpc/internal/transport +github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/server/storage -github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/server/snapshot -github.com/theupdateframework/notary/server/timestamp -google.golang.org/grpc github.com/docker/go-metrics +github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/server/handlers github.com/docker/distribution/metrics +github.com/docker/distribution/registry/storage/cache github.com/theupdateframework/notary/server +google.golang.org/grpc +github.com/docker/distribution/registry/storage/cache/memory +github.com/docker/distribution/registry/client +github.com/docker/distribution/registry/client/auth +github.com/theupdateframework/notary/cmd/notary google.golang.org/grpc/health/grpc_health_v1 github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/trustmanager/remoteks -github.com/docker/distribution/registry/storage/cache -github.com/docker/distribution/registry/storage/cache/memory -github.com/docker/distribution/registry/client google.golang.org/grpc/health -github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/client +github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/signer/api -github.com/theupdateframework/notary/cmd/notary-server -github.com/docker/distribution/registry/client/auth github.com/theupdateframework/notary/cmd/notary-signer -github.com/theupdateframework/notary/cmd/notary +github.com/theupdateframework/notary/cmd/notary-server make[1]: Leaving directory '/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1' dh_auto_test -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang - cd _build && go test -vet=off -v -p 40 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version + cd _build && go test -vet=off -v -p 42 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version ? github.com/theupdateframework/notary [no test files] === RUN Test0Dot1Migration ---- PASS: Test0Dot1Migration (0.06s) +--- PASS: Test0Dot1Migration (0.05s) === RUN Test0Dot3Migration --- PASS: Test0Dot3Migration (0.07s) === RUN Test0Dot1RepoFormat -time="2025-10-14T08:16:22-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: Test0Dot1RepoFormat (0.16s) +time="2026-11-17T16:42:56+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: Test0Dot1RepoFormat (0.14s) === RUN Test0Dot3RepoFormat backwards_compatibility_test.go:248: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: Test0Dot3RepoFormat (0.00s) @@ -2164,134 +2200,134 @@ backwards_compatibility_test.go:343: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestDownloading0Dot3RepoFormat (0.00s) === RUN TestInitRepositoryManagedRolesIncludingRoot ---- PASS: TestInitRepositoryManagedRolesIncludingRoot (0.01s) +--- PASS: TestInitRepositoryManagedRolesIncludingRoot (0.00s) === RUN TestInitRepositoryManagedRolesInvalidRole ---- PASS: TestInitRepositoryManagedRolesInvalidRole (0.01s) +--- PASS: TestInitRepositoryManagedRolesInvalidRole (0.00s) === RUN TestInitRepositoryManagedRolesIncludingTargets ---- PASS: TestInitRepositoryManagedRolesIncludingTargets (0.01s) +--- PASS: TestInitRepositoryManagedRolesIncludingTargets (0.00s) === RUN TestInitRepositoryManagedRolesIncludingTimestamp ---- PASS: TestInitRepositoryManagedRolesIncludingTimestamp (0.02s) +--- PASS: TestInitRepositoryManagedRolesIncludingTimestamp (0.01s) === RUN TestInitRepositoryWithCerts ---- PASS: TestInitRepositoryWithCerts (0.02s) +--- PASS: TestInitRepositoryWithCerts (0.01s) === RUN TestMatchKeyIDsWithPublicKeys --- PASS: TestMatchKeyIDsWithPublicKeys (0.01s) === RUN TestInitRepositoryNeedsRemoteTimestampKey ---- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.02s) +--- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.01s) === RUN TestInitRepositoryNeedsRemoteSnapshotKey --- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.01s) === RUN TestInitRepoServerOnlyManagesTimestampKey ---- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.08s) +--- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.06s) === RUN TestInitRepoServerManagesTimestampAndSnapshotKeys ---- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.06s) +--- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.05s) === RUN TestInitRepoAttemptsExceeded --- PASS: TestInitRepoAttemptsExceeded (0.05s) === RUN TestInitRepoPasswordInvalid --- PASS: TestInitRepoPasswordInvalid (0.01s) === RUN TestAddTargetToTargetRoleByDefault ---- PASS: TestAddTargetToTargetRoleByDefault (0.03s) +--- PASS: TestAddTargetToTargetRoleByDefault (0.02s) === RUN TestAddTargetToSpecifiedValidRoles ---- PASS: TestAddTargetToSpecifiedValidRoles (0.03s) +--- PASS: TestAddTargetToSpecifiedValidRoles (0.02s) === RUN TestAddTargetToSpecifiedInvalidRoles ---- PASS: TestAddTargetToSpecifiedInvalidRoles (0.03s) +--- PASS: TestAddTargetToSpecifiedInvalidRoles (0.02s) === RUN TestAddTargetWithInvalidTarget ---- PASS: TestAddTargetWithInvalidTarget (0.02s) +--- PASS: TestAddTargetWithInvalidTarget (0.01s) === RUN TestAddTargetErrorWritingChanges --- PASS: TestAddTargetErrorWritingChanges (0.01s) === RUN TestRemoveTargetToTargetRoleByDefault ---- PASS: TestRemoveTargetToTargetRoleByDefault (0.03s) +--- PASS: TestRemoveTargetToTargetRoleByDefault (0.02s) === RUN TestRemoveTargetFromSpecifiedValidRoles ---- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.03s) +--- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.02s) === RUN TestRemoveTargetToSpecifiedInvalidRoles ---- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.03s) +--- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.02s) === RUN TestRemoveTargetErrorWritingChanges ---- PASS: TestRemoveTargetErrorWritingChanges (0.02s) +--- PASS: TestRemoveTargetErrorWritingChanges (0.01s) === RUN TestListTarget ---- PASS: TestListTarget (0.29s) +--- PASS: TestListTarget (0.21s) === RUN TestListTargetRestrictsDelegationPaths ---- PASS: TestListTargetRestrictsDelegationPaths (0.05s) +--- PASS: TestListTargetRestrictsDelegationPaths (0.03s) === RUN TestValidateRootKey ---- PASS: TestValidateRootKey (0.04s) +--- PASS: TestValidateRootKey (0.02s) === RUN TestGetChangelist ---- PASS: TestGetChangelist (0.04s) +--- PASS: TestGetChangelist (0.02s) === RUN TestPublishBareRepo ---- PASS: TestPublishBareRepo (0.30s) +--- PASS: TestPublishBareRepo (0.22s) === RUN TestPublishUninitializedRepo -time="2025-10-14T08:16:23-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +time="2026-11-17T16:42:57+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" --- PASS: TestPublishUninitializedRepo (0.02s) === RUN TestPublishClientHasSnapshotKey ---- PASS: TestPublishClientHasSnapshotKey (0.23s) +--- PASS: TestPublishClientHasSnapshotKey (0.18s) === RUN TestPublishAfterInitServerHasSnapshotKey ---- PASS: TestPublishAfterInitServerHasSnapshotKey (0.23s) +--- PASS: TestPublishAfterInitServerHasSnapshotKey (0.18s) === RUN TestPublishAfterPullServerHasSnapshotKey ---- PASS: TestPublishAfterPullServerHasSnapshotKey (0.08s) +--- PASS: TestPublishAfterPullServerHasSnapshotKey (0.06s) === RUN TestPublishNoOneHasSnapshotKey ---- PASS: TestPublishNoOneHasSnapshotKey (0.05s) +--- PASS: TestPublishNoOneHasSnapshotKey (0.04s) === RUN TestPublishSnapshotCorrupt ---- PASS: TestPublishSnapshotCorrupt (0.10s) +--- PASS: TestPublishSnapshotCorrupt (0.11s) === RUN TestPublishTargetsCorrupt --- PASS: TestPublishTargetsCorrupt (0.05s) === RUN TestPublishRootCorrupt -time="2025-10-14T08:16:24-12:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" -time="2025-10-14T08:16:24-12:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" ---- PASS: TestPublishRootCorrupt (0.05s) +time="2026-11-17T16:42:57+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +time="2026-11-17T16:42:57+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +--- PASS: TestPublishRootCorrupt (0.04s) === RUN TestPublishSnapshotLocalKeysCreatedFirst --- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.00s) === RUN TestPublishDelegations ---- PASS: TestPublishDelegations (0.09s) +--- PASS: TestPublishDelegations (0.08s) === RUN TestPublishDelegationsX509 ---- PASS: TestPublishDelegationsX509 (0.09s) +--- PASS: TestPublishDelegationsX509 (0.07s) === RUN TestPublishTargetsDelegationScopeFailIfNoKeys -time="2025-10-14T08:16:25-12:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" -time="2025-10-14T08:16:25-12:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" ---- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.07s) +time="2026-11-17T16:42:58+14:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +time="2026-11-17T16:42:58+14:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +--- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.06s) === RUN TestPublishTargetsDelegationSuccessLocallyHasRoles ---- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.07s) +--- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.06s) === RUN TestPublishTargetsDelegationNoTargetsKeyNeeded ---- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.08s) +--- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.07s) === RUN TestPublishTargetsDelegationSuccessNeedsToDownloadRoles ---- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.09s) +--- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.07s) === RUN TestPublishTargetsDelegationFromTwoRepos ---- PASS: TestPublishTargetsDelegationFromTwoRepos (0.07s) +--- PASS: TestPublishTargetsDelegationFromTwoRepos (0.06s) === RUN TestPublishRemoveDelegationKeyFromDelegationRole -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:16:25-12:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: 4b2dde1df63e968ff5253acfa989d8009cc1b7e3473d321dcf76c45ba54f86e2" ---- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.06s) +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:42:58+14:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: 797b3268edd4db09f7f5e43bd6252d8b0f3f88be0d10fe2cc599d974b99a9228" +--- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.04s) === RUN TestPublishRemoveDelegation -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:16:25-12:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " ---- PASS: TestPublishRemoveDelegation (0.05s) +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:42:58+14:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " +--- PASS: TestPublishRemoveDelegation (0.04s) === RUN TestPublishSucceedsDespiteDelegationCorrupt ---- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.05s) +--- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.04s) === RUN TestRotateKeyInvalidRole --- PASS: TestRotateKeyInvalidRole (0.03s) === RUN TestRemoteRotationError --- PASS: TestRemoteRotationError (0.01s) === RUN TestRemoteRotationEndpointError ---- PASS: TestRemoteRotationEndpointError (0.02s) +--- PASS: TestRemoteRotationEndpointError (0.01s) === RUN TestRemoteRotationNoRootKey ---- PASS: TestRemoteRotationNoRootKey (0.04s) +--- PASS: TestRemoteRotationNoRootKey (0.03s) === RUN TestRemoteRotationNoInit -time="2025-10-14T08:16:25-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +time="2026-11-17T16:42:58+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" --- PASS: TestRemoteRotationNoInit (0.02s) === RUN TestRotateBeforePublishFromRemoteKeyToLocalKey ---- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.11s) +--- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.07s) === RUN TestRotateKeyAfterPublishNoServerManagementChange ---- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.80s) +--- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.22s) === RUN TestRotateKeyAfterPublishServerManagementChange ---- PASS: TestRotateKeyAfterPublishServerManagementChange (1.65s) +--- PASS: TestRotateKeyAfterPublishServerManagementChange (0.22s) === RUN TestRotateRootKey ---- PASS: TestRotateRootKey (0.41s) +--- PASS: TestRotateRootKey (0.06s) === RUN TestRotateRootMultiple ---- PASS: TestRotateRootMultiple (0.22s) +--- PASS: TestRotateRootMultiple (0.09s) === RUN TestRotateRootKeyProvided ---- PASS: TestRotateRootKeyProvided (0.20s) +--- PASS: TestRotateRootKeyProvided (0.07s) === RUN TestRotateRootKeyLegacySupport ---- PASS: TestRotateRootKeyLegacySupport (0.18s) +--- PASS: TestRotateRootKeyLegacySupport (0.09s) === RUN TestRemoteServerUnavailableNoLocalCache -time="2025-10-14T08:16:29-12:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." ---- PASS: TestRemoteServerUnavailableNoLocalCache (0.01s) +time="2026-11-17T16:42:59+14:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." +--- PASS: TestRemoteServerUnavailableNoLocalCache (0.00s) === RUN TestAddDelegationChangefileValid --- PASS: TestAddDelegationChangefileValid (0.01s) === RUN TestAddDelegationChangefileApplicable @@ -2301,8 +2337,8 @@ === RUN TestRemoveDelegationChangefileValid --- PASS: TestRemoveDelegationChangefileValid (0.01s) === RUN TestRemoveDelegationChangefileApplicable -time="2025-10-14T08:16:29-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:29-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:59+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:59+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestRemoveDelegationChangefileApplicable (0.01s) === RUN TestClearAllPathsDelegationChangefileApplicable --- PASS: TestClearAllPathsDelegationChangefileApplicable (0.01s) @@ -2315,169 +2351,169 @@ === RUN TestClientInvalidURL --- PASS: TestClientInvalidURL (0.00s) === RUN TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole ---- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (1.12s) +--- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.13s) === RUN TestDeleteRepo ---- PASS: TestDeleteRepo (0.43s) +--- PASS: TestDeleteRepo (0.02s) === RUN TestDeleteRemoteRepo ---- PASS: TestDeleteRemoteRepo (0.45s) +--- PASS: TestDeleteRemoteRepo (0.05s) === RUN TestListRoles --- PASS: TestListRoles (0.08s) === RUN TestGetAllTargetInfo ---- PASS: TestGetAllTargetInfo (0.24s) +--- PASS: TestGetAllTargetInfo (0.05s) === RUN TestUpdateSucceedsEvenIfCannotWriteNewRepo -time="2025-10-14T08:16:31-12:00" level=error msg="could not save root to cache: Non-writable" ---- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.05s) +time="2026-11-17T16:42:59+14:00" level=error msg="could not save root to cache: Non-writable" +--- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.04s) === RUN TestUpdateSucceedsEvenIfCannotWriteExistingRepo ---- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.77s) +--- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.16s) === RUN TestUpdateInOfflineMode -time="2025-10-14T08:16:32-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" -time="2025-10-14T08:16:32-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateInOfflineMode (0.32s) +time="2026-11-17T16:43:00+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2026-11-17T16:43:00+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateInOfflineMode (0.01s) === RUN TestUpdateReplacesCorruptOrMissingMetadata -time="2025-10-14T08:16:33-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:16:33-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateReplacesCorruptOrMissingMetadata (1.50s) +time="2026-11-17T16:43:00+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:00+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.30s) === RUN TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign -time="2025-10-14T08:16:34-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:16:34-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.18s) +time="2026-11-17T16:43:00+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:00+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.03s) === RUN TestUpdateRemoteRootNotExistNoLocalCache --- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.01s) === RUN TestUpdateRemoteRootNotExistCanUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.20s) +--- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.02s) === RUN TestUpdateRemoteRootNotExistCannotUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.24s) +--- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.03s) === RUN TestUpdateRemoteRoot50XNoLocalCache ---- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.03s) +--- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.01s) === RUN TestUpdateRemoteRoot50XCanUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.05s) +--- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.02s) === RUN TestUpdateRemoteRoot50XCannotUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (4.35s) +--- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.03s) === RUN TestUpdateNonRootRemoteMissingMetadataNoLocalCache ---- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.18s) +--- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.06s) === RUN TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache -time="2025-10-14T08:16:39-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.41s) +time="2026-11-17T16:43:00+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.08s) === RUN TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache -time="2025-10-14T08:16:40-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.85s) +time="2026-11-17T16:43:00+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.11s) === RUN TestUpdateNonRootRemote50XNoLocalCache ---- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.13s) +--- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.06s) === RUN TestUpdateNonRootRemote50XCanUseLocalCache -time="2025-10-14T08:16:41-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.69s) +time="2026-11-17T16:43:00+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.08s) === RUN TestUpdateNonRootRemote50XCannotUseLocalCache -time="2025-10-14T08:16:41-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.66s) +time="2026-11-17T16:43:01+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.10s) === RUN TestUpdateRemoteChecksumWrongNoLocalCache ---- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.31s) +--- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.07s) === RUN TestUpdateRemoteChecksumWrongCanUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.42s) +--- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.11s) === RUN TestUpdateRemoteChecksumWrongCannotUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (3.49s) +--- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.14s) === RUN TestUpdateRootRemoteCorruptedNoLocalCache -time="2025-10-14T08:16:47-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:16:47-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (1.17s) +time="2026-11-17T16:43:01+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:01+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.22s) === RUN TestUpdateRootRemoteCorruptedCanUseLocalCache ---- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (2.01s) +--- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (0.47s) === RUN TestUpdateRootRemoteCorruptedCannotUseLocalCache -time="2025-10-14T08:16:50-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:16:50-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.87s) +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (0.55s) === RUN TestUpdateNonRootRemoteCorruptedNoLocalCache -time="2025-10-14T08:16:51-12:00" level=error msg="Metadata for targets expired" -time="2025-10-14T08:16:51-12:00" level=error msg="Metadata for targets expired" -time="2025-10-14T08:16:55-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-14T08:16:55-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-14T08:16:55-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-14T08:16:55-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:16:56-12:00" level=error msg="Metadata for targets/a expired" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a: targets/a expired at Fri Sep 13 08:16:56 -12 2024" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:16:56-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Sep 13 08:16:56 -12 2024" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:16:56-12:00" level=error msg="Metadata for targets/b expired" -time="2025-10-14T08:16:56-12:00" level=warning msg="Error getting targets/b: targets/b expired at Fri Sep 13 08:16:56 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (5.52s) +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for targets expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for targets expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-17T16:43:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:02+14:00" level=error msg="Metadata for targets/a expired" +time="2026-11-17T16:43:02+14:00" level=warning msg="Error getting targets/a: targets/a expired at Thu Oct 16 16:43:02 +14 2025" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:03+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Thu Oct 16 16:43:03 +14 2025" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:03+14:00" level=error msg="Metadata for targets/b expired" +time="2026-11-17T16:43:03+14:00" level=warning msg="Error getting targets/b: targets/b expired at Thu Oct 16 16:43:03 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (0.58s) === RUN TestUpdateNonRootRemoteCorruptedCanUseLocalCache -time="2025-10-14T08:16:58-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-14T08:16:58-12:00" level=error msg="Metadata for timestamp expired" ---- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (2.25s) +time="2026-11-17T16:43:03+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-17T16:43:03+14:00" level=error msg="Metadata for timestamp expired" +--- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (0.77s) === RUN TestUpdateNonRootRemoteCorruptedCannotUseLocalCache -time="2025-10-14T08:16:59-12:00" level=error msg="Metadata for targets expired" -time="2025-10-14T08:17:00-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-14T08:17:00-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-14T08:17:00-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-14T08:17:00-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:17:04-12:00" level=error msg="Metadata for targets/a expired" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a: targets/a expired at Fri Sep 13 08:17:04 -12 2024" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:17:04-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Sep 13 08:17:04 -12 2024" -time="2025-10-14T08:17:04-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:17:05-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:17:05-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-14T08:17:05-12:00" level=error msg="Metadata for targets/b expired" -time="2025-10-14T08:17:05-12:00" level=warning msg="Error getting targets/b: targets/b expired at Fri Sep 13 08:17:05 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (6.08s) +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for targets expired" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for targets/a expired" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a: targets/a expired at Thu Oct 16 16:43:04 +14 2025" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Thu Oct 16 16:43:04 +14 2025" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-17T16:43:04+14:00" level=error msg="Metadata for targets/b expired" +time="2026-11-17T16:43:04+14:00" level=warning msg="Error getting targets/b: targets/b expired at Thu Oct 16 16:43:04 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (1.08s) === RUN TestUpdateLocalAndRemoteRootCorrupt -time="2025-10-14T08:17:06-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:06-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" -time="2025-10-14T08:17:08-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateLocalAndRemoteRootCorrupt (3.25s) +time="2026-11-17T16:43:05+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:05+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:05+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:43:06+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateLocalAndRemoteRootCorrupt (1.18s) === RUN TestUpdateRemoteKeyRotated -time="2025-10-14T08:17:08-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-14T08:17:08-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-14T08:17:08-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" ---- PASS: TestUpdateRemoteKeyRotated (0.19s) +time="2026-11-17T16:43:06+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-17T16:43:06+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-17T16:43:06+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +--- PASS: TestUpdateRemoteKeyRotated (0.11s) === RUN TestValidateRootRotationWithOldRole ---- PASS: TestValidateRootRotationWithOldRole (0.10s) +--- PASS: TestValidateRootRotationWithOldRole (0.05s) === RUN TestRootRoleInvariant ---- PASS: TestRootRoleInvariant (0.09s) +--- PASS: TestRootRoleInvariant (0.05s) === RUN TestBadIntermediateTransitions ---- PASS: TestBadIntermediateTransitions (0.03s) +--- PASS: TestBadIntermediateTransitions (0.02s) === RUN TestExpiredIntermediateTransitions -time="2025-10-14T08:17:09-12:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" ---- PASS: TestExpiredIntermediateTransitions (0.03s) +time="2026-11-17T16:43:06+14:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" +--- PASS: TestExpiredIntermediateTransitions (0.02s) === RUN TestDownloadTargetsLarge ---- PASS: TestDownloadTargetsLarge (2.58s) +--- PASS: TestDownloadTargetsLarge (1.94s) === RUN TestDownloadTargetsDeep --- PASS: TestDownloadTargetsDeep (0.01s) === RUN TestDownloadSnapshotLargeDelegationsMany ---- PASS: TestDownloadSnapshotLargeDelegationsMany (1.91s) +--- PASS: TestDownloadSnapshotLargeDelegationsMany (1.73s) === RUN TestRootOnDiskTrustPinning --- PASS: TestRootOnDiskTrustPinning (0.01s) === RUN TestLoadTUFRepoBadURL @@ -2519,14 +2555,14 @@ === RUN TestApplyChangelistTargetsToMultipleRoles --- PASS: TestApplyChangelistTargetsToMultipleRoles (0.00s) === RUN TestApplyChangelistTargetsFailsNonexistentRole -time="2025-10-14T08:17:13-12:00" level=error msg="couldn't add target to targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" -time="2025-10-14T08:17:13-12:00" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" +time="2026-11-17T16:43:10+14:00" level=error msg="couldn't add target to targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" +time="2026-11-17T16:43:10+14:00" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" --- PASS: TestApplyChangelistTargetsFailsNonexistentRole (0.00s) === RUN TestChangeTargetMetaFailsInvalidRole -time="2025-10-14T08:17:13-12:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" +time="2026-11-17T16:43:10+14:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" --- PASS: TestChangeTargetMetaFailsInvalidRole (0.00s) === RUN TestChangeTargetMetaFailsIfPrefixError -time="2025-10-14T08:17:13-12:00" level=error msg="couldn't add target to targets/level1: could not add all targets" +time="2026-11-17T16:43:10+14:00" level=error msg="couldn't add target to targets/level1: could not add all targets" --- PASS: TestChangeTargetMetaFailsIfPrefixError (0.00s) === RUN TestAllNearExpiry --- PASS: TestAllNearExpiry (0.00s) @@ -2535,7 +2571,7 @@ === RUN TestRotateRemoteKeyOffline --- PASS: TestRotateRemoteKeyOffline (0.00s) PASS -ok github.com/theupdateframework/notary/client 51.186s +ok github.com/theupdateframework/notary/client 14.100s === RUN TestTUFDelegation --- PASS: TestTUFDelegation (0.00s) === RUN TestMemChangelist @@ -2547,14 +2583,14 @@ === RUN TestAdd --- PASS: TestAdd (0.00s) === RUN TestErrorConditions -time="2025-10-14T08:16:22-12:00" level=warning msg="invalid character '\\x05' looking for beginning of value" +time="2026-11-17T16:42:56+14:00" level=warning msg="invalid character '\\x05' looking for beginning of value" --- PASS: TestErrorConditions (0.00s) === RUN TestListOrder --- PASS: TestListOrder (0.00s) === RUN TestFileChangeIterator --- PASS: TestFileChangeIterator (0.00s) PASS -ok github.com/theupdateframework/notary/client/changelist 0.011s +ok github.com/theupdateframework/notary/client/changelist 0.010s === RUN TestParseConfigError --- PASS: TestParseConfigError (0.00s) === RUN TestSetupGRPCServer @@ -2564,7 +2600,7 @@ === RUN TestSetupNetListener --- PASS: TestSetupNetListener (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/escrow 0.010s +ok github.com/theupdateframework/notary/cmd/escrow 0.009s === RUN TestPurgeDelegationKeys Usage: delegation [command] @@ -2588,7 +2624,7 @@ Use "delegation [command] --help" for more information about a command. Removal of the following keys from all delegations in gun staged for next publish: - abc ---- PASS: TestPurgeDelegationKeys (0.01s) +--- PASS: TestPurgeDelegationKeys (0.00s) === RUN TestAddInvalidDelegationName --- PASS: TestAddInvalidDelegationName (0.00s) === RUN TestAddInvalidDelegationCert @@ -2636,80 +2672,80 @@ Use "delegation [command] --help" for more information about a command. --- PASS: TestRemoveInvalidNumArgs (0.00s) === RUN TestInitWithRootKey ---- PASS: TestInitWithRootKey (0.10s) +--- PASS: TestInitWithRootKey (0.09s) === RUN TestInitWithRootCert integration_test.go:189: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestInitWithRootCert (0.00s) === RUN TestClientTUFInteraction ---- PASS: TestClientTUFInteraction (0.15s) +--- PASS: TestClientTUFInteraction (0.10s) === RUN TestClientDeleteTUFInteraction -time="2025-10-14T08:16:22-12:00" level=error msg="could not reach https://invalid-server: Get \"https://invalid-server/v2/\": dial tcp: lookup invalid-server on [::1]:53: read udp [::1]:37613->[::1]:53: read: connection refused" ---- PASS: TestClientDeleteTUFInteraction (0.18s) +time="2026-11-17T16:42:56+14:00" level=error msg="could not reach https://invalid-server: Get \"https://invalid-server/v2/\": dial tcp: lookup invalid-server on [::1]:53: read udp [::1]:42572->[::1]:53: read: connection refused" +--- PASS: TestClientDeleteTUFInteraction (0.11s) === RUN TestClientTUFAddByHashInteraction ---- PASS: TestClientTUFAddByHashInteraction (0.23s) +--- PASS: TestClientTUFAddByHashInteraction (0.16s) === RUN TestClientDelegationsInteraction -time="2025-10-14T08:16:23-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:23-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationsInteraction (0.52s) +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestClientDelegationsInteraction (0.38s) === RUN TestClientDelegationsPublishing ---- PASS: TestClientDelegationsPublishing (0.41s) +--- PASS: TestClientDelegationsPublishing (0.34s) === RUN TestClientKeyGenerationRotation ---- PASS: TestClientKeyGenerationRotation (0.53s) +--- PASS: TestClientKeyGenerationRotation (0.43s) === RUN TestKeyRotation ---- PASS: TestKeyRotation (0.08s) +--- PASS: TestKeyRotation (0.07s) === RUN TestKeyRotationNonRoot ---- PASS: TestKeyRotationNonRoot (0.10s) +--- PASS: TestKeyRotationNonRoot (0.09s) === RUN TestDefaultRootKeyGeneration --- PASS: TestDefaultRootKeyGeneration (0.00s) === RUN TestLogLevelFlags --- PASS: TestLogLevelFlags (0.00s) === RUN TestClientKeyPassphraseChange ---- PASS: TestClientKeyPassphraseChange (0.09s) +--- PASS: TestClientKeyPassphraseChange (0.08s) === RUN TestPurgeSingleKey Removal of the following keys from all delegations in gun staged for next publish: - - 8bc454713061f47740bfc5e91ff57e4e4ee24908f862e93e0de508d2ac5cd404 ---- PASS: TestPurgeSingleKey (0.08s) + - ad4e5001472d5a405bb29dbe71bd86661b318006ae0b0cc75dbda5fcd198ce91 +--- PASS: TestPurgeSingleKey (0.07s) === RUN TestWitness -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:25-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" ---- PASS: TestWitness (0.24s) +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:58+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +--- PASS: TestWitness (0.20s) === RUN TestClientTUFInitWithAutoPublish -time="2025-10-14T08:16:25-12:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:59716->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:54415->[::1]:53: read: connection refused" --- PASS: TestClientTUFInitWithAutoPublish (0.06s) === RUN TestClientTUFAddWithAutoPublish -time="2025-10-14T08:16:25-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:50044->[::1]:53: read: connection refused" -time="2025-10-14T08:16:25-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" -time="2025-10-14T08:16:25-12:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:41914->[::1]:53: read: connection refused" -time="2025-10-14T08:16:25-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" ---- PASS: TestClientTUFAddWithAutoPublish (0.07s) +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:41451->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:33707->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +--- PASS: TestClientTUFAddWithAutoPublish (0.06s) === RUN TestClientTUFRemoveWithAutoPublish ---- PASS: TestClientTUFRemoveWithAutoPublish (0.12s) +--- PASS: TestClientTUFRemoveWithAutoPublish (0.10s) === RUN TestClientDelegationAddWithAutoPublish --- PASS: TestClientDelegationAddWithAutoPublish (0.05s) === RUN TestClientDelegationRemoveWithAutoPublish -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:25-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationRemoveWithAutoPublish (0.12s) +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:58+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestClientDelegationRemoveWithAutoPublish (0.10s) === RUN TestClientTUFAddByHashWithAutoPublish ---- PASS: TestClientTUFAddByHashWithAutoPublish (0.06s) +--- PASS: TestClientTUFAddByHashWithAutoPublish (0.05s) === RUN TestClientKeyImport -time="2025-10-14T08:16:25-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" -time="2025-10-14T08:16:25-12:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" ---- PASS: TestClientKeyImport (0.03s) +time="2026-11-17T16:42:58+14:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2026-11-17T16:42:58+14:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" +--- PASS: TestClientKeyImport (0.02s) === RUN TestAddDelImportKeyPublishFlow -time="2025-10-14T08:16:25-12:00" level=error msg="couldn't add target to targets/releases: could not find necessary signing keys, at least one of these keys must be available: 0570f9fdca00bdaf62f3f79bf84e70748ba2c8bff926f20dd996bac49e6164fc" ---- PASS: TestAddDelImportKeyPublishFlow (0.54s) +time="2026-11-17T16:42:58+14:00" level=error msg="couldn't add target to targets/releases: could not find necessary signing keys, at least one of these keys must be available: 0570f9fdca00bdaf62f3f79bf84e70748ba2c8bff926f20dd996bac49e6164fc" +--- PASS: TestAddDelImportKeyPublishFlow (0.12s) === RUN TestExportImportFlow ---- PASS: TestExportImportFlow (0.20s) +--- PASS: TestExportImportFlow (0.04s) === RUN TestDelegationKeyImportExport ---- PASS: TestDelegationKeyImportExport (0.01s) +--- PASS: TestDelegationKeyImportExport (0.00s) === RUN TestImportKeysNoYubikey ---- PASS: TestImportKeysNoYubikey (0.01s) +--- PASS: TestImportKeysNoYubikey (0.00s) === RUN TestExportImportKeysNoYubikey --- PASS: TestExportImportKeysNoYubikey (0.01s) === RUN TestRemoveIfNoKey @@ -2717,24 +2753,24 @@ === RUN TestRemoveOneKeyAbort --- PASS: TestRemoveOneKeyAbort (0.00s) === RUN TestRemoveOneKeyConfirm ---- PASS: TestRemoveOneKeyConfirm (0.00s) +--- PASS: TestRemoveOneKeyConfirm (0.01s) === RUN TestRemoveMultikeysInvalidInput ---- PASS: TestRemoveMultikeysInvalidInput (0.00s) +--- PASS: TestRemoveMultikeysInvalidInput (0.01s) === RUN TestRemoveMultikeysAbortChoice --- PASS: TestRemoveMultikeysAbortChoice (0.00s) === RUN TestRemoveMultikeysRemoveOnlyChosenKey --- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.00s) === RUN TestRotateKeyInvalidRoles -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:37240->[::1]:53: read: connection refused" -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:43831->[::1]:53: read: connection refused" -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:48272->[::1]:53: read: connection refused" -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:38273->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:47653->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:35022->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:53876->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:40251->[::1]:53: read: connection refused" --- PASS: TestRotateKeyInvalidRoles (0.00s) === RUN TestRotateKeyTargetCannotBeServerManaged -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:34781->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:43020->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTargetCannotBeServerManaged (0.00s) === RUN TestRotateKeyTimestampCannotBeLocallyManaged -time="2025-10-14T08:16:26-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:52182->[::1]:53: read: connection refused" +time="2026-11-17T16:42:58+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:38977->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.00s) === RUN TestRotateKeyNoGUN Usage: @@ -2742,13 +2778,13 @@ === RUN TestRotateKeyRemoteServerManagesKey Successfully rotated snapshot key for repository docker.com/notary Successfully rotated timestamp key for repository docker.com/notary ---- PASS: TestRotateKeyRemoteServerManagesKey (0.07s) +--- PASS: TestRotateKeyRemoteServerManagesKey (0.06s) === RUN TestRotateKeyBothKeys Successfully rotated targets key for repository docker.com/notary Successfully rotated snapshot key for repository docker.com/notary ---- PASS: TestRotateKeyBothKeys (0.49s) +--- PASS: TestRotateKeyBothKeys (0.05s) === RUN TestRotateKeyRootIsInteractive ---- PASS: TestRotateKeyRootIsInteractive (0.20s) +--- PASS: TestRotateKeyRootIsInteractive (0.02s) === RUN TestChangeKeyPassphraseInvalidID --- PASS: TestChangeKeyPassphraseInvalidID (0.00s) === RUN TestChangeKeyPassphraseInvalidNumArgs @@ -2757,17 +2793,17 @@ === RUN TestChangeKeyPassphraseNonexistentID --- PASS: TestChangeKeyPassphraseNonexistentID (0.00s) === RUN TestExportKeys ---- PASS: TestExportKeys (0.15s) +--- PASS: TestExportKeys (0.00s) === RUN TestExportKeysByGUN ---- PASS: TestExportKeysByGUN (0.16s) +--- PASS: TestExportKeysByGUN (0.00s) === RUN TestExportKeysByID ---- PASS: TestExportKeysByID (0.28s) +--- PASS: TestExportKeysByID (0.00s) === RUN TestExportKeysBadFlagCombo --- PASS: TestExportKeysBadFlagCombo (0.00s) === RUN TestImportKeysNonexistentFile --- PASS: TestImportKeysNonexistentFile (0.00s) === RUN TestKeyGeneration -time="2025-10-14T08:16:27-12:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" +time="2026-11-17T16:42:59+14:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" --- PASS: TestKeyGeneration (0.01s) === RUN TestNotaryConfigFileDefault --- PASS: TestNotaryConfigFileDefault (0.00s) @@ -2782,15 +2818,15 @@ === RUN TestConfigParsingErrorsPropagatedByCommands --- PASS: TestConfigParsingErrorsPropagatedByCommands (0.00s) === RUN TestInsufficientArgumentsReturnsErrorAndPrintsUsage ---- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.13s) +--- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.00s) === RUN TestBareCommandPrintsUsageAndNoError --- PASS: TestBareCommandPrintsUsageAndNoError (0.00s) === RUN TestConfigFileTLSCannotBeRelativeToCWD --- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.00s) === RUN TestConfigFileTLSCanBeRelativeToConfigOrAbsolute ---- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.03s) +--- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.02s) === RUN TestConfigFileOverridenByCmdLineFlags ---- PASS: TestConfigFileOverridenByCmdLineFlags (0.04s) +--- PASS: TestConfigFileOverridenByCmdLineFlags (0.02s) === RUN TestConfigFileTrustPinning --- PASS: TestConfigFileTrustPinning (0.00s) === RUN TestPassphraseRetrieverCaching @@ -2814,12 +2850,12 @@ === RUN TestPrettyPrintSortedRoles --- PASS: TestPrettyPrintSortedRoles (0.00s) === RUN TestImportRootCert ---- PASS: TestImportRootCert (0.04s) +--- PASS: TestImportRootCert (0.00s) === RUN TestTokenAuth -time="2025-10-14T08:16:28-12:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" +time="2026-11-17T16:42:59+14:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" --- PASS: TestTokenAuth (0.00s) === RUN TestAdminTokenAuth -time="2025-10-14T08:16:28-12:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" +time="2026-11-17T16:42:59+14:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" --- PASS: TestAdminTokenAuth (0.00s) === RUN TestTokenAuth200Status --- PASS: TestTokenAuth200Status (0.00s) @@ -2830,18 +2866,18 @@ === RUN TestAdminTokenAuth401Status --- PASS: TestAdminTokenAuth401Status (0.00s) === RUN TestTokenAuthNon200Non401Status -time="2025-10-14T08:16:28-12:00" level=error msg="could not reach http://127.0.0.1:43967: 404" +time="2026-11-17T16:42:59+14:00" level=error msg="could not reach http://127.0.0.1:43667: 404" --- PASS: TestTokenAuthNon200Non401Status (0.00s) === RUN TestAdminTokenAuthNon200Non401Status -time="2025-10-14T08:16:28-12:00" level=error msg="could not reach http://127.0.0.1:42435: 404" +time="2026-11-17T16:42:59+14:00" level=error msg="could not reach http://127.0.0.1:43465: 404" --- PASS: TestAdminTokenAuthNon200Non401Status (0.00s) === RUN TestConfigureRepo --- PASS: TestConfigureRepo (0.00s) === RUN TestConfigureRepoRW -Enter username: time="2025-10-14T08:16:28-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-17T16:42:59+14:00" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoRW (0.00s) === RUN TestConfigureRepoAdmin -Enter username: time="2025-10-14T08:16:28-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-17T16:42:59+14:00" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoAdmin (0.00s) === RUN TestStatusUnstageAndReset Successfully reset specified changes for repository gun @@ -2854,11 +2890,11 @@ Pushing changes to gun --- PASS: TestGetTrustPinningErrors (0.00s) === RUN TestPasswordStore -Enter username: time="2025-10-14T08:16:28-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-17T16:42:59+14:00" level=error msg="error processing username input: EOF" --- PASS: TestPasswordStore (0.00s) === RUN TestPasswordStoreWithEnvvar -time="2025-10-14T08:16:28-12:00" level=error msg="Authentication string with zero-length username" -time="2025-10-14T08:16:28-12:00" level=error msg="Could not base64-decode authentication string" +time="2026-11-17T16:42:59+14:00" level=error msg="Authentication string with zero-length username" +time="2026-11-17T16:42:59+14:00" level=error msg="Could not base64-decode authentication string" --- PASS: TestPasswordStoreWithEnvvar (0.00s) === RUN TestGetPayload --- PASS: TestGetPayload (0.00s) @@ -2867,7 +2903,7 @@ === RUN TestHomeExpand --- PASS: TestHomeExpand (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary 5.668s +ok github.com/theupdateframework/notary/cmd/notary 2.996s === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetAddrAndTLSConfigInvalidTLS @@ -2883,42 +2919,42 @@ === RUN TestGetInvalidTrustService --- PASS: TestGetInvalidTrustService (0.00s) === RUN TestGetLocalTrustService -time="2025-10-14T08:16:22-12:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" +time="2026-11-17T16:42:56+14:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" --- PASS: TestGetLocalTrustService (0.00s) === RUN TestGetTrustServiceInvalidKeyAlgorithm --- PASS: TestGetTrustServiceInvalidKeyAlgorithm (0.00s) === RUN TestGetTrustServiceTLSMissingCertOrKey --- PASS: TestGetTrustServiceTLSMissingCertOrKey (0.00s) === RUN TestGetTrustServiceNoTLSConfig -time="2025-10-14T08:16:22-12:00" level=info msg="Using remote signing service" +time="2026-11-17T16:42:56+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceNoTLSConfig (0.00s) === RUN TestGetTrustServiceTLSSuccess -time="2025-10-14T08:16:22-12:00" level=info msg="Using remote signing service" +time="2026-11-17T16:42:56+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceTLSSuccess (0.00s) === RUN TestGetTrustServiceTLSFailure --- PASS: TestGetTrustServiceTLSFailure (0.00s) === RUN TestGetStoreInvalid -time="2025-10-14T08:16:22-12:00" level=info msg="Using asdf backend" +time="2026-11-17T16:42:56+14:00" level=info msg="Using asdf backend" --- PASS: TestGetStoreInvalid (0.00s) === RUN TestGetStoreDBStore -time="2025-10-14T08:16:22-12:00" level=info msg="Using sqlite3 backend" +time="2026-11-17T16:42:56+14:00" level=info msg="Using sqlite3 backend" --- PASS: TestGetStoreDBStore (0.00s) === RUN TestGetStoreRethinkDBStoreConnectionFails -time="2025-10-14T08:16:22-12:00" level=info msg="Using rethinkdb backend" +time="2026-11-17T16:42:56+14:00" level=info msg="Using rethinkdb backend" --- PASS: TestGetStoreRethinkDBStoreConnectionFails (0.00s) === RUN TestGetMemoryStore -time="2025-10-14T08:16:22-12:00" level=info msg="Using memory backend" +time="2026-11-17T16:42:56+14:00" level=info msg="Using memory backend" --- PASS: TestGetMemoryStore (0.00s) === RUN TestGetCacheConfig --- PASS: TestGetCacheConfig (0.00s) === RUN TestGetGUNPRefixes --- PASS: TestGetGUNPRefixes (0.00s) === RUN TestSampleConfig -time="2025-10-14T08:16:22-12:00" level=info msg="Using remote signing service" -time="2025-10-14T08:16:22-12:00" level=info msg="Using sqlite3 backend" +time="2026-11-17T16:42:56+14:00" level=info msg="Using remote signing service" +time="2026-11-17T16:42:56+14:00" level=info msg="Using sqlite3 backend" --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-server 0.041s +ok github.com/theupdateframework/notary/cmd/notary-server 0.031s === RUN TestGetAddrAndTLSConfigInvalidTLS --- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.00s) === RUN TestGetAddrAndTLSConfigNoGRPCAddr @@ -2951,17 +2987,17 @@ === RUN TestSampleConfig --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-signer 0.099s +ok github.com/theupdateframework/notary/cmd/notary-signer 0.096s === RUN TestGenerateCertificate --- PASS: TestGenerateCertificate (0.00s) === RUN TestCryptoServiceWithNonEmptyGUN ---- PASS: TestCryptoServiceWithNonEmptyGUN (0.45s) +--- PASS: TestCryptoServiceWithNonEmptyGUN (0.35s) === RUN TestCryptoServiceWithEmptyGUN ---- PASS: TestCryptoServiceWithEmptyGUN (0.41s) +--- PASS: TestCryptoServiceWithEmptyGUN (0.33s) === RUN TestCryptoSignerInterfaceBehavior --- PASS: TestCryptoSignerInterfaceBehavior (0.00s) PASS -ok github.com/theupdateframework/notary/cryptoservice 0.879s +ok github.com/theupdateframework/notary/cryptoservice 0.691s === RUN TestGetPassphraseForUsingDelegationKey --- PASS: TestGetPassphraseForUsingDelegationKey (0.00s) === RUN TestGetPassphraseLimitsShortPassphrases @@ -2981,138 +3017,138 @@ ? github.com/theupdateframework/notary/proto [no test files] ? github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto [no test files] === RUN TestValidationErrorFormat -time="2025-10-14T08:16:22-12:00" level=info msg="invalid update: Update sent by the client is invalid.: &{ErrBadHierarchy Metadata hierarchy is incomplete: no snapshot was included in update and server does not hold current snapshot key for repository}" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=6fce9d239ebec9c8121b2ddf521076bf75ee585454362bb338396582ce2e" http.request.host="127.0.0.1:32799" http.request.id=2ad9f5ff-96d1-4e56-89d8-e9d8fecf76c7 http.request.method=POST http.request.remoteaddr="127.0.0.1:40220" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=6fce9d239ebec9c8121b2ddf521076bf75ee585454362bb338396582ce2e" http.request.host="127.0.0.1:32799" http.request.id=2ad9f5ff-96d1-4e56-89d8-e9d8fecf76c7 http.request.method=POST http.request.remoteaddr="127.0.0.1:40220" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration=2.476212ms http.response.status=400 http.response.written=260 +time="2026-11-17T16:42:56+14:00" level=info msg="invalid update: Update sent by the client is invalid.: &{ErrBadHierarchy Metadata hierarchy is incomplete: no snapshot was included in update and server does not hold current snapshot key for repository}" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=536f765e4b0266cef5e68bdd043ee37a68c6a9dcc8fa3aaccdf6ea2a7e1c" http.request.host="127.0.0.1:34737" http.request.id=66774a31-d666-42fc-8af8-5a1f30127010 http.request.method=POST http.request.remoteaddr="127.0.0.1:60196" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=536f765e4b0266cef5e68bdd043ee37a68c6a9dcc8fa3aaccdf6ea2a7e1c" http.request.host="127.0.0.1:34737" http.request.id=66774a31-d666-42fc-8af8-5a1f30127010 http.request.method=POST http.request.remoteaddr="127.0.0.1:60196" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration=3.143829ms http.response.status=400 http.response.written=260 --- PASS: TestValidationErrorFormat (0.02s) === RUN TestRunBadAddr --- PASS: TestRunBadAddr (0.00s) === RUN TestRepoPrefixMatches -time="2025-10-14T08:16:22-12:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 840f0be89a21aef20d453831e26e9ea20e0656e3e33b0dc34dae80d273063cd6" docker.io/notary=gun go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=36d7e26e62a6663d98a461533d2200c51a2c4812deea4af4f72bd28553f8" http.request.host="127.0.0.1:40215" http.request.id=d3e010a7-93ca-4667-bfce-6821e8a0ec56 http.request.method=POST http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=36d7e26e62a6663d98a461533d2200c51a2c4812deea4af4f72bd28553f8" http.request.host="127.0.0.1:40215" http.request.id=d3e010a7-93ca-4667-bfce-6821e8a0ec56 http.request.method=POST http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=3.25668ms http.response.status=0 http.response.written=0 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40215" http.request.id=f631e562-2853-46c5-a1c3-a5e685271ae4 http.request.method=GET http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="610.418µs" http.response.status=200 http.response.written=688 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40215" http.request.id=c3077da5-8d41-467a-a309-a71fa170bb22 http.request.method=GET http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.46f1679d905d9c7d816f0cef2409658b9c78aefab12a85276f6a0f75fc068371.json http.request.useragent=Go-http-client/1.1 http.response.duration="45.589µs" http.response.status=200 http.response.written=688 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40215" http.request.id=d8c9f012-5ca0-453f-bd37-59eadfeae29b http.request.method=GET http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="409.063µs" http.response.status=200 http.response.written=181 -time="2025-10-14T08:16:22-12:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.8 http.request.host="127.0.0.1:40215" http.request.id=ad6eef53-c272-4a19-ae67-fc0fcccc3db0 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40215" http.request.id=ad6eef53-c272-4a19-ae67-fc0fcccc3db0 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:49310" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="102.605µs" http.response.status=0 http.response.written=0 ---- PASS: TestRepoPrefixMatches (0.02s) +time="2026-11-17T16:42:56+14:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum b5a06ce0cc77f977cb1886b1de41526b39680f153946068d8b95deae5b00e185" docker.io/notary=gun go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=aa01e48cedb1d6239c7815cee0860b13b8af956aa9c1d1887411eb92c0e2" http.request.host="127.0.0.1:40585" http.request.id=8ad65c82-cd18-43d4-8f0f-45dbeae96c25 http.request.method=POST http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype="multipart/form-data; boundary=aa01e48cedb1d6239c7815cee0860b13b8af956aa9c1d1887411eb92c0e2" http.request.host="127.0.0.1:40585" http.request.id=8ad65c82-cd18-43d4-8f0f-45dbeae96c25 http.request.method=POST http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.789507ms http.response.status=0 http.response.written=0 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40585" http.request.id=baa6d90b-0967-4e37-949c-c397b87bb1cb http.request.method=GET http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="404.866µs" http.response.status=200 http.response.written=688 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40585" http.request.id=032e681f-5262-46d0-95ce-3dc6cb04a228 http.request.method=GET http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.a64d12e0cef368be48c17d79a8e68ad830afc5db8430d1df4a778d8fa9722403.json http.request.useragent=Go-http-client/1.1 http.response.duration="34.535µs" http.response.status=200 http.response.written=688 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40585" http.request.id=0946c90f-c969-4bf0-a93a-7cf534a27737 http.request.method=GET http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="413.507µs" http.response.status=200 http.response.written=181 +time="2026-11-17T16:42:56+14:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.8 http.request.host="127.0.0.1:40585" http.request.id=1eb15119-2bce-4473-b1c1-c86dbb22e568 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:40585" http.request.id=1eb15119-2bce-4473-b1c1-c86dbb22e568 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:41874" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="52.896µs" http.response.status=0 http.response.written=0 +--- PASS: TestRepoPrefixMatches (0.01s) === RUN TestRepoPrefixDoesNotMatch --- PASS: TestRepoPrefixDoesNotMatch (0.01s) === RUN TestMetricsEndpoint --- PASS: TestMetricsEndpoint (0.01s) === RUN TestGetKeysEndpoint -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=bef289d7-37ce-4fb6-a359-073c70c1062b http.request.method=GET http.request.remoteaddr="127.0.0.1:33034" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=bef289d7-37ce-4fb6-a359-073c70c1062b http.request.method=GET http.request.remoteaddr="127.0.0.1:33034" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="234.004µs" http.response.status=404 http.response.written=104 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=074e382d-8065-4fcd-ac01-ed0334ba29d7 http.request.method=GET http.request.remoteaddr="127.0.0.1:33050" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=1.561611ms http.response.status=200 http.response.written=103 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=e5c2952a-53ec-4ec6-a173-4490adfcd2bf http.request.method=GET http.request.remoteaddr="127.0.0.1:33066" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="171.595µs" http.response.status=200 http.response.written=103 -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=a7ba7129-45ad-4068-8f93-3c3f505d2efd http.request.method=GET http.request.remoteaddr="127.0.0.1:33072" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=a7ba7129-45ad-4068-8f93-3c3f505d2efd http.request.method=GET http.request.remoteaddr="127.0.0.1:33072" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="121.022µs" http.response.status=404 http.response.written=104 -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=caebc170-5d6b-477f-85ce-01b53ba19654 http.request.method=GET http.request.remoteaddr="127.0.0.1:33086" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:35969" http.request.id=caebc170-5d6b-477f-85ce-01b53ba19654 http.request.method=GET http.request.remoteaddr="127.0.0.1:33086" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="103.038µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=cb12cd8a-669e-4563-9efc-971fdf14504b http.request.method=GET http.request.remoteaddr="127.0.0.1:41576" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=2.118788ms http.response.status=200 http.response.written=103 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=b499d369-4545-4c9b-b504-9f1bf2536236 http.request.method=GET http.request.remoteaddr="127.0.0.1:41592" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="107.21µs" http.response.status=200 http.response.written=103 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=b218f2ab-6a6f-4ebf-b92c-c797cb3893b1 http.request.method=GET http.request.remoteaddr="127.0.0.1:41608" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=b218f2ab-6a6f-4ebf-b92c-c797cb3893b1 http.request.method=GET http.request.remoteaddr="127.0.0.1:41608" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="101.748µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=3d352179-2e9f-4da8-aa07-fdc65f532bec http.request.method=GET http.request.remoteaddr="127.0.0.1:41614" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=3d352179-2e9f-4da8-aa07-fdc65f532bec http.request.method=GET http.request.remoteaddr="127.0.0.1:41614" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="89.064µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=2012a47b-4fca-42b7-8354-6bd433630570 http.request.method=GET http.request.remoteaddr="127.0.0.1:41622" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:33955" http.request.id=2012a47b-4fca-42b7-8354-6bd433630570 http.request.method=GET http.request.remoteaddr="127.0.0.1:41622" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="76.506µs" http.response.status=404 http.response.written=104 --- PASS: TestGetKeysEndpoint (0.01s) === RUN TestGetRoleByHash -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:46013" http.request.id=94acc316-0d9e-4ac3-b1e3-3560625a0c20 http.request.method=GET http.request.remoteaddr="127.0.0.1:40256" http.request.uri=/v2/gun/_trust/tuf/timestamp.3051a760773ffc1189332f478e41c469df24b6b23865fb54ae95df7af94bf493.json http.request.useragent=Go-http-client/1.1 http.response.duration="54.274µs" http.response.status=200 http.response.written=120 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:41471" http.request.id=7d45a654-f040-4e33-a6bb-3253918d6492 http.request.method=GET http.request.remoteaddr="127.0.0.1:49406" http.request.uri=/v2/gun/_trust/tuf/timestamp.d83b17b87c16fc6ad3f030a51c116e803c27466066d849a8c123a47cbe3f00e0.json http.request.useragent=Go-http-client/1.1 http.response.duration="114.306µs" http.response.status=200 http.response.written=120 --- PASS: TestGetRoleByHash (0.00s) === RUN TestGetRoleByVersion -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:45855" http.request.id=76373602-b14b-4c0d-94b4-bc7a3ba1c55b http.request.method=GET http.request.remoteaddr="127.0.0.1:57964" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="67.914µs" http.response.status=200 http.response.written=119 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:36297" http.request.id=880d4c8e-601b-4556-b149-a92e1d9aa5da http.request.method=GET http.request.remoteaddr="127.0.0.1:59170" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="45.981µs" http.response.status=200 http.response.written=120 --- PASS: TestGetRoleByVersion (0.00s) === RUN TestGetCurrentRole -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:38017" http.request.id=27319654-dd64-4b1e-a245-8d800bc4a598 http.request.method=GET http.request.remoteaddr="127.0.0.1:34448" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="506.49µs" http.response.status=200 http.response.written=500 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:42803" http.request.id=f1bc84c1-3ab4-4e0b-a22d-c7e6ccdb632f http.request.method=GET http.request.remoteaddr="127.0.0.1:33412" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="351.113µs" http.response.status=200 http.response.written=500 --- PASS: TestGetCurrentRole (0.01s) === RUN TestRotateKeyEndpoint -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=114fd882-fafe-4063-899d-b75110e32cab http.request.method=POST http.request.remoteaddr="127.0.0.1:55706" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=114fd882-fafe-4063-899d-b75110e32cab http.request.method=POST http.request.remoteaddr="127.0.0.1:55706" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="144.67µs" http.response.status=404 http.response.written=104 -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=b477c5d5-b42f-4304-89df-a13d99cdb181 http.request.method=POST http.request.remoteaddr="127.0.0.1:55714" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=b477c5d5-b42f-4304-89df-a13d99cdb181 http.request.method=POST http.request.remoteaddr="127.0.0.1:55714" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="112.841µs" http.response.status=404 http.response.written=104 -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=4b7d63d8-4b58-4c00-92eb-108ba8daf42c http.request.method=POST http.request.remoteaddr="127.0.0.1:55724" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=4b7d63d8-4b58-4c00-92eb-108ba8daf42c http.request.method=POST http.request.remoteaddr="127.0.0.1:55724" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="116.056µs" http.response.status=404 http.response.written=104 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=13c96ff9-50de-4400-b193-1a4e0344073e http.request.method=POST http.request.remoteaddr="127.0.0.1:55740" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="107.604µs" http.response.status=200 http.response.written=103 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=57064710-46ce-4a23-9e7e-bb9884362f2c http.request.method=POST http.request.remoteaddr="127.0.0.1:55754" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="169.097µs" http.response.status=200 http.response.written=103 -time="2025-10-14T08:16:22-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=24534f46-6935-41db-9471-dbe5ce265f58 http.request.method=POST http.request.remoteaddr="127.0.0.1:55756" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:34237" http.request.id=24534f46-6935-41db-9471-dbe5ce265f58 http.request.method=POST http.request.remoteaddr="127.0.0.1:55756" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="101.823µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=dd7fbe2c-3267-4ac5-989d-8537d452f072 http.request.method=POST http.request.remoteaddr="127.0.0.1:36030" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=dd7fbe2c-3267-4ac5-989d-8537d452f072 http.request.method=POST http.request.remoteaddr="127.0.0.1:36030" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="110.487µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=507386a1-1f5e-4b39-950d-6d10ac858df5 http.request.method=POST http.request.remoteaddr="127.0.0.1:36046" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=507386a1-1f5e-4b39-950d-6d10ac858df5 http.request.method=POST http.request.remoteaddr="127.0.0.1:36046" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="161.839µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=55e09029-225e-43f3-bf61-97dada101748 http.request.method=POST http.request.remoteaddr="127.0.0.1:36052" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="111.091µs" http.response.status=200 http.response.written=103 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=9c142e8d-1615-4eec-9f84-404871af6ec0 http.request.method=POST http.request.remoteaddr="127.0.0.1:36066" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="83.314µs" http.response.status=200 http.response.written=103 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=1c59bdbf-ca32-4d47-acc2-b0502e366913 http.request.method=POST http.request.remoteaddr="127.0.0.1:36074" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=1c59bdbf-ca32-4d47-acc2-b0502e366913 http.request.method=POST http.request.remoteaddr="127.0.0.1:36074" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="87.844µs" http.response.status=404 http.response.written=104 +time="2026-11-17T16:42:56+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=842c863b-3a8b-4d6e-b0e7-ab1a4adf9aac http.request.method=POST http.request.remoteaddr="127.0.0.1:36080" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.contenttype=text/plain http.request.host="127.0.0.1:35475" http.request.id=842c863b-3a8b-4d6e-b0e7-ab1a4adf9aac http.request.method=POST http.request.remoteaddr="127.0.0.1:36080" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="76.148µs" http.response.status=404 http.response.written=104 --- PASS: TestRotateKeyEndpoint (0.01s) PASS -ok github.com/theupdateframework/notary/server 0.103s +ok github.com/theupdateframework/notary/server 0.098s ? github.com/theupdateframework/notary/server/errors [no test files] === RUN Test_changefeed --- PASS: Test_changefeed (0.00s) === RUN Test_checkChangefeedInputs -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET unable to retrieve storage" -time="2025-10-14T08:16:22-12:00" level=error msg="400 GET invalid pageSize: not_a_number" +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET unable to retrieve storage" +time="2026-11-17T16:42:56+14:00" level=error msg="400 GET invalid pageSize: not_a_number" --- PASS: Test_checkChangefeedInputs (0.00s) === RUN TestMainHandlerGet -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:45985" http.request.id=d763ba01-26dd-41e5-9dcb-b8f20005f4a6 http.request.method=GET http.request.remoteaddr="127.0.0.1:60476" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="185.868µs" http.response.status=200 http.response.written=2 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:45965" http.request.id=e9c61e7c-19f8-465d-82b1-41957cc2557f http.request.method=GET http.request.remoteaddr="127.0.0.1:50724" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="122.03µs" http.response.status=200 http.response.written=2 --- PASS: TestMainHandlerGet (0.00s) === RUN TestMainHandlerNotGet -time="2025-10-14T08:16:22-12:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:45987" http.request.id=098a8692-426a-49f7-a7d4-6121bf107556 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:57486" http.request.uri=/ http.request.useragent=Go-http-client/1.1 -time="2025-10-14T08:16:22-12:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:45987" http.request.id=098a8692-426a-49f7-a7d4-6121bf107556 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:57486" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="391.562µs" http.response.status=404 http.response.written=105 +time="2026-11-17T16:42:56+14:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.8 http.request.host="127.0.0.1:37741" http.request.id=67bcd222-154a-4bad-b291-c085503419e3 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:53380" http.request.uri=/ http.request.useragent=Go-http-client/1.1 +time="2026-11-17T16:42:56+14:00" level=info msg="response completed" go.version=go1.24.8 http.request.host="127.0.0.1:37741" http.request.id=67bcd222-154a-4bad-b291-c085503419e3 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:53380" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="295.075µs" http.response.status=404 http.response.written=105 --- PASS: TestMainHandlerNotGet (0.00s) === RUN TestKeyHandlersInvalidConfiguration -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.8 gun=gun --- PASS: TestKeyHandlersInvalidConfiguration (0.00s) === RUN TestKeyHandlersNoRoleOrRepo -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.8 -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.8 -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET no role in request" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET no role in request" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.8 -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.8 -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST no role in request" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST no role in request" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.8 +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.8 +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET no role in request" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET no role in request" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.8 +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.8 +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST no role in request" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST no role in request" go.version=go1.24.8 gun=gun --- PASS: TestKeyHandlersNoRoleOrRepo (0.00s) === RUN TestKeyHandlersInvalidRole -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET root key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET targets key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET targets/a key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST root key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST targets key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST targets/a key: " go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET root key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET targets key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET targets/a key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST root key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST targets key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST targets/a key: " go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.8 gun=gun --- PASS: TestKeyHandlersInvalidRole (0.00s) === RUN TestGetKeyHandlerCreatesOnce --- PASS: TestGetKeyHandlerCreatesOnce (0.00s) === RUN TestKeyHandlersInvalidKeyAlgo -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun -time="2025-10-14T08:16:22-12:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.8 gun=gun --- PASS: TestKeyHandlersInvalidKeyAlgo (0.00s) === RUN TestRotateKeyHandlerSuccessfulRotation --- PASS: TestRotateKeyHandlerSuccessfulRotation (0.00s) === RUN TestGetHandlerRoot -time="2025-10-14T08:16:22-12:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun --- PASS: TestGetHandlerRoot (0.00s) === RUN TestGetHandlerTimestamp --- PASS: TestGetHandlerTimestamp (0.00s) === RUN TestGetHandlerSnapshot ---- PASS: TestGetHandlerSnapshot (0.01s) +--- PASS: TestGetHandlerSnapshot (0.00s) === RUN TestGetHandler404 -time="2025-10-14T08:16:22-12:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun --- PASS: TestGetHandler404 (0.00s) === RUN TestGetHandlerNilData -time="2025-10-14T08:16:22-12:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun +time="2026-11-17T16:42:56+14:00" level=info msg="404 GET root role" go.version=go1.24.8 gun=gun --- PASS: TestGetHandlerNilData (0.00s) === RUN TestGetHandlerNoStorage -time="2025-10-14T08:16:22-12:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.8 +time="2026-11-17T16:42:56+14:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.8 --- PASS: TestGetHandlerNoStorage (0.00s) === RUN TestAtomicUpdateValidationFailurePropagated --- PASS: TestAtomicUpdateValidationFailurePropagated (0.01s) === RUN TestAtomicUpdateNonValidationFailureNotPropagated -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST error validating update" go.version=go1.24.8 testGUN=gun ---- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.01s) +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST error validating update" go.version=go1.24.8 testGUN=gun +--- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.00s) === RUN TestAtomicUpdateVersionErrorPropagated -time="2025-10-14T08:16:22-12:00" level=info msg="400 POST old version error" go.version=go1.24.8 testGUN=gun +time="2026-11-17T16:42:56+14:00" level=info msg="400 POST old version error" go.version=go1.24.8 testGUN=gun --- PASS: TestAtomicUpdateVersionErrorPropagated (0.01s) === RUN TestGetMaybeServerSignedNoCrypto --- PASS: TestGetMaybeServerSignedNoCrypto (0.00s) @@ -3125,7 +3161,7 @@ === RUN TestValidatePrevTimestamp --- PASS: TestValidatePrevTimestamp (0.01s) === RUN TestValidatePreviousTimestampCorrupt -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" --- PASS: TestValidatePreviousTimestampCorrupt (0.01s) === RUN TestValidateGetCurrentTimestampBroken --- PASS: TestValidateGetCurrentTimestampBroken (0.01s) @@ -3140,27 +3176,27 @@ === RUN TestValidateOldRootCorrupt --- PASS: TestValidateOldRootCorrupt (0.01s) === RUN TestValidateOldRootCorruptRootRole ---- PASS: TestValidateOldRootCorruptRootRole (0.01s) +--- PASS: TestValidateOldRootCorruptRootRole (0.00s) === RUN TestValidateRootGetCurrentRootBroken ---- PASS: TestValidateRootGetCurrentRootBroken (0.01s) +--- PASS: TestValidateRootGetCurrentRootBroken (0.00s) === RUN TestValidateRootRotationWithOldSigs ---- PASS: TestValidateRootRotationWithOldSigs (0.03s) +--- PASS: TestValidateRootRotationWithOldSigs (0.02s) === RUN TestValidateRootRotationMultipleKeysThreshold1 ---- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.02s) +--- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.01s) === RUN TestRootRotationNotSignedWithOldKeysForOldRole ---- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.02s) +--- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.01s) === RUN TestRootRotationVersionIncrement --- PASS: TestRootRotationVersionIncrement (0.01s) === RUN TestValidateNoRoot --- PASS: TestValidateNoRoot (0.00s) === RUN TestValidateSnapshotMissingNoSnapshotKey ---- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.01s) +--- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.00s) === RUN TestValidateSnapshotGenerateNoPrev --- PASS: TestValidateSnapshotGenerateNoPrev (0.01s) === RUN TestValidateSnapshotGenerateWithPrev --- PASS: TestValidateSnapshotGenerateWithPrev (0.01s) === RUN TestValidateSnapshotGeneratePrevCorrupt -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" --- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.01s) === RUN TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken --- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.01s) @@ -3171,28 +3207,28 @@ === RUN TestValidateRootNoTimestampKey --- PASS: TestValidateRootNoTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampKey ---- PASS: TestValidateRootInvalidTimestampKey (0.01s) +--- PASS: TestValidateRootInvalidTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampThreshold ---- PASS: TestValidateRootInvalidTimestampThreshold (0.01s) +--- PASS: TestValidateRootInvalidTimestampThreshold (0.00s) === RUN TestValidateRootInvalidZeroThreshold --- PASS: TestValidateRootInvalidZeroThreshold (0.02s) === RUN TestValidateRootRoleMissing ---- PASS: TestValidateRootRoleMissing (0.01s) +--- PASS: TestValidateRootRoleMissing (0.00s) === RUN TestValidateTargetsRoleMissing ---- PASS: TestValidateTargetsRoleMissing (0.01s) +--- PASS: TestValidateTargetsRoleMissing (0.00s) === RUN TestValidateSnapshotRoleMissing ---- PASS: TestValidateSnapshotRoleMissing (0.01s) +--- PASS: TestValidateSnapshotRoleMissing (0.00s) === RUN TestValidateRootSigMissing ---- PASS: TestValidateRootSigMissing (0.01s) +--- PASS: TestValidateRootSigMissing (0.00s) === RUN TestValidateTargetsSigMissing -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: tuf: data has no signatures" ---- PASS: TestValidateTargetsSigMissing (0.01s) +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: tuf: data has no signatures" +--- PASS: TestValidateTargetsSigMissing (0.00s) === RUN TestValidateSnapshotSigMissing --- PASS: TestValidateSnapshotSigMissing (0.01s) === RUN TestValidateRootCorrupt ---- PASS: TestValidateRootCorrupt (0.01s) +--- PASS: TestValidateRootCorrupt (0.00s) === RUN TestValidateTargetsCorrupt -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" --- PASS: TestValidateTargetsCorrupt (0.00s) === RUN TestValidateSnapshotCorrupt --- PASS: TestValidateSnapshotCorrupt (0.00s) @@ -3201,9 +3237,9 @@ === RUN TestValidateTargetsModifiedSize --- PASS: TestValidateTargetsModifiedSize (0.00s) === RUN TestValidateRootModifiedHash ---- PASS: TestValidateRootModifiedHash (0.01s) +--- PASS: TestValidateRootModifiedHash (0.00s) === RUN TestValidateTargetsModifiedHash ---- PASS: TestValidateTargetsModifiedHash (0.00s) +--- PASS: TestValidateTargetsModifiedHash (0.01s) === RUN TestGenerateSnapshotRootNotLoaded --- PASS: TestGenerateSnapshotRootNotLoaded (0.00s) === RUN TestGenerateSnapshotNoKey @@ -3211,18 +3247,18 @@ === RUN TestLoadTargetsLoadsNothingIfNoUpdates --- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.00s) === RUN TestValidateTargetsRequiresStoredParent -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: targets must be loaded first" +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: targets must be loaded first" --- PASS: TestValidateTargetsRequiresStoredParent (0.00s) === RUN TestValidateTargetsParentInUpdate -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" --- PASS: TestValidateTargetsParentInUpdate (0.00s) === RUN TestValidateTargetsRoleNotInParent -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: targets has already been loaded" -time="2025-10-14T08:16:22-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" ---- PASS: TestValidateTargetsRoleNotInParent (0.01s) +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: targets has already been loaded" +time="2026-11-17T16:42:56+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +--- PASS: TestValidateTargetsRoleNotInParent (0.00s) PASS -ok github.com/theupdateframework/notary/server/handlers 0.463s +ok github.com/theupdateframework/notary/server/handlers 0.318s === RUN TestSnapshotExpired --- PASS: TestSnapshotExpired (0.00s) === RUN TestSnapshotNotExpired @@ -3230,17 +3266,17 @@ === RUN TestGetSnapshotKeyCreate --- PASS: TestGetSnapshotKeyCreate (0.00s) === RUN TestGetSnapshotKeyCreateWithFailingStore -time="2025-10-14T08:16:22-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-11-17T16:42:56+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetSnapshotKeyCreateWithFailingStore (0.00s) === RUN TestGetSnapshotKeyCreateWithCorruptedStore -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" --- PASS: TestGetSnapshotKeyCreateWithCorruptedStore (0.00s) === RUN TestGetSnapshotKeyCreateWithInvalidAlgo --- PASS: TestGetSnapshotKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetSnapshotKeyExistingMetadata --- PASS: TestGetSnapshotKeyExistingMetadata (0.00s) === RUN TestGetSnapshotNoPreviousSnapshot -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" --- PASS: TestGetSnapshotNoPreviousSnapshot (0.00s) === RUN TestGetSnapshotReturnsPreviousSnapshotIfUnexpired --- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.00s) @@ -3251,7 +3287,7 @@ === RUN TestCreateSnapshotNoKeyInCrypto --- PASS: TestCreateSnapshotNoKeyInCrypto (0.00s) PASS -ok github.com/theupdateframework/notary/server/snapshot 0.031s +ok github.com/theupdateframework/notary/server/snapshot 0.040s === RUN TestMemoryUpdateCurrentEmpty --- PASS: TestMemoryUpdateCurrentEmpty (0.00s) === RUN TestMemoryUpdateCurrentVersionCheckOldVersionExists @@ -3277,35 +3313,35 @@ === RUN TestRDBTUFFileJSONUnmarshallingFailure --- PASS: TestRDBTUFFileJSONUnmarshallingFailure (0.00s) === RUN TestSQLUpdateCurrentEmpty ---- PASS: TestSQLUpdateCurrentEmpty (0.14s) +--- PASS: TestSQLUpdateCurrentEmpty (0.15s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionExists ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.07s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.06s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionNotExist ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.06s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.07s) === RUN TestSQLUpdateManyNoConflicts --- PASS: TestSQLUpdateManyNoConflicts (0.07s) === RUN TestSQLUpdateManyConflictRollback ---- PASS: TestSQLUpdateManyConflictRollback (0.06s) +--- PASS: TestSQLUpdateManyConflictRollback (0.04s) === RUN TestSQLDelete ---- PASS: TestSQLDelete (0.08s) +--- PASS: TestSQLDelete (0.07s) === RUN TestSQLDBCheckHealthTableMissing ---- PASS: TestSQLDBCheckHealthTableMissing (0.05s) +--- PASS: TestSQLDBCheckHealthTableMissing (0.04s) === RUN TestSQLDBCheckHealthDBConnectionFail ---- PASS: TestSQLDBCheckHealthDBConnectionFail (0.04s) +--- PASS: TestSQLDBCheckHealthDBConnectionFail (0.05s) === RUN TestSQLDBCheckHealthSucceeds ---- PASS: TestSQLDBCheckHealthSucceeds (0.04s) +--- PASS: TestSQLDBCheckHealthSucceeds (0.03s) === RUN TestSQLDBGetChecksum ---- PASS: TestSQLDBGetChecksum (0.06s) +--- PASS: TestSQLDBGetChecksum (0.05s) === RUN TestSQLDBGetChecksumNotFound ---- PASS: TestSQLDBGetChecksumNotFound (0.03s) +--- PASS: TestSQLDBGetChecksumNotFound (0.04s) === RUN TestSQLTUFMetaStoreGetCurrent ---- PASS: TestSQLTUFMetaStoreGetCurrent (0.08s) +--- PASS: TestSQLTUFMetaStoreGetCurrent (0.07s) === RUN TestSQLGetChanges ---- PASS: TestSQLGetChanges (0.12s) +--- PASS: TestSQLGetChanges (0.10s) === RUN TestSQLDBGetVersion ---- PASS: TestSQLDBGetVersion (0.04s) +--- PASS: TestSQLDBGetVersion (0.03s) PASS -ok github.com/theupdateframework/notary/server/storage 0.950s +ok github.com/theupdateframework/notary/server/storage 0.896s === RUN TestTimestampExpired --- PASS: TestTimestampExpired (0.00s) === RUN TestTimestampNotExpired @@ -3313,40 +3349,40 @@ === RUN TestGetTimestampKey --- PASS: TestGetTimestampKey (0.00s) === RUN TestGetTimestampNoPreviousTimestamp -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing timestamp" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing timestamp" --- PASS: TestGetTimestampNoPreviousTimestamp (0.00s) === RUN TestGetTimestampReturnsPreviousTimestampIfUnexpired --- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.00s) === RUN TestGetTimestampOldTimestampExpired --- PASS: TestGetTimestampOldTimestampExpired (0.00s) === RUN TestCannotMakeNewTimestampIfNoRootOrSnapshot -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to create a new timestamp" -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to create a new timestamp" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to create a new timestamp" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to create a new timestamp" --- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.00s) === RUN TestCreateTimestampNoKeyInCrypto -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to create a new timestamp" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to create a new timestamp" --- PASS: TestCreateTimestampNoKeyInCrypto (0.01s) === RUN TestGetTimestampKeyCreateWithFailingStore -time="2025-10-14T08:16:22-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-11-17T16:42:56+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetTimestampKeyCreateWithFailingStore (0.00s) === RUN TestGetTimestampKeyCreateWithCorruptedStore -time="2025-10-14T08:16:22-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" --- PASS: TestGetTimestampKeyCreateWithCorruptedStore (0.00s) === RUN TestGetTimestampKeyCreateWithInvalidAlgo --- PASS: TestGetTimestampKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetTimestampKeyExistingMetadata --- PASS: TestGetTimestampKeyExistingMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/server/timestamp 0.043s +ok github.com/theupdateframework/notary/server/timestamp 0.042s ? github.com/theupdateframework/notary/signer [no test files] ? github.com/theupdateframework/notary/signer/api [no test files] ? github.com/theupdateframework/notary/signer/client [no test files] === RUN TestGetSuccessPopulatesCache ---- PASS: TestGetSuccessPopulatesCache (0.01s) +--- PASS: TestGetSuccessPopulatesCache (0.00s) === RUN TestAddKeyPopulatesCacheIfSuccessful --- PASS: TestAddKeyPopulatesCacheIfSuccessful (0.00s) === RUN TestDeleteKeyRemovesKeyFromCache ---- PASS: TestDeleteKeyRemovesKeyFromCache (0.01s) +--- PASS: TestDeleteKeyRemovesKeyFromCache (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshalling --- PASS: TestRDBPrivateKeyJSONUnmarshalling (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshallingFailure @@ -3357,28 +3393,28 @@ === RUN TestSQLDBHealthCheckMissingTable --- PASS: TestSQLDBHealthCheckMissingTable (0.05s) === RUN TestSQLDBHealthCheckNoConnection ---- PASS: TestSQLDBHealthCheckNoConnection (0.04s) +--- PASS: TestSQLDBHealthCheckNoConnection (0.05s) === RUN TestSQLKeyCanOnlyBeAddedOnce (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:98) -[2025-10-14 08:16:22]  UNIQUE constraint failed: private_keys.key_id  ---- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.10s) +[2026-11-17 16:42:56]  UNIQUE constraint failed: private_keys.key_id  +--- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.09s) === RUN TestSQLCreateDelete --- PASS: TestSQLCreateDelete (0.10s) === RUN TestSQLKeyRotation ---- PASS: TestSQLKeyRotation (0.11s) +--- PASS: TestSQLKeyRotation (0.10s) === RUN TestSQLSigningMarksKeyActive -time="2025-10-14T08:16:23-12:00" level=error msg="Key d1e92b38345887fae90b48ee031dc9e57615b716fd6ce771262976e88e95583d was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" +time="2026-11-17T16:42:56+14:00" level=error msg="Key 0b8d91b4b25978cfe59bff296508b131fa665e3c3b6e447b2308deb06b26225b was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:197) -[2025-10-14 08:16:23]  sql: database is closed  ---- PASS: TestSQLSigningMarksKeyActive (0.15s) +[2026-11-17 16:42:56]  sql: database is closed  +--- PASS: TestSQLSigningMarksKeyActive (0.13s) === RUN TestSQLCreateKey ---- PASS: TestSQLCreateKey (0.14s) +--- PASS: TestSQLCreateKey (0.12s) === RUN TestSQLUnimplementedInterfaceBehavior ---- PASS: TestSQLUnimplementedInterfaceBehavior (0.06s) +--- PASS: TestSQLUnimplementedInterfaceBehavior (0.05s) PASS -ok github.com/theupdateframework/notary/signer/keydbstore 0.778s +ok github.com/theupdateframework/notary/signer/keydbstore 0.708s === RUN TestSet --- PASS: TestSet (0.00s) === RUN TestSetWithNoParentDirectory @@ -3420,7 +3456,7 @@ === RUN Test404Error --- PASS: Test404Error (0.00s) === RUN Test50XErrors ---- PASS: Test50XErrors (0.01s) +--- PASS: Test50XErrors (0.00s) === RUN Test400Error --- PASS: Test400Error (0.00s) === RUN TestTranslateErrorsParse400Errors @@ -3457,7 +3493,7 @@ === RUN TestMemoryStoreMetadata --- PASS: TestMemoryStoreMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/storage 0.051s +ok github.com/theupdateframework/notary/storage 0.047s ? github.com/theupdateframework/notary/storage/rethinkdb [no test files] === RUN TestExportKeys --- PASS: TestExportKeys (0.00s) @@ -3470,11 +3506,11 @@ === RUN TestImportKeys --- PASS: TestImportKeys (0.00s) === RUN TestImportNoPath ---- PASS: TestImportNoPath (0.01s) +--- PASS: TestImportNoPath (0.00s) === RUN TestNonRootPathInference ---- PASS: TestNonRootPathInference (0.01s) +--- PASS: TestNonRootPathInference (0.00s) === RUN TestBlockHeaderPrecedenceRoleAndGun ---- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.01s) +--- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.00s) === RUN TestBlockHeaderPrecedenceGunFromPath --- PASS: TestBlockHeaderPrecedenceGunFromPath (0.00s) === RUN TestImportKeys2InOneFile @@ -3482,71 +3518,71 @@ === RUN TestImportKeys2InOneFileNoPath --- PASS: TestImportKeys2InOneFileNoPath (0.01s) === RUN TestEncryptedKeyImportFail -time="2025-10-14T08:16:22-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2026-11-17T16:42:56+14:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" --- PASS: TestEncryptedKeyImportFail (0.00s) === RUN TestEncryptedKeyImportSuccess ---- PASS: TestEncryptedKeyImportSuccess (0.01s) +--- PASS: TestEncryptedKeyImportSuccess (0.00s) === RUN TestEncryption ---- PASS: TestEncryption (0.01s) +--- PASS: TestEncryption (0.00s) === RUN TestAddKey --- PASS: TestAddKey (0.02s) === RUN TestKeyStoreInternalState ---- PASS: TestKeyStoreInternalState (0.01s) +--- PASS: TestKeyStoreInternalState (0.00s) === RUN TestGet ---- PASS: TestGet (0.03s) +--- PASS: TestGet (0.01s) === RUN TestGetLegacyKey --- PASS: TestGetLegacyKey (0.00s) === RUN TestListKeys ---- PASS: TestListKeys (0.02s) +--- PASS: TestListKeys (0.01s) === RUN TestAddGetKeyMemStore --- PASS: TestAddGetKeyMemStore (0.00s) === RUN TestAddGetKeyInfoMemStore --- PASS: TestAddGetKeyInfoMemStore (0.01s) === RUN TestGetDecryptedWithTamperedCipherText -time="2025-10-14T08:16:22-12:00" level=error msg="PEM block is empty" +time="2026-11-17T16:42:56+14:00" level=error msg="PEM block is empty" --- PASS: TestGetDecryptedWithTamperedCipherText (0.00s) === RUN TestGetDecryptedWithInvalidPassphrase ---- PASS: TestGetDecryptedWithInvalidPassphrase (0.02s) +--- PASS: TestGetDecryptedWithInvalidPassphrase (0.01s) === RUN TestGetDecryptedWithConsistentlyInvalidPassphrase ---- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.03s) +--- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.02s) === RUN TestRemoveKey ---- PASS: TestRemoveKey (0.02s) +--- PASS: TestRemoveKey (0.01s) === RUN TestKeysAreCached ---- PASS: TestKeysAreCached (0.01s) +--- PASS: TestKeysAreCached (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager 0.236s +ok github.com/theupdateframework/notary/trustmanager 0.151s === RUN TestRemoteStore -time="2025-10-14T08:16:22-12:00" level=info msg="listing files from localhost:9888" -time="2025-10-14T08:16:22-12:00" level=info msg="listing files from localhost:9888" +time="2026-11-17T16:42:56+14:00" level=info msg="listing files from localhost:9888" +time="2026-11-17T16:42:56+14:00" level=info msg="listing files from localhost:9888" --- PASS: TestRemoteStore (0.03s) === RUN TestErrors -time="2025-10-14T08:16:22-12:00" level=error msg="failed to store: test error" +time="2026-11-17T16:42:56+14:00" level=error msg="failed to store: test error" --- PASS: TestErrors (0.03s) === RUN TestNewGRPCStorage --- PASS: TestNewGRPCStorage (0.00s) === RUN TestGRPCStorage --- PASS: TestGRPCStorage (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager/remoteks 0.079s +ok github.com/theupdateframework/notary/trustmanager/remoteks 0.072s ? github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks [no test files] ? github.com/theupdateframework/notary/trustmanager/yubikey [no test files] === RUN TestWildcardMatch --- PASS: TestWildcardMatch (0.00s) === RUN TestValidateRoot -2025/10/14 08:16:22 [INFO] generate received request -2025/10/14 08:16:22 [INFO] received CSR -2025/10/14 08:16:22 [INFO] generating key: ecdsa-256 -2025/10/14 08:16:22 [INFO] encoded CSR -2025/10/14 08:16:22 [INFO] signed certificate with serial number 441761799783380208552970681602636576288977875103 -2025/10/14 08:16:22 [INFO] received CSR -2025/10/14 08:16:22 [INFO] generating key: ecdsa-256 -2025/10/14 08:16:22 [INFO] encoded CSR -2025/10/14 08:16:22 [INFO] signed certificate with serial number 705793651986323891531598157936696317926015203488 -2025/10/14 08:16:22 [INFO] received CSR -2025/10/14 08:16:22 [INFO] generating key: ecdsa-256 -2025/10/14 08:16:22 [INFO] encoded CSR -2025/10/14 08:16:22 [INFO] signed certificate with serial number 197771247950144937891112538188077183429954788854 ---- PASS: TestValidateRoot (0.02s) +2026/11/17 16:42:56 [INFO] generate received request +2026/11/17 16:42:56 [INFO] received CSR +2026/11/17 16:42:56 [INFO] generating key: ecdsa-256 +2026/11/17 16:42:56 [INFO] encoded CSR +2026/11/17 16:42:56 [INFO] signed certificate with serial number 410027856868764642844842188730691785483177433582 +2026/11/17 16:42:56 [INFO] received CSR +2026/11/17 16:42:56 [INFO] generating key: ecdsa-256 +2026/11/17 16:42:56 [INFO] encoded CSR +2026/11/17 16:42:56 [INFO] signed certificate with serial number 389748202977388762578506458530013484900212596998 +2026/11/17 16:42:56 [INFO] received CSR +2026/11/17 16:42:56 [INFO] generating key: ecdsa-256 +2026/11/17 16:42:56 [INFO] encoded CSR +2026/11/17 16:42:56 [INFO] signed certificate with serial number 584452073516454836648472702474347550279870903334 +--- PASS: TestValidateRoot (0.01s) === RUN TestValidateRootWithoutTOFUS --- PASS: TestValidateRootWithoutTOFUS (0.00s) === RUN TestValidateRootWithPinnedCert @@ -3564,14 +3600,14 @@ === RUN TestValidateRootRotationMissingNewSig --- PASS: TestValidateRootRotationMissingNewSig (0.02s) === RUN TestValidateRootRotationTrustPinning ---- PASS: TestValidateRootRotationTrustPinning (0.03s) +--- PASS: TestValidateRootRotationTrustPinning (0.02s) === RUN TestValidateRootRotationTrustPinningInvalidCA --- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.02s) === RUN TestParsePEMPublicKey -time="2025-10-14T08:16:22-12:00" level=warning msg="certificate with CN notary is near expiry" +time="2026-11-17T16:42:56+14:00" level=warning msg="certificate with CN notary is near expiry" --- PASS: TestParsePEMPublicKey (0.00s) === RUN TestCheckingCertExpiry -time="2025-10-14T08:16:22-12:00" level=warning msg="certificate with CN notary is near expiry" +time="2026-11-17T16:42:56+14:00" level=warning msg="certificate with CN notary is near expiry" --- PASS: TestCheckingCertExpiry (0.00s) === RUN TestValidateRootWithExpiredIntermediate --- PASS: TestValidateRootWithExpiredIntermediate (0.01s) @@ -3580,19 +3616,19 @@ === RUN TestWildcardMatching --- PASS: TestWildcardMatching (0.00s) PASS -ok github.com/theupdateframework/notary/trustpinning 0.209s +ok github.com/theupdateframework/notary/trustpinning 0.189s === RUN TestInitSnapshotNoTargets ---- PASS: TestInitSnapshotNoTargets (0.01s) +--- PASS: TestInitSnapshotNoTargets (0.00s) === RUN TestInitRepo ---- PASS: TestInitRepo (0.01s) +--- PASS: TestInitRepo (0.00s) === RUN TestUpdateDelegations --- PASS: TestUpdateDelegations (0.00s) === RUN TestPurgeDelegationsKeyFromTop -time="2025-10-14T08:16:22-12:00" level=warning msg="role targets/sybil has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-10-14T08:16:22-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/sybil has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestPurgeDelegationsKeyFromTop (0.00s) === RUN TestPurgeDelegationsKeyFromDeep -time="2025-10-14T08:16:22-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestPurgeDelegationsKeyFromDeep (0.00s) === RUN TestPurgeDelegationsKeyBadWildRole --- PASS: TestPurgeDelegationsKeyBadWildRole (0.00s) @@ -3605,7 +3641,7 @@ === RUN TestUpdateDelegationsRoleThatIsMissingDelegationKey --- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.00s) === RUN TestUpdateDelegationsNotEnoughKeys -time="2025-10-14T08:16:22-12:00" level=warning msg="role targets/role has fewer keys than its threshold of 2; it will not be usable until keys are added to it" +time="2026-11-17T16:42:56+14:00" level=warning msg="role targets/role has fewer keys than its threshold of 2; it will not be usable until keys are added to it" --- PASS: TestUpdateDelegationsNotEnoughKeys (0.00s) === RUN TestUpdateDelegationsAddKeyToRole --- PASS: TestUpdateDelegationsAddKeyToRole (0.00s) @@ -3672,11 +3708,11 @@ === RUN TestGetDelegationRoleKeyMissing --- PASS: TestGetDelegationRoleKeyMissing (0.00s) === RUN TestSignRootOldKeyCertExists ---- PASS: TestSignRootOldKeyCertExists (0.02s) +--- PASS: TestSignRootOldKeyCertExists (0.01s) === RUN TestSignRootOldKeyCertMissing ---- PASS: TestSignRootOldKeyCertMissing (0.02s) +--- PASS: TestSignRootOldKeyCertMissing (0.01s) === RUN TestRootKeyRotation ---- PASS: TestRootKeyRotation (0.03s) +--- PASS: TestRootKeyRotation (0.04s) === RUN TestBuilderLoadsValidRolesOnly --- PASS: TestBuilderLoadsValidRolesOnly (0.00s) === RUN TestBuilderOnlyAcceptsRootFirstWhenLoading @@ -3686,7 +3722,7 @@ === RUN TestMarkingIsValid --- PASS: TestMarkingIsValid (0.00s) === RUN TestBuilderLoadInvalidDelegations ---- PASS: TestBuilderLoadInvalidDelegations (0.01s) +--- PASS: TestBuilderLoadInvalidDelegations (0.00s) === RUN TestBuilderLoadInvalidDelegationsOldVersion --- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.00s) === RUN TestBuilderAcceptRoleOnce @@ -3694,19 +3730,19 @@ === RUN TestBuilderStopsAcceptingOrProducingDataOnceDone --- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.00s) === RUN TestGenerateSnapshotInvalidOperations ---- PASS: TestGenerateSnapshotInvalidOperations (0.03s) +--- PASS: TestGenerateSnapshotInvalidOperations (0.02s) === RUN TestGenerateTimestampInvalidOperations --- PASS: TestGenerateTimestampInvalidOperations (0.01s) === RUN TestGetConsistentInfo ---- PASS: TestGetConsistentInfo (0.01s) +--- PASS: TestGetConsistentInfo (0.00s) === RUN TestTimestampPreAndPostChecksumming --- PASS: TestTimestampPreAndPostChecksumming (0.01s) === RUN TestSnapshotLoadedFirstChecksumsOthers --- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.00s) === RUN TestSnapshotLoadedAfterChecksumsOthersRetroactively ---- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.02s) +--- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.01s) PASS -ok github.com/theupdateframework/notary/tuf 0.229s +ok github.com/theupdateframework/notary/tuf 0.179s === RUN TestMergeStrSlicesExclusive --- PASS: TestMergeStrSlicesExclusive (0.00s) === RUN TestMergeStrSlicesOverlap @@ -3754,7 +3790,7 @@ === RUN TestRootFromSignedCopiesSignatures --- PASS: TestRootFromSignedCopiesSignatures (0.00s) === RUN TestRootFromSignedValidatesRoleData ---- PASS: TestRootFromSignedValidatesRoleData (0.01s) +--- PASS: TestRootFromSignedValidatesRoleData (0.00s) === RUN TestRootFromSignedValidatesRoleType --- PASS: TestRootFromSignedValidatesRoleType (0.00s) === RUN TestRootFromSignedValidatesVersion @@ -3840,7 +3876,7 @@ === RUN TestFileMetaEquals --- PASS: TestFileMetaEquals (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/data 0.031s +ok github.com/theupdateframework/notary/tuf/data 0.024s === RUN TestListKeys --- PASS: TestListKeys (0.00s) === RUN TestGetKeys @@ -3872,7 +3908,7 @@ === RUN TestRSAPSSVerifierWithInvalidKeyType --- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyLength ---- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.06s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.10s) === RUN TestRSAPSSVerifierWithInvalidKey --- PASS: TestRSAPSSVerifierWithInvalidKey (0.00s) === RUN TestRSAPSSVerifierWithInvalidSignature @@ -3886,12 +3922,12 @@ === RUN TestRSAPKCS1v15VerifierWithInvalidKey --- PASS: TestRSAPKCS1v15VerifierWithInvalidKey (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidSignature -time="2025-10-14T08:16:22-12:00" level=error msg="Failed verification: crypto/rsa: verification error" +time="2026-11-17T16:42:56+14:00" level=error msg="Failed verification: crypto/rsa: verification error" --- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.00s) === RUN TestECDSAVerifier --- PASS: TestECDSAVerifier (0.00s) === RUN TestECDSAVerifierOtherCurves ---- PASS: TestECDSAVerifierOtherCurves (0.03s) +--- PASS: TestECDSAVerifierOtherCurves (0.02s) === RUN TestECDSAx509Verifier --- PASS: TestECDSAx509Verifier (0.00s) === RUN TestECDSAVerifierWithInvalidKeyType @@ -3929,20 +3965,20 @@ === RUN TestVerifyVersion --- PASS: TestVerifyVersion (0.00s) === RUN TestVerifyExpiry -time="2025-10-14T08:16:22-12:00" level=error msg="Metadata for root expired" +time="2026-11-17T16:42:56+14:00" level=error msg="Metadata for root expired" --- PASS: TestVerifyExpiry (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyHappyCase --- PASS: TestVerifyPublicKeyMatchesPrivateKeyHappyCase (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyFails --- PASS: TestVerifyPublicKeyMatchesPrivateKeyFails (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/signed 0.144s +ok github.com/theupdateframework/notary/tuf/signed 0.162s === RUN TestNewSwizzler --- PASS: TestNewSwizzler (0.01s) === RUN TestSwizzlerSetInvalidJSON ---- PASS: TestSwizzlerSetInvalidJSON (0.00s) +--- PASS: TestSwizzlerSetInvalidJSON (0.01s) === RUN TestSwizzlerAddExtraSpace ---- PASS: TestSwizzlerAddExtraSpace (0.00s) +--- PASS: TestSwizzlerAddExtraSpace (0.01s) === RUN TestSwizzlerSetInvalidSigned --- PASS: TestSwizzlerSetInvalidSigned (0.00s) === RUN TestSwizzlerSetInvalidSignedMeta @@ -3952,9 +3988,9 @@ === RUN TestSwizzlerInvalidateMetadataSignatures --- PASS: TestSwizzlerInvalidateMetadataSignatures (0.00s) === RUN TestSwizzlerRemoveMetadata ---- PASS: TestSwizzlerRemoveMetadata (0.01s) +--- PASS: TestSwizzlerRemoveMetadata (0.00s) === RUN TestSwizzlerSignMetadataWithInvalidKey ---- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.01s) +--- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.00s) === RUN TestSwizzlerOffsetMetadataVersion --- PASS: TestSwizzlerOffsetMetadataVersion (0.00s) === RUN TestSwizzlerExpireMetadata @@ -3964,9 +4000,9 @@ === RUN TestSwizzlerSetThresholdDelegatedRole --- PASS: TestSwizzlerSetThresholdDelegatedRole (0.00s) === RUN TestSwizzlerChangeRootKey ---- PASS: TestSwizzlerChangeRootKey (0.01s) +--- PASS: TestSwizzlerChangeRootKey (0.00s) === RUN TestSwizzlerUpdateSnapshotHashesSpecifiedRoles ---- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.01s) +--- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.00s) === RUN TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles --- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.00s) === RUN TestSwizzlerUpdateTimestamp @@ -3982,11 +4018,11 @@ === RUN TestSwizzlerMutateTargets --- PASS: TestSwizzlerMutateTargets (0.00s) === RUN TestSwizzlerRotateKeyBaseRole ---- PASS: TestSwizzlerRotateKeyBaseRole (0.00s) +--- PASS: TestSwizzlerRotateKeyBaseRole (0.01s) === RUN TestSwizzlerRotateKeyDelegationRole --- PASS: TestSwizzlerRotateKeyDelegationRole (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/testutils 0.117s +ok github.com/theupdateframework/notary/tuf/testutils 0.106s ? github.com/theupdateframework/notary/tuf/testutils/interfaces [no test files] ? github.com/theupdateframework/notary/tuf/testutils/keys [no test files] === RUN TestConvertTUFKeyToPKCS8 @@ -4054,9 +4090,9 @@ === RUN TestValidateCertificateWithInvalidExpiry --- PASS: TestValidateCertificateWithInvalidExpiry (0.00s) === RUN TestValidateCertificateWithShortKey ---- PASS: TestValidateCertificateWithShortKey (0.05s) +--- PASS: TestValidateCertificateWithShortKey (0.12s) PASS -ok github.com/theupdateframework/notary/tuf/utils 0.166s +ok github.com/theupdateframework/notary/tuf/utils 0.215s === RUN TestNewSerializableErrorNonValidationError --- PASS: TestNewSerializableErrorNonValidationError (0.00s) === RUN TestNewSerializableErrorValidationError @@ -4072,7 +4108,7 @@ === RUN TestUnmarshalInvalidJSON --- PASS: TestUnmarshalInvalidJSON (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/validation 0.010s +ok github.com/theupdateframework/notary/tuf/validation 0.013s === RUN TestSetSignalTrap --- PASS: TestSetSignalTrap (0.00s) === RUN TestLogLevelSignalHandle @@ -4172,7 +4208,7 @@ === RUN TestDoAuthWildcardImage --- PASS: TestDoAuthWildcardImage (0.00s) PASS -ok github.com/theupdateframework/notary/utils 0.024s +ok github.com/theupdateframework/notary/utils 0.027s ? github.com/theupdateframework/notary/version [no test files] create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang @@ -4220,12 +4256,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/3417696/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3417696/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/3585682 and its subdirectories -I: Current time: Tue Oct 14 08:17:40 -12 2025 -I: pbuilder-time-stamp: 1760473060 +I: removing directory /srv/workspace/pbuilder/3417696 and its subdirectories +I: Current time: Tue Nov 17 16:43:37 +14 2026 +I: pbuilder-time-stamp: 1794883417