aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/testdata/script/mod_retract_fix_version.txt
blob: e45758b627016da1252ace1231bbf4bb11a6c881 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# retract must not be used without a module directive.
! go list -m all
stderr 'go.mod:3: no module directive found, so retract cannot be used$'

# Commands that update go.mod should fix non-canonical versions in
# retract directives.
# Verifies #44494.
go mod edit -module=rsc.io/quote/v2
! go list -m all
stderr '^go: updates to go.mod needed; to update it:\n\tgo mod tidy$'
go mod tidy
go list -m all
cmp go.mod go.mod.want

# If a retracted version doesn't match the module's major version suffx,
# an error should be reported.
! go mod edit -retract=v3.0.1
stderr '^go mod: -retract=v3.0.1: version "v3.0.1" invalid: should be v2, not v3$'
cp go.mod.mismatch-v2 go.mod
! go list -m all
stderr 'go.mod:3: retract rsc.io/quote/v2: version "v3.0.1" invalid: should be v2, not v3$'

cp go.mod.mismatch-v1 go.mod
! go list -m all
stderr 'go.mod:3: retract rsc.io/quote: version "v3.0.1" invalid: should be v0 or v1, not v3$'

-- go.mod --
go 1.16

retract latest
-- go.mod.want --
go 1.16

retract v2.0.1

module rsc.io/quote/v2
-- go.mod.mismatch-v2 --
go 1.16

retract v3.0.1

module rsc.io/quote/v2
-- go.mod.mismatch-v1 --
go 1.16

retract v3.0.1

module rsc.io/quote