2ef0387721
When completing members on a type checked, unimported package, you get fully typed members. That means you get deep completions. Because we downrank the initial unimported package members so much, any deep completions were dominating the rankings. For example context.Back<> yielded "context.Background().Err" ranked above "context.Background". Fix by scoring context.Background in this example as stdScore+tinyRelevanceScore instead of just tinyRelevanceScore. I also changed untyped candidate scores in the same way so they stay competitive when you have both imported and unimported candidates. The other option was to propagate the score penalty into deep candidates, but that wasn't easy. In general I think you are better off avoiding big score penalties because they complicate the interplay between different kinds of candidates. Scoring needs an overhaul, but at least we are building up our test suite in the meantime. Change-Id: Ia5d32c057b04174229686cec6ac0542c30e186e2 Reviewed-on: https://go-review.googlesource.com/c/tools/+/218378 Run-TryBot: Muir Manders <muir@mnd.rs> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com> |
||
---|---|---|
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.