modfile: update toolchain syntax

Final revisions for Go 1.21: lock down the toolchain syntax to use
'toolchain default' instead of 'toolchain local', to avoid confusion
with 'GOTOOLCHAIN=local'; 'toolchain local' does not always mean
the same thing.

Also remove the prefix-go1.2.3 toolchain name form, leaving only
go1.2.3-suffix. There is no need to have two different forms, and it's

For golang/go#57001.

Change-Id: I16623c796c620e98178deed899e28a00e85fcc21
TryBot-Result: Gopher Robot <>
Run-TryBot: Russ Cox <>
Reviewed-by: Michael Matloob <>
6 files changed
tree: 68bd01a4aa12d1f67c4ea0a0ee6ad5a4c13319b1
  1. gosumcheck/
  2. internal/
  3. modfile/
  4. module/
  5. semver/
  6. sumdb/
  7. zip/
  8. codereview.cfg
  9. go.mod
  10. go.sum



This repository holds packages for writing tools that work directly with Go module mechanics. That is, it is for direct manipulation of Go modules themselves.

It is NOT about supporting general development tools that need to do things like load packages in module mode. That use case, where modules are incidental rather than the focus, should remain in x/tools, specifically x/tools/go/packages.

The specific case of loading packages should still be done by invoking the go command, which remains the single point of truth for package loading algorithms.