1.5 KiB
Tools
Go command
The go build and go install commands now accept a -json flag that reports
build output and failures as structured JSON output on standard output.
Furthermore, passing -json to go test now reports build output and failures
in addition to test results in JSON. For details of the reporting format, see
go help buildjson.
Cgo
Cgo currently refuses to compile calls to a C function which has multiple
incompatible declarations. For instance, if f is declared as both void f(int)
and void f(double), cgo will report an error instead of possibly generating an
incorrect call sequence for f(0). New in this release is a better detector for
this error condition when the incompatible declarations appear in different
files. See #67699.
Vet
The new tests analyzer reports common mistakes in declarations of
tests, fuzzers, benchmarks, and examples in test packages, such as
malformed names, incorrect signatures, or examples that document
non-existent identifiers. Some of these mistakes may cause tests not
to run.
This analyzer is among the subset of analyzers that are run by go test.
GOCACHEPROG
The cmd/go internal binary and test caching mechanism can now be implemented
by child processes implementing a JSON protocol between the cmd/go tool
and the child process named by the GOCACHEPROG environment variable.
This was previously behind a GOEXPERIMENT.
For protocol details, see #59719.