| env GO111MODULE=on |
| |
| # golang.org/issue/31248: loading the build list must not add explicit entries |
| # for indirect dependencies already implied by older-than-selected versions |
| # already in the build list. |
| |
| cp go.mod.orig go.mod |
| go mod tidy |
| cmp go.mod go.mod.orig |
| |
| cp go.mod.orig go.mod |
| go list -m all |
| cmp go.mod go.mod.orig |
| |
| -- go.mod.orig -- |
| module main |
| |
| go 1.13 |
| |
| require a v0.0.0 |
| |
| replace ( |
| a v0.0.0 => ./a |
| b v0.0.0 => ./b |
| i v0.0.0 => ./i |
| x v0.1.0 => ./x1 |
| x v0.2.0 => ./x2 |
| ) |
| -- main.go -- |
| package main |
| |
| import _ "a" |
| |
| func main() {} |
| -- a/go.mod -- |
| module a |
| go 1.13 |
| require ( |
| x v0.2.0 |
| b v0.0.0 |
| ) |
| -- a/a.go -- |
| package a |
| -- b/go.mod -- |
| module b |
| go 1.13 |
| require x v0.1.0 |
| -- x1/go.mod -- |
| module x |
| go 1.13 |
| require ( |
| b v0.0.0 |
| i v0.0.0 |
| ) |
| -- x2/go.mod -- |
| module x |
| go 1.13 |
| -- i/go.mod -- |
| module i |
| go 1.13 |