Diff of the two buildlogs: -- --- b1/build.log 2025-09-25 17:09:11.802345698 +0000 +++ b2/build.log 2025-09-25 17:10:37.182447828 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Sep 25 05:07:49 -12 2025 -I: pbuilder-time-stamp: 1758820069 +I: Current time: Thu Oct 29 13:32:17 +14 2026 +I: pbuilder-time-stamp: 1793230337 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -22,53 +22,85 @@ dpkg-source: info: unpacking golang-github-rogpeppe-go-internal_1.14.1-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2811586/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/1366970/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Oct 28 23:32 /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/1366970/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/1366970/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='arm64' - DEBIAN_FRONTEND='noninteractive' + 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]="aarch64-unknown-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=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='7bde6e99050a45799c08ad00c60e66f2' - 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='2811586' - PS1='# ' - PS2='> ' + INVOCATION_ID=d9aab3b8a085495fa0d9406030916554 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-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=1366970 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.dqFVIqTm/pbuilderrc_l27O --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.dqFVIqTm/b1 --logfile b1/build.log golang-github-rogpeppe-go-internal_1.14.1-1.dsc' - SUDO_GID='109' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4: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.dqFVIqTm/pbuilderrc_Bm6Z --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.dqFVIqTm/b2 --logfile b2/build.log golang-github-rogpeppe-go-internal_1.14.1-1.dsc' + SUDO_GID=109 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.12.48+deb13-cloud-arm64 #1 SMP Debian 6.12.48-1 (2025-09-20) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.12.48+deb13-cloud-arm64 #1 SMP Debian 6.12.48-1 (2025-09-20) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/2811586/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/1366970/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -164,7 +196,7 @@ Get: 46 http://deb.debian.org/debian unstable/main arm64 golang-golang-x-net-dev all 1:0.27.0-2 [904 kB] Get: 47 http://deb.debian.org/debian unstable/main arm64 golang-golang-x-sync-dev all 0.7.0-1 [19.0 kB] Get: 48 http://deb.debian.org/debian unstable/main arm64 golang-golang-x-tools-dev all 1:0.25.0+ds-1 [1608 kB] -Fetched 69.4 MB in 0s (213 MB/s) +Fetched 69.4 MB in 0s (190 MB/s) Preconfiguring packages ... Selecting previously unselected package sensible-utils. (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 ... 20001 files and directories currently installed.) @@ -378,7 +410,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../golang-github-rogpeppe-go-internal_1.14.1-1_source.changes +I: user script /srv/workspace/pbuilder/1366970/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/1366970/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../golang-github-rogpeppe-go-internal_1.14.1-1_source.changes dpkg-buildpackage: info: source package golang-github-rogpeppe-go-internal dpkg-buildpackage: info: source version 1.14.1-1 dpkg-buildpackage: info: source distribution unstable @@ -397,46 +433,46 @@ dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang dh_auto_build -O--builddirectory=_build -O--buildsystem=golang cd _build && go install -trimpath -v -p 12 github.com/rogpeppe/go-internal/cache github.com/rogpeppe/go-internal/cmd/testscript github.com/rogpeppe/go-internal/cmd/txtar-addmod github.com/rogpeppe/go-internal/cmd/txtar-c github.com/rogpeppe/go-internal/cmd/txtar-goproxy github.com/rogpeppe/go-internal/cmd/txtar-x github.com/rogpeppe/go-internal/diff github.com/rogpeppe/go-internal/dirhash github.com/rogpeppe/go-internal/fmtsort github.com/rogpeppe/go-internal/goproxytest github.com/rogpeppe/go-internal/gotooltest github.com/rogpeppe/go-internal/imports github.com/rogpeppe/go-internal/internal/misspell github.com/rogpeppe/go-internal/internal/os/execpath github.com/rogpeppe/go-internal/internal/syscall/windows github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll github.com/rogpeppe/go-internal/lockedfile github.com/rogpeppe/go-internal/lockedfile/internal/filelock github.com/rogpeppe/go-internal/modfile github.com/rogpeppe/go-internal/module github.com/rogpeppe/go-internal/par github.com/rogpeppe/go-internal/renameio github.com/rogpeppe/go-internal/robustio github.com/rogpeppe/go-internal/semver github.com/rogpeppe/go-internal/testenv github.com/rogpeppe/go-internal/testscript github.com/rogpeppe/go-internal/testscript/internal/pty github.com/rogpeppe/go-internal/txtar -internal/godebugs -internal/asan -internal/goos -internal/msan -internal/unsafeheader internal/goarch -internal/profilerecord +internal/msan internal/goexperiment internal/coverage/rtcov internal/byteorder +internal/profilerecord +internal/asan +internal/unsafeheader internal/runtime/syscall +internal/goos internal/cpu sync/atomic +internal/godebugs math/bits +unicode unicode/utf8 crypto/internal/fips140/alias -internal/itoa -unicode -internal/abi internal/runtime/math -cmp +internal/abi internal/chacha8rand crypto/internal/fips140deps/byteorder +internal/itoa +cmp +crypto/internal/fips140/subtle crypto/internal/boring/sig log/internal -crypto/internal/fips140/subtle encoding unicode/utf16 -math internal/nettrace container/list -vendor/golang.org/x/crypto/cryptobyte/asn1 -internal/bytealg -internal/runtime/atomic -internal/runtime/sys +math vendor/golang.org/x/crypto/internal/alias -crypto/internal/fips140deps/cpu +vendor/golang.org/x/crypto/cryptobyte/asn1 github.com/rogpeppe/go-internal/internal/misspell internal/goversion internal/platform +internal/bytealg +internal/runtime/sys +crypto/internal/fips140deps/cpu +internal/runtime/atomic internal/syslist github.com/rogpeppe/go-internal/internal/syscall/windows github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll @@ -447,168 +483,168 @@ internal/runtime/maps runtime internal/reflectlite -weak -crypto/subtle iter +crypto/subtle +weak sync maps slices -errors -sort -internal/testlog internal/bisect internal/singleflight unique +internal/testlog +errors +sort +runtime/cgo io +strconv +internal/godebug internal/oserror +hash path +bytes vendor/golang.org/x/net/dns/dnsmessage -strconv math/rand/v2 -runtime/cgo +crypto/internal/fips140deps/godebug +golang.org/x/mod/semver +hash/crc32 syscall -bytes -hash -crypto/internal/randutil -internal/godebug strings +math/rand crypto -golang.org/x/mod/semver -reflect net/netip -vendor/golang.org/x/text/transform -hash/crc32 +reflect github.com/rogpeppe/go-internal/semver -crypto/internal/fips140deps/godebug -math/rand +crypto/internal/randutil +github.com/rogpeppe/go-internal/par +vendor/golang.org/x/text/transform crypto/internal/impl +crypto/internal/fips140 bufio -net/http/internal/ascii regexp/syntax +net/http/internal/ascii go/build/constraint -crypto/internal/fips140 crypto/internal/fips140/sha256 crypto/internal/fips140/sha3 crypto/internal/fips140/sha512 crypto/tls/internal/fips140tls -github.com/rogpeppe/go-internal/par crypto/sha3 crypto/internal/fips140/hmac -crypto/internal/fips140/check crypto/internal/fips140hash +crypto/internal/fips140/check crypto/internal/fips140/aes -crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/bigmod -crypto/internal/fips140/tls12 crypto/internal/fips140/nistec/fiat crypto/internal/fips140/hkdf -internal/syscall/unix -time -internal/syscall/execenv +crypto/internal/fips140/edwards25519/field +crypto/internal/fips140/tls12 +crypto/internal/fips140/bigmod crypto/internal/fips140/tls13 regexp crypto/internal/fips140/edwards25519 +internal/syscall/execenv +internal/syscall/unix +time +crypto/internal/fips140/nistec +context io/fs internal/poll -context -crypto/internal/fips140/nistec -internal/filepathlite internal/fmtsort -encoding/binary github.com/rogpeppe/go-internal/fmtsort +encoding/binary +internal/filepathlite os encoding/base64 vendor/golang.org/x/crypto/internal/poly1305 encoding/pem crypto/internal/sysrand -internal/sysinfo -path/filepath -fmt golang.org/x/mod/internal/lazyregexp -github.com/rogpeppe/go-internal/robustio github.com/rogpeppe/go-internal/lockedfile/internal/filelock +fmt +internal/sysinfo internal/lazyregexp +path/filepath +github.com/rogpeppe/go-internal/robustio net crypto/internal/entropy crypto/internal/fips140/drbg -crypto/internal/fips140only -crypto/internal/fips140/aes/gcm -crypto/internal/fips140/ed25519 crypto/internal/fips140/ecdh crypto/internal/fips140/mlkem +crypto/internal/fips140only +crypto/internal/fips140/ed25519 crypto/internal/fips140/ecdsa +crypto/internal/fips140/aes/gcm crypto/internal/fips140/rsa -github.com/rogpeppe/go-internal/renameio os/exec +github.com/rogpeppe/go-internal/renameio crypto/md5 crypto/rc4 crypto/cipher -internal/goroot github.com/rogpeppe/go-internal/internal/os/execpath -crypto/internal/boring -crypto/des -vendor/golang.org/x/crypto/chacha20 +internal/goroot encoding/hex -github.com/rogpeppe/go-internal/lockedfile log -flag -encoding/json -golang.org/x/mod/module +github.com/rogpeppe/go-internal/lockedfile compress/flate -crypto/sha256 +golang.org/x/mod/module golang.org/x/tools/txtar +flag +encoding/json math/big +crypto/internal/boring +crypto/des +vendor/golang.org/x/crypto/chacha20 +crypto/sha256 crypto/aes crypto/ecdh crypto/sha512 crypto/hmac -vendor/golang.org/x/crypto/chacha20poly1305 crypto/sha1 net/url -vendor/golang.org/x/text/unicode/bidi -github.com/rogpeppe/go-internal/cache vendor/golang.org/x/text/unicode/norm vendor/golang.org/x/net/http2/hpack +github.com/rogpeppe/go-internal/cache +vendor/golang.org/x/text/unicode/bidi +vendor/golang.org/x/crypto/chacha20poly1305 mime mime/quotedprintable -archive/zip -compress/gzip net/http/internal runtime/debug -vendor/golang.org/x/text/secure/bidirule runtime/trace github.com/rogpeppe/go-internal/diff github.com/rogpeppe/go-internal/imports github.com/rogpeppe/go-internal/testscript/internal/pty github.com/rogpeppe/go-internal/txtar +archive/zip +compress/gzip +vendor/golang.org/x/text/secure/bidirule go/token go/doc/comment -github.com/rogpeppe/go-internal/cmd/txtar-addmod internal/buildcfg -testing +github.com/rogpeppe/go-internal/cmd/txtar-addmod github.com/rogpeppe/go-internal/cmd/txtar-c -github.com/rogpeppe/go-internal/cmd/txtar-x +testing go/scanner +github.com/rogpeppe/go-internal/cmd/txtar-x golang.org/x/mod/modfile vendor/golang.org/x/net/idna go/ast github.com/rogpeppe/go-internal/module +crypto/elliptic crypto/rand crypto/internal/boring/bbig -crypto/elliptic -crypto/ed25519 encoding/asn1 +crypto/ed25519 crypto/internal/hpke crypto/rsa crypto/dsa golang.org/x/mod/sumdb/dirhash -github.com/rogpeppe/go-internal/modfile github.com/rogpeppe/go-internal/dirhash -vendor/golang.org/x/crypto/cryptobyte +github.com/rogpeppe/go-internal/modfile crypto/x509/pkix -github.com/rogpeppe/go-internal/testenv -go/doc +vendor/golang.org/x/crypto/cryptobyte go/parser +go/doc +github.com/rogpeppe/go-internal/testenv crypto/ecdsa go/build github.com/rogpeppe/go-internal/testscript @@ -641,15 +677,15 @@ >>> old: cb8379ac2098aa165029e3938a51da0bcecfc008fd6795f401178647f96c5b34 3 new: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad 3 ---- PASS: TestVerifyPanic (0.00s) +--- PASS: TestVerifyPanic (0.01s) === RUN TestCacheTrim ---- PASS: TestCacheTrim (0.01s) +--- PASS: TestCacheTrim (0.02s) === RUN TestHash --- PASS: TestHash (0.00s) === RUN TestHashFile --- PASS: TestHashFile (0.00s) PASS -ok github.com/rogpeppe/go-internal/cache 0.554s +ok github.com/rogpeppe/go-internal/cache 0.581s === RUN TestScripts === RUN TestScripts/continue === PAUSE TestScripts/continue @@ -677,69 +713,21 @@ === PAUSE TestScripts/update === RUN TestScripts/work === PAUSE TestScripts/work -=== CONT TestScripts/continue -=== CONT TestScripts/update === CONT TestScripts/work -=== CONT TestScripts/multi -=== CONT TestScripts/simple -=== CONT TestScripts/env_var_with_go === CONT TestScripts/skip -=== CONT TestScripts/env_var_no_go +=== CONT TestScripts/multi +=== CONT TestScripts/noproxy +=== CONT TestScripts/continue === CONT TestScripts/help === CONT TestScripts/error -=== CONT TestScripts/noproxy -=== CONT TestScripts/nogo - testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games - GOTRACEBACK=system - HOME=/no-home - TMPDIR=$WORK/.tmp - devnull=/dev/null - /=/ - :=: - $=$ - exe= - GOPATH=$WORK/.gopath - CCACHE_DISABLE=1 - GOARCH=arm64 - GOOS=linux - GOROOT=/usr/lib/go-1.24 - GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=https://proxy.golang.org,direct - goversion=1.24 - GOINTERNALMODPATH=. - GONOSUMDB=* - - # should support skip (0.000s) - > unquote file.txt - # We can't just set PATH to empty because we need the part of it that - # contains the command names, so use a special builtin instead. (0.010s) - > dropgofrompath - > ! testscript -v file.txt - [stdout] - WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games - GOTRACEBACK=system - HOME=/no-home - TMPDIR=$WORK/.tmp - devnull=/dev/null - /=/ - :=: - $=$ - exe= - - > go env - FAIL: file.txt:1: unknown command "go" - [stderr] - failed run - [exit status 1] - > stdout 'unknown command "go"' - PASS - +=== CONT TestScripts/env_var_with_go +=== CONT TestScripts/env_var_no_go === CONT TestScripts/env_values +=== CONT TestScripts/simple +=== CONT TestScripts/update === NAME TestScripts/help testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -759,7 +747,7 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # Simply sanity check on help output (0.012s) + # Simply sanity check on help output (0.007s) > ! testscript -help [stderr] The testscript command runs github.com/rogpeppe/go-internal/testscript scripts @@ -889,9 +877,57 @@ > stderr 'Examples' PASS +=== CONT TestScripts/nogo + testscript.go:584: WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + GOTRACEBACK=system + HOME=/no-home + TMPDIR=$WORK/.tmp + devnull=/dev/null + /=/ + :=: + $=$ + exe= + GOPATH=$WORK/.gopath + CCACHE_DISABLE=1 + GOARCH=arm64 + GOOS=linux + GOROOT=/usr/lib/go-1.24 + GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build + GOPROXY=https://proxy.golang.org,direct + goversion=1.24 + GOINTERNALMODPATH=. + GONOSUMDB=* + + # should support skip (0.000s) + > unquote file.txt + # We can't just set PATH to empty because we need the part of it that + # contains the command names, so use a special builtin instead. (0.013s) + > dropgofrompath + > ! testscript -v file.txt + [stdout] + WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path + GOTRACEBACK=system + HOME=/no-home + TMPDIR=$WORK/.tmp + devnull=/dev/null + /=/ + :=: + $=$ + exe= + + > go env + FAIL: file.txt:1: unknown command "go" + [stderr] + failed run + [exit status 1] + > stdout 'unknown command "go"' + PASS + === NAME TestScripts/env_var_no_go testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -913,18 +949,18 @@ # Test passing environment variables to scripts with no go command on PATH # - # This is the counterpart to env_var_with_go.txt (0.001s) + # This is the counterpart to env_var_with_go.txt (0.000s) > unquote noproxy.txt > unquote withproxy.txt > dropgofrompath > env BANANA=banana > env GOPATH=$WORK/ourgopath > env GOPROXY= - # no GOPROXY, no pass-through, no proxy (0.008s) + # no GOPROXY, no pass-through, no proxy (0.019s) > testscript -v noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -945,11 +981,11 @@ > stdout ^GOPATH=$ > stdout ^GOPROXY=$ > ! stderr .+ - # no GOPROXY, no pass-through, with proxy (0.017s) + # no GOPROXY, no pass-through, with proxy (0.007s) > testscript -v withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -958,7 +994,7 @@ :=: $=$ exe= - GOPROXY=http://127.0.0.1:43725/mod + GOPROXY=http://127.0.0.1:46317/mod GONOSUMDB=* > env BANANA @@ -966,17 +1002,17 @@ > env GOPATH GOPATH= > env GOPROXY - GOPROXY=http://127.0.0.1:43725/mod + GOPROXY=http://127.0.0.1:46317/mod PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ - # no GOPROXY, with pass-through, no proxy (0.011s) + # no GOPROXY, with pass-through, no proxy (0.006s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1000,11 +1036,11 @@ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ - # no GOPROXY, with pass-through, with proxy (0.012s) + # no GOPROXY, with pass-through, with proxy (0.010s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1030,11 +1066,11 @@ > stdout ^GOPROXY=$ > ! stderr .+ > setfilegoproxy $WORK/proxy - # with GOPROXY, no pass-through, no proxy (0.006s) + # with GOPROXY, no pass-through, no proxy (0.011s) > testscript -v noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1055,11 +1091,11 @@ > stdout ^GOPATH=$ > stdout ^GOPROXY=$ > ! stderr .+ - # with GOPROXY, no pass-through, with proxy (0.007s) + # with GOPROXY, no pass-through, with proxy (0.022s) > testscript -v withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1068,7 +1104,7 @@ :=: $=$ exe= - GOPROXY=http://127.0.0.1:42543/mod + GOPROXY=http://127.0.0.1:44269/mod GONOSUMDB=* > env BANANA @@ -1076,17 +1112,17 @@ > env GOPATH GOPATH= > env GOPROXY - GOPROXY=http://127.0.0.1:42543/mod + GOPROXY=http://127.0.0.1:44269/mod PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ - # with GOPROXY, with pass-through, no proxy (0.006s) + # with GOPROXY, with pass-through, no proxy (0.008s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1110,11 +1146,11 @@ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ - # with GOPROXY, with pass-through, with proxy (0.007s) + # with GOPROXY, with pass-through, with proxy (0.009s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/sbin:/sbin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/sbin:/sbin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1141,9 +1177,9 @@ > ! stderr .+ PASS -=== NAME TestScripts/noproxy +=== NAME TestScripts/multi testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1163,14 +1199,24 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # With no .gomodproxy supporting files, we use the GOPROXY from - # the environment. (0.183s) - > env GOPROXY=0.1.2.3 - > unquote file.txt - > testscript -v file.txt + # Check that all scripts are executed even when one fails. (0.121s) + > ! testscript a.txt b.txt [stdout] - WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + > exec false + [exit status 1] + FAIL: a.txt:1: unexpected command failure + > exec false + [exit status 1] + FAIL: b.txt:2: unexpected command failure + [stderr] + failed run + [exit status 1] + > cmp stdout want-stdout + PASS + +=== NAME TestScripts/update + testscript.go:584: WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1185,66 +1231,33 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=0.1.2.3 + GOPROXY=https://proxy.golang.org,direct goversion=1.24 + GOINTERNALMODPATH=. + GONOSUMDB=* - > go env + # should support the -update flag (0.000s) + > unquote in.txt res.txt + # Should be an error to use -u with only stdin (0.010s) + > stdin in.txt + > ! testscript -u + [stderr] + cannot use -u when reading from stdin + [exit status 1] + > stderr 'cannot use -u when reading from stdin' + # It is ok to use -u when reading from stdin and + # a regular file (0.111s) + > testscript -u - in.txt [stdout] - AR='ar' - CC='aarch64-linux-gnu-gcc' - CGO_CFLAGS='-O2 -g' - CGO_CPPFLAGS='' - CGO_CXXFLAGS='-O2 -g' - CGO_ENABLED='1' - CGO_FFLAGS='-O2 -g' - CGO_LDFLAGS='-O2 -g' - CXX='aarch64-linux-gnu-g++' - GCCGO='gccgo' - GO111MODULE='' - GOARCH='arm64' - GOARM64='v8.0' - GOAUTH='netrc' - GOBIN='' - GOCACHE='/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build' - GOCACHEPROG='' - GODEBUG='' - GOENV='/no-home/.config/go/env' - GOEXE='' - GOEXPERIMENT='' - GOFIPS140='off' - GOFLAGS='' - GOGCCFLAGS='-fPIC -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=$WORK/.tmp/go-build3721335378=/tmp/go-build -gno-record-gcc-switches' - GOHOSTARCH='arm64' - GOHOSTOS='linux' - GOINSECURE='' - GOMOD='/dev/null' - GOMODCACHE='$WORK/.gopath/pkg/mod' - GONOPROXY='' - GONOSUMDB='' - GOOS='linux' - GOPATH='$WORK/.gopath' - GOPRIVATE='' - GOPROXY='0.1.2.3' - GOROOT='/usr/lib/go-1.24' - GOSUMDB='sum.golang.org' - GOTELEMETRY='local' - GOTELEMETRYDIR='/no-home/.config/go/telemetry' - GOTMPDIR='' - GOTOOLCHAIN='auto' - GOTOOLDIR='/usr/lib/go-1.24/pkg/tool/linux_arm64' - GOVCS='' - GOVERSION='go1.24.4' - GOWORK='' - PKG_CONFIG='pkg-config' - - > [!windows] stdout '^GOPROXY=''0.1.2.3''$' - > [windows] stdout '^set GOPROXY=0.1.2.3$' PASS PASS + in.txt updated + > cmp in.txt res.txt + PASS -=== NAME TestScripts/continue +=== NAME TestScripts/work testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1264,30 +1277,19 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # should support -continue (0.000s) - > unquote file.txt - # Running with continue, the testscript command itself - # should fail, but we should see the results of executing - # both commands. (0.187s) - > ! testscript -continue file.txt + # Test that passing -work leaves behind the working directory + # that contains the temporary directories within which the + # script arguments are expanded. + # + # This test also covers the use of multiple scripts which share + # the same basename, ensuring that the naming of the directories + # within the working directory. (0.132s) + > unquote file.txt dir/file.txt + > testscript -v -work file.txt dir/file.txt [stdout] - > grep banana in - [in] - apple - - FAIL: file.txt:1: no match for `banana` found in in - > grep apple in - [stderr] - failed run - [exit status 1] - > stdout 'grep banana in' - > stdout 'no match for `banana` found in in' - > stdout 'grep apple in' - PASS - -=== NAME TestScripts/skip - testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + temporary work directory: $WORK/.tmp/go-test-script2534664461/script-file + WORK=$WORK/.tmp/go-test-script2534664461/script-file + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1304,15 +1306,12 @@ GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.24 - GOINTERNALMODPATH=. - GONOSUMDB=* - # should support skip (0.189s) - > unquote file.txt - > testscript -v file.txt - [stdout] - WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + > exec true + PASS + temporary work directory: $WORK/.tmp/go-test-script2534664461/script-file#1 + WORK=$WORK/.tmp/go-test-script2534664461/script-file#1 + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1330,18 +1329,16 @@ GOPROXY=https://proxy.golang.org,direct goversion=1.24 - > go version - [stdout] - go version go1.24.4 linux/arm64 - - > skip - > stdout 'go version' - > ! stderr .+ + > exec true + PASS + > stdout '^temporary work directory: \Q'$WORK'\E[/\\]\.tmp[/\\]' + > expandone $WORK/.tmp/go-test-script*/script-file/foo + > expandone $WORK/.tmp/go-test-script*/script-file#1/bar PASS -=== NAME TestScripts/multi +=== NAME TestScripts/noproxy testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1361,24 +1358,14 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # Check that all scripts are executed even when one fails. (0.190s) - > ! testscript a.txt b.txt + # With no .gomodproxy supporting files, we use the GOPROXY from + # the environment. (0.134s) + > env GOPROXY=0.1.2.3 + > unquote file.txt + > testscript -v file.txt [stdout] - > exec false - [exit status 1] - FAIL: a.txt:1: unexpected command failure - > exec false - [exit status 1] - FAIL: b.txt:2: unexpected command failure - [stderr] - failed run - [exit status 1] - > cmp stdout want-stdout - PASS - -=== NAME TestScripts/update - testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1393,33 +1380,66 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=https://proxy.golang.org,direct + GOPROXY=0.1.2.3 goversion=1.24 - GOINTERNALMODPATH=. - GONOSUMDB=* - # should support the -update flag (0.000s) - > unquote in.txt res.txt - # Should be an error to use -u with only stdin (0.006s) - > stdin in.txt - > ! testscript -u - [stderr] - cannot use -u when reading from stdin - [exit status 1] - > stderr 'cannot use -u when reading from stdin' - # It is ok to use -u when reading from stdin and - # a regular file (0.186s) - > testscript -u - in.txt + > go env [stdout] + AR='ar' + CC='aarch64-linux-gnu-gcc' + CGO_CFLAGS='-O2 -g' + CGO_CPPFLAGS='' + CGO_CXXFLAGS='-O2 -g' + CGO_ENABLED='1' + CGO_FFLAGS='-O2 -g' + CGO_LDFLAGS='-O2 -g' + CXX='aarch64-linux-gnu-g++' + GCCGO='gccgo' + GO111MODULE='' + GOARCH='arm64' + GOARM64='v8.0' + GOAUTH='netrc' + GOBIN='' + GOCACHE='/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build' + GOCACHEPROG='' + GODEBUG='' + GOENV='/no-home/.config/go/env' + GOEXE='' + GOEXPERIMENT='' + GOFIPS140='off' + GOFLAGS='' + GOGCCFLAGS='-fPIC -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=$WORK/.tmp/go-build493740800=/tmp/go-build -gno-record-gcc-switches' + GOHOSTARCH='arm64' + GOHOSTOS='linux' + GOINSECURE='' + GOMOD='/dev/null' + GOMODCACHE='$WORK/.gopath/pkg/mod' + GONOPROXY='' + GONOSUMDB='' + GOOS='linux' + GOPATH='$WORK/.gopath' + GOPRIVATE='' + GOPROXY='0.1.2.3' + GOROOT='/usr/lib/go-1.24' + GOSUMDB='sum.golang.org' + GOTELEMETRY='local' + GOTELEMETRYDIR='/no-home/.config/go/telemetry' + GOTMPDIR='' + GOTOOLCHAIN='auto' + GOTOOLDIR='/usr/lib/go-1.24/pkg/tool/linux_arm64' + GOVCS='' + GOVERSION='go1.24.4' + GOWORK='' + PKG_CONFIG='pkg-config' + + > [!windows] stdout '^GOPROXY=''0.1.2.3''$' + > [windows] stdout '^set GOPROXY=0.1.2.3$' PASS PASS - in.txt updated - > cmp in.txt res.txt - PASS -=== NAME TestScripts/work +=== NAME TestScripts/simple testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1439,19 +1459,14 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # Test that passing -work leaves behind the working directory - # that contains the temporary directories within which the - # script arguments are expanded. - # - # This test also covers the use of multiple scripts which share - # the same basename, ensuring that the naming of the directories - # within the working directory. (0.195s) - > unquote file.txt dir/file.txt - > testscript -v -work file.txt dir/file.txt + # With .gomodproxy supporting files, any GOPROXY from the + # environment should be overridden by the test proxy. (0.144s) + > env GOPROXY=0.1.2.3 + > unquote file.txt + > testscript -v file.txt [stdout] - temporary work directory: $WORK/.tmp/go-test-script1235084494/script-file - WORK=$WORK/.tmp/go-test-script1235084494/script-file - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1466,14 +1481,35 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=https://proxy.golang.org,direct + GOPROXY=http://127.0.0.1:34853/mod goversion=1.24 + GONOSUMDB=* - > exec true + > go get -d fruit.com + [stderr] + go: -d flag is deprecated. -d=true is a no-op + go: downloading fruit.com v1.0.0 + + > go list -m + [stdout] + example.com/mod + + > stdout 'example.com/mod' + > go list fruit.com/... + [stdout] + fruit.com/coretest + fruit.com/fruit + + > stdout 'fruit.com/fruit' + > stdout 'fruit.com/coretest' PASS - temporary work directory: $WORK/.tmp/go-test-script1235084494/script-file#1 - WORK=$WORK/.tmp/go-test-script1235084494/script-file#1 - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + > stdout 'example.com/mod' + > ! stderr .+ + PASS + +=== NAME TestScripts/continue + testscript.go:584: WORK=$WORK + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1490,17 +1526,33 @@ GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.24 + GOINTERNALMODPATH=. + GONOSUMDB=* - > exec true - PASS - > stdout '^temporary work directory: \Q'$WORK'\E[/\\]\.tmp[/\\]' - > expandone $WORK/.tmp/go-test-script*/script-file/foo - > expandone $WORK/.tmp/go-test-script*/script-file#1/bar + # should support -continue (0.000s) + > unquote file.txt + # Running with continue, the testscript command itself + # should fail, but we should see the results of executing + # both commands. (0.155s) + > ! testscript -continue file.txt + [stdout] + > grep banana in + [in] + apple + + FAIL: file.txt:1: no match for `banana` found in in + > grep apple in + [stderr] + failed run + [exit status 1] + > stdout 'grep banana in' + > stdout 'no match for `banana` found in in' + > stdout 'grep apple in' PASS -=== NAME TestScripts/simple +=== NAME TestScripts/skip testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1520,14 +1572,12 @@ GOINTERNALMODPATH=. GONOSUMDB=* - # With .gomodproxy supporting files, any GOPROXY from the - # environment should be overridden by the test proxy. (0.212s) - > env GOPROXY=0.1.2.3 + # should support skip (0.156s) > unquote file.txt > testscript -v file.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1542,35 +1592,21 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:40665/mod + GOPROXY=https://proxy.golang.org,direct goversion=1.24 - GONOSUMDB=* - - > go get -d fruit.com - [stderr] - go: -d flag is deprecated. -d=true is a no-op - go: downloading fruit.com v1.0.0 - - > go list -m - [stdout] - example.com/mod - > stdout 'example.com/mod' - > go list fruit.com/... + > go version [stdout] - fruit.com/coretest - fruit.com/fruit + go version go1.24.4 linux/arm64 - > stdout 'fruit.com/fruit' - > stdout 'fruit.com/coretest' - PASS - > stdout 'example.com/mod' + > skip + > stdout 'go version' > ! stderr .+ PASS === NAME TestScripts/env_values testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1594,13 +1630,13 @@ > unquote test.txt > env BLAH1= > env BLAH2=junk - # Normal operation (0.170s) + # Normal operation (0.128s) > testscript -e BLAH1=rubbish -e BLAH2 test.txt [stdout] PASS # It is an error to specify WORK. Note the error message # appears on stdout because it is written to the log output - # of testscript, which has no concept of stderr. (0.032s) + # of testscript, which has no concept of stderr. (0.030s) > ! testscript -e BLAH1=rubbish -e BLAH2 -e WORK test.txt [stdout] FAIL: test.txt:0: cannot override WORK variable @@ -1612,7 +1648,7 @@ === NAME TestScripts/error testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1634,12 +1670,12 @@ # should support skip (0.000s) > unquote file.txt - # stdin (0.193s) + # stdin (0.152s) > stdin file.txt > ! testscript -v [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1664,11 +1700,11 @@ failed run [exit status 1] > stdout 'FAIL: :1: unexpected command failure' - # file-based (0.034s) + # file-based (0.067s) > ! testscript -v file.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1697,7 +1733,7 @@ === NAME TestScripts/env_var_with_go testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1726,11 +1762,11 @@ # This is the counterpart to env_var_no_go.txt (0.000s) > unquote noproxy.txt > unquote withproxy.txt - # Baseline (0.179s) + # Baseline (0.154s) > testscript -v noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1762,11 +1798,11 @@ > env BANANA=banana > env GOPATH=$WORK/ourgopath > env GOPROXY= - # no GOPROXY, no pass-through, no proxy (0.037s) + # no GOPROXY, no pass-through, no proxy (0.054s) > testscript -v noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1795,11 +1831,11 @@ > stdout '^GOPATH=\$WORK[/\\]\.gopath'$ > stdout ^GOPROXY=https://proxy.golang.org,direct$ > ! stderr .+ - # no GOPROXY, no pass-through, with proxy (0.034s) + # no GOPROXY, no pass-through, with proxy (0.035s) > testscript -v withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1814,7 +1850,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:35683/mod + GOPROXY=http://127.0.0.1:33241/mod goversion=1.24 GONOSUMDB=* @@ -1823,17 +1859,17 @@ > env GOPATH GOPATH=$WORK/.gopath > env GOPROXY - GOPROXY=http://127.0.0.1:35683/mod + GOPROXY=http://127.0.0.1:33241/mod PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]\.gopath'$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ - # no GOPROXY, with pass-through, no proxy (0.033s) + # no GOPROXY, with pass-through, no proxy (0.028s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1863,11 +1899,11 @@ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ - # no GOPROXY, with pass-through, with proxy (0.033s) + # no GOPROXY, with pass-through, with proxy (0.030s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1899,11 +1935,11 @@ > stdout ^GOPROXY=$ > ! stderr .+ > setfilegoproxy $WORK/proxy - # with GOPROXY, no pass-through, no proxy (0.040s) + # with GOPROXY, no pass-through, no proxy (0.027s) > testscript -v noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1932,11 +1968,11 @@ > stdout '^GOPATH=\$WORK[/\\]\.gopath'$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ - # with GOPROXY, no pass-through, with proxy (0.047s) + # with GOPROXY, no pass-through, with proxy (0.029s) > testscript -v withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -1951,7 +1987,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:40915/mod + GOPROXY=http://127.0.0.1:35451/mod goversion=1.24 GONOSUMDB=* @@ -1960,17 +1996,17 @@ > env GOPATH GOPATH=$WORK/.gopath > env GOPROXY - GOPROXY=http://127.0.0.1:40915/mod + GOPROXY=http://127.0.0.1:35451/mod PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]\.gopath'$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ - # with GOPROXY, with pass-through, no proxy (0.052s) + # with GOPROXY, with pass-through, no proxy (0.025s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2000,11 +2036,11 @@ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ - # with GOPROXY, with pass-through, with proxy (0.045s) + # with GOPROXY, with pass-through, with proxy (0.025s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK - PATH=/tmp/testscript-main1074675848/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main4274694384/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2037,22 +2073,22 @@ > ! stderr .+ PASS ---- PASS: TestScripts (0.06s) +--- PASS: TestScripts (0.04s) + --- PASS: TestScripts/help (0.01s) --- PASS: TestScripts/nogo (0.01s) - --- PASS: TestScripts/help (0.02s) - --- PASS: TestScripts/env_var_no_go (0.08s) - --- PASS: TestScripts/noproxy (0.18s) - --- PASS: TestScripts/continue (0.19s) - --- PASS: TestScripts/skip (0.19s) - --- PASS: TestScripts/multi (0.19s) - --- PASS: TestScripts/update (0.19s) - --- PASS: TestScripts/work (0.20s) - --- PASS: TestScripts/simple (0.21s) - --- PASS: TestScripts/env_values (0.20s) - --- PASS: TestScripts/error (0.23s) - --- PASS: TestScripts/env_var_with_go (0.50s) + --- PASS: TestScripts/env_var_no_go (0.09s) + --- PASS: TestScripts/multi (0.12s) + --- PASS: TestScripts/update (0.12s) + --- PASS: TestScripts/work (0.13s) + --- PASS: TestScripts/noproxy (0.13s) + --- PASS: TestScripts/simple (0.14s) + --- PASS: TestScripts/continue (0.16s) + --- PASS: TestScripts/skip (0.16s) + --- PASS: TestScripts/env_values (0.16s) + --- PASS: TestScripts/error (0.22s) + --- PASS: TestScripts/env_var_with_go (0.41s) PASS -ok github.com/rogpeppe/go-internal/cmd/testscript 0.578s +ok github.com/rogpeppe/go-internal/cmd/testscript 0.455s === RUN TestScripts === RUN TestScripts/encode === PAUSE TestScripts/encode @@ -2063,11 +2099,11 @@ === CONT TestScripts/encode === CONT TestScripts/txtar-addmod-self === CONT TestScripts/to_stdout -2025/09/25 17:08:45 go proxy: no archive github.com v0.0.0-20171119174359-809beceb2371 -2025/09/25 17:08:45 go proxy: no archive github.com/shurcooL v0.0.0-20171119174359-809beceb2371 +2026/10/28 23:33:16 go proxy: no archive github.com v0.0.0-20171119174359-809beceb2371 +2026/10/28 23:33:16 go proxy: no archive github.com/shurcooL v0.0.0-20171119174359-809beceb2371 === NAME TestScripts/encode testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3038375107/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1206956606/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2082,7 +2118,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:36803/mod + GOPROXY=http://127.0.0.1:39375/mod goversion=1.24 GONOSUMDB=* @@ -2095,7 +2131,7 @@ === NAME TestScripts/to_stdout testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3038375107/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1206956606/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2110,7 +2146,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:36803/mod + GOPROXY=http://127.0.0.1:39375/mod goversion=1.24 GONOSUMDB=* @@ -2137,7 +2173,7 @@ === NAME TestScripts/txtar-addmod-self testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3038375107/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1206956606/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2152,7 +2188,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:36803/mod + GOPROXY=http://127.0.0.1:39375/mod goversion=1.24 GONOSUMDB=* @@ -2166,12 +2202,12 @@ > grep '-- foobar --' $WORK/out/github.com_gobin-testrepos_simple-main_v1.0.0.txtar PASS ---- PASS: TestScripts (0.05s) - --- PASS: TestScripts/encode (0.04s) - --- PASS: TestScripts/to_stdout (0.06s) - --- PASS: TestScripts/txtar-addmod-self (0.11s) +--- PASS: TestScripts (0.03s) + --- PASS: TestScripts/encode (0.02s) + --- PASS: TestScripts/to_stdout (0.04s) + --- PASS: TestScripts/txtar-addmod-self (0.08s) PASS -ok github.com/rogpeppe/go-internal/cmd/txtar-addmod 0.173s +ok github.com/rogpeppe/go-internal/cmd/txtar-addmod 0.116s === RUN TestScripts === RUN TestScripts/all === PAUSE TestScripts/all @@ -2182,11 +2218,12 @@ === RUN TestScripts/txtar-savedir-self === PAUSE TestScripts/txtar-savedir-self === CONT TestScripts/all +=== CONT TestScripts/txtar-savedir-self === CONT TestScripts/quote === CONT TestScripts/needquote -=== CONT TestScripts/txtar-savedir-self +=== NAME TestScripts/quote testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3959346861/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1305368825/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2196,29 +2233,21 @@ $=$ exe= + > unquote blah/withsep > unquote expect - > txtar-c blah + > txtar-c -quote blah [stdout] - -- go.mod -- - module example.com/blah - - -- main.go -- - package main - - import "fmt" - - func main() { - fmt.Println("Hello, world!") - } - -- subdir/x -- - x contents + unquote withsep + -- withsep -- + >-- separator -- + >foo > ! stderr .+ > cmp stdout expect PASS -=== NAME TestScripts/quote +=== NAME TestScripts/txtar-savedir-self testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3959346861/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1305368825/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2228,21 +2257,29 @@ $=$ exe= - > unquote blah/withsep > unquote expect - > txtar-c -quote blah + > txtar-c blah [stdout] - unquote withsep - -- withsep -- - >-- separator -- - >foo + -- go.mod -- + module example.com/blah + + -- main.go -- + package main + + import "fmt" + + func main() { + fmt.Println("Hello, world!") + } + -- subdir/x -- + x contents > ! stderr .+ > cmp stdout expect PASS === NAME TestScripts/needquote testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3959346861/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1305368825/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2266,7 +2303,7 @@ === NAME TestScripts/all testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main3959346861/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main1305368825/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2278,7 +2315,7 @@ > unquote expect-all > unquote expect-no-all - # Without the -a flag, it should ignore . files. (0.004s) + # Without the -a flag, it should ignore . files. (0.003s) > txtar-c blah [stdout] -- go.mod -- @@ -2294,7 +2331,7 @@ } > ! stderr .+ > cmp stdout expect-no-all - # With the -a flag, it should include them. (0.003s) + # With the -a flag, it should include them. (0.002s) > txtar-c -a blah [stdout] -- .foo/foo -- @@ -2317,12 +2354,12 @@ PASS --- PASS: TestScripts (0.00s) - --- PASS: TestScripts/txtar-savedir-self (0.00s) --- PASS: TestScripts/quote (0.00s) + --- PASS: TestScripts/txtar-savedir-self (0.00s) --- PASS: TestScripts/needquote (0.00s) --- PASS: TestScripts/all (0.01s) PASS -ok github.com/rogpeppe/go-internal/cmd/txtar-c 0.015s +ok github.com/rogpeppe/go-internal/cmd/txtar-c 0.010s ? github.com/rogpeppe/go-internal/cmd/txtar-goproxy [no test files] === RUN TestScripts === RUN TestScripts/extract-dir @@ -2339,7 +2376,7 @@ === CONT TestScripts/extract === NAME TestScripts/extract-dir testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main779328884/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main615908975/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2357,7 +2394,7 @@ === NAME TestScripts/extract testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main779328884/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main615908975/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2373,28 +2410,9 @@ > cmp a/b/bar expect/a/b/bar PASS -=== NAME TestScripts/extract-stdin - testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main779328884/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games - GOTRACEBACK=system - HOME=/no-home - TMPDIR=$WORK/.tmp - devnull=/dev/null - /=/ - :=: - $=$ - exe= - - > unquote file.txtar - > stdin file.txtar - > txtar-x - > cmp foo expect/foo - > cmp a/b/bar expect/a/b/bar - PASS - === NAME TestScripts/extract-out-of-bounds testscript.go:584: WORK=$WORK - PATH=/tmp/testscript-main779328884/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main615908975/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2417,11 +2435,30 @@ > stderr '"/foo": outside parent directory' PASS +=== NAME TestScripts/extract-stdin + testscript.go:584: WORK=$WORK + PATH=/tmp/testscript-main615908975/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + GOTRACEBACK=system + HOME=/no-home + TMPDIR=$WORK/.tmp + devnull=/dev/null + /=/ + :=: + $=$ + exe= + + > unquote file.txtar + > stdin file.txtar + > txtar-x + > cmp foo expect/foo + > cmp a/b/bar expect/a/b/bar + PASS + --- PASS: TestScripts (0.00s) - --- PASS: TestScripts/extract-dir (0.01s) + --- PASS: TestScripts/extract-dir (0.00s) --- PASS: TestScripts/extract (0.00s) - --- PASS: TestScripts/extract-stdin (0.01s) --- PASS: TestScripts/extract-out-of-bounds (0.01s) + --- PASS: TestScripts/extract-stdin (0.01s) PASS ok github.com/rogpeppe/go-internal/cmd/txtar-x 0.014s === RUN Test @@ -2451,7 +2488,7 @@ --- PASS: Test/start.txt (0.00s) --- PASS: Test/triv.txt (0.00s) PASS -ok github.com/rogpeppe/go-internal/diff 0.009s +ok github.com/rogpeppe/go-internal/diff 0.010s ? github.com/rogpeppe/go-internal/dirhash [no test files] === RUN TestCompare --- PASS: TestCompare (0.00s) @@ -2466,7 +2503,7 @@ === PAUSE TestScripts/list === CONT TestScripts/list testscript.go:584: WORK=$WORK - PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2481,7 +2518,7 @@ GOOS=linux GOROOT=/usr/lib/go-1.24 GOCACHE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/go-build - GOPROXY=http://127.0.0.1:33847/mod + GOPROXY=http://127.0.0.1:35571/mod goversion=1.24 GONOSUMDB=* @@ -2506,19 +2543,19 @@ # as that places GOMODCACHE inside the Go module and "mod tidy" walks it. # "mod tidy" then complains about invalid import paths such as # "mod/gopath/pkg/mod/fruit.com@v1.1.0/fruit". - # It's for that reason that we moved the default GOPATH to ${WORK}/.gopath. (0.006s) + # It's for that reason that we moved the default GOPATH to ${WORK}/.gopath. (0.010s) > go mod tidy [stderr] go: warning: "all" matched no packages PASS ---- PASS: TestScripts (0.07s) +--- PASS: TestScripts (0.05s) --- PASS: TestScripts/list (0.05s) PASS -ok github.com/rogpeppe/go-internal/goproxytest 0.142s +ok github.com/rogpeppe/go-internal/goproxytest 0.112s === RUN TestInitGoEnv ---- PASS: TestInitGoEnv (0.05s) +--- PASS: TestInitGoEnv (0.03s) === RUN TestSimple === RUN TestSimple/cover === PAUSE TestSimple/cover @@ -2530,7 +2567,7 @@ === CONT TestSimple/version === CONT TestSimple/env testscript.go:584: WORK=$WORK - PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2550,7 +2587,7 @@ GOINTERNAL_MODULE=/build/reproducible-path/golang-github-rogpeppe-go-internal-1.14.1/_build/src/github.com/rogpeppe/go-internal # GOPATH and GOMODCACHE are not shared with the host, - # but GOCACHE is. (0.010s) + # but GOCACHE is. (0.015s) > go env [stdout] AR='ar' @@ -2576,7 +2613,7 @@ GOEXPERIMENT='' GOFIPS140='off' GOFLAGS='' - GOGCCFLAGS='-fPIC -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=$WORK/.tmp/go-build2326964466=/tmp/go-build -gno-record-gcc-switches' + GOGCCFLAGS='-fPIC -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=$WORK/.tmp/go-build479117964=/tmp/go-build -gno-record-gcc-switches' GOHOSTARCH='arm64' GOHOSTOS='linux' GOINSECURE='' @@ -2607,7 +2644,7 @@ === NAME TestSimple/version testscript.go:584: WORK=$WORK - PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2638,7 +2675,7 @@ === NAME TestSimple/cover testscript.go:1202: testscript.go:584: WORK=$WORK - PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2659,25 +2696,25 @@ > unquote scripts/exec.txt # The module uses testscript itself. - # Use the checked out module, based on where the test binary ran. (0.133s) + # Use the checked out module, based on where the test binary ran. (0.146s) > go mod edit -replace=github.com/rogpeppe/go-internal=${GOINTERNAL_MODULE} > go mod tidy [stderr] go: found github.com/rogpeppe/go-internal/gotooltest in github.com/rogpeppe/go-internal v0.0.0-00010101000000-000000000000 go: found github.com/rogpeppe/go-internal/testscript in github.com/rogpeppe/go-internal v0.0.0-00010101000000-000000000000 go: github.com/rogpeppe/go-internal@v0.0.0-00010101000000-000000000000 requires - golang.org/x/mod@v0.21.0: Get "https://proxy.golang.org/golang.org/x/mod/@v/v0.21.0.mod": dial tcp: lookup proxy.golang.org on [::1]:53: read udp [::1]:50850->[::1]:53: read: connection refused + golang.org/x/mod@v0.21.0: Get "https://proxy.golang.org/golang.org/x/mod/@v/v0.21.0.mod": dial tcp: lookup proxy.golang.org on [::1]:53: read udp [::1]:60456->[::1]:53: read: connection refused [exit status 1] FAIL: testdata/cover.txt:6: unexpected go command failure SKIP: TestSimple/cover: Possible restricted network access ---- PASS: TestSimple (0.06s) +--- PASS: TestSimple (0.03s) --- PASS: TestSimple/env (0.01s) - --- PASS: TestSimple/version (0.04s) - --- SKIP: TestSimple/cover (0.13s) + --- PASS: TestSimple/version (0.05s) + --- SKIP: TestSimple/cover (0.15s) PASS -ok github.com/rogpeppe/go-internal/gotooltest 0.256s +ok github.com/rogpeppe/go-internal/gotooltest 0.224s === RUN TestReadImports --- PASS: TestReadImports (0.00s) === RUN TestReadComments @@ -2723,7 +2760,7 @@ --- PASS: FuzzAlmostEqual/b323cef1fc26e507 (0.00s) --- PASS: FuzzAlmostEqual/c6edde4256d6f5eb (0.00s) PASS -ok github.com/rogpeppe/go-internal/internal/misspell 0.013s +ok github.com/rogpeppe/go-internal/internal/misspell 0.012s ? github.com/rogpeppe/go-internal/internal/os/execpath [no test files] ? github.com/rogpeppe/go-internal/internal/syscall/windows [no test files] ? github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll [no test files] @@ -2736,27 +2773,26 @@ === RUN TestSpuriousEDEADLK --- PASS: TestSpuriousEDEADLK (0.02s) === RUN TestTransform ---- PASS: TestTransform (0.34s) +--- PASS: TestTransform (0.36s) === CONT TestMutexExcludes -=== CONT TestCanLockExistingFile -=== NAME TestMutexExcludes lockedfile_test.go:85: mu := MutexAt(_) lockedfile_test.go:91: unlock, _ := mu.Lock() lockedfile_test.go:94: mu2 := MutexAt(mu.Path) === CONT TestReadWaitsForLock lockedfile_test.go:134: WriteString("part 1\n") = - lockedfile_test.go:156: WriteString("part 2\n") = ---- PASS: TestCanLockExistingFile (0.01s) +=== CONT TestCanLockExistingFile === NAME TestMutexExcludes lockedfile_test.go:107: unlock() lockedfile_test.go:102: unlock2, _ := mu2.Lock() lockedfile_test.go:103: unlock2() +--- PASS: TestCanLockExistingFile (0.01s) +--- PASS: TestMutexExcludes (0.01s) === NAME TestReadWaitsForLock + lockedfile_test.go:156: WriteString("part 2\n") = lockedfile_test.go:146: Read(_) = "part 1\npart 2\n" ---- PASS: TestMutexExcludes (0.01s) --- PASS: TestReadWaitsForLock (0.01s) PASS -ok github.com/rogpeppe/go-internal/lockedfile 0.386s +ok github.com/rogpeppe/go-internal/lockedfile 0.417s === RUN TestLockExcludesLock === PAUSE TestLockExcludesLock === RUN TestLockExcludesRLock @@ -2764,59 +2800,59 @@ === RUN TestRLockExcludesOnlyLock === PAUSE TestRLockExcludesOnlyLock === RUN TestLockNotDroppedByExecCommand - filelock_test.go:188: fd 6 = /tmp/TestLockNotDroppedByExecCommand683271421 + filelock_test.go:188: fd 6 = /tmp/TestLockNotDroppedByExecCommand1301254659 filelock_test.go:191: Lock(fd 6) = - filelock_test.go:193: fd 7 = os.Open("/tmp/TestLockNotDroppedByExecCommand683271421") + filelock_test.go:193: fd 7 = os.Open("/tmp/TestLockNotDroppedByExecCommand1301254659") filelock_test.go:204: Lock(fd 7) is blocked (as expected) filelock_test.go:205: Unlock(fd 6) = asm_arm64.s:1223: Lock(fd 7) = filelock_test.go:207: Unlock(fd 7) = ---- PASS: TestLockNotDroppedByExecCommand (0.01s) +--- PASS: TestLockNotDroppedByExecCommand (0.02s) === CONT TestLockExcludesLock -=== CONT TestRLockExcludesOnlyLock -=== NAME TestLockExcludesLock - filelock_test.go:121: fd 6 = /tmp/TestLockExcludesLock3427678462 - filelock_test.go:124: fd 8 = os.Open("/tmp/TestLockExcludesLock3427678462") + filelock_test.go:121: fd 6 = /tmp/TestLockExcludesLock1542559655 + filelock_test.go:124: fd 7 = os.Open("/tmp/TestLockExcludesLock1542559655") filelock_test.go:127: Lock(fd 6) = -=== NAME TestRLockExcludesOnlyLock - filelock_test.go:153: fd 7 = /tmp/TestRLockExcludesOnlyLock2268174150 - filelock_test.go:155: RLock(fd 7) = +=== CONT TestRLockExcludesOnlyLock === CONT TestLockExcludesRLock + filelock_test.go:137: fd 9 = /tmp/TestLockExcludesRLock3109101735 === NAME TestRLockExcludesOnlyLock - filelock_test.go:157: fd 9 = os.Open("/tmp/TestRLockExcludesOnlyLock2268174150") - filelock_test.go:171: RLock(fd 9) = - filelock_test.go:175: fd 11 = os.Open("/tmp/TestRLockExcludesOnlyLock2268174150") + filelock_test.go:153: fd 8 = /tmp/TestRLockExcludesOnlyLock3065600375 === NAME TestLockExcludesRLock - filelock_test.go:137: fd 10 = /tmp/TestLockExcludesRLock3536648728 - filelock_test.go:140: fd 12 = os.Open("/tmp/TestLockExcludesRLock3536648728") - filelock_test.go:143: Lock(fd 10) = -=== NAME TestLockExcludesLock - filelock_test.go:128: Lock(fd 8) is blocked (as expected) - filelock_test.go:129: Unlock(fd 6) = + filelock_test.go:140: fd 10 = os.Open("/tmp/TestLockExcludesRLock3109101735") + filelock_test.go:143: Lock(fd 9) = +=== NAME TestRLockExcludesOnlyLock + filelock_test.go:155: RLock(fd 8) = + filelock_test.go:157: fd 11 = os.Open("/tmp/TestRLockExcludesOnlyLock3065600375") + filelock_test.go:171: RLock(fd 11) = + filelock_test.go:175: fd 12 = os.Open("/tmp/TestRLockExcludesOnlyLock3065600375") +=== NAME TestLockExcludesRLock + filelock_test.go:144: RLock(fd 10) is blocked (as expected) + filelock_test.go:145: Unlock(fd 9) = === NAME TestRLockExcludesOnlyLock - filelock_test.go:177: Lock(fd 11) is blocked (as expected) - filelock_test.go:179: Unlock(fd 9) = - asm_arm64.s:1223: Lock(fd 11) = + filelock_test.go:177: Lock(fd 12) is blocked (as expected) + filelock_test.go:179: Unlock(fd 11) = === NAME TestLockExcludesRLock - filelock_test.go:144: RLock(fd 12) is blocked (as expected) + asm_arm64.s:1223: RLock(fd 10) = === NAME TestLockExcludesLock - asm_arm64.s:1223: Lock(fd 8) = + filelock_test.go:128: Lock(fd 7) is blocked (as expected) === NAME TestLockExcludesRLock - filelock_test.go:145: Unlock(fd 10) = + filelock_test.go:147: Unlock(fd 10) = === NAME TestLockExcludesLock - filelock_test.go:131: Unlock(fd 8) = + filelock_test.go:129: Unlock(fd 6) = === NAME TestRLockExcludesOnlyLock - filelock_test.go:181: Unlock(fd 7) = + filelock_test.go:181: Unlock(fd 8) = +--- PASS: TestLockExcludesRLock (0.01s) +=== NAME TestRLockExcludesOnlyLock + asm_arm64.s:1223: Lock(fd 12) = +=== NAME TestLockExcludesLock + asm_arm64.s:1223: Lock(fd 7) = + filelock_test.go:131: Unlock(fd 7) = --- PASS: TestLockExcludesLock (0.01s) === NAME TestRLockExcludesOnlyLock - filelock_test.go:184: Unlock(fd 11) = + filelock_test.go:184: Unlock(fd 12) = --- PASS: TestRLockExcludesOnlyLock (0.01s) -=== NAME TestLockExcludesRLock - asm_arm64.s:1223: RLock(fd 12) = - filelock_test.go:147: Unlock(fd 12) = ---- PASS: TestLockExcludesRLock (0.01s) PASS -ok github.com/rogpeppe/go-internal/lockedfile/internal/filelock 0.034s +ok github.com/rogpeppe/go-internal/lockedfile/internal/filelock 0.036s ? github.com/rogpeppe/go-internal/modfile [no test files] ? github.com/rogpeppe/go-internal/module [no test files] === RUN TestWork @@ -2826,7 +2862,7 @@ === RUN TestCache --- PASS: TestCache (0.00s) PASS -ok github.com/rogpeppe/go-internal/par 0.016s +ok github.com/rogpeppe/go-internal/par 0.011s ? github.com/rogpeppe/go-internal/renameio [no test files] ? github.com/rogpeppe/go-internal/robustio [no test files] ? github.com/rogpeppe/go-internal/semver [no test files] @@ -2926,41 +2962,16 @@ === RUN TestScripts/wait === PAUSE TestScripts/wait === CONT TestScripts/big_diff +=== CONT TestScripts/wait === CONT TestScripts/nothing -=== CONT TestScripts/testscript_logging -=== NAME TestScripts/nothing testscript.go:584: # Intentionally blank file, used to test that -testwork doesn't remove the work directory (0.000s) PASS -=== CONT TestScripts/long_diff -=== CONT TestScripts/wait -=== CONT TestScripts/setupfiles -=== CONT TestScripts/regexpquote -=== CONT TestScripts/stdin -=== CONT TestScripts/cond -=== NAME TestScripts/regexpquote - testscript.go:584: > env XXX='hello)' - > grep ^${XXX@R}$ file.txt - PASS - -=== CONT TestScripts/testscript_explicit_exec -=== CONT TestScripts/setenv - testscript.go:584: > setSpecialVal - > exists $SPECIALVAL.txt - > ensureSpecialVal - PASS - -=== CONT TestScripts/testscript_explicit_files -=== CONT TestScripts/testscript_duplicate_name -=== NAME TestScripts/setupfiles - testscript.go:584: # check that the Setup function saw the unarchived files, - # including the temp directory that's always created. (0.000s) - > setup-filenames .tmp a b +=== CONT TestScripts/values + testscript.go:584: > test-values PASS -=== CONT TestScripts/exec_path_change -=== CONT TestScripts/testscript_update_script_expected_not_in_archive -=== NAME TestScripts/long_diff +=== CONT TestScripts/long_diff testscript.go:584: # Verify the behaviour of cmp in the case of a small diff between # two large files (0.000s) > unquote dir/script.txt @@ -2982,7 +2993,7 @@ > env WORK=$WORK - PATH=/tmp/testscript-main925831645/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main3374676712/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -2995,8 +3006,30 @@ > cmpenv stdout stdout.golden PASS -=== CONT TestScripts/readfile -=== CONT TestScripts/values +=== CONT TestScripts/kill_unnamed +=== CONT TestScripts/evalsymlink +=== CONT TestScripts/cond +=== CONT TestScripts/interrupt_implicit +=== CONT TestScripts/hello +=== CONT TestScripts/interrupt +=== CONT TestScripts/defer +=== CONT TestScripts/custom_cd +=== NAME TestScripts/defer + testscript.go:584: > testdefer + > testdefer + > testdefer + PASS + +=== CONT TestScripts/cpstdout +=== CONT TestScripts/execguard +=== NAME TestScripts/custom_cd + testscript.go:584: # Verify that a custom command can chdir. (0.000s) + > mkChdir foo + > exists $WORK/foo + # Current directory is not $WORK. (0.000s) + > ! exists foo + PASS + === NAME TestScripts/cond testscript.go:584: # test that exactly one of gc and gccgo is set (0.000s) > [gc] mkdir gc_true @@ -3018,59 +3051,84 @@ > [windows] ! exists unix_true PASS -=== NAME TestScripts/values - testscript.go:584: > test-values +=== CONT TestScripts/testscript_update_script_stderr +=== CONT TestScripts/exists +=== CONT TestScripts/testscript_update_script_quote +=== NAME TestScripts/exists + testscript.go:584: > chmod 444 foo_r + > exists foo + > ! exists unfoo + # TODO The following line fails but probably should not. + # ! exists -readonly foo (0.000s) + > exists foo_r + > exists -readonly foo_r PASS -=== CONT TestScripts/testscript_update_script_quote -=== NAME TestScripts/testscript_duplicate_name - testscript.go:584: # Check that RequireUniqueNames works; - # it should reject txtar archives with duplicate names as defined by the host system. (0.000s) - > unquote scripts-normalized/testscript.txt - > testscript scripts-normalized +=== CONT TestScripts/testscript_update_script_expected_not_in_archive +=== NAME TestScripts/cpstdout + testscript.go:584: > [!exec:cat] stop + # hello world (0.000s) + > exec cat hello.text [stdout] - ** RUN testscript ** + hello world + > cp stdout got + > cmp got hello.text + > ! cmp got different.text + > exists got + > mv got new + > ! exists got + > cmp new hello.text PASS - > ! testscript -unique-names scripts-normalized +=== CONT TestScripts/kill +=== NAME TestScripts/evalsymlink + testscript.go:584: # If ioutil.TempDir returns a sym linked dir (default behaviour in macOS for example) the + # matcher will have problems with external programs that uses the real path. + # This script tests that $WORK is matched in a consistent way (also see #79). (0.000s) + > [windows] skip + > exec pwd [stdout] - ** RUN testscript ** - FAIL: $WORK/scripts-normalized/testscript.txt:0: dir/../file would overwrite $WORK/file (because RequireUniqueNames is enabled) - - > stdout '.* would overwrite .* \(because RequireUniqueNames is enabled\)' + $WORK + > stdout ^$WORK$ + > exec pwd -P + [stdout] + $WORK + > stdout ^$WORK$ PASS -=== CONT TestScripts/defer -=== CONT TestScripts/testscript_update_script_stderr -=== NAME TestScripts/defer - testscript.go:584: > testdefer - > testdefer - > testdefer +=== CONT TestScripts/testscript_update_script_actual_is_file +=== NAME TestScripts/hello + testscript.go:584: > [!exec:cat] stop + # hello world (0.000s) + > exec cat hello.text + [stdout] + hello world + > stdout 'hello world\n' + > ! stderr . PASS -=== CONT TestScripts/evalsymlink -=== NAME TestScripts/testscript_explicit_files - testscript.go:584: # Check that we can pass an explicit set of files to be tested. (0.000s) - > ! testscript -files foo.txtar x/bar.txtar y/bar.txtar 'y/bar#1.txtar' +=== NAME TestScripts/testscript_update_script_stderr + testscript.go:584: > unquote scripts/testscript.txt + > unquote testscript-new.txt + > testscript -update scripts [stdout] - ** RUN foo ** + ** RUN testscript ** PASS - ** RUN bar ** + $WORK/scripts/testscript.txt updated + + > cmp scripts/testscript.txt testscript-new.txt PASS - ** RUN bar#1 ** - > echoandexit 1 '' 'bar#1 failure' - [stderr] - bar#1 failure - FAIL: $WORK/y/bar.txtar:1: told to exit with code 1 - ** RUN bar#1#1 ** - > echoandexit 1 '' 'bar#1#1 failure' - [stderr] - bar#1#1 failure - FAIL: $WORK/y/bar#1.txtar:1: told to exit with code 1 - > cmpenv stdout expect-stdout +=== NAME TestScripts/execguard + testscript.go:584: > [exec:nosuchcommand] exec nosuchcommand + > [!exec:cat] stop + > exec cat foo + [stdout] + foo + > stdout 'foo\n' PASS +=== CONT TestScripts/testscript_duplicate_name === NAME TestScripts/testscript_update_script_quote testscript.go:584: > unquote scripts/testscript.txt > unquote testscript-new.txt @@ -3107,58 +3165,33 @@ > cmp scripts/testscript.txt unchanged PASS -=== CONT TestScripts/custom_cd -=== CONT TestScripts/testscript_update_script -=== NAME TestScripts/custom_cd - testscript.go:584: # Verify that a custom command can chdir. (0.000s) - > mkChdir foo - > exists $WORK/foo - # Current directory is not $WORK. (0.000s) - > ! exists foo - PASS - -=== CONT TestScripts/testscript_update_script_actual_is_file -=== NAME TestScripts/evalsymlink - testscript.go:584: # If ioutil.TempDir returns a sym linked dir (default behaviour in macOS for example) the - # matcher will have problems with external programs that uses the real path. - # This script tests that $WORK is matched in a consistent way (also see #79). (0.000s) - > [windows] skip - > exec pwd - [stdout] - $WORK - > stdout ^$WORK$ - > exec pwd -P - [stdout] - $WORK - > stdout ^$WORK$ - PASS - -=== CONT TestScripts/interrupt -=== CONT TestScripts/kill_unnamed -=== NAME TestScripts/readfile - testscript.go:584: > fprintargs stdout stdout +=== CONT TestScripts/stdin +=== CONT TestScripts/testscript_stdout_stderr_error +=== NAME TestScripts/testscript_duplicate_name + testscript.go:584: # Check that RequireUniqueNames works; + # it should reject txtar archives with duplicate names as defined by the host system. (0.000s) + > unquote scripts-normalized/testscript.txt + > testscript scripts-normalized [stdout] - stdout - > testreadfile stdout - > fprintargs stderr stderr - [stderr] - stderr - > testreadfile stderr - > testreadfile x/somefile + ** RUN testscript ** PASS -=== NAME TestScripts/testscript_update_script_stderr - testscript.go:584: > unquote scripts/testscript.txt - > unquote testscript-new.txt - > testscript -update scripts + > ! testscript -unique-names scripts-normalized [stdout] ** RUN testscript ** + FAIL: $WORK/scripts-normalized/testscript.txt:0: dir/../file would overwrite $WORK/file (because RequireUniqueNames is enabled) + + > stdout '.* would overwrite .* \(because RequireUniqueNames is enabled\)' PASS - $WORK/scripts/testscript.txt updated - > cmp scripts/testscript.txt testscript-new.txt +=== CONT TestScripts/setupfiles + testscript.go:584: # check that the Setup function saw the unarchived files, + # including the temp directory that's always created. (0.000s) + > setup-filenames .tmp a b PASS +=== CONT TestScripts/testscript_notfound +=== CONT TestScripts/testscript_update_script === NAME TestScripts/testscript_update_script_actual_is_file testscript.go:584: > unquote scripts/testscript.txt > unquote testscript-new.txt @@ -3171,59 +3204,8 @@ > cmp scripts/testscript.txt testscript-new.txt PASS -=== CONT TestScripts/kill -=== CONT TestScripts/testscript_notfound -=== CONT TestScripts/testscript_stdout_stderr_error -=== NAME TestScripts/stdin - testscript.go:584: > [!exec:cat] skip - > stdin hello.txt - > exec cat - [stdout] - hello - - > stdout hello - > exec cat - > ! stdout hello - > [!exec:cat] stop - # Check that 'stdin stdout' works. (0.000s) - > exec cat hello.txt - [stdout] - hello - - > stdin stdout - > exec cat - [stdout] - hello - - > stdout hello - PASS - -=== CONT TestScripts/interrupt_implicit -=== NAME TestScripts/testscript_notfound - testscript.go:584: # Check that unknown commands output a useful error message (0.000s) - > ! testscript notfound - [stdout] - ** RUN script ** - > notexist - FAIL: $WORK/notfound/script.txt:1: unknown command "notexist" - - > stdout 'unknown command "notexist"' - > ! testscript negation - [stdout] - ** RUN script ** - > !exists file - FAIL: $WORK/negation/script.txt:1: unknown command "!exists" (did you mean "! exists"?) - - > stdout 'unknown command "!exists" \(did you mean "! exists"\?\)' - > ! testscript misspelled - [stdout] - ** RUN script ** - > exits file - FAIL: $WORK/misspelled/script.txt:1: unknown command "exits" (did you mean "exists"?) - - > stdout 'unknown command "exits" \(did you mean "exists"\?\)' - PASS - +=== CONT TestScripts/setenv +=== CONT TestScripts/testscript_logging === NAME TestScripts/big_diff testscript.go:584: # Verify the behaviour of cmp in the case of a diff between two # large files (with a large diff) (0.000s) @@ -5293,7 +5275,7 @@ > env WORK=$WORK - PATH=/tmp/testscript-main925831645/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games + PATH=/tmp/testscript-main3374676712/bin:/usr/lib/go-1.24/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp @@ -5306,7 +5288,67 @@ > cmpenv stdout stdout.golden PASS -=== CONT TestScripts/cpstdout +=== NAME TestScripts/testscript_notfound + testscript.go:584: # Check that unknown commands output a useful error message (0.000s) + > ! testscript notfound + [stdout] + ** RUN script ** + > notexist + FAIL: $WORK/notfound/script.txt:1: unknown command "notexist" + + > stdout 'unknown command "notexist"' + > ! testscript negation + [stdout] + ** RUN script ** + > !exists file + FAIL: $WORK/negation/script.txt:1: unknown command "!exists" (did you mean "! exists"?) + + > stdout 'unknown command "!exists" \(did you mean "! exists"\?\)' + > ! testscript misspelled + [stdout] + ** RUN script ** + > exits file + FAIL: $WORK/misspelled/script.txt:1: unknown command "exits" (did you mean "exists"?) + + > stdout 'unknown command "exits" \(did you mean "exists"\?\)' + PASS + +=== NAME TestScripts/setenv + testscript.go:584: > setSpecialVal + > exists $SPECIALVAL.txt + > ensureSpecialVal + PASS + +=== CONT TestScripts/regexpquote +=== CONT TestScripts/testscript_explicit_files +=== NAME TestScripts/testscript_stdout_stderr_error + testscript.go:584: # Verify that stdout and stderr get set event when a user-builtin + # command aborts. Note that we need to assert against stdout + # because our meta testscript command sees only a single log. (0.000s) + > unquote scripts/testscript.txt + > ! testscript -v scripts + [stdout] + ** RUN testscript ** + > printargs hello world + [stdout] + ["printargs" "hello" "world"] + > echoandexit 1 'this is stdout' 'this is stderr' + [stdout] + this is stdout + [stderr] + this is stderr + FAIL: $WORK/scripts/testscript.txt:2: told to exit with code 1 + + > cmpenv stdout stdout.golden + PASS + +=== NAME TestScripts/regexpquote + testscript.go:584: > env XXX='hello)' + > grep ^${XXX@R}$ file.txt + PASS + +=== CONT TestScripts/readfile +=== CONT TestScripts/testscript_explicit_exec === NAME TestScripts/kill testscript.go:584: > [!exec:sleep] skip # This test depends on sleep exiting with a non-success status when being @@ -5320,8 +5362,6 @@ [background] sleep 5: signal: interrupt PASS -=== CONT TestScripts/exists -=== CONT TestScripts/hello === NAME TestScripts/kill_unnamed testscript.go:584: > [!exec:sleep] skip # This test depends on sleep exiting with a non-success status when being @@ -5338,84 +5378,129 @@ [background] sleep 5: signal: killed PASS -=== NAME TestScripts/exists - testscript.go:584: > chmod 444 foo_r - > exists foo - > ! exists unfoo - # TODO The following line fails but probably should not. - # ! exists -readonly foo (0.000s) - > exists foo_r - > exists -readonly foo_r +=== CONT TestScripts/commandstatus +=== CONT TestScripts/command +=== NAME TestScripts/testscript_explicit_files + testscript.go:584: # Check that we can pass an explicit set of files to be tested. (0.000s) + > ! testscript -files foo.txtar x/bar.txtar y/bar.txtar 'y/bar#1.txtar' + [stdout] + ** RUN foo ** + PASS + ** RUN bar ** PASS + ** RUN bar#1 ** + > echoandexit 1 '' 'bar#1 failure' + [stderr] + bar#1 failure + FAIL: $WORK/y/bar.txtar:1: told to exit with code 1 + ** RUN bar#1#1 ** + > echoandexit 1 '' 'bar#1#1 failure' + [stderr] + bar#1#1 failure + FAIL: $WORK/y/bar#1.txtar:1: told to exit with code 1 -=== CONT TestScripts/execguard -=== NAME TestScripts/cpstdout - testscript.go:584: > [!exec:cat] stop - # hello world (0.000s) - > exec cat hello.text - [stdout] - hello world - > cp stdout got - > cmp got hello.text - > ! cmp got different.text - > exists got - > mv got new - > ! exists got - > cmp new hello.text + > cmpenv stdout expect-stdout PASS === CONT TestScripts/pty -=== CONT TestScripts/command -=== NAME TestScripts/testscript_explicit_exec - testscript.go:584: # Check that RequireExplicitExec works; - # it should reject `fprintargs` in favor of `exec fprintargs`, - # but it shouldn't complain about `some-param-cmd`, - # as that Params.Cmds entry won't work via `exec some-param-cmd`. (0.000s) - > unquote scripts-implicit/testscript.txt - > unquote scripts-explicit/testscript.txt - > testscript scripts-implicit +=== CONT TestScripts/exec_path_change +=== NAME TestScripts/interrupt + testscript.go:584: > [windows] skip + > signalcatcher & + > waitfile catchsignal + > interrupt + > wait + [background] signalcatcher: exit status 0 [stdout] - ** RUN testscript ** + caught interrupt + > stdout 'caught interrupt' PASS - > testscript scripts-explicit +=== CONT TestScripts/cmpenv +=== NAME TestScripts/testscript_update_script + testscript.go:584: # Check that we support both txt and txtar extensions. (0.000s) + > unquote scripts/testscript.txt + > unquote testscript-new.txt + > cp scripts/testscript.txt scripts/testscript2.txtar + > testscript -update scripts [stdout] ** RUN testscript ** PASS + $WORK/scripts/testscript.txt updated + ** RUN testscript2 ** + PASS + $WORK/scripts/testscript2.txtar updated - > ! testscript -explicit-exec scripts-implicit + > cmp scripts/testscript.txt testscript-new.txt + > cmp scripts/testscript2.txtar testscript-new.txt + PASS + +=== CONT TestScripts/cmd_stdout_stderr +=== NAME TestScripts/cmpenv + testscript.go:584: > env $=$ + > cmpenv file1 file2 + PASS + +=== NAME TestScripts/command + testscript.go:584: > printargs a b 'c d' [stdout] - ** RUN testscript ** - > fprintargs stdout right - FAIL: $WORK/scripts-implicit/testscript.txt:1: use 'exec fprintargs' rather than 'fprintargs' (because RequireExplicitExec is enabled) + ["printargs" "a" "b" "c d"] + > stdout '\["printargs" "a" "b" "c d"\]\n' + PASS - > testscript -explicit-exec scripts-explicit +=== NAME TestScripts/pty + testscript.go:584: > [!linux] [!darwin] skip + > [darwin] skip # https://go.dev/issue/61779 + > ttyin secretwords.txt + > terminalprompt + > ttyout 'magic words' + > ! stderr . + > ! stdout . + PASS + +=== NAME TestScripts/readfile + testscript.go:584: > fprintargs stdout stdout [stdout] - ** RUN testscript ** + stdout + > testreadfile stdout + > fprintargs stderr stderr + [stderr] + stderr + > testreadfile stderr + > testreadfile x/somefile PASS +=== NAME TestScripts/interrupt_implicit + testscript.go:584: # Let testscript stop signalcatcher at the end of the testscript. (0.000s) + > signalcatcher & + > waitfile catchsignal + [background] signalcatcher: exit status 0 + [stdout] + caught interrupt PASS -=== CONT TestScripts/cmpenv -=== NAME TestScripts/testscript_stdout_stderr_error - testscript.go:584: # Verify that stdout and stderr get set event when a user-builtin - # command aborts. Note that we need to assert against stdout - # because our meta testscript command sees only a single log. (0.000s) - > unquote scripts/testscript.txt - > ! testscript -v scripts +=== NAME TestScripts/stdin + testscript.go:584: > [!exec:cat] skip + > stdin hello.txt + > exec cat [stdout] - ** RUN testscript ** - > printargs hello world + hello + + > stdout hello + > exec cat + > ! stdout hello + > [!exec:cat] stop + # Check that 'stdin stdout' works. (0.000s) + > exec cat hello.txt [stdout] - ["printargs" "hello" "world"] - > echoandexit 1 'this is stdout' 'this is stderr' + hello + + > stdin stdout + > exec cat [stdout] - this is stdout - [stderr] - this is stderr - FAIL: $WORK/scripts/testscript.txt:2: told to exit with code 1 + hello - > cmpenv stdout stdout.golden + > stdout hello PASS === NAME TestScripts/wait @@ -5473,94 +5558,42 @@ [background] sleep 86400: signal: interrupt PASS -=== CONT TestScripts/commandstatus -=== NAME TestScripts/cmpenv - testscript.go:584: > env $=$ - > cmpenv file1 file2 - PASS - -=== CONT TestScripts/cmd_stdout_stderr -=== NAME TestScripts/hello - testscript.go:584: > [!exec:cat] stop - # hello world (0.000s) - > exec cat hello.text - [stdout] - hello world - > stdout 'hello world\n' - > ! stderr . - PASS - -=== NAME TestScripts/execguard - testscript.go:584: > [exec:nosuchcommand] exec nosuchcommand - > [!exec:cat] stop - > exec cat foo - [stdout] - foo - > stdout 'foo\n' +=== NAME TestScripts/commandstatus + testscript.go:584: > ! status 1 + [exit status 1] + > ! status 2 + [exit status 2] + > status 0 PASS -=== NAME TestScripts/command - testscript.go:584: > printargs a b 'c d' +=== NAME TestScripts/testscript_explicit_exec + testscript.go:584: # Check that RequireExplicitExec works; + # it should reject `fprintargs` in favor of `exec fprintargs`, + # but it shouldn't complain about `some-param-cmd`, + # as that Params.Cmds entry won't work via `exec some-param-cmd`. (0.000s) + > unquote scripts-implicit/testscript.txt + > unquote scripts-explicit/testscript.txt + > testscript scripts-implicit [stdout] - ["printargs" "a" "b" "c d"] - > stdout '\["printargs" "a" "b" "c d"\]\n' + ** RUN testscript ** PASS -=== NAME TestScripts/testscript_update_script - testscript.go:584: # Check that we support both txt and txtar extensions. (0.000s) - > unquote scripts/testscript.txt - > unquote testscript-new.txt - > cp scripts/testscript.txt scripts/testscript2.txtar - > testscript -update scripts + > testscript scripts-explicit [stdout] ** RUN testscript ** PASS - $WORK/scripts/testscript.txt updated - ** RUN testscript2 ** - PASS - $WORK/scripts/testscript2.txtar updated - > cmp scripts/testscript.txt testscript-new.txt - > cmp scripts/testscript2.txtar testscript-new.txt - PASS - -=== NAME TestScripts/interrupt - testscript.go:584: > [windows] skip - > signalcatcher & - > waitfile catchsignal - > interrupt - > wait - [background] signalcatcher: exit status 0 + > ! testscript -explicit-exec scripts-implicit [stdout] - caught interrupt - > stdout 'caught interrupt' - PASS - -=== NAME TestScripts/pty - testscript.go:584: > [!linux] [!darwin] skip - > [darwin] skip # https://go.dev/issue/61779 - > ttyin secretwords.txt - > terminalprompt - > ttyout 'magic words' - > ! stderr . - > ! stdout . - PASS + ** RUN testscript ** + > fprintargs stdout right + FAIL: $WORK/scripts-implicit/testscript.txt:1: use 'exec fprintargs' rather than 'fprintargs' (because RequireExplicitExec is enabled) -=== NAME TestScripts/interrupt_implicit - testscript.go:584: # Let testscript stop signalcatcher at the end of the testscript. (0.000s) - > signalcatcher & - > waitfile catchsignal - [background] signalcatcher: exit status 0 + > testscript -explicit-exec scripts-explicit [stdout] - caught interrupt + ** RUN testscript ** PASS -=== NAME TestScripts/commandstatus - testscript.go:584: > ! status 1 - [exit status 1] - > ! status 2 - [exit status 2] - > status 0 PASS === NAME TestScripts/cmd_stdout_stderr @@ -5742,52 +5775,52 @@ --- PASS: TestScripts (0.00s) --- PASS: TestScripts/nothing (0.00s) - --- PASS: TestScripts/regexpquote (0.00s) - --- PASS: TestScripts/setenv (0.00s) - --- PASS: TestScripts/setupfiles (0.00s) - --- PASS: TestScripts/long_diff (0.00s) --- PASS: TestScripts/values (0.00s) - --- PASS: TestScripts/cond (0.00s) - --- PASS: TestScripts/testscript_duplicate_name (0.00s) + --- PASS: TestScripts/long_diff (0.00s) --- PASS: TestScripts/defer (0.00s) - --- PASS: TestScripts/testscript_update_script_expected_not_in_archive (0.03s) - --- PASS: TestScripts/testscript_update_script_quote (0.03s) --- PASS: TestScripts/custom_cd (0.00s) - --- PASS: TestScripts/testscript_explicit_files (0.04s) - --- PASS: TestScripts/evalsymlink (0.03s) - --- PASS: TestScripts/readfile (0.04s) - --- PASS: TestScripts/testscript_update_script_stderr (0.03s) + --- PASS: TestScripts/cond (0.00s) + --- PASS: TestScripts/exists (0.00s) + --- PASS: TestScripts/cpstdout (0.03s) + --- PASS: TestScripts/evalsymlink (0.04s) + --- PASS: TestScripts/hello (0.04s) + --- PASS: TestScripts/execguard (0.04s) + --- PASS: TestScripts/testscript_update_script_quote (0.04s) + --- PASS: TestScripts/testscript_update_script_expected_not_in_archive (0.04s) + --- PASS: TestScripts/testscript_duplicate_name (0.00s) + --- PASS: TestScripts/setupfiles (0.00s) + --- PASS: TestScripts/testscript_update_script_stderr (0.04s) --- PASS: TestScripts/testscript_update_script_actual_is_file (0.00s) - --- PASS: TestScripts/stdin (0.04s) - --- PASS: TestScripts/testscript_notfound (0.01s) - --- PASS: TestScripts/big_diff (0.05s) + --- PASS: TestScripts/setenv (0.00s) + --- PASS: TestScripts/testscript_notfound (0.00s) + --- PASS: TestScripts/testscript_stdout_stderr_error (0.00s) + --- PASS: TestScripts/regexpquote (0.00s) + --- PASS: TestScripts/big_diff (0.04s) --- PASS: TestScripts/kill (0.01s) - --- PASS: TestScripts/kill_unnamed (0.01s) - --- PASS: TestScripts/exists (0.00s) - --- PASS: TestScripts/cpstdout (0.00s) - --- PASS: TestScripts/testscript_explicit_exec (0.05s) - --- PASS: TestScripts/testscript_stdout_stderr_error (0.01s) - --- PASS: TestScripts/wait (0.05s) + --- PASS: TestScripts/kill_unnamed (0.04s) + --- PASS: TestScripts/testscript_explicit_files (0.00s) + --- PASS: TestScripts/interrupt (0.05s) + --- PASS: TestScripts/testscript_update_script (0.01s) --- PASS: TestScripts/cmpenv (0.00s) - --- PASS: TestScripts/hello (0.01s) - --- PASS: TestScripts/execguard (0.01s) --- PASS: TestScripts/command (0.01s) - --- PASS: TestScripts/testscript_update_script (0.02s) - --- PASS: TestScripts/interrupt (0.02s) --- PASS: TestScripts/pty (0.01s) - --- PASS: TestScripts/interrupt_implicit (0.02s) + --- PASS: TestScripts/readfile (0.01s) + --- PASS: TestScripts/interrupt_implicit (0.05s) + --- PASS: TestScripts/stdin (0.01s) + --- PASS: TestScripts/wait (0.05s) --- PASS: TestScripts/commandstatus (0.01s) - --- PASS: TestScripts/cmd_stdout_stderr (0.02s) - --- PASS: TestScripts/testscript_logging (0.10s) - --- PASS: TestScripts/exec_path_change (5.72s) + --- PASS: TestScripts/testscript_explicit_exec (0.02s) + --- PASS: TestScripts/cmd_stdout_stderr (0.03s) + --- PASS: TestScripts/testscript_logging (0.06s) + --- PASS: TestScripts/exec_path_change (4.13s) === RUN TestTestwork ---- PASS: TestTestwork (1.81s) +--- PASS: TestTestwork (1.14s) === RUN TestWorkdirRoot === RUN TestWorkdirRoot/run_tests === RUN TestWorkdirRoot/run_tests/nothing === PAUSE TestWorkdirRoot/run_tests/nothing === CONT TestWorkdirRoot/run_tests/nothing - testscript.go:584: WORK=/tmp/TestWorkdirRoot3525152443/001/script-nothing + testscript.go:584: WORK=/tmp/TestWorkdirRoot3164820641/001/script-nothing # Intentionally empty test script; used to test Params.WorkdirRoot (0.000s) PASS @@ -5799,7 +5832,7 @@ === RUN TestUNIX2DOS --- PASS: TestUNIX2DOS (0.00s) PASS -ok github.com/rogpeppe/go-internal/testscript 7.548s +ok github.com/rogpeppe/go-internal/testscript 5.323s ? github.com/rogpeppe/go-internal/testscript/internal/pty [no test files] === RUN Test === RUN Test/basic @@ -5828,7 +5861,7 @@ --- PASS: TestQuote/bad_data (0.00s) --- PASS: TestQuote/no_final_newline (0.00s) PASS -ok github.com/rogpeppe/go-internal/txtar 0.007s +ok github.com/rogpeppe/go-internal/txtar 0.005s patch -R -p1 -i debian/0001-Allow-TestSimple-cover-to-PASS.patch patching file _build/src/github.com/rogpeppe/go-internal/testscript/testscript.go Hunk #1 succeeded at 1194 (offset 96 lines). @@ -5857,8 +5890,8 @@ dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang dh_md5sums -O--builddirectory=_build -O--buildsystem=golang dh_builddeb -O--builddirectory=_build -O--buildsystem=golang -dpkg-deb: building package 'go-internal-dbgsym' in '../go-internal-dbgsym_1.14.1-1_arm64.deb'. dpkg-deb: building package 'go-internal' in '../go-internal_1.14.1-1_arm64.deb'. +dpkg-deb: building package 'go-internal-dbgsym' in '../go-internal-dbgsym_1.14.1-1_arm64.deb'. dpkg-deb: building package 'golang-github-rogpeppe-go-internal-dev' in '../golang-github-rogpeppe-go-internal-dev_1.14.1-1_all.deb'. dpkg-genbuildinfo --build=binary -O../golang-github-rogpeppe-go-internal_1.14.1-1_arm64.buildinfo dpkg-genchanges --build=binary -O../golang-github-rogpeppe-go-internal_1.14.1-1_arm64.changes @@ -5867,12 +5900,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/1366970/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/1366970/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/2811586 and its subdirectories -I: Current time: Thu Sep 25 05:09:10 -12 2025 -I: pbuilder-time-stamp: 1758820150 +I: removing directory /srv/workspace/pbuilder/1366970 and its subdirectories +I: Current time: Thu Oct 29 13:33:36 +14 2026 +I: pbuilder-time-stamp: 1793230416