commit | 4981f6b3adbaabd7a2f18bd7bd97f05d0039619e | [log] [tgz] |
---|---|---|
author | Heschi Kreinick <heschi@google.com> | Fri Dec 13 17:12:11 2019 -0500 |
committer | Heschi Kreinick <heschi@google.com> | Mon Dec 16 21:51:44 2019 +0000 |
tree | 9f02cb7386b0bfa10e05202acf15aa1478c102bf | |
parent | 99b39703f41791750849b0947dc8cf151f0adc28 [diff] |
internal/lsp/cache: consolidate snapshot cloning Cloning is complicated enough without worrying about concurrency, so hold the snapshot's lock during the entire process. Consolidate everything into one function. I don't think that the split was making it easier to understand, and I was able to see and clean up some extra complexity once it was all in one place. Let's discuss options if you think the result is too long. I don't intend any semantic changes in this CL. Updates golang/go#35638. Change-Id: I05c4b28875976293f5fcd56248d9c9e468f85cc6 Reviewed-on: https://go-review.googlesource.com/c/tools/+/211537 Run-TryBot: Heschi Kreinick <heschi@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rebecca Stambler <rstambler@golang.org>
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.
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
.
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.