]> Cypherpunks.ru repositories - gostls13.git/commit
[release-branch.go1.20] cmd/go: retain extra roots to disambiguate imports in 'go...
authorBryan C. Mills <bcmills@google.com>
Sat, 20 May 2023 02:35:33 +0000 (22:35 -0400)
committerGopher Robot <gobot@golang.org>
Mon, 19 Jun 2023 22:56:03 +0000 (22:56 +0000)
commit95f377daad6fcb8c52c568af7514d489741d715c
tree30adfabb519cdae7ebe3a9a30ab76bf74cf58afb
parenta7a48fad7ef67033f3662bcc659e92848040d3d6
[release-branch.go1.20] cmd/go: retain extra roots to disambiguate imports in 'go mod tidy'

We don't normally keep explicit requirements for test dependencies of
packages loaded from other modules when the required version is
already the selected version in the module graph. However, in some
cases we may need to keep an explicit requirement in order to make use
of lazy module loading to disambiguate an otherwise-ambiguous import.

Note that there is no Go version guard for this change: in the cases
where the behavior of 'go mod tidy' has changed, previous versions of
Go would produce go.mod files that break successive calls to
'go mod tidy'. Given that, I suspect that any existing user in the
wild affected by this bug either already has a workaround in place
using redundant import statements (in which case the change does not
affect them) or is running 'go mod tidy -e' to force past the error
(in which case a change in behavior to a non-error should not be
surprising).

Updates #60313.
Fixes #60352.

Change-Id: Idf294f72cbe3904b871290d79e4493595a0c7bfc
Reviewed-on: https://go-review.googlesource.com/c/go/+/496635
Auto-Submit: Bryan Mills <bcmills@google.com>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
(cherry picked from commit 2ed6a54a39339ca37e9da4530b3f37a9d29b7c84)
Reviewed-on: https://go-review.googlesource.com/c/go/+/499635
Reviewed-by: Michael Matloob <matloob@golang.org>
Auto-Submit: Dmitri Shuralyov <dmitshur@google.com>
src/cmd/go/internal/modload/buildlist.go
src/cmd/go/testdata/script/mod_tidy_issue60313.txt [new file with mode: 0644]