| env GO111MODULE=on |
| [short] skip |
| |
| # downgrade sampler should downgrade quote |
| cp go.mod.orig go.mod |
| go get rsc.io/sampler@v1.0.0 |
| go list -m all |
| stdout 'rsc.io/quote v1.4.0' |
| stdout 'rsc.io/sampler v1.0.0' |
| |
| # downgrade sampler away should downgrade quote further |
| go get rsc.io/sampler@none |
| go list -m all |
| stdout 'rsc.io/quote v1.3.0' |
| |
| # downgrade should report inconsistencies and not change go.mod |
| go get rsc.io/quote@v1.5.1 |
| go list -m all |
| stdout 'rsc.io/quote v1.5.1' |
| stdout 'rsc.io/sampler v1.3.0' |
| |
| ! go get rsc.io/sampler@v1.0.0 rsc.io/quote@v1.5.2 golang.org/x/text@none |
| ! stderr add|remove|upgrad|downgrad |
| stderr '^go: rsc.io/quote@v1.5.2 requires rsc.io/sampler@v1.3.0, not rsc.io/sampler@v1.0.0$' |
| |
| go list -m all |
| stdout 'rsc.io/quote v1.5.1' |
| stdout 'rsc.io/sampler v1.3.0' |
| |
| # go get -u args should limit upgrades |
| cp go.mod.empty go.mod |
| go get -u rsc.io/quote@v1.4.0 rsc.io/sampler@v1.0.0 |
| go list -m all |
| stdout 'rsc.io/quote v1.4.0' |
| stdout 'rsc.io/sampler v1.0.0' |
| ! stdout golang.org/x/text |
| |
| # downgrading away quote should also downgrade away latemigrate/v2, |
| # since there are no older versions. v2.0.0 is incompatible. |
| cp go.mod.orig go.mod |
| go list -m -versions example.com/latemigrate/v2 |
| stdout v2.0.0 # proxy may serve incompatible versions |
| go get rsc.io/quote@none |
| go list -m all |
| ! stdout 'example.com/latemigrate/v2' |
| |
| -- go.mod.orig -- |
| module x |
| require ( |
| rsc.io/quote v1.5.1 |
| example.com/latemigrate/v2 v2.0.1 |
| ) |
| -- go.mod.empty -- |
| module x |
| -- x.go -- |
| package x |