Input buildinfo: https://buildinfos.debian.net/buildinfo-pool/g/golang-github-rogpeppe-go-internal/golang-github-rogpeppe-go-internal_1.8.0-4_amd64.buildinfo Use metasnap for getting required timestamps New buildinfo file: /tmp/golang-github-rogpeppe-go-internal-1.8.0-4r1g4uwle/golang-github-rogpeppe-go-internal_1.8.0-4_amd64.buildinfo Get source package info: golang-github-rogpeppe-go-internal=1.8.0-4 Source URL: http://snapshot.notset.fr/mr/package/golang-github-rogpeppe-go-internal/1.8.0-4/srcfiles?fileinfo=1 env -i PATH=/usr/sbin:/usr/bin:/sbin:/bin TMPDIR=/tmp mmdebstrap --arch=amd64 --include=autoconf=2.71-2 automake=1:1.16.5-1.1 autopoint=0.21-4 autotools-dev=20180224.1+nmu1 base-files=12 base-passwd=3.5.52 bash=5.1-5+b1 binutils=2.37-10 binutils-common=2.37-10 binutils-x86-64-linux-gnu=2.37-10 bsdextrautils=2.37.2-4 bsdutils=1:2.37.2-4 build-essential=12.9 bzip2=1.0.8-5 ca-certificates=20211016 coreutils=8.32-4.1 cpp=4:11.2.0-2 cpp-11=11.2.0-12 dash=0.5.11+git20210903+057cd650a4ed-3 debconf=1.5.79 debhelper=13.5.2 debianutils=5.5-1 dh-autoreconf=20 dh-golang=1.53 dh-strip-nondeterminism=1.12.1-1 diffutils=1:3.7-5 dpkg=1.21.1 dpkg-dev=1.21.1 dwz=0.14-1 file=1:5.41-2 findutils=4.8.0-1 g++=4:11.2.0-2 g++-11=11.2.0-12 gcc=4:11.2.0-2 gcc-11=11.2.0-12 gcc-11-base=11.2.0-12 gettext=0.21-4 gettext-base=0.21-4 golang-1.17-go=1.17.5-1 golang-1.17-src=1.17.5-1 golang-any=2:1.17~1 golang-github-creack-pty-dev=1.1.15-1 golang-github-kr-pretty-dev=0.3.0-1 golang-github-kr-text-dev=0.2.0-1 golang-github-pkg-diff-dev=0.0~git20210226.20ebb0f-1 golang-github-rogpeppe-go-internal-dev=1.8.0-3 golang-go=2:1.17~1 golang-gopkg-check.v1-dev=0.0+git20200902.038fdea-1 golang-gopkg-errgo.v2-dev=2.1.0-2 golang-src=2:1.17~1 grep=3.7-1 groff-base=1.22.4-7 gzip=1.10-4 hostname=3.23 init-system-helpers=1.61 intltool-debian=0.35.0+20060710.5 libacl1=2.3.1-1 libarchive-zip-perl=1.68-1 libasan6=11.2.0-12 libatomic1=11.2.0-12 libattr1=1:2.5.1-1 libaudit-common=1:3.0.6-1 libaudit1=1:3.0.6-1+b1 libbinutils=2.37-10 libblkid1=2.37.2-4 libbz2-1.0=1.0.8-5 libc-bin=2.33-1 libc-dev-bin=2.33-1 libc6=2.33-1 libc6-dev=2.33-1 libcap-ng0=0.7.9-2.2+b1 libcap2=1:2.44-1 libcc1-0=11.2.0-12 libcom-err2=1.46.4-1 libcrypt-dev=1:4.4.26-1 libcrypt1=1:4.4.26-1 libctf-nobfd0=2.37-10 libctf0=2.37-10 libdb5.3=5.3.28+dfsg1-0.8 libdebconfclient0=0.261 libdebhelper-perl=13.5.2 libdpkg-perl=1.21.1 libelf1=0.186-1 libfile-stripnondeterminism-perl=1.12.1-1 libgcc-11-dev=11.2.0-12 libgcc-s1=11.2.0-12 libgcrypt20=1.9.4-5 libgdbm-compat4=1.22-1 libgdbm6=1.22-1 libgmp10=2:6.2.1+dfsg-3 libgomp1=11.2.0-12 libgpg-error0=1.42-3 libgssapi-krb5-2=1.18.3-7 libicu67=67.1-7 libisl23=0.24-2 libitm1=11.2.0-12 libk5crypto3=1.18.3-7 libkeyutils1=1.6.1-2 libkrb5-3=1.18.3-7 libkrb5support0=1.18.3-7 liblsan0=11.2.0-12 liblz4-1=1.9.3-2 liblzma5=5.2.5-2 libmagic-mgc=1:5.41-2 libmagic1=1:5.41-2 libmount1=2.37.2-4 libmpc3=1.2.1-1 libmpfr6=4.1.0-3 libnsl-dev=1.3.0-2 libnsl2=1.3.0-2 libpam-modules=1.4.0-11 libpam-modules-bin=1.4.0-11 libpam-runtime=1.4.0-11 libpam0g=1.4.0-11 libpcre2-8-0=10.39-3 libpcre3=2:8.39-13 libperl5.32=5.32.1-6 libpipeline1=1.5.4-1 libquadmath0=11.2.0-12 libseccomp2=2.5.3-2 libselinux1=3.3-1+b1 libsigsegv2=2.13-1 libsmartcols1=2.37.2-4 libssl1.1=1.1.1l-1 libstdc++-11-dev=11.2.0-12 libstdc++6=11.2.0-12 libsub-override-perl=0.09-2 libsystemd0=249.7-1 libtinfo6=6.3-1 libtirpc-common=1.3.2-2 libtirpc-dev=1.3.2-2 libtirpc3=1.3.2-2 libtool=2.4.6-15 libtsan0=11.2.0-12 libubsan1=11.2.0-12 libuchardet0=0.0.7-1 libudev1=249.7-1 libunistring2=0.9.10-6 libuuid1=2.37.2-4 libxml2=2.9.12+dfsg-5+b1 libzstd1=1.4.8+dfsg-3 linux-libc-dev=5.15.5-1 login=1:4.8.1-2 lsb-base=11.1.0 m4=1.4.18-5 make=4.3-4.1 man-db=2.9.4-2 mawk=1.3.4.20200120-2 ncurses-base=6.3-1 ncurses-bin=6.3-1 openssl=1.1.1l-1 patch=2.7.6-7 perl=5.32.1-6 perl-base=5.32.1-6 perl-modules-5.32=5.32.1-6 po-debconf=1.0.21+nmu1 rpcsvc-proto=1.4.2-4 sed=4.8-1 sensible-utils=0.0.17 sysvinit-utils=3.01-1 tar=1.34+dfsg-1 util-linux=2.37.2-4 xz-utils=5.2.5-2 zlib1g=1:1.2.11.dfsg-2 --variant=apt --aptopt=Acquire::Check-Valid-Until "false" --aptopt=Acquire::http::Dl-Limit "1000"; --aptopt=Acquire::https::Dl-Limit "1000"; --aptopt=Acquire::Retries "5"; --aptopt=APT::Get::allow-downgrades "true"; --keyring=/usr/share/keyrings/ --essential-hook=chroot "$1" sh -c "apt-get --yes install fakeroot util-linux" --essential-hook=copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ --essential-hook=chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20211219T030431Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20211219T030431Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20211227T221822Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20211216T085418Z/ unstable main' >> /etc/apt/sources.list && apt-get update" --customize-hook=chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash --customize-hook=chroot "$1" env sh -c "apt-get source --only-source -d golang-github-rogpeppe-go-internal=1.8.0-4 && mkdir -p /build/golang-github-rogpeppe-go-internal-ZYHAvR && dpkg-source --no-check -x /*.dsc /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0 && chown -R builduser:builduser /build/golang-github-rogpeppe-go-internal-ZYHAvR" --customize-hook=chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0 && env DEB_BUILD_OPTIONS="parallel=4" LC_ALL="C.UTF-8" LC_COLLATE="C.UTF-8" SOURCE_DATE_EPOCH="1639715478" dpkg-buildpackage -uc -a amd64 --build=any" --customize-hook=sync-out /build/golang-github-rogpeppe-go-internal-ZYHAvR /tmp/golang-github-rogpeppe-go-internal-1.8.0-4r1g4uwle bookworm /dev/null deb http://snapshot.notset.fr/archive/debian/20211216T085418Z unstable main I: automatically chosen mode: root I: chroot architecture amd64 is equal to the host's architecture I: automatically chosen format: tar I: using /tmp/mmdebstrap.RGhZg_DJS3 as tempdir I: running apt-get update... I: downloading packages with apt... I: extracting archives... I: installing essential packages... I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "apt-get --yes install fakeroot util-linux"' exec /tmp/mmdebstrap.RGhZg_DJS3 Reading package lists... Building dependency tree... util-linux is already the newest version (2.37.2-4). The following NEW packages will be installed: fakeroot libfakeroot 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 134 kB of archives. After this operation, 397 kB of additional disk space will be used. Get:1 http://snapshot.notset.fr/archive/debian/20211216T085418Z unstable/main amd64 libfakeroot amd64 1.26-1 [47.3 kB] Get:2 http://snapshot.notset.fr/archive/debian/20211216T085418Z unstable/main amd64 fakeroot amd64 1.26-1 [87.1 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 134 kB in 0s (1022 kB/s) Selecting previously unselected package libfakeroot:amd64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 4680 files and directories currently installed.) Preparing to unpack .../libfakeroot_1.26-1_amd64.deb ... Unpacking libfakeroot:amd64 (1.26-1) ... Selecting previously unselected package fakeroot. Preparing to unpack .../fakeroot_1.26-1_amd64.deb ... Unpacking fakeroot (1.26-1) ... Setting up libfakeroot:amd64 (1.26-1) ... Setting up fakeroot (1.26-1) ... update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode Processing triggers for libc-bin (2.33-1) ... I: running special hook: copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20211219T030431Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20211219T030431Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20211227T221822Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20211216T085418Z/ unstable main' >> /etc/apt/sources.list && apt-get update"' exec /tmp/mmdebstrap.RGhZg_DJS3 Get:1 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm InRelease [129 kB] Get:2 http://snapshot.notset.fr/archive/debian/20211227T221822Z unstable InRelease [165 kB] Hit:3 http://snapshot.notset.fr/archive/debian/20211216T085418Z unstable InRelease Ign:4 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main amd64 Packages Get:4 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main Sources [11.8 MB] Get:5 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main amd64 Packages [11.2 MB] Ign:6 http://snapshot.notset.fr/archive/debian/20211227T221822Z unstable/main amd64 Packages Err:6 http://snapshot.notset.fr/archive/debian/20211227T221822Z unstable/main amd64 Packages 404 Not Found [IP: 10.13.0.253 80] Ign:6 http://snapshot.notset.fr/archive/debian/20211227T221822Z unstable/main amd64 Packages Get:6 http://snapshot.notset.fr/archive/debian/20211227T221822Z unstable/main amd64 Packages [12.0 MB] Fetched 35.3 MB in 29s (1218 kB/s) Reading package lists... I: installing remaining packages inside the chroot... I: running --customize-hook in shell: sh -c 'chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash' exec /tmp/mmdebstrap.RGhZg_DJS3 I: running --customize-hook in shell: sh -c 'chroot "$1" env sh -c "apt-get source --only-source -d golang-github-rogpeppe-go-internal=1.8.0-4 && mkdir -p /build/golang-github-rogpeppe-go-internal-ZYHAvR && dpkg-source --no-check -x /*.dsc /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0 && chown -R builduser:builduser /build/golang-github-rogpeppe-go-internal-ZYHAvR"' exec /tmp/mmdebstrap.RGhZg_DJS3 Reading package lists... NOTICE: 'golang-github-rogpeppe-go-internal' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/go-team/packages/golang-github-rogpeppe-go-internal.git Please use: git clone https://salsa.debian.org/go-team/packages/golang-github-rogpeppe-go-internal.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 136 kB of source archives. Get:1 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main golang-github-rogpeppe-go-internal 1.8.0-4 (dsc) [2513 B] Get:2 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main golang-github-rogpeppe-go-internal 1.8.0-4 (tar) [129 kB] Get:3 http://snapshot.notset.fr/archive/debian/20211219T030431Z bookworm/main golang-github-rogpeppe-go-internal 1.8.0-4 (diff) [4272 B] Fetched 136 kB in 0s (655 kB/s) Download complete and in download only mode W: Download is performed unsandboxed as root as file 'golang-github-rogpeppe-go-internal_1.8.0-4.dsc' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) dpkg-source: info: extracting golang-github-rogpeppe-go-internal in /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0 dpkg-source: info: unpacking golang-github-rogpeppe-go-internal_1.8.0.orig.tar.gz dpkg-source: info: unpacking golang-github-rogpeppe-go-internal_1.8.0-4.debian.tar.xz I: running --customize-hook in shell: sh -c 'chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0 && env DEB_BUILD_OPTIONS="parallel=4" LC_ALL="C.UTF-8" LC_COLLATE="C.UTF-8" SOURCE_DATE_EPOCH="1639715478" dpkg-buildpackage -uc -a amd64 --build=any"' exec /tmp/mmdebstrap.RGhZg_DJS3 dpkg-buildpackage: info: source package golang-github-rogpeppe-go-internal dpkg-buildpackage: info: source version 1.8.0-4 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Anthony Fok dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --builddirectory=_build --buildsystem=golang dh_auto_clean -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf_clean -O--builddirectory=_build -O--buildsystem=golang dh_clean -O--builddirectory=_build -O--buildsystem=golang debian/rules binary-arch dh binary-arch --builddirectory=_build --buildsystem=golang dh_update_autotools_config -a -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf -a -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure -a -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure: warning: "github.com/rogpeppe/go-internal" is already installed. Please check for circular dependencies. dh_auto_build -a -O--builddirectory=_build -O--buildsystem=golang cd _build && go install -trimpath -v -p 4 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/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/os/execpath github.com/rogpeppe/go-internal/internal/syscall/windows github.com/rogpeppe/go-internal/internal/syscall/windows/registry github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll github.com/rogpeppe/go-internal/internal/textutil 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/semver github.com/rogpeppe/go-internal/testenv github.com/rogpeppe/go-internal/testscript github.com/rogpeppe/go-internal/txtar internal/unsafeheader internal/goexperiment internal/abi internal/cpu runtime/internal/atomic runtime/internal/sys internal/race runtime/internal/math sync/atomic internal/bytealg unicode unicode/utf8 math/bits internal/itoa math encoding unicode/utf16 runtime github.com/rogpeppe/go-internal/semver internal/nettrace container/list crypto/internal/subtle crypto/subtle vendor/golang.org/x/crypto/cryptobyte/asn1 vendor/golang.org/x/crypto/internal/subtle github.com/pkg/diff/intern internal/goversion github.com/rogpeppe/go-internal/internal/syscall/windows github.com/rogpeppe/go-internal/internal/syscall/windows/registry github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll gopkg.in/errgo.v2/errors internal/reflectlite sync internal/testlog internal/singleflight math/rand errors sort github.com/rogpeppe/go-internal/par io strconv internal/oserror path bytes hash reflect syscall crypto strings hash/crc32 vendor/golang.org/x/net/dns/dnsmessage bufio internal/syscall/unix time internal/syscall/execenv runtime/cgo encoding/binary internal/fmtsort internal/poll io/fs crypto/sha256 encoding/base64 os context crypto/cipher crypto/elliptic/internal/fiat fmt io/ioutil path/filepath crypto/aes encoding/hex flag compress/flate github.com/rogpeppe/go-internal/cache encoding/json github.com/rogpeppe/go-internal/module github.com/rogpeppe/go-internal/txtar archive/zip log net compress/gzip math/big crypto/des crypto/internal/randutil crypto/sha512 crypto/ed25519/internal/edwards25519/field crypto/ed25519/internal/edwards25519 crypto/hmac crypto/md5 crypto/rc4 crypto/rand crypto/elliptic encoding/asn1 crypto/ed25519 crypto/rsa crypto/sha1 crypto/dsa vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix encoding/pem net/url crypto/ecdsa vendor/golang.org/x/crypto/chacha20 vendor/golang.org/x/crypto/poly1305 vendor/golang.org/x/sys/cpu vendor/golang.org/x/crypto/curve25519 vendor/golang.org/x/crypto/hkdf vendor/golang.org/x/crypto/chacha20poly1305 vendor/golang.org/x/text/transform vendor/golang.org/x/text/unicode/bidi vendor/golang.org/x/text/unicode/norm vendor/golang.org/x/net/http2/hpack vendor/golang.org/x/text/secure/bidirule mime mime/quotedprintable crypto/x509 vendor/golang.org/x/net/idna net/textproto net/http/internal net/http/internal/ascii mime/multipart regexp/syntax vendor/golang.org/x/net/http/httpguts vendor/golang.org/x/net/http/httpproxy github.com/pkg/diff/edit crypto/tls github.com/pkg/diff/ctxt github.com/pkg/diff/myers regexp github.com/pkg/diff/write github.com/rogpeppe/go-internal/imports github.com/pkg/diff os/exec internal/sysinfo runtime/debug runtime/trace github.com/rogpeppe/go-internal/internal/os/execpath gopkg.in/errgo.v2/fmt/errors testing go/token go/build/constraint net/http/httptrace go/scanner internal/lazyregexp net/http github.com/rogpeppe/go-internal/testenv go/ast text/template/parse github.com/rogpeppe/go-internal/testscript text/template go/internal/typeparams internal/buildcfg go/parser internal/execabs internal/goroot github.com/rogpeppe/go-internal/cmd/txtar-addmod github.com/rogpeppe/go-internal/cmd/txtar-c go/doc go/build github.com/rogpeppe/go-internal/cmd/txtar-x github.com/rogpeppe/go-internal/dirhash github.com/rogpeppe/go-internal/gotooltest github.com/rogpeppe/go-internal/fmtsort github.com/rogpeppe/go-internal/goproxytest github.com/rogpeppe/go-internal/internal/textutil github.com/rogpeppe/go-internal/lockedfile/internal/filelock github.com/rogpeppe/go-internal/modfile github.com/rogpeppe/go-internal/cmd/testscript github.com/rogpeppe/go-internal/cmd/txtar-goproxy github.com/rogpeppe/go-internal/lockedfile github.com/rogpeppe/go-internal/renameio debian/rules override_dh_auto_test make[1]: Entering directory '/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0' patch -N -p1 -i debian/0001-Allow-TestSimple-cover-to-PASS.patch patching file _build/src/github.com/rogpeppe/go-internal/testscript/testscript.go GOPROXY= dh_auto_test cd _build && go test -vet=off -v -p 4 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/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/os/execpath github.com/rogpeppe/go-internal/internal/syscall/windows github.com/rogpeppe/go-internal/internal/syscall/windows/registry github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll github.com/rogpeppe/go-internal/internal/textutil 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/semver github.com/rogpeppe/go-internal/testenv github.com/rogpeppe/go-internal/testscript github.com/rogpeppe/go-internal/txtar === RUN TestBasic --- PASS: TestBasic (0.13s) === RUN TestGrowth --- PASS: TestGrowth (5.02s) === RUN TestVerifyPanic cache_test.go:139: go: internal cache error: cache verify failed: id=0100000000000000000000000000000000000000000000000000000000000000 changed:<<< >>> old: cb8379ac2098aa165029e3938a51da0bcecfc008fd6795f401178647f96c5b34 3 new: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad 3 --- PASS: TestVerifyPanic (0.03s) === RUN TestCacheLog --- PASS: TestCacheLog (0.04s) === RUN TestCacheTrim --- PASS: TestCacheTrim (0.12s) === RUN TestDefaultDir --- PASS: TestDefaultDir (0.00s) === RUN TestHash --- PASS: TestHash (0.00s) === RUN TestHashFile --- PASS: TestHashFile (0.00s) PASS ok github.com/rogpeppe/go-internal/cache 5.427s === RUN TestScripts === RUN TestScripts/env_values === PAUSE TestScripts/env_values === RUN TestScripts/env_var_no_go === PAUSE TestScripts/env_var_no_go === RUN TestScripts/env_var_with_go === PAUSE TestScripts/env_var_with_go === RUN TestScripts/error === PAUSE TestScripts/error === RUN TestScripts/help === PAUSE TestScripts/help === RUN TestScripts/nogo === PAUSE TestScripts/nogo === RUN TestScripts/noproxy === PAUSE TestScripts/noproxy === RUN TestScripts/simple === PAUSE TestScripts/simple === RUN TestScripts/skip === PAUSE TestScripts/skip === RUN TestScripts/update === PAUSE TestScripts/update === RUN TestScripts/work === PAUSE TestScripts/work === CONT TestScripts/env_values === CONT TestScripts/noproxy === CONT TestScripts/error === CONT TestScripts/update === CONT TestScripts/skip === CONT TestScripts/env_var_with_go === CONT TestScripts/nogo === CONT TestScripts/simple === CONT TestScripts/help === CONT TestScripts/work === CONT TestScripts/env_var_no_go === CONT TestScripts/help testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # Simply sanity check on help output (0.069s) > ! testscript -help [stderr] The testscript command runs github.com/rogpeppe/go-internal/testscript scripts in a fresh temporary work directory tree. Usage: testscript [-v] [-e VAR[=value]]... [-u] [-work] files... The testscript command is designed to make it easy to create self-contained reproductions of command sequences. Each file is opened as a script and run as described in the documentation for github.com/rogpeppe/go-internal/testscript. The special filename "-" is interpreted as the standard input. As a special case, supporting files/directories in the .gomodproxy subdirectory will be served via a github.com/rogpeppe/go-internal/goproxytest server which is available to each script via the GOPROXY environment variable. The contents of the .gomodproxy subdirectory are not available to the script except via the proxy server. See the documentation for github.com/rogpeppe/go-internal/goproxytest for details on the format of these files/directories. Environment variables can be passed through to each script with the -e flag, where VAR is the name of the variable. Variables override testscript-defined values, with the exception of WORK which cannot be overridden. The -e flag can appear multiple times to specify multiple variables. The -u flag specifies that if a cmp command within a testscript fails and its second argument refers to a file inside the testscript file, the command will succeed and the testscript file will be updated to reflect the actual content. As such, this is the cmd/testcript equivalent of testscript.Params.UpdateScripts. The -work flag prints the temporary work directory path before running each script, and does not remove that directory when testscript exits. Examples ======== The following example, fruit.txt, shows a simple reproduction that includes .gomodproxy supporting files: go get -m fruit.com go list fruit.com/... stdout 'fruit.com/fruit' -- go.mod -- module mod -- .gomodproxy/fruit.com_v1.0.0/.mod -- module fruit.com -- .gomodproxy/fruit.com_v1.0.0/.info -- {"Version":"v1.0.0","Time":"2018-10-22T18:45:39Z"} -- .gomodproxy/fruit.com_v1.0.0/fruit/fruit.go -- package fruit const Name = "Apple" Running testscript -v fruit.txt we get: ... > go get -m fruit.com [stderr] go: finding fruit.com v1.0.0 > go list fruit.com/... [stdout] fruit.com/fruit [stderr] go: downloading fruit.com v1.0.0 > stdout 'fruit.com/fruit' PASS The following example, goimports.txt, shows a simple reproduction involving goimports: go install golang.org/x/tools/cmd/goimports # check goimports help information exec goimports -d main.go stdout 'import "math"' -- go.mod -- module mod require golang.org/x/tools v0.0.0-20181221235234-d00ac6d27372 -- main.go -- package mod const Pi = math.Pi Running testscript -v goimports.txt we get: ... > go install golang.org/x/tools/cmd/goimports [stderr] go: finding golang.org/x/tools v0.0.0-20181221235234-d00ac6d27372 go: downloading golang.org/x/tools v0.0.0-20181221235234-d00ac6d27372 # check goimports help information (0.015s) > exec goimports -d main.go [stdout] diff -u main.go.orig main.go --- main.go.orig 2019-01-08 16:03:35.861907738 +0000 +++ main.go 2019-01-08 16:03:35.861907738 +0000 @@ -1,3 +1,5 @@ package mod +import "math" + const Pi = math.Pi > stdout 'import "math"' PASS [exit status 2] > ! stdout .+ > stderr 'The testscript command' > stderr 'Examples' PASS === CONT TestScripts/nogo testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # should support skip (0.061s) > 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.176s) > dropgofrompath > ! testscript -v file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > go env FAIL: $WORK/.tmp/testscript746069159/file.txt/script.txt:1: unknown command "go" [stderr] error running file.txt in $WORK/.tmp/testscript746069159/file.txt [exit status 1] > stdout 'unknown command "go"' > stderr 'error running file.txt in' PASS === CONT TestScripts/skip testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # should support skip (1.301s) > unquote file.txt > testscript -v file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > go version [stdout] go version go1.17.5 linux/amd64 > skip > stdout 'go version' > ! stderr .+ PASS === CONT TestScripts/update testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # should support the -update flag (0.050s) > unquote in.txt res.txt # Should be an error to use -u with only stdin (0.188s) > 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 (1.413s) > testscript -u - in.txt [stdout] PASS PASS $WORK/.tmp/testscript782991456/in.txt/script.txt updated > cmp in.txt res.txt PASS === CONT TestScripts/work testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 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. (1.784s) > unquote file.txt dir/file.txt > testscript -v -work file.txt dir/file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > exec true PASS WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > exec true PASS [stderr] temporary work directory: $WORK/.tmp/testscript58318567 temporary work directory for file.txt: $WORK/.tmp/go-test-script3793666213/script-script temporary work directory for dir/file.txt: $WORK/.tmp/go-test-script1515325752/script-script > stderr '^temporary work directory: \Q'$WORK'\E[/\\]\.tmp[/\\]' > stderr '^temporary work directory for file.txt: \Q'$WORK'\E[/\\]\.tmp[/\\]' > stderr '^temporary work directory for dir[/\\]file.txt: \Q'$WORK'\E[/\\]\.tmp[/\\]' > expandone $WORK/.tmp/testscript*/file.txt/script.txt > expandone $WORK/.tmp/testscript*/file.txt1/script.txt PASS === CONT TestScripts/simple testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # With .gomodproxy supporting files, any GOPROXY from the # environment should be overridden by the test proxy. (1.846s) > env GOPROXY=0.1.2.3 > unquote file.txt > testscript -v file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:42219/mod goversion=1.17 GONOSUMDB=* > go get -d fruit.com [stderr] 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 > stdout 'example.com/mod' > ! stderr .+ PASS === CONT TestScripts/noproxy testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # With no .gomodproxy supporting files, we use the GOPROXY from # the environment. (1.888s) > env GOPROXY=0.1.2.3 > unquote file.txt > testscript -v file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=0.1.2.3 goversion=1.17 > go env [stdout] GO111MODULE="" GOARCH="amd64" GOBIN="" GOCACHE="/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build" GOENV="/no-home/.config/go/env" GOEXE="" GOEXPERIMENT="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOINSECURE="" GOMODCACHE="$WORK/gopath/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="linux" GOPATH="$WORK/gopath" GOPRIVATE="" GOPROXY="0.1.2.3" GOROOT="/usr/lib/go-1.17" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/usr/lib/go-1.17/pkg/tool/linux_amd64" GOVCS="" GOVERSION="go1.17.5" GCCGO="gccgo" AR="ar" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="/dev/null" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK/.tmp/go-build1824530956=/tmp/go-build -gno-record-gcc-switches" > [!windows] stdout '^GOPROXY="0.1.2.3"$' > [windows] stdout '^set GOPROXY=0.1.2.3$' PASS PASS === CONT TestScripts/env_var_no_go testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # Test passing environment variables to scripts with no go command on PATH # # This is the counterpart to env_var_with_go.txt (0.091s) > unquote noproxy.txt > unquote withproxy.txt > dropgofrompath > env BANANA=banana > env GOPATH=$WORK/ourgopath > env GOPROXY= # no GOPROXY, no pass-through, no proxy (0.165s) > testscript -v noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > env BANANA BANANA= > env GOPATH GOPATH= > env GOPROXY GOPROXY= PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=$ > ! stderr .+ # no GOPROXY, no pass-through, with proxy (0.140s) > testscript -v withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPROXY=http://127.0.0.1:34227/mod GONOSUMDB=* > env BANANA BANANA= > env GOPATH GOPATH= > env GOPROXY GOPROXY=http://127.0.0.1:34227/mod PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ # no GOPROXY, with pass-through, no proxy (0.135s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= BANANA=banana GOPATH=$WORK/ourgopath GOPROXY= > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY= PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ # no GOPROXY, with pass-through, with proxy (0.479s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPROXY= GONOSUMDB=* BANANA=banana GOPATH=$WORK/ourgopath > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY= PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ > setfilegoproxy $WORK/proxy # with GOPROXY, no pass-through, no proxy (0.351s) > testscript -v noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > env BANANA BANANA= > env GOPATH GOPATH= > env GOPROXY GOPROXY= PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=$ > ! stderr .+ # with GOPROXY, no pass-through, with proxy (0.288s) > testscript -v withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPROXY=http://127.0.0.1:41127/mod GONOSUMDB=* > env BANANA BANANA= > env GOPATH GOPATH= > env GOPROXY GOPROXY=http://127.0.0.1:41127/mod PASS > stdout ^BANANA=$ > stdout ^GOPATH=$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ # with GOPROXY, with pass-through, no proxy (0.195s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= BANANA=banana GOPATH=$WORK/ourgopath GOPROXY=file://$WORK/proxy > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY=file://$WORK/proxy PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ # with GOPROXY, with pass-through, with proxy (0.155s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/sbin:/bin:/usr/sbin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPROXY=file://$WORK/proxy GONOSUMDB=* BANANA=banana GOPATH=$WORK/ourgopath > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY=file://$WORK/proxy PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ PASS === CONT TestScripts/error testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # should support skip (0.015s) > unquote file.txt # stdin (1.470s) > stdin file.txt > ! testscript -v [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > exec false [exit status 1] FAIL: $WORK/.tmp/testscript606426678/-/script.txt:1: unexpected command failure [stderr] error running in $WORK/.tmp/testscript606426678/- [exit status 1] > stderr 'error running in' # file-based (0.596s) > ! testscript -v file.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > exec false [exit status 1] FAIL: $WORK/.tmp/testscript1966978432/file.txt/script.txt:1: unexpected command failure [stderr] error running file.txt in $WORK/.tmp/testscript1966978432/file.txt [exit status 1] > stderr 'error running file.txt in' PASS === CONT TestScripts/env_values testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # Test that passing env values, e.g. ENV1=val, works (0.012s) > unquote test.txt > env BLAH1= > env BLAH2=junk # Normal operation (1.208s) > 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.896s) > ! testscript -e BLAH1=rubbish -e BLAH2 -e WORK test.txt [stdout] FAIL: $WORK/.tmp/testscript1017023851/test.txt/script.txt:0: cannot override WORK variable [stderr] error running test.txt in $WORK/.tmp/testscript1017023851/test.txt [exit status 1] > stdout 'cannot override WORK variable' PASS === CONT TestScripts/env_var_with_go testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNALMODPATH=. GONOSUMDB=* # Test passing environment variables to scripts with the go command on PATH # # Below where we check the output of testscript -v, we have to match against # the string literal $WORK because testscript rewrites the actual directory # to $WORK. Hence we don't want to expand this script's $WORK in such a comparison. # # This is the counterpart to env_var_no_go.txt (0.069s) > unquote noproxy.txt > unquote withproxy.txt # Baseline (1.093s) > testscript -v noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > env BANANA BANANA= > env GOPATH GOPATH=$WORK/gopath > env GOPROXY GOPROXY=https://proxy.golang.org,direct PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]gopath'$ > [!go1.13] stdout ^GOPROXY=$ > [go1.13] stdout ^GOPROXY=https://proxy.golang.org,direct$ > ! stderr .+ > env BANANA=banana > env GOPATH=$WORK/ourgopath > env GOPROXY= # no GOPROXY, no pass-through, no proxy (0.952s) > testscript -v noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 > env BANANA BANANA= > env GOPATH GOPATH=$WORK/gopath > env GOPROXY GOPROXY=https://proxy.golang.org,direct PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]gopath'$ > [!go1.13] stdout ^GOPROXY=$ > [go1.13] stdout ^GOPROXY=https://proxy.golang.org,direct$ > ! stderr .+ # no GOPROXY, no pass-through, with proxy (0.293s) > testscript -v withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:33109/mod goversion=1.17 GONOSUMDB=* > env BANANA BANANA= > env GOPATH GOPATH=$WORK/gopath > env GOPROXY GOPROXY=http://127.0.0.1:33109/mod PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]gopath'$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ # no GOPROXY, with pass-through, no proxy (0.339s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/ourgopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY= goversion=1.17 BANANA=banana > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY= PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ # no GOPROXY, with pass-through, with proxy (0.197s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/ourgopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY= goversion=1.17 GONOSUMDB=* BANANA=banana > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY= PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$ > ! stderr .+ > setfilegoproxy $WORK/proxy # with GOPROXY, no pass-through, no proxy (0.268s) > testscript -v noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=file://$WORK/proxy goversion=1.17 > env BANANA BANANA= > env GOPATH GOPATH=$WORK/gopath > env GOPROXY GOPROXY=file://$WORK/proxy PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]gopath'$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ # with GOPROXY, no pass-through, with proxy (0.296s) > testscript -v withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:37647/mod goversion=1.17 GONOSUMDB=* > env BANANA BANANA= > env GOPATH GOPATH=$WORK/gopath > env GOPROXY GOPROXY=http://127.0.0.1:37647/mod PASS > stdout ^BANANA=$ > stdout '^GOPATH=\$WORK[/\\]gopath'$ > stdout ^GOPROXY=http://.*/mod$ > ! stderr .+ # with GOPROXY, with pass-through, no proxy (0.180s) > testscript -v -e BANANA -e GOPATH -e GOPROXY noproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/ourgopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=file://$WORK/proxy goversion=1.17 BANANA=banana > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY=file://$WORK/proxy PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ # with GOPROXY, with pass-through, with proxy (0.183s) > testscript -v -e BANANA -e GOPATH -e GOPROXY withproxy.txt [stdout] WORK=$WORK PATH=/tmp/testscript-main1698448489/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/ourgopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=file://$WORK/proxy goversion=1.17 GONOSUMDB=* BANANA=banana > env BANANA BANANA=banana > env GOPATH GOPATH=$WORK/ourgopath > env GOPROXY GOPROXY=file://$WORK/proxy PASS > stdout ^BANANA=banana$ > stdout ^GOPATH=${WORK@R}[/\\]ourgopath$ > stdout ^GOPROXY=$GOPROXY$ > ! stderr .+ PASS --- PASS: TestScripts (0.33s) --- PASS: TestScripts/help (0.07s) --- PASS: TestScripts/nogo (0.24s) --- PASS: TestScripts/skip (1.30s) --- PASS: TestScripts/update (1.65s) --- PASS: TestScripts/work (1.79s) --- PASS: TestScripts/simple (1.87s) --- PASS: TestScripts/noproxy (1.89s) --- PASS: TestScripts/env_var_no_go (2.00s) --- PASS: TestScripts/error (2.08s) --- PASS: TestScripts/env_values (2.12s) --- PASS: TestScripts/env_var_with_go (3.87s) PASS ok github.com/rogpeppe/go-internal/cmd/testscript 4.270s === RUN TestScripts === RUN TestScripts/encode === PAUSE TestScripts/encode === RUN TestScripts/to_stdout === PAUSE TestScripts/to_stdout === RUN TestScripts/txtar-addmod-self === PAUSE TestScripts/txtar-addmod-self === CONT TestScripts/encode === CONT TestScripts/txtar-addmod-self === CONT TestScripts/to_stdout go proxy: no archive github.com v0.0.0-20171119174359-809beceb2371 go proxy: no archive github.com/shurcooL v0.0.0-20171119174359-809beceb2371 === CONT TestScripts/encode testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main120723759/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:35361/mod goversion=1.17 GONOSUMDB=* > mkdir $WORK/out > txtar-addmod $WORK/out github.com/shurcooL/httpfs@v0.0.0-20171119174359-809beceb2371 > ! stdout .+ > ! stderr .+ > exists $WORK/out/github.com_shurcoo!l_httpfs_v0.0.0-20171119174359-809beceb2371.txt PASS === CONT TestScripts/to_stdout testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main120723759/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:35361/mod goversion=1.17 GONOSUMDB=* > unquote expect > txtar-addmod - github.com/gobin-testrepos/simple-main [stdout] -- .gomodproxy/github.com_gobin-testrepos_simple-main_v1.0.0/.mod -- module github.com/gobin-testrepos/simple-main -- .gomodproxy/github.com_gobin-testrepos_simple-main_v1.0.0/.info -- {"Version":"v1.0.0","Time":"2018-10-22T18:45:39Z"} -- .gomodproxy/github.com_gobin-testrepos_simple-main_v1.0.0/go.mod -- module github.com/gobin-testrepos/simple-main -- .gomodproxy/github.com_gobin-testrepos_simple-main_v1.0.0/main.go -- package main import "fmt" func main() { fmt.Println("I am a simple module-based main") } > cmp stdout expect > ! stderr .+ PASS === CONT TestScripts/txtar-addmod-self testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main120723759/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:35361/mod goversion=1.17 GONOSUMDB=* > mkdir $WORK/out > txtar-addmod $WORK/out github.com/gobin-testrepos/simple-main > ! stdout .+ > ! stderr .+ > exists $WORK/out/github.com_gobin-testrepos_simple-main_v1.0.0.txt > ! grep foobar $WORK/out/github.com_gobin-testrepos_simple-main_v1.0.0.txt > txtar-addmod -all $WORK/out github.com/gobin-testrepos/simple-main > grep '-- foobar --' $WORK/out/github.com_gobin-testrepos_simple-main_v1.0.0.txt PASS --- PASS: TestScripts (0.15s) --- PASS: TestScripts/encode (0.31s) --- PASS: TestScripts/to_stdout (1.42s) --- PASS: TestScripts/txtar-addmod-self (2.50s) PASS ok github.com/rogpeppe/go-internal/cmd/txtar-addmod 2.687s === RUN TestScripts === RUN TestScripts/all === PAUSE TestScripts/all === RUN TestScripts/needquote === PAUSE TestScripts/needquote === RUN TestScripts/quote === PAUSE TestScripts/quote === RUN TestScripts/txtar-savedir-self === PAUSE TestScripts/txtar-savedir-self === CONT TestScripts/all === CONT TestScripts/quote === CONT TestScripts/needquote === CONT TestScripts/txtar-savedir-self testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main2090537860/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote expect > txtar-c blah [stdout] -- 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 === CONT TestScripts/needquote testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main2090537860/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote blah/withsep > unquote expect > txtar-c blah [stdout] -- nosep -- bar [stderr] txtar-c: blah/withsep: ignoring file with txtar marker in > stderr 'txtar-c: blah.withsep: ignoring file with txtar marker in' > cmp stdout expect PASS === CONT TestScripts/quote testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main2090537860/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote blah/withsep > unquote expect > txtar-c -quote blah [stdout] unquote withsep -- withsep -- >-- separator -- >foo > ! stderr .+ > cmp stdout expect PASS === CONT TestScripts/all testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main2090537860/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote expect-all > unquote expect-no-all # Without the -a flag, it should ignore . files. (0.036s) > txtar-c blah [stdout] -- go.mod -- module example.com/blah -- main.go -- package main import "fmt" func main() { fmt.Println("Hello, world!") } > ! stderr .+ > cmp stdout expect-no-all # With the -a flag, it should include them. (0.020s) > txtar-c -a blah [stdout] -- .foo/foo -- foo -- .other -- other -- go.mod -- module example.com/blah -- main.go -- package main import "fmt" func main() { fmt.Println("Hello, world!") } > ! stderr .+ > cmp stdout expect-all PASS --- PASS: TestScripts (0.00s) --- PASS: TestScripts/txtar-savedir-self (0.14s) --- PASS: TestScripts/quote (0.29s) --- PASS: TestScripts/needquote (0.71s) --- PASS: TestScripts/all (0.79s) PASS ok github.com/rogpeppe/go-internal/cmd/txtar-c 0.809s ? github.com/rogpeppe/go-internal/cmd/txtar-goproxy [no test files] === RUN TestScripts === RUN TestScripts/extract-dir === PAUSE TestScripts/extract-dir === RUN TestScripts/extract-out-of-bounds === PAUSE TestScripts/extract-out-of-bounds === RUN TestScripts/extract-stdin === PAUSE TestScripts/extract-stdin === RUN TestScripts/extract === PAUSE TestScripts/extract === CONT TestScripts/extract-dir === CONT TestScripts/extract-stdin === CONT TestScripts/extract-out-of-bounds === CONT TestScripts/extract === CONT TestScripts/extract-dir testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1069174526/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote file.txtar > txtar-x -C x/y file.txtar > cmp x/y/foo expect/foo > cmp x/y/a/b/bar expect/a/b/bar PASS === CONT TestScripts/extract testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1069174526/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote file.txtar > txtar-x file.txtar > cmp foo expect/foo > cmp a/b/bar expect/a/b/bar PASS === CONT TestScripts/extract-stdin testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1069174526/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote file.txtar > stdin file.txtar > txtar-x > cmp foo expect/foo > cmp a/b/bar expect/a/b/bar PASS === CONT TestScripts/extract-out-of-bounds testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1069174526/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > unquote file1.txtar file2.txtar > ! txtar-x file1.txtar [stderr] txtar-x: "../foo": outside parent directory [exit status 1] > stderr '"\.\./foo": outside parent directory' > ! txtar-x file2.txtar [stderr] txtar-x: "/foo": outside parent directory [exit status 1] > stderr '"/foo": outside parent directory' PASS --- PASS: TestScripts (0.00s) --- PASS: TestScripts/extract-dir (0.16s) --- PASS: TestScripts/extract (0.16s) --- PASS: TestScripts/extract-stdin (0.16s) --- PASS: TestScripts/extract-out-of-bounds (0.76s) PASS ok github.com/rogpeppe/go-internal/cmd/txtar-x 0.803s === RUN TestHash1 --- PASS: TestHash1 (0.00s) === RUN TestHashDir --- PASS: TestHashDir (0.00s) === RUN TestHashZip --- PASS: TestHashZip (0.00s) === RUN TestDirFiles --- PASS: TestDirFiles (0.00s) PASS ok github.com/rogpeppe/go-internal/dirhash 0.022s === RUN TestCompare --- PASS: TestCompare (0.00s) === RUN TestOrder --- PASS: TestOrder (0.00s) === RUN TestInterface --- PASS: TestInterface (0.00s) PASS ok github.com/rogpeppe/go-internal/fmtsort 0.074s === RUN TestScripts === RUN TestScripts/list === PAUSE TestScripts/list === CONT TestScripts/list testscript.go:397: WORK=$WORK PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=http://127.0.0.1:38129/mod goversion=1.17 GONOSUMDB=* # prior to go 1.12 you cannot list a module without a requirement (0.700s) > [!go1.12] go get fruit.com > go list -m -versions fruit.com [stdout] fruit.com v1.0.0 v1.1.0 > stdout 'v1.0.0 v1.1.0' > go get -d fruit.com@v1.0.0 [stderr] go: downloading fruit.com v1.0.0 go get: added fruit.com v1.0.0 > go get -d fruit.com@v1.1.0 [stderr] go: downloading fruit.com v1.1.0 go get: upgraded fruit.com v1.0.0 => v1.1.0 PASS --- PASS: TestScripts (1.20s) --- PASS: TestScripts/list (0.73s) PASS ok github.com/rogpeppe/go-internal/goproxytest 1.995s === RUN TestSimple === RUN TestSimple/cover === PAUSE TestSimple/cover === RUN TestSimple/env === PAUSE TestSimple/env === RUN TestSimple/version === PAUSE TestSimple/version === CONT TestSimple/cover === CONT TestSimple/version === CONT TestSimple/env === CONT TestSimple/version testscript.go:397: WORK=$WORK PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNAL_MODULE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/src/github.com/rogpeppe/go-internal > go list -f '{{context.ReleaseTags}}' runtime [stdout] [go1.1 go1.2 go1.3 go1.4 go1.5 go1.6 go1.7 go1.8 go1.9 go1.10 go1.11 go1.12 go1.13 go1.14 go1.15 go1.16 go1.17] > [go1.11] [!go1.12] stdout go1\.11 > [go1.11] [!go1.12] ! stdout go1\.12 > [go1.12] stdout go1\.12 PASS === CONT TestSimple/env testscript.go:397: WORK=$WORK PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNAL_MODULE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/src/github.com/rogpeppe/go-internal # GOPATH and GOMODCACHE are not shared with the host, # but GOCACHE is. (0.314s) > go env [stdout] GO111MODULE="" GOARCH="amd64" GOBIN="" GOCACHE="/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build" GOENV="/no-home/.config/go/env" GOEXE="" GOEXPERIMENT="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOINSECURE="" GOMODCACHE="$WORK/gopath/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="linux" GOPATH="$WORK/gopath" GOPRIVATE="" GOPROXY="https://proxy.golang.org,direct" GOROOT="/usr/lib/go-1.17" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/usr/lib/go-1.17/pkg/tool/linux_amd64" GOVCS="" GOVERSION="go1.17.5" GCCGO="gccgo" AR="ar" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="/dev/null" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK/.tmp/go-build598082946=/tmp/go-build -gno-record-gcc-switches" > stdout GOPATH=.*${WORK@R} > stdout GOMODCACHE=.*${WORK@R} > ! stdout GOCACHE=.*${WORK@R} PASS === CONT TestSimple/cover testscript.go:397: WORK=$WORK PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 GOINTERNAL_MODULE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/src/github.com/rogpeppe/go-internal > unquote scripts/exec.txt > [darwin] skip 'Pending a fix for github.com/rogpeppe/go-internal/issues/130' # The module uses testscript itself. # Use the checked out module, based on where the test binary ran. (1.662s) > 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: downloading github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e go: downloading gopkg.in/errgo.v2 v2.1.0 go: downloading gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 go: downloading github.com/kr/pretty v0.1.0 go: downloading github.com/kr/text v0.1.0 # First, a 'go test' run without coverage. (6.314s) > go test -vet=off [stdout] PASS ok test 1.064s > stdout 'PASS' > ! stdout 'total coverage' # Then, a 'go test' run with -coverprofile. # Assuming testscript works well, this results in the basic coverage being 0%, # since the test binary does not directly run any non-test code. # The total coverage after merging profiles should end up being 100%, # as long as all three sub-profiles are accounted for. # Marking all printlns as covered requires all edge cases to work well. (4.125s) > go test -vet=off -coverprofile=cover.out -v [stdout] === RUN TestFoo === RUN TestFoo/exec === PAUSE TestFoo/exec === CONT TestFoo/exec testscript.go:397: WORK=$WORK PATH=$WORK/.tmp/testscript-main4009860833/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR=$WORK/.tmp/testscript-main4009860833/cover exe= GOPATH=$WORK/gopath CCACHE_DISABLE=1 GOARCH=amd64 GOOS=linux GOROOT=/usr/lib/go-1.17 GOCACHE=/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/_build/go-build GOPROXY=https://proxy.golang.org,direct goversion=1.17 # Note that foo always fails, to prevent "go build" from doing anything. # Running the command directly; trigger the first path. (0.025s) > ! foo 1 [stderr] first path [exit status 1] # Running the command via exec; trigger the second path. (0.034s) > ! exec foo 2 [stderr] second path [exit status 1] # Running the command indirectly, via toolexec; trigger the third path. (1.598s) > ! go build -a -toolexec=foo runtime [stderr] go tool compile: exit status 1 third path [exit status 1] PASS --- PASS: TestFoo (0.27s) --- PASS: TestFoo/exec (1.74s) PASS coverage: 0.0% of statements total coverage: 100.0% of statements ok test 2.216s > stdout 'PASS' > stdout '^coverage: 0\.0%' > stdout '^total coverage: 100\.0%' > ! stdout 'malformed coverage' # written by "go test" if cover.out is invalid > exists cover.out PASS --- PASS: TestSimple (0.11s) --- PASS: TestSimple/version (0.20s) --- PASS: TestSimple/env (0.31s) --- PASS: TestSimple/cover (12.27s) PASS ok github.com/rogpeppe/go-internal/gotooltest 12.461s === RUN TestReadImports --- PASS: TestReadImports (0.00s) === RUN TestReadComments --- PASS: TestReadComments (0.00s) === RUN TestReadFailures --- PASS: TestReadFailures (0.00s) === RUN TestReadFailuresIgnored --- PASS: TestReadFailuresIgnored (0.00s) === RUN TestScan --- PASS: TestScan (0.00s) === RUN TestScanStar --- PASS: TestScanStar (0.00s) PASS ok github.com/rogpeppe/go-internal/imports 0.136s ? 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/registry [no test files] ? github.com/rogpeppe/go-internal/internal/syscall/windows/sysdll [no test files] === RUN TestDiff --- PASS: TestDiff (0.00s) PASS ok github.com/rogpeppe/go-internal/internal/textutil 0.020s === RUN TestMutexExcludes === PAUSE TestMutexExcludes === RUN TestReadWaitsForLock === PAUSE TestReadWaitsForLock === RUN TestCanLockExistingFile === PAUSE TestCanLockExistingFile === RUN TestSpuriousEDEADLK --- PASS: TestSpuriousEDEADLK (0.04s) === CONT TestMutexExcludes === CONT TestCanLockExistingFile === CONT TestMutexExcludes lockedfile_test.go:74: mu := MutexAt(_) === CONT TestReadWaitsForLock === CONT TestMutexExcludes lockedfile_test.go:80: unlock, _ := mu.Lock() lockedfile_test.go:83: mu2 := MutexAt(mu.Path) === CONT TestReadWaitsForLock lockedfile_test.go:123: WriteString("part 1\n") = lockedfile_test.go:145: WriteString("part 2\n") = === CONT TestMutexExcludes lockedfile_test.go:96: unlock() === CONT TestReadWaitsForLock lockedfile_test.go:135: Read(_) = "part 1\npart 2\n" === CONT TestMutexExcludes lockedfile_test.go:91: unlock2, _ := mu2.Lock() lockedfile_test.go:92: unlock2() --- PASS: TestCanLockExistingFile (0.01s) --- PASS: TestMutexExcludes (0.01s) --- PASS: TestReadWaitsForLock (0.01s) PASS ok github.com/rogpeppe/go-internal/lockedfile 0.079s === RUN TestLockExcludesLock === PAUSE TestLockExcludesLock === RUN TestLockExcludesRLock === PAUSE TestLockExcludesRLock === RUN TestRLockExcludesOnlyLock === PAUSE TestRLockExcludesOnlyLock === RUN TestLockNotDroppedByExecCommand filelock_test.go:190: fd 8 = /tmp/TestLockNotDroppedByExecCommand3008005645 filelock_test.go:193: Lock(fd 8) = filelock_test.go:195: fd 9 = os.Open("/tmp/TestLockNotDroppedByExecCommand3008005645") filelock_test.go:206: Lock(fd 9) is blocked (as expected) filelock_test.go:207: Unlock(fd 8) = asm_amd64.s:1581: Lock(fd 9) = filelock_test.go:209: Unlock(fd 9) = --- PASS: TestLockNotDroppedByExecCommand (0.06s) === CONT TestLockExcludesLock === CONT TestRLockExcludesOnlyLock === CONT TestLockExcludesRLock === CONT TestLockExcludesLock filelock_test.go:124: fd 8 = /tmp/TestLockExcludesLock396628775 === CONT TestRLockExcludesOnlyLock filelock_test.go:156: fd 9 = /tmp/TestRLockExcludesOnlyLock1921103044 filelock_test.go:158: RLock(fd 9) = filelock_test.go:160: fd 12 = os.Open("/tmp/TestRLockExcludesOnlyLock1921103044") === CONT TestLockExcludesRLock filelock_test.go:140: fd 10 = /tmp/TestLockExcludesRLock462821571 === CONT TestLockExcludesLock filelock_test.go:127: fd 11 = os.Open("/tmp/TestLockExcludesLock396628775") filelock_test.go:130: Lock(fd 8) = === CONT TestRLockExcludesOnlyLock filelock_test.go:172: RLock(fd 12) = === CONT TestLockExcludesRLock filelock_test.go:143: fd 13 = os.Open("/tmp/TestLockExcludesRLock462821571") filelock_test.go:146: Lock(fd 10) = === CONT TestRLockExcludesOnlyLock filelock_test.go:175: fd 14 = os.Open("/tmp/TestRLockExcludesOnlyLock1921103044") === CONT TestLockExcludesLock filelock_test.go:131: Lock(fd 11) is blocked (as expected) filelock_test.go:132: Unlock(fd 8) = asm_amd64.s:1581: Lock(fd 11) = filelock_test.go:134: Unlock(fd 11) = --- PASS: TestLockExcludesLock (0.01s) === CONT TestRLockExcludesOnlyLock filelock_test.go:177: Lock(fd 14) is blocked (as expected) filelock_test.go:179: Unlock(fd 12) = filelock_test.go:181: Unlock(fd 9) = === CONT TestLockExcludesRLock filelock_test.go:147: RLock(fd 13) is blocked (as expected) filelock_test.go:148: Unlock(fd 10) = asm_amd64.s:1581: RLock(fd 13) = === CONT TestRLockExcludesOnlyLock asm_amd64.s:1581: Lock(fd 14) = filelock_test.go:184: Unlock(fd 14) = === CONT TestLockExcludesRLock filelock_test.go:150: Unlock(fd 13) = --- PASS: TestLockExcludesRLock (0.01s) --- PASS: TestRLockExcludesOnlyLock (0.01s) PASS ok github.com/rogpeppe/go-internal/lockedfile/internal/filelock 0.102s === RUN TestPrintGolden --- PASS: TestPrintGolden (0.00s) === RUN TestParseLax --- PASS: TestParseLax (0.00s) === RUN TestPrintParse --- PASS: TestPrintParse (0.00s) === RUN TestModulePath === RUN TestModulePath/module_"github.com/rsc/vgotest" === RUN TestModulePath/module_github.com/rsc/vgotest === RUN TestModulePath/module__"github.com/rsc/vgotest" === RUN TestModulePath/module__github.com/rsc/vgotest === RUN TestModulePath/module_`github.com/rsc/vgotest` === RUN TestModulePath/module_"github.com/rsc/vgotest/v2" === RUN TestModulePath/module_github.com/rsc/vgotest/v2 === RUN TestModulePath/module_"gopkg.in/yaml.v2" === RUN TestModulePath/module_gopkg.in/yaml.v2 === RUN TestModulePath/module_"gopkg.in/check.v1"_ === RUN TestModulePath/module_"gopkg.in/check.v1_" === RUN TestModulePath/module_gopkg.in/check.v1_ === RUN TestModulePath/module_"gopkg.in/check.v1"__ === RUN TestModulePath/module_gopkg.in/check.v1__ === RUN TestModulePath/module_"gopkg.in/check.v1"__#01 === RUN TestModulePath/module_gopkg.in/check.v1__#01 === RUN TestModulePath/module__"gopkg.in/check.v1"__ === RUN TestModulePath/module__gopkg.in/check.v1__ === RUN TestModulePath/module_"gopkg.in/check.v1"asd === RUN TestModulePath/module__"gopkg.in/check.v1"__#01 === RUN TestModulePath/module__gopkg.in/check.v1__#01 === RUN TestModulePath/module_"gopkg.in/check.v1"asd#01 === RUN TestModulePath/module___module_a/b/c_ === RUN TestModulePath/module_"___" === RUN TestModulePath/module___ === RUN TestModulePath/module_"__a/b/c__" === RUN TestModulePath/module_"github.com/rsc/vgotest1"_//_with_a_comment --- PASS: TestModulePath (0.00s) --- PASS: TestModulePath/module_"github.com/rsc/vgotest" (0.00s) --- PASS: TestModulePath/module_github.com/rsc/vgotest (0.00s) --- PASS: TestModulePath/module__"github.com/rsc/vgotest" (0.00s) --- PASS: TestModulePath/module__github.com/rsc/vgotest (0.00s) --- PASS: TestModulePath/module_`github.com/rsc/vgotest` (0.00s) --- PASS: TestModulePath/module_"github.com/rsc/vgotest/v2" (0.00s) --- PASS: TestModulePath/module_github.com/rsc/vgotest/v2 (0.00s) --- PASS: TestModulePath/module_"gopkg.in/yaml.v2" (0.00s) --- PASS: TestModulePath/module_gopkg.in/yaml.v2 (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1"_ (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1_" (0.00s) --- PASS: TestModulePath/module_gopkg.in/check.v1_ (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1"__ (0.00s) --- PASS: TestModulePath/module_gopkg.in/check.v1__ (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1"__#01 (0.00s) --- PASS: TestModulePath/module_gopkg.in/check.v1__#01 (0.00s) --- PASS: TestModulePath/module__"gopkg.in/check.v1"__ (0.00s) --- PASS: TestModulePath/module__gopkg.in/check.v1__ (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1"asd (0.00s) --- PASS: TestModulePath/module__"gopkg.in/check.v1"__#01 (0.00s) --- PASS: TestModulePath/module__gopkg.in/check.v1__#01 (0.00s) --- PASS: TestModulePath/module_"gopkg.in/check.v1"asd#01 (0.00s) --- PASS: TestModulePath/module___module_a/b/c_ (0.00s) --- PASS: TestModulePath/module_"___" (0.00s) --- PASS: TestModulePath/module___ (0.00s) --- PASS: TestModulePath/module_"__a/b/c__" (0.00s) --- PASS: TestModulePath/module_"github.com/rsc/vgotest1"_//_with_a_comment (0.00s) === RUN TestAddDropReplace === RUN TestAddDropReplace/#0 === RUN TestAddDropReplace/#1 === RUN TestAddDropReplace/#2 --- PASS: TestAddDropReplace (0.00s) --- PASS: TestAddDropReplace/#0 (0.00s) --- PASS: TestAddDropReplace/#1 (0.00s) --- PASS: TestAddDropReplace/#2 (0.00s) === RUN TestAddRequire === RUN TestAddRequire/#0 === RUN TestAddRequire/#1 === RUN TestAddRequire/#2 --- PASS: TestAddRequire (0.00s) --- PASS: TestAddRequire/#0 (0.00s) --- PASS: TestAddRequire/#1 (0.00s) --- PASS: TestAddRequire/#2 (0.00s) PASS ok github.com/rogpeppe/go-internal/modfile 0.051s === RUN TestCheck --- PASS: TestCheck (0.00s) === RUN TestCheckPath --- PASS: TestCheckPath (0.00s) === RUN TestSplitPathVersion --- PASS: TestSplitPathVersion (0.00s) === RUN TestEncodePath --- PASS: TestEncodePath (0.00s) === RUN TestDecodePath --- PASS: TestDecodePath (0.00s) PASS ok github.com/rogpeppe/go-internal/module 0.161s === RUN TestWork --- PASS: TestWork (0.03s) === RUN TestWorkParallel --- PASS: TestWorkParallel (0.02s) === RUN TestCache --- PASS: TestCache (0.00s) PASS ok github.com/rogpeppe/go-internal/par 0.103s ? github.com/rogpeppe/go-internal/renameio [no test files] === RUN TestIsValid --- PASS: TestIsValid (0.00s) === RUN TestCanonical --- PASS: TestCanonical (0.00s) === RUN TestMajor --- PASS: TestMajor (0.00s) === RUN TestMajorMinor --- PASS: TestMajorMinor (0.00s) === RUN TestPrerelease --- PASS: TestPrerelease (0.00s) === RUN TestBuild --- PASS: TestBuild (0.00s) === RUN TestCompare --- PASS: TestCompare (0.00s) === RUN TestMax --- PASS: TestMax (0.00s) PASS ok github.com/rogpeppe/go-internal/semver 0.064s ? github.com/rogpeppe/go-internal/testenv [no test files] === RUN TestCRLFInput === RUN TestCRLFInput/_ === RUN TestCRLFInput/_/script === PAUSE TestCRLFInput/_/script === CONT TestCRLFInput/_/script testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= > exists output.txt PASS --- PASS: TestCRLFInput (0.00s) --- PASS: TestCRLFInput/_ (0.00s) --- PASS: TestCRLFInput/_/script (0.00s) === RUN TestEnv --- PASS: TestEnv (0.00s) === RUN TestScripts === RUN TestScripts/cmpenv === PAUSE TestScripts/cmpenv === RUN TestScripts/command === PAUSE TestScripts/command === RUN TestScripts/commandstatus === PAUSE TestScripts/commandstatus === RUN TestScripts/cpstdout === PAUSE TestScripts/cpstdout === RUN TestScripts/defer === PAUSE TestScripts/defer === RUN TestScripts/evalsymlink === PAUSE TestScripts/evalsymlink === RUN TestScripts/exec_path_change === PAUSE TestScripts/exec_path_change === RUN TestScripts/execguard === PAUSE TestScripts/execguard === RUN TestScripts/exists === PAUSE TestScripts/exists === RUN TestScripts/hello === PAUSE TestScripts/hello === RUN TestScripts/interrupt === PAUSE TestScripts/interrupt === RUN TestScripts/long_diff === PAUSE TestScripts/long_diff === RUN TestScripts/nothing === PAUSE TestScripts/nothing === RUN TestScripts/readfile === PAUSE TestScripts/readfile === RUN TestScripts/regexpquote === PAUSE TestScripts/regexpquote === RUN TestScripts/setenv === PAUSE TestScripts/setenv === RUN TestScripts/setupfiles === PAUSE TestScripts/setupfiles === RUN TestScripts/stdin === PAUSE TestScripts/stdin === RUN TestScripts/testscript_update_script === PAUSE TestScripts/testscript_update_script === RUN TestScripts/testscript_update_script_actual_is_file === PAUSE TestScripts/testscript_update_script_actual_is_file === RUN TestScripts/testscript_update_script_expected_not_in_archive === PAUSE TestScripts/testscript_update_script_expected_not_in_archive === RUN TestScripts/testscript_update_script_quote === PAUSE TestScripts/testscript_update_script_quote === RUN TestScripts/testscript_update_script_stderr === PAUSE TestScripts/testscript_update_script_stderr === RUN TestScripts/values === PAUSE TestScripts/values === RUN TestScripts/wait === PAUSE TestScripts/wait === CONT TestScripts/cmpenv === CONT TestScripts/readfile === CONT TestScripts/wait === CONT TestScripts/cmpenv testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > env $=$ > cmpenv file1 file2 PASS === CONT TestScripts/exec_path_change === CONT TestScripts/interrupt === CONT TestScripts/setenv === CONT TestScripts/testscript_update_script_actual_is_file === CONT TestScripts/execguard === CONT TestScripts/hello === CONT TestScripts/exists === CONT TestScripts/setenv testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > setSpecialVal > exists $SPECIALVAL.txt > ensureSpecialVal PASS === CONT TestScripts/setupfiles === CONT TestScripts/testscript_update_script === CONT TestScripts/stdin === CONT TestScripts/exists testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > 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/cpstdout === CONT TestScripts/evalsymlink === CONT TestScripts/setupfiles testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # 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/defer testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > testdefer > testdefer > testdefer PASS === CONT TestScripts/long_diff === CONT TestScripts/execguard testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [exec:nosuchcommand] exec nosuchcommand > [!exec:cat] stop > exec cat foo [stdout] foo > stdout 'foo\n' PASS === CONT TestScripts/testscript_update_script_stderr === CONT TestScripts/hello testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [!exec:cat] stop # hello world (0.105s) > exec cat hello.text [stdout] hello world > stdout 'hello world\n' > ! stderr . PASS === CONT TestScripts/values === CONT TestScripts/testscript_update_script_actual_is_file testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > unquote scripts/testscript.txt > unquote testscript-new.txt > testscript -update scripts > cmp scripts/testscript.txt testscript-new.txt PASS === CONT TestScripts/values testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > test-values PASS === CONT TestScripts/long_diff testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # Verify the behaviour of cmp in the case of a small diff between # two large files (0.156s) > unquote dir/script.txt > ! testscript dir > env WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > cmpenv stdout stdout.golden PASS === CONT TestScripts/interrupt testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [windows] skip > signalcatcher & > waitfile catchsignal > interrupt > wait [background] signalcatcher: exit status 0 [stdout] caught interrupt > stdout 'caught interrupt' PASS === CONT TestScripts/regexpquote === CONT TestScripts/cpstdout testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [!exec:cat] stop # hello world (0.188s) > exec cat hello.text [stdout] hello world > cp stdout got > cmp got hello.text PASS === CONT TestScripts/readfile testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > fprintargs stdout stdout [stdout] stdout > testreadfile stdout > fprintargs stderr stderr [stderr] stderr > testreadfile stderr > testreadfile x/somefile PASS === CONT TestScripts/wait testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [!exec:echo] skip > [!exec:false] skip # TODO: the '\n' below doesn't work on Windows on Github Actions, which does # have coreutils like "echo" installed. Perhaps they emit CRLF? (0.167s) > [windows] skip > exec echo foo [stdout] foo > stdout foo > exec echo foo & > exec echo bar & > ! exec false & # Starting a background process should clear previous output. (0.000s) > ! stdout foo # Wait should set the output to the concatenated outputs of the background # programs, in the order in which they were started. (0.001s) > wait [background] echo foo: exit status 0 [stdout] foo [background] echo bar: exit status 0 [stdout] bar [background] false: exit status 1 > stdout 'foo\nbar' # The end of the test should interrupt or kill any remaining background # programs. (0.024s) > [!exec:sleep] skip > ! exec sleep 86400 & [background] sleep 86400: signal: interrupt PASS === CONT TestScripts/stdin testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > [!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.025s) > exec cat hello.txt [stdout] hello > stdin stdout > exec cat [stdout] hello > stdout hello PASS === CONT TestScripts/testscript_update_script_quote === CONT TestScripts/evalsymlink testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # 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.211s) > [windows] skip > exec pwd [stdout] $WORK > stdout ^$WORK$ > exec pwd -P [stdout] $WORK > stdout ^$WORK$ PASS === CONT TestScripts/regexpquote testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > env XXX='hello)' > grep ^${XXX@R}$ file.txt PASS === CONT TestScripts/testscript_update_script_expected_not_in_archive === CONT TestScripts/commandstatus === CONT TestScripts/command === CONT TestScripts/nothing === CONT TestScripts/testscript_update_script testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > unquote scripts/testscript.txt > unquote testscript-new.txt > testscript -update scripts > cmp scripts/testscript.txt testscript-new.txt PASS === CONT TestScripts/nothing testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # Intentionally blank file, used to test that -testwork doesn't remove the work directory (0.000s) PASS === CONT TestScripts/testscript_update_script_stderr testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > unquote scripts/testscript.txt > unquote testscript-new.txt > testscript -update scripts > cmp scripts/testscript.txt testscript-new.txt PASS === CONT TestScripts/command testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > printargs a b 'c d' [stdout] ["printargs" "a" "b" "c d"] > stdout '\["printargs" "a" "b" "c d"\]\n' PASS === CONT TestScripts/commandstatus testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > ! status 1 [exit status 1] > ! status 2 [exit status 2] > status 0 PASS === CONT TestScripts/testscript_update_script_expected_not_in_archive testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # Verify that comparing stdout against a file not in the archive does nothing (0.131s) > unquote scripts/testscript.txt > cp scripts/testscript.txt unchanged > ! testscript -update scripts > cmp scripts/testscript.txt unchanged PASS === CONT TestScripts/testscript_update_script_quote testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* > unquote scripts/testscript.txt > unquote testscript-new.txt > testscript -update scripts > cmp scripts/testscript.txt testscript-new.txt PASS === CONT TestScripts/exec_path_change testscript.go:397: WORK=$WORK PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= GONOSUMDB=* # If the PATH environment variable is set in the testscript.Params.Setup phase # or set directly within a script, exec should honour that PATH (1.524s) > [!exec:go] skip > env HOME=$WORK${/}home > [windows] env USERPROFILE=$WORK\home > [windows] env LOCALAPPDATA=$WORK\appdata > cd go $WORK/go > exec go$exe version [stdout] go version go1.17.5 linux/amd64 > stdout 'go version' > exec go$exe build > env PATH=$WORK${/}go${:}$PATH > exec go$exe version [stdout] This is not go > stdout 'This is not go' PASS --- PASS: TestScripts (0.00s) --- PASS: TestScripts/cmpenv (0.00s) --- PASS: TestScripts/setenv (0.00s) --- PASS: TestScripts/exists (0.00s) --- PASS: TestScripts/setupfiles (0.00s) --- PASS: TestScripts/defer (0.00s) --- PASS: TestScripts/execguard (0.08s) --- PASS: TestScripts/hello (0.11s) --- PASS: TestScripts/values (0.06s) --- PASS: TestScripts/interrupt (0.22s) --- PASS: TestScripts/wait (0.25s) --- PASS: TestScripts/testscript_update_script_actual_is_file (0.24s) --- PASS: TestScripts/long_diff (0.24s) --- PASS: TestScripts/stdin (0.24s) --- PASS: TestScripts/cpstdout (0.24s) --- PASS: TestScripts/readfile (0.27s) --- PASS: TestScripts/regexpquote (0.09s) --- PASS: TestScripts/evalsymlink (0.25s) --- PASS: TestScripts/nothing (0.01s) --- PASS: TestScripts/testscript_update_script (0.29s) --- PASS: TestScripts/command (0.05s) --- PASS: TestScripts/testscript_update_script_stderr (0.24s) --- PASS: TestScripts/commandstatus (0.12s) --- PASS: TestScripts/testscript_update_script_expected_not_in_archive (0.13s) --- PASS: TestScripts/testscript_update_script_quote (0.16s) --- PASS: TestScripts/exec_path_change (1.56s) === RUN TestTestwork --- PASS: TestTestwork (5.52s) === RUN TestWorkdirRoot === RUN TestWorkdirRoot/run_tests === RUN TestWorkdirRoot/run_tests/nothing === PAUSE TestWorkdirRoot/run_tests/nothing === CONT TestWorkdirRoot/run_tests/nothing testscript.go:397: WORK=/tmp/3642916524/script-nothing PATH=/tmp/testscript-main1756679349/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ TESTSCRIPT_COVER_DIR= exe= # Intentionally empty test script; used to test Params.WorkdirRoot (0.000s) PASS --- PASS: TestWorkdirRoot (0.00s) --- PASS: TestWorkdirRoot/run_tests (0.00s) --- PASS: TestWorkdirRoot/run_tests/nothing (0.00s) === RUN TestBadDir --- PASS: TestBadDir (0.00s) === RUN TestUNIX2DOS --- PASS: TestUNIX2DOS (0.00s) PASS ok github.com/rogpeppe/go-internal/testscript 7.152s === RUN Test === RUN Test/basic === RUN Test/basic#01 --- PASS: Test (0.00s) --- PASS: Test/basic (0.00s) --- PASS: Test/basic#01 (0.00s) === RUN TestWrite --- PASS: TestWrite (0.00s) === RUN TestUnquote === RUN TestUnquote/no_final_newline === RUN TestUnquote/no_initial_> --- PASS: TestUnquote (0.00s) --- PASS: TestUnquote/no_final_newline (0.00s) --- PASS: TestUnquote/no_initial_> (0.00s) === RUN TestQuote === RUN TestQuote/empty === RUN TestQuote/one_line === RUN TestQuote/several_lines === RUN TestQuote/bad_data === RUN TestQuote/no_final_newline --- PASS: TestQuote (0.00s) --- PASS: TestQuote/empty (0.00s) --- PASS: TestQuote/one_line (0.00s) --- PASS: TestQuote/several_lines (0.00s) --- PASS: TestQuote/bad_data (0.00s) --- PASS: TestQuote/no_final_newline (0.00s) PASS ok github.com/rogpeppe/go-internal/txtar 0.034s patch -R -p1 -i debian/0001-Allow-TestSimple-cover-to-PASS.patch patching file _build/src/github.com/rogpeppe/go-internal/testscript/testscript.go make[1]: Leaving directory '/build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0' create-stamp debian/debhelper-build-stamp dh_testroot -a -O--builddirectory=_build -O--buildsystem=golang dh_prep -a -O--builddirectory=_build -O--buildsystem=golang dh_auto_install -a -O--builddirectory=_build -O--buildsystem=golang cd _build && mkdir -p /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/debian/tmp/usr cd _build && cp -r bin /build/golang-github-rogpeppe-go-internal-ZYHAvR/golang-github-rogpeppe-go-internal-1.8.0/debian/tmp/usr dh_install -a -O--builddirectory=_build -O--buildsystem=golang dh_installdocs -a -O--builddirectory=_build -O--buildsystem=golang dh_installchangelogs -a -O--builddirectory=_build -O--buildsystem=golang dh_installsystemduser -a -O--builddirectory=_build -O--buildsystem=golang dh_perl -a -O--builddirectory=_build -O--buildsystem=golang dh_link -a -O--builddirectory=_build -O--buildsystem=golang dh_strip_nondeterminism -a -O--builddirectory=_build -O--buildsystem=golang dh_compress -a -O--builddirectory=_build -O--buildsystem=golang dh_fixperms -a -O--builddirectory=_build -O--buildsystem=golang dh_missing -a -O--builddirectory=_build -O--buildsystem=golang dh_dwz -a -O--builddirectory=_build -O--buildsystem=golang dwz: debian/go-internal/usr/bin/testscript: .debug_info section not present dwz: debian/go-internal/usr/bin/txtar-addmod: .debug_info section not present dwz: debian/go-internal/usr/bin/txtar-c: .debug_info section not present dwz: debian/go-internal/usr/bin/txtar-goproxy: .debug_info section not present dwz: debian/go-internal/usr/bin/txtar-x: .debug_info section not present dwz: Too few files for multifile optimization dh_dwz: warning: No dwz multifile created, but not explicitly requested either so ignoring it. dh_dwz: warning: Common issues include no debug information at all (missing -g) and dh_dwz: warning: compressed debug information (#931891). dh_strip -a -O--builddirectory=_build -O--buildsystem=golang dh_strip: warning: Could not find the BuildID in debian/go-internal/usr/bin/testscript dh_strip: warning: Could not find the BuildID in debian/go-internal/usr/bin/txtar-addmod dh_strip: warning: Could not find the BuildID in debian/go-internal/usr/bin/txtar-goproxy dh_strip: warning: Could not find the BuildID in debian/go-internal/usr/bin/txtar-x dh_strip: warning: Could not find the BuildID in debian/go-internal/usr/bin/txtar-c dh_makeshlibs -a -O--builddirectory=_build -O--buildsystem=golang dh_shlibdeps -a -O--builddirectory=_build -O--buildsystem=golang dh_installdeb -a -O--builddirectory=_build -O--buildsystem=golang dh_golang -a -O--builddirectory=_build -O--buildsystem=golang dh_gencontrol -a -O--builddirectory=_build -O--buildsystem=golang dh_md5sums -a -O--builddirectory=_build -O--buildsystem=golang dh_builddeb -a -O--builddirectory=_build -O--buildsystem=golang dpkg-deb: building package 'go-internal' in '../go-internal_1.8.0-4_amd64.deb'. dpkg-genbuildinfo --build=any -O../golang-github-rogpeppe-go-internal_1.8.0-4_amd64.buildinfo dpkg-genchanges --build=any -O../golang-github-rogpeppe-go-internal_1.8.0-4_amd64.changes dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) I: running special hook: sync-out /build/golang-github-rogpeppe-go-internal-ZYHAvR /tmp/golang-github-rogpeppe-go-internal-1.8.0-4r1g4uwle I: cleaning package lists and apt cache... W: deleting files in /tmp: go-test-script3625826818 I: creating tarball... I: done I: removing tempdir /tmp/mmdebstrap.RGhZg_DJS3... I: success in 1133.0621 seconds md5: go-internal_1.8.0-4_amd64.deb: OK sha1: go-internal_1.8.0-4_amd64.deb: OK sha256: go-internal_1.8.0-4_amd64.deb: OK Checksums: OK