blob: ca3163ec2cc96e2291ca4b0f1efe7bb5156d0f7b [file] [log] [blame]
# https://golang.org/issue/46142: 'go mod tidy' should error out if the version
# in the go.mod file is newer than the most recent supported version.
cp go.mod go.mod.orig
# If the go.mod file specifies an unsupported Go version, 'go mod tidy' should
# refuse to edit it: we don't know what a tidy go.mod file for that version
# would look like.
! go mod tidy
stderr 'go mod tidy: go.mod file indicates go 2000.0, but maximum supported version is '$goversion'$'
cmp go.mod go.mod.orig
# The -e flag should push past the error and edit the file anyway,
# but preserve the too-high version.
cp go.mod.orig go.mod
go mod tidy -e
stderr 'go mod tidy: go.mod file indicates go 2000.0, but maximum supported version is '$goversion'$'
cmp go.mod go.mod.tidy
-- go.mod --
module example.net/from/the/future
go 2000.0
replace example.net/m v0.0.0 => ./m
-- go.mod.tidy --
module example.net/from/the/future
go 2000.0
replace example.net/m v0.0.0 => ./m
require example.net/m v0.0.0
-- x.go --
package x
import "example.net/m"
-- m/go.mod --
module example.net/m
go 1.17
-- m/m.go --
package m