1
0
mirror of https://github.com/golang/go synced 2024-11-18 01:04:48 -07:00
go/api
Russ Cox bd8ec78b08 cmd/go, go/build: parse directives in file headers
For #56986, go/build needs to report up to cmd/go
about //go:debug lines found in the source code.
Rather than make a special case for //go:debug,
this change gathers all top-level directives above the
package line and includes them in the result.

The go command's module index must match go/build,
so this CL contains the code to update the index as well.

A future CL will use the //go:debug lines to prepare the default
GODEBUG settings, as well as rejecting such lines in non-main
packages.

Change-Id: I66ab8dc72f9cd65c503b10b744367caca233f8a6
Reviewed-on: https://go-review.googlesource.com/c/go/+/453603
Reviewed-by: Bryan Mills <bcmills@google.com>
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
2023-02-23 10:10:21 +00:00
..
next cmd/go, go/build: parse directives in file headers 2023-02-23 10:10:21 +00:00
except.txt cmd/api: add API checks for freebsd/arm64 2023-02-17 20:31:46 +00:00
go1.1.txt strconv: quote rune 007F as \x7f, not \u007f 2022-03-31 20:37:15 +00:00
go1.2.txt
go1.3.txt
go1.4.txt
go1.5.txt
go1.6.txt
go1.7.txt
go1.8.txt
go1.9.txt
go1.10.txt
go1.11.txt
go1.12.txt
go1.13.txt
go1.14.txt cmd/api: add API checks for freebsd/arm64 2023-02-17 20:31:46 +00:00
go1.15.txt
go1.16.txt cmd/api: track darwin arm64 port 2022-12-02 16:30:41 +00:00
go1.17.txt cmd/api: add API checks for freebsd/arm64 2023-02-17 20:31:46 +00:00
go1.18.txt cmd/api: add API checks for freebsd/arm64 2023-02-17 20:31:46 +00:00
go1.19.txt cmd/api: track deprecations 2022-12-02 16:29:41 +00:00
go1.20.txt cmd/api: add API checks for freebsd/riscv64 2023-02-17 21:23:32 +00:00
go1.txt
README cmd/api: require proposal # for new API features 2022-03-14 21:43:16 +00:00

Files in this directory are data for Go's API checker ("go tool api", in src/cmd/api).

Each file is a list of API features, one per line.

go1.txt (and similarly named files) are frozen once a version has been
shipped. Each file adds new lines but does not remove any.

except.txt lists features that may disappear without breaking true
compatibility.

Starting with go1.19.txt, each API feature line must end in "#nnnnn"
giving the GitHub issue number of the proposal issue that accepted
the new API. This helps with our end-of-cycle audit of new APIs.
The same requirement applies to next/* (described below), which will
become a go1.XX.txt for XX >= 19.

The next/ directory contains the only files intended to be mutated.
Each file in that directory contains a list of features that may be added
to the next release of Go. The files in this directory only affect the
warning output from the go api tool. Each file should be named
nnnnn.txt, after the issue number for the accepted proposal.
(The #nnnnn suffix must also appear at the end of each line in the file;
that will be preserved when next/*.txt is concatenated into go1.XX.txt.)