| Server IP : 157.230.181.24 / Your IP : 216.73.217.11 Web Server : Apache/2.4.58 (Ubuntu) System : Linux conductive 6.8.0-117-generic #117-Ubuntu SMP PREEMPT_DYNAMIC Tue May 5 19:26:24 UTC 2026 x86_64 User : ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /lib/go/src/cmd/go/testdata/script/ |
Upload File : |
# Create basic modules and work space.
# Note that toolchain lines in modules should be completely ignored.
env TESTGO_VERSION=go1.50
mkdir m1_22_0
go mod init -C m1_22_0
go mod edit -C m1_22_0 -go=1.22.0 -toolchain=go1.99.0
# work init writes the current Go version to the go line
go work init
grep '^go 1.50$' go.work
! grep toolchain go.work
# work init with older modules should leave go 1.50 in the go.work.
rm go.work
go work init ./m1_22_0
grep '^go 1.50$' go.work
! grep toolchain go.work
# work init with newer modules should bump go,
# including updating to a newer toolchain as needed.
# Because work init writes the current toolchain as the go version,
# it writes the bumped go version, not the max of the used modules.
env TESTGO_VERSION=go1.21
env TESTGO_VERSION_SWITCH=switch
rm go.work
env GOTOOLCHAIN=local
! go work init ./m1_22_0
stderr '^go: m1_22_0'${/}'go.mod requires go >= 1.22.0 \(running go 1.21; GOTOOLCHAIN=local\)$'
env GOTOOLCHAIN=auto
go work init ./m1_22_0
stderr '^go: m1_22_0'${/}'go.mod requires go >= 1.22.0; switching to go1.22.9$'
cat go.work
grep '^go 1.22.9$' go.work
! grep toolchain go.work