593de60622
As usual, in debugging the creation of a new file with gopls, I've encountered a go/packages overlay bug. The issue is: A file b/b.go with package name "b" exists on disk. A package b/b_test.go with no content exists on disk. There is an overlay for b/b_test.go that contains the package name "b". Running packages.Load for file=b/b_test.go will result in a failure to load package b [b.test]. This change adds this test to the go/packages tests. This case is fixed by restricting the fallback logic in runContainsQueries. We only attempt to construct an ad-hoc package if the original package was returned with no GoFiles. Also, a minor change to the gopls error parsing code that fixes a case in which diagnostics were being sent without corresponding files. Updates golang/go#36635. Change-Id: I38680a2cc65ae9c3252294db6b942d031189faf5 Reviewed-on: https://go-review.googlesource.com/c/tools/+/215743 Run-TryBot: Rebecca Stambler <rstambler@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> Reviewed-by: Michael Matloob <matloob@golang.org> |
||
---|---|---|
benchmark/parse | ||
blog | ||
cmd | ||
container/intsets | ||
cover | ||
go | ||
godoc | ||
gopls | ||
imports | ||
internal | ||
playground | ||
present | ||
refactor | ||
txtar | ||
.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.