]> Cypherpunks repositories - gostls13.git/commit
cmd/dist: set go version in bootstrap go.mod file
authorMichael Matloob <matloob@golang.org>
Tue, 13 Aug 2024 17:53:50 +0000 (13:53 -0400)
committerMichael Matloob <matloob@golang.org>
Thu, 22 Aug 2024 17:24:29 +0000 (17:24 +0000)
commit422f4705ca5487184c232cc5709e543ce5f37cd6
tree71672ca495d5890b2adc67fc53c7f1ea6960a0a3
parentc7faf7f51478b8a91a78bebb3f7740972ac76d6e
cmd/dist: set go version in bootstrap go.mod file

The commands to build the bootstrap toolchains and go commands are run
from modules created by two bootstrap go.mod files: one is used when
building toolchain1 and go_bootstrap, and the other is used for
toolchain2 and toolchain3, and the final build. Currently the first has
a go directive specifying go 1.20, and the second one does not have a go
directive at all. This affects the default GODEBUG setting when building
the final toolchain: the default GODEBUG value is based on the go
version of the go.mod file, and when the go.mod file does not have a
version it defaults to go1.16. We should set the go directive on the
bootstrap used for the second half of the builds to use the current go
verison from the std's go.mod file (which is the same as the version on
cmd's go.mod file).

The go.mod file used for the initial bootstrap should have a go
directive with the minimum version of the toolchain required for
bootstrapping. That version is the current version - 2 rounded down to
an even number.

For #64751
Fixes #68797

Change-Id: Ibdddf4bc36dc963291979d603c4f3fc55264f65b
Reviewed-on: https://go-review.googlesource.com/c/go/+/604799
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
src/cmd/dist/build.go
src/cmd/dist/build_test.go
src/cmd/dist/buildtool.go