56125e7d70
If NeedTypesInfo, go/packages needs to do typechecking itself so it can associate type info with the AST. To do so, we need the export data for dependencies, which means we need to ask for the direct dependencies. go list has no way to ask for direct dependencies, so we'll set -deps in the command line to go list. (We need to type check the transitive dependencies to get export data anyways so this shouldn't be that much worse than a hypothetical mode that only did work for direct dependencies. The main issue will be the I/O required (which could (?) still be a problem?).) On top of that, we need to make sure that we *don't* ask for sources for those direct dependencies (which we might have done before) because that would result in trying to type check the dependency packages from source, which we'd need *those* packages' dependencies' export data and transitive sources for and so on. uggggggggggggggh Fixes golang/go#32814 Change-Id: I8d95b320beea556bdf44c625607d9e7d2cc188e5 Reviewed-on: https://go-review.googlesource.com/c/tools/+/184165 Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Cottrell <iancottrell@google.com> |
||
---|---|---|
benchmark/parse | ||
blog | ||
cmd | ||
container/intsets | ||
cover | ||
go | ||
godoc | ||
gopls | ||
imports | ||
internal | ||
playground | ||
present | ||
refactor | ||
.gitattributes | ||
.gitignore | ||
AUTHORS | ||
codereview.cfg | ||
CONTRIBUTING.md | ||
CONTRIBUTORS | ||
go.mod | ||
go.sum | ||
LICENSE | ||
PATENTS | ||
README.md |
Go Tools
This subrepository holds the source for various packages and tools that support the Go programming language.
Some of the tools, godoc
and vet
for example, are included in binary Go
distributions.
Others, including the Go guru
and the test coverage tool, can be fetched with
go get
.
Packages include a type-checker for Go and an implementation of the Static Single Assignment form (SSA) representation for Go programs.
Download/Install
The easiest way to install is to run go get -u golang.org/x/tools/...
. You can
also manually git clone the repository to $GOPATH/src/golang.org/x/tools
.
Report Issues / Send Patches
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.
The main issue tracker for the tools repository is located at https://github.com/golang/go/issues. Prefix your issue with "x/tools/(your subdir):" in the subject line, so it is easy to find.