1
0
mirror of https://github.com/golang/go synced 2024-11-23 04:10:04 -07:00

cmd/go: vet: provide package ID to the vet tool

This field, which matches the IDs used by go list, will enable all vet
drivers to produce JSON output in a consistent format (a map from
package ID to analysis name to result).

Change-Id: Icac703b944de55df42c996dc2f672005014ad57a
Reviewed-on: https://go-review.googlesource.com/c/149960
Reviewed-by: Russ Cox <rsc@golang.org>
This commit is contained in:
Alan Donovan 2018-11-16 13:27:55 -05:00
parent 2a07c50a5c
commit 35244d8fd1

View File

@ -881,6 +881,7 @@ func (b *Builder) loadCachedSrcFiles(a *Action) bool {
// vetConfig is the configuration passed to vet describing a single package.
type vetConfig struct {
ID string // package ID (example: "fmt [fmt.test]")
Compiler string // compiler name (gc, gccgo)
Dir string // directory containing package
ImportPath string // canonical import path ("package path")
@ -914,6 +915,7 @@ func buildVetConfig(a *Action, srcfiles []string) {
// so that we can reformat them relative to the directory
// in which the go command is invoked.
vcfg := &vetConfig{
ID: a.Package.ImportPath,
Compiler: cfg.BuildToolchainName,
Dir: a.Package.Dir,
GoFiles: mkAbsFiles(a.Package.Dir, gofiles),