Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/go: remove test dependency on gopkg.in service #54503

Open
bcmills opened this issue Aug 17, 2022 · 20 comments
Open

cmd/go: remove test dependency on gopkg.in service #54503

bcmills opened this issue Aug 17, 2022 · 20 comments
Labels
GoCommand cmd/go NeedsFix The path to resolution is known, but the work has not been done. Testing An issue that has been verified to require only test changes, not just a test failure.
Milestone

Comments

@bcmills
Copy link
Contributor

bcmills commented Aug 17, 2022

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && (`reading https://gopkg\.in` || `https fetch: Get "https://gopkg\.in`)

The gopkg.in service has occasional downtime (most recently niemeyer/gopkg#78).
Some of the cmd/go tests of gopkg.in modules are isolated from outages by the Go module proxy, but unfortunately others fail when the service is down.

As far as I can tell, the go-import metadata served by gopkg.in is mostly static. (It may add some value in serving up-to-date go-source metadata, but cmd/go does not depend on that metadata.) Since we're going to have a test-local HTTPS server anyway for #27494, perhaps we can migrate the gopkg.in tests to use that server with static go-import metadata instead.

@heschi
Copy link
Contributor

heschi commented Aug 17, 2022

In this particular case I think GitHub was down...

@gopherbot
Copy link

Change https://go.dev/cl/424594 mentions this issue: cmd/go: disable test cases that depend on gopkg.in

@bcmills
Copy link
Contributor Author

bcmills commented Aug 17, 2022

I've been having trouble with -longtest TryBots all day, and it's only the gopkg.in tests that are flaking.

(It may be that the underlying problem is on GitHub's side, but it doesn't seem to affect the GitHub-only tests. And long-term we may want to reduce our dependence on those too.)

@dmitshur dmitshur added Testing An issue that has been verified to require only test changes, not just a test failure. GoCommand cmd/go labels Aug 17, 2022
gopherbot pushed a commit that referenced this issue Aug 17, 2022
Updates #54503.

Change-Id: Ie13d028b09260d2d316c343b3ea812bb9cce4e6d
Reviewed-on: https://go-review.googlesource.com/c/go/+/424594
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
@joedian joedian added the NeedsFix The path to resolution is known, but the work has not been done. label Aug 18, 2022
@seankhliao seankhliao added this to the Go1.20 milestone Aug 20, 2022
@bcmills
Copy link
Contributor Author

bcmills commented Oct 25, 2022

@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && `reading https://gopkg\.in`
2022-09-09 00:28 linux-386-longtest go@3c33c3b3 cmd/go.TestScript (log)
go test proxy running at GOPROXY=http://127.0.0.1:32793/mod
--- FAIL: TestScript (0.01s)
    --- FAIL: TestScript/mod_replace_gopkgin (13.05s)
        script_test.go:282: 
            # (2022-09-09T01:03:47Z)
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (12.894s)
            > cd 4-to-4
            $WORK/gopath/src/4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
            [exit status 1]
            FAIL: testdata/script/mod_replace_gopkgin.txt:20: unexpected command failure
2022-09-27 21:10 linux-386-longtest go@4360fd8d cmd/go.TestScript (log)
go test proxy running at GOPROXY=http://127.0.0.1:43583/mod
--- FAIL: TestScript (0.01s)
    --- FAIL: TestScript/mod_replace_gopkgin (13.38s)
        script_test.go:282: 
            # (2022-09-27T22:25:00Z)
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (13.259s)
            > cd 4-to-4
            $WORK/gopath/src/4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
            [exit status 1]
            FAIL: testdata/script/mod_replace_gopkgin.txt:20: unexpected command failure
2022-09-27 21:14 linux-amd64-longtest go@3b5188ed cmd/go.TestScript (log)
go test proxy running at GOPROXY=http://127.0.0.1:36693/mod
--- FAIL: TestScript (0.01s)
    --- FAIL: TestScript/mod_replace_gopkgin (13.01s)
        script_test.go:282: 
            # (2022-09-27T22:26:18Z)
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (12.818s)
            > cd 4-to-4
            $WORK/gopath/src/4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
            [exit status 1]
            FAIL: testdata/script/mod_replace_gopkgin.txt:20: unexpected command failure

watchflakes

@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && `reading https://gopkg\.in`
2022-11-16 14:38 linux-amd64-longtest-race go@7c8c209b cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:42431
https://vcs-test.golang.org rerouted to https://127.0.0.1:42193
go test proxy running at GOPROXY=http://127.0.0.1:43215/mod
2022/11/16 16:59:51 http: TLS handshake error from 127.0.0.1:36250: EOF
2022/11/16 16:59:51 http: TLS handshake error from 127.0.0.1:36246: EOF
--- FAIL: TestScript (0.15s)
    --- FAIL: TestScript/mod_replace_gopkgin (15.04s)
        script_test.go:134: 2022-11-16T16:59:20Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-420504610/tmpdir530274409/mod_replace_gopkgin2406147624
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (14.744s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1
2022-11-16 16:25 linux-386-longtest go@38218f39 cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:41359
https://vcs-test.golang.org rerouted to https://127.0.0.1:41029
go test proxy running at GOPROXY=http://127.0.0.1:40891/mod
2022/11/16 17:25:02 http: TLS handshake error from 127.0.0.1:58580: EOF
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55612: read tcp 127.0.0.1:41029->127.0.0.1:55612: read: connection reset by peer
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55610: EOF
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55652: EOF
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55674: EOF
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55708: EOF
2022/11/16 17:25:16 http: TLS handshake error from 127.0.0.1:55712: EOF
...
--- FAIL: TestScript (0.04s)
    --- FAIL: TestScript/mod_replace_gopkgin (13.49s)
        script_test.go:134: 2022-11-16T17:25:04Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-2735996516/tmpdir123861510/mod_replace_gopkgin3862546341
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (13.424s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1

watchflakes

@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && `reading https://gopkg\.in`
2022-11-21 15:06 linux-amd64-longtest-race go@8614c525 cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:37895
https://vcs-test.golang.org rerouted to https://127.0.0.1:40789
go test proxy running at GOPROXY=http://127.0.0.1:46049/mod
2022/11/21 16:18:23 http: TLS handshake error from 127.0.0.1:39054: EOF
2022/11/21 16:18:24 http: TLS handshake error from 127.0.0.1:39122: EOF
2022/11/21 16:18:32 http: TLS handshake error from 127.0.0.1:34816: read tcp 127.0.0.1:40789->127.0.0.1:34816: read: connection reset by peer
2022/11/21 16:18:32 http: TLS handshake error from 127.0.0.1:34802: EOF
2022/11/21 16:18:32 http: TLS handshake error from 127.0.0.1:34834: EOF
2022/11/21 16:18:33 http: TLS handshake error from 127.0.0.1:34862: EOF
2022/11/21 16:18:33 http: TLS handshake error from 127.0.0.1:34850: EOF
...
--- FAIL: TestScript (0.15s)
    --- FAIL: TestScript/mod_replace_gopkgin (14.05s)
        script_test.go:134: 2022-11-21T16:16:39Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-3904438487/tmpdir2680534702/mod_replace_gopkgin3937392997
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (13.702s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1

watchflakes

@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && `reading https://gopkg\.in`
2022-11-21 16:19 linux-amd64-longtest-race go@d7812ab3 cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:42539
https://vcs-test.golang.org rerouted to https://127.0.0.1:39171
go test proxy running at GOPROXY=http://127.0.0.1:36963/mod
2022/11/21 17:29:14 http: TLS handshake error from 127.0.0.1:60500: EOF
2022/11/21 17:29:38 http: TLS handshake error from 127.0.0.1:60610: read tcp 127.0.0.1:39171->127.0.0.1:60610: read: connection reset by peer
2022/11/21 17:29:39 http: TLS handshake error from 127.0.0.1:60662: EOF
2022/11/21 17:29:39 http: TLS handshake error from 127.0.0.1:60666: EOF
2022/11/21 17:29:39 http: TLS handshake error from 127.0.0.1:60672: EOF
2022/11/21 17:29:39 http: TLS handshake error from 127.0.0.1:60678: EOF
2022/11/21 17:29:39 http: TLS handshake error from 127.0.0.1:60692: EOF
...
--- FAIL: TestScript (0.16s)
    --- FAIL: TestScript/mod_replace_gopkgin (14.74s)
        script_test.go:134: 2022-11-21T17:29:10Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-1215357709/tmpdir1583356980/mod_replace_gopkgin750093156
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (14.351s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1

watchflakes

@bcmills bcmills modified the milestones: Go1.20, Go1.21 Dec 2, 2022
@gopherbot
Copy link

Change https://go.dev/cl/454503 mentions this issue: cmd/go: skip TestScript/mod_replace_gopkgin

@bcmills
Copy link
Contributor Author

bcmills commented Dec 2, 2022

@gopherbot, please backport to Go 1.18 and 1.19. This test is very flaky lately, so we should at least backport a skip for it.

@gopherbot
Copy link

Backport issue(s) opened: #57057 (for 1.18), #57058 (for 1.19).

Remember to create the cherry-pick CL(s) as soon as the patch is submitted to master, according to https://go.dev/wiki/MinorReleases.

gopherbot pushed a commit that referenced this issue Dec 2, 2022
(Until it can be made hermetic.)

The gopkg.in service has had a lot of flakiness lately. Go users in
general are isolated from that flakiness by the Go module mirror
(proxy.golang.org), but this test intentionally bypasses the module
mirror because the mirror itself uses cmd/go to download the module.

In the long term, we can redirect the gopkg.in URL to the local
(in-process) vcweb server added for #27494.

In the meantime, let's skip the test to reduce the impact of upstream
outages.

For #54503.

Change-Id: Icf3de7ca416db548e53864a71776fe22b444fcea
Reviewed-on: https://go-review.googlesource.com/c/go/+/454503
Run-TryBot: Bryan Mills <bcmills@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
@gopherbot
Copy link

Change https://go.dev/cl/454839 mentions this issue: [release-branch.go1.19] cmd/go: skip TestScript/mod_replace_gopkgin

@gopherbot
Copy link

Change https://go.dev/cl/454840 mentions this issue: [release-branch.go1.18] cmd/go: skip TestScript/mod_replace_gopkgin

gopherbot pushed a commit that referenced this issue Dec 9, 2022
(Until it can be made hermetic.)

The gopkg.in service has had a lot of flakiness lately. Go users in
general are isolated from that flakiness by the Go module mirror
(proxy.golang.org), but this test intentionally bypasses the module
mirror because the mirror itself uses cmd/go to download the module.

In the long term, we can redirect the gopkg.in URL to the local
(in-process) vcweb server added for #27494.

In the meantime, let's skip the test to reduce the impact of upstream
outages.

Fixes #57058.
Updates #54503.

Change-Id: Icf3de7ca416db548e53864a71776fe22b444fcea
Reviewed-on: https://go-review.googlesource.com/c/go/+/454503
Run-TryBot: Bryan Mills <bcmills@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
(cherry picked from commit c5f5cb659adda026d01b7fa9bd39b2ad3b58c5bf)
Reviewed-on: https://go-review.googlesource.com/c/go/+/454839
Reviewed-by: Michael Pratt <mpratt@google.com>
gopherbot pushed a commit that referenced this issue Dec 9, 2022
(Until it can be made hermetic.)

The gopkg.in service has had a lot of flakiness lately. Go users in
general are isolated from that flakiness by the Go module mirror
(proxy.golang.org), but this test intentionally bypasses the module
mirror because the mirror itself uses cmd/go to download the module.

In the long term, we can redirect the gopkg.in URL to the local
(in-process) vcweb server added for #27494.

In the meantime, let's skip the test to reduce the impact of upstream
outages.

Fixes #57057.
Updates #54503.

Change-Id: Icf3de7ca416db548e53864a71776fe22b444fcea
Reviewed-on: https://go-review.googlesource.com/c/go/+/454503
Run-TryBot: Bryan Mills <bcmills@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
(cherry picked from commit c5f5cb659adda026d01b7fa9bd39b2ad3b58c5bf)
Reviewed-on: https://go-review.googlesource.com/c/go/+/454840
@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "cmd/go" && test == "TestScript" && `reading https://gopkg\.in`
2022-11-08 18:44 linux-amd64-longtest go@39ac1fbd cmd/go.TestScript (log)
go test proxy running at GOPROXY=http://127.0.0.1:44901/mod
--- FAIL: TestScript (0.01s)
    --- FAIL: TestScript/mod_gopkg_unstable (10.80s)
        script_test.go:270: 
            # (2022-11-08T19:24:57Z)
            > env GO111MODULE=on
            > cp go.mod.empty go.mod
            > go get gopkg.in/dummy.v2-unstable
            [stderr]
            go: downloading gopkg.in/dummy.v2-unstable v2.0.0
...
    --- FAIL: TestScript/mod_replace_gopkgin (23.03s)
        script_test.go:270: 
            # (2022-11-08T19:24:47Z)
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (22.936s)
            > cd 4-to-4
            $WORK/gopath/src/4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
            [exit status 1]
            FAIL: testdata/script/mod_replace_gopkgin.txt:20: unexpected command failure
2022-11-16 16:42 linux-386-longtest go@0266671e cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:35139
https://vcs-test.golang.org rerouted to https://127.0.0.1:44915
go test proxy running at GOPROXY=http://127.0.0.1:38339/mod
2022/11/16 17:15:15 http: TLS handshake error from 127.0.0.1:56728: EOF
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56480: EOF
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56510: EOF
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56478: EOF
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56518: EOF
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56564: read tcp 127.0.0.1:44915->127.0.0.1:56564: read: connection reset by peer
2022/11/16 17:15:34 http: TLS handshake error from 127.0.0.1:56548: read tcp 127.0.0.1:44915->127.0.0.1:56548: read: connection reset by peer
...
--- FAIL: TestScript (0.07s)
    --- FAIL: TestScript/mod_replace_gopkgin (14.15s)
        script_test.go:134: 2022-11-16T17:15:14Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-2516171915/tmpdir792770605/mod_replace_gopkgin1652296184
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (14.006s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1
2022-11-29 15:41 linux-amd64-longtest go@8c0f9ed4 cmd/go.TestScript (log)
vcs-test.golang.org rerouted to http://127.0.0.1:40551
https://vcs-test.golang.org rerouted to https://127.0.0.1:43957
go test proxy running at GOPROXY=http://127.0.0.1:39081/mod
2022/11/29 16:09:40 http: TLS handshake error from 127.0.0.1:43158: EOF
2022/11/29 16:09:40 http: TLS handshake error from 127.0.0.1:43174: read tcp 127.0.0.1:43957->127.0.0.1:43174: read: connection reset by peer
2022/11/29 16:09:40 http: TLS handshake error from 127.0.0.1:43194: read tcp 127.0.0.1:43957->127.0.0.1:43194: read: connection reset by peer
2022/11/29 16:09:41 http: TLS handshake error from 127.0.0.1:43282: read tcp 127.0.0.1:43957->127.0.0.1:43282: read: connection reset by peer
--- FAIL: TestScript (0.07s)
    --- FAIL: TestScript/mod_replace_gopkgin (17.24s)
        script_test.go:134: 2022-11-29T16:09:05Z
        script_test.go:136: $WORK=/workdir/tmp/cmd-go-test-895707498/tmpdir2456778667/mod_replace_gopkgin1175391017
        script_test.go:154: 
            # Regression test for golang.org/issue/34254:
            # a clone of gopkg.in/[…].vN should be replaceable by
            # a fork hosted at corp.example.com/[…]/vN,
            # even if there is an explicit go.mod file containing the
            # gopkg.in path. (0.000s)
            # Replacing gopkg.in/[…].vN with a repository with a root go.mod file
            # specifying […].vN and a compatible version should succeed, even if
            # the replacement path is not a gopkg.in path. (17.022s)
            > cd 4-to-4
            > go list -m gopkg.in/src-d/go-git.v4
            [stderr]
            go: gopkg.in/src-d/go-git.v4@v4.13.1 requires
            	gopkg.in/check.v1@v1.0.0-20180628173108-788fd7840127: unrecognized import path "gopkg.in/check.v1": reading https://gopkg.in/check.v1?go-get=1: 502 Bad Gateway
            	server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-check/check.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
        script_test.go:154: FAIL: mod_replace_gopkgin.txt:20: go list -m gopkg.in/src-d/go-git.v4: exit status 1

watchflakes

@gopherbot
Copy link

Change https://go.dev/cl/466857 mentions this issue: [release-branch.go1.19] cmd/go: skip test cases that depend on gopkg.in

gopherbot pushed a commit that referenced this issue Feb 9, 2023
Updates #54503.

Change-Id: Ie13d028b09260d2d316c343b3ea812bb9cce4e6d
Reviewed-on: https://go-review.googlesource.com/c/go/+/424594
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
(cherry picked from commit c7f870e)
Reviewed-on: https://go-review.googlesource.com/c/go/+/466857
Reviewed-by: Heschi Kreinick <heschi@google.com>
Run-TryBot: David Chase <drchase@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
@gopherbot
Copy link

Change https://go.dev/cl/466860 mentions this issue: cmd/go: remove tests that assume lack of new versions of external modules

@gopherbot
Copy link

Change https://go.dev/cl/466861 mentions this issue: [release-branch.go1.20] cmd/go: remove tests that assume lack of new versions of external modules

@gopherbot
Copy link

Change https://go.dev/cl/466862 mentions this issue: [release-branch.go1.19] cmd/go: remove tests that assume lack of new versions of external modules

gopherbot pushed a commit that referenced this issue Feb 10, 2023
…ules

In general it seems ok to assume that an open-source module that did
exist will continue to do so — after all, users of open-source modules
already do that all the time. However, we should not assume that those
modules do not publish new versions — that's really up to their
maintainers to decide.

Two existing tests did make that assumption for the module
gopkg.in/natefinch/lumberjack.v2. Let's remove those two tests.
If we need to replace them at some point, we can replace them with
hermetic test-only modules (#54503) or perhaps modules owned by the Go
project.

Fixes #58445.

Change-Id: Ica8fe587d86fc41f3d8445a4cd2b8820455ae45f
Reviewed-on: https://go-review.googlesource.com/c/go/+/466860
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
Reviewed-by: David Chase <drchase@google.com>
gopherbot pushed a commit that referenced this issue Feb 10, 2023
…versions of external modules

In general it seems ok to assume that an open-source module that did
exist will continue to do so — after all, users of open-source modules
already do that all the time. However, we should not assume that those
modules do not publish new versions — that's really up to their
maintainers to decide.

Two existing tests did make that assumption for the module
gopkg.in/natefinch/lumberjack.v2. Let's remove those two tests.
If we need to replace them at some point, we can replace them with
hermetic test-only modules (#54503) or perhaps modules owned by the Go
project.

Updates #58445.
Fixes #58449.

Change-Id: Ica8fe587d86fc41f3d8445a4cd2b8820455ae45f
Reviewed-on: https://go-review.googlesource.com/c/go/+/466862
Reviewed-by: David Chase <drchase@google.com>
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
gopherbot pushed a commit that referenced this issue Feb 10, 2023
…versions of external modules

In general it seems ok to assume that an open-source module that did
exist will continue to do so — after all, users of open-source modules
already do that all the time. However, we should not assume that those
modules do not publish new versions — that's really up to their
maintainers to decide.

Two existing tests did make that assumption for the module
gopkg.in/natefinch/lumberjack.v2. Let's remove those two tests.
If we need to replace them at some point, we can replace them with
hermetic test-only modules (#54503) or perhaps modules owned by the Go
project.

Updates #58445.
Fixes #58450.

Change-Id: Ica8fe587d86fc41f3d8445a4cd2b8820455ae45f
Reviewed-on: https://go-review.googlesource.com/c/go/+/466861
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: David Chase <drchase@google.com>
johanbrandhorst pushed a commit to Pryz/go that referenced this issue Feb 12, 2023
…ules

In general it seems ok to assume that an open-source module that did
exist will continue to do so — after all, users of open-source modules
already do that all the time. However, we should not assume that those
modules do not publish new versions — that's really up to their
maintainers to decide.

Two existing tests did make that assumption for the module
gopkg.in/natefinch/lumberjack.v2. Let's remove those two tests.
If we need to replace them at some point, we can replace them with
hermetic test-only modules (golang#54503) or perhaps modules owned by the Go
project.

Fixes golang#58445.

Change-Id: Ica8fe587d86fc41f3d8445a4cd2b8820455ae45f
Reviewed-on: https://go-review.googlesource.com/c/go/+/466860
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
Reviewed-by: David Chase <drchase@google.com>
romaindoumenc pushed a commit to TroutSoftware/go that referenced this issue Feb 14, 2023
…versions of external modules

In general it seems ok to assume that an open-source module that did
exist will continue to do so — after all, users of open-source modules
already do that all the time. However, we should not assume that those
modules do not publish new versions — that's really up to their
maintainers to decide.

Two existing tests did make that assumption for the module
gopkg.in/natefinch/lumberjack.v2. Let's remove those two tests.
If we need to replace them at some point, we can replace them with
hermetic test-only modules (golang#54503) or perhaps modules owned by the Go
project.

Updates golang#58445.
Fixes golang#58450.

Change-Id: Ica8fe587d86fc41f3d8445a4cd2b8820455ae45f
Reviewed-on: https://go-review.googlesource.com/c/go/+/466861
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: David Chase <drchase@google.com>
@gopherbot
Copy link

Change https://go.dev/cl/473276 mentions this issue: cmd/go: declare net hosts in script tests

gopherbot pushed a commit that referenced this issue Apr 24, 2023
Although we aren't precise about enforcing the hosts just yet,
we can eventually use the declared hostnames to selectively skip
tests (for example, if an external service has an outage while
a Go release is being tested).

Also relax the constraint to [short] in tests that require only
vcs-test.golang.org, which has redirected to an in-process server
since around CL 427914.

Also enforce that tests that use the network actually use the [net]
constraint, by setting TESTGONETWORK=panic in the test environment
until the condition is evaluated.

For #52545.
For #54503.
Updates #27494.

Change-Id: I13be6b42a9beee97657eb45424882e787ac164c3
Reviewed-on: https://go-review.googlesource.com/c/go/+/473276
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Bypass: Bryan Mills <bcmills@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
@gopherbot gopherbot modified the milestones: Go1.21, Go1.22 Aug 8, 2023
@gopherbot gopherbot modified the milestones: Go1.22, Go1.23 Feb 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GoCommand cmd/go NeedsFix The path to resolution is known, but the work has not been done. Testing An issue that has been verified to require only test changes, not just a test failure.
Projects
Status: Active
Development

No branches or pull requests

6 participants