| env GO111MODULE=on |
| |
| # list {{.Dir}} shows main module but not not-yet-downloaded dependency |
| go list -m -f '{{.Path}} {{.Main}} {{.Dir}}' all |
| stdout '^x true .*[\\/]src$' |
| stdout '^rsc.io/quote false $' |
| |
| # list {{.Dir}} shows dependency after download |
| go list -f {{.Dir}} rsc.io/quote |
| stdout 'mod[\\/]rsc.io[\\/]quote@v1.5.2' |
| |
| # downloaded dependencies are read-only |
| exists -readonly $GOPATH/src/mod/rsc.io/quote@v1.5.2 |
| exists -readonly $GOPATH/src/mod/rsc.io/quote@v1.5.2/buggy |
| |
| # go clean -modcache can delete read-only dependencies |
| go clean -modcache |
| ! exists $GOPATH/src/mod/rsc.io/quote@v1.5.2 |
| |
| # list {{.Dir}} shows replaced directories |
| cp go.mod2 go.mod |
| go list -f {{.Dir}} rsc.io/quote |
| go list -m -f '{{.Path}} {{.Version}} {{.Dir}}{{with .Replace}} => {{.Version}} {{.Dir}}{{end}}' all |
| stdout 'mod[\\/]rsc.io[\\/]quote@v1.5.1' |
| stdout 'v1.3.0.*mod[\\/]rsc.io[\\/]sampler@v1.3.1 => v1.3.1.*sampler@v1.3.1' |
| |
| # list std should work |
| go list std |
| stdout ^math/big |
| |
| # rsc.io/quote/buggy should be listable as a package |
| go list rsc.io/quote/buggy |
| |
| # rsc.io/quote/buggy should not be listable as a module |
| go list -m -e -f '{{.Error.Err}}' nonexist rsc.io/quote/buggy |
| stdout '^module "nonexist" is not a known dependency' |
| stdout '^module "rsc.io/quote/buggy" is not a known dependency' |
| |
| ! go list -m nonexist rsc.io/quote/buggy |
| stderr '^go list -m nonexist: module "nonexist" is not a known dependency' |
| stderr '^go list -m rsc.io/quote/buggy: module "rsc.io/quote/buggy" is not a known dependency' |
| |
| # Module loader does not interfere with list -e (golang.org/issue/24149). |
| go list -e -f '{{.Error.Err}}' database |
| stdout 'no Go files in ' |
| ! go list database |
| stderr 'no Go files in ' |
| |
| -- go.mod -- |
| module x |
| require rsc.io/quote v1.5.2 |
| |
| -- go.mod2 -- |
| module x |
| require rsc.io/quote v1.5.1 |
| replace rsc.io/sampler v1.3.0 => rsc.io/sampler v1.3.1 |
| |
| -- x.go -- |
| package x |
| import _ "rsc.io/quote" |