aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/testdata/script/gotoolchain_issue66175.txt
blob: 5db4dbf3810ac867e79bef2337c00a61eb0d3352 (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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
env TESTGO_VERSION=go1.14

# Clear the path so this test doesn't fail if the system running it\
# has a binary named go1.21 or go1.22 on its path.
[GOOS:plan9] env path=
[!GOOS:plan9] env PATH=

# check for invalid toolchain in go.mod
go mod init m
go mod edit -go=1.14 -toolchain=go1.22
! go version
stderr 'go: invalid toolchain: go1.22 is a language version but not a toolchain version \(go1.22.x\)'

rm go.mod
go mod init m
go mod edit -go=1.14 -toolchain=go1.21
! go version
stderr 'go: invalid toolchain: go1.21 is a language version but not a toolchain version \(go1.21.x\)'

rm go.mod
go mod init m
go mod edit -go=1.14 -toolchain=go1.20
! go version
stderr 'go: downloading go1.20 '


# check for invalid GOTOOLCHAIN
env GOTOOLCHAIN=go1.14
go version
stdout 'go1.14'

env GOTOOLCHAIN=go1.20
! go version
stderr 'go: downloading go1.20 '

env GOTOOLCHAIN=go1.21
! go version
stderr 'go: invalid toolchain: go1.21 is a language version but not a toolchain version \(go1.21.x\)'

env GOTOOLCHAIN=go1.22
! go version
stderr 'go: invalid toolchain: go1.22 is a language version but not a toolchain version \(go1.22.x\)'

env GOTOOLCHAIN=go1.20+auto
! go version
stderr 'go: downloading go1.20 '

env GOTOOLCHAIN=go1.21+auto
! go version
stderr 'go: invalid toolchain: go1.21 is a language version but not a toolchain version \(go1.21.x\)'

env GOTOOLCHAIN=go1.22+auto
! go version
stderr 'go: invalid toolchain: go1.22 is a language version but not a toolchain version \(go1.22.x\)'

env GOTOOLCHAIN=go1.21rc3
! go version
stderr 'go: downloading go1.21rc3 '

env GOTOOLCHAIN=go1.22rc2
! go version
stderr 'go: downloading go1.22rc2 '

env GOTOOLCHAIN=go1.66
! go version
stderr 'go: invalid toolchain: go1.66 is a language version but not a toolchain version \(go1.66.x\)'

env GOTOOLCHAIN=go1.18beta2
! go version
stderr 'go: downloading go1.18beta2 '

# go1.X is okay for path lookups
env GOTOOLCHAIN=go1.20+path
! go version
stderr 'go: cannot find "go1.20" in PATH'

env GOTOOLCHAIN=go1.21+path
! go version
stderr 'go: cannot find "go1.21" in PATH'

env GOTOOLCHAIN=go1.22+path
! go version
stderr 'go: cannot find "go1.22" in PATH'

# When a toolchain download takes place, download 1.X.0
env GOTOOLCHAIN=auto
rm go.mod
go mod init m
go mod edit -go=1.300 -toolchain=none
! go version
stderr 'go: downloading go1.300.0 '

rm go.mod
go mod init m
go mod edit -go=1.21 -toolchain=none
! go version
stderr 'go: downloading go1.21.0 '

rm go.mod
go mod init m
go mod edit -go=1.22 -toolchain=none
! go version
stderr 'go: downloading go1.22.0 '

rm go.mod
go mod init m
go mod edit -go=1.15 -toolchain=none
! go version
stderr 'go: downloading go1.15 '