blob: 0ba486d35bd6cecc2d8a6f4236c42613e445f7be [file] [log] [blame]
# Regression test for https://golang.org/issue/48511:
# requirement minimization was accidentally replacing previous
# versions of the main module, causing dependencies to be
# spuriously dropping during requirement minimization and
# leading to an infinite loop.
cp go.mod go.mod.orig
go mod tidy
cmp go.mod go.mod.orig
go get -u=patch ./...
cmp go.mod go.mod.want
-- go.mod --
module example.net/m
go 1.16
replace (
example.net/a v0.1.0 => ./a
example.net/b v0.1.0 => ./b
example.net/b v0.1.1 => ./b
example.net/m v0.1.0 => ./m1
)
require example.net/a v0.1.0
-- go.mod.want --
module example.net/m
go 1.16
replace (
example.net/a v0.1.0 => ./a
example.net/b v0.1.0 => ./b
example.net/b v0.1.1 => ./b
example.net/m v0.1.0 => ./m1
)
require (
example.net/a v0.1.0
example.net/b v0.1.1 // indirect
)
-- m.go --
package m
import "example.net/a"
-- m1/go.mod --
module example.net/m
go 1.16
require example.net/b v0.1.0
-- a/go.mod --
module example.net/a
go 1.16
require example.net/m v0.1.0
-- a/a.go --
package a
import "example.net/b"
-- b/go.mod --
module example.net/b
go 1.16
-- b/b.go --
package b