[gopls-release-branch.0.6] all: merge master into gopls-release-branch.0.6

63754364 Revert "[gopls-release-branch.0.6] all: merge master into gopls-release-branch.0.6"
0af0626a internal/lsp: save all possible keys for analyses, codelenses
ee6d6aff internal/lsp: restructure user options (CL 278433 continued)
2152f4ed Merge "[gopls-release-branch.0.6] all: merge master into gopls-release-branch.0.6"
4a19ffb6 gopls/internal/regtest: await file changes in TestUseGoplsMod
481d425b [gopls-release-branch.0.6] all: merge master into gopls-release-branch.0.6
ef3185ba internal/lsp/cache: add a check for snapshot invariants
b8413747 internal/lsp: fix autocomplete appends on imports
929a8494 internal/lsp: restructure the way we report critical errors
fbbba25c gopls/doc: generate documentation for analyzers
84d76fe3 internal/lsp: fix unimported completions with -mod=readonly
0661ca7e gopls/internal/regtest: show line numbers if TestUseGoplsMod fails
13ff2212 internal/lsp/cmd: include new name in rename help message
0f6027f0 gopls/doc/vim.md: add table of contents, improve neovim docs
34cd474b internal/lsp: use an enum for GC annotations settings
b1c90890 internal/lsp/source: do not panic in "var func" outgoing callhierarchy
2b0845dc gopls/release: add a command to validate the gopls release process
57089f8f internal/lsp: remove dependencies using text edits when necessary
834755c7 internal/lsp: add tests to set configuration options
bdbb3c91 internal/lsp/cache: only reload the workspace on saved changes
3e0a2b75 gopls/internal/regtest: skip a some new builders where regtests time out
f6952e40 internal/lsp/cache: fix some package event tags
9cbb1efa internal/lsp/source: add the shadow analyzer
3fa0e8f8 gopls: disable TestTemplate on Android
f2e330f4 gopls/test: add type checking for debug server templates
19653561 internal/lsp/mod: fix misplaced code lens with individual requires
b57d1c5b internal/lsp: return an error if code action has no title
ae774e97 internal/lsp: don't show duplicate diagnostics for go.mod errors
5b06639e internal/lsp/source: only show "run file benchmarks" if available
11a5667e gopls/internal/regtest: test metadata validation only on save for go.mod
5b43ef93 go/analysis/passes/fieldalignment: filter comments from suggested fix
4b31ac34 gopls/internal/regtest: test that accepting fix removes diagnostics
008e4774 internal/lsp, gopls: recover from go-diff panics
48e5bd11 internal/lsp: add titles to `go mod tidy` and update go.sum fixes
fa10ef0b internal/lsp/source: update codelenses example
6307297f go/analysis/passes/fieldalignment: support fields without name

Change-Id: Ic66860e1eea3ce41e818011ec00b41a77cbd3345
tree: 675c50664e105ec498e59d9cfb9deb7750c37729
  1. benchmark/
  2. blog/
  3. cmd/
  4. container/
  5. cover/
  6. go/
  7. godoc/
  8. gopls/
  9. imports/
  10. internal/
  11. playground/
  12. present/
  13. refactor/
  14. txtar/
  15. .gitattributes
  16. .gitignore
  17. .prettierrc
  18. AUTHORS
  19. codereview.cfg
  20. CONTRIBUTING.md
  21. CONTRIBUTORS
  22. go.mod
  23. go.sum
  24. LICENSE
  25. PATENTS
  26. README.md
README.md

Go Tools

PkgGoDev

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.

JS/CSS Formatting

This repository uses prettier to format JS and CSS files.

The version of prettier used is 1.18.2.

It is encouraged that all JS and CSS code be run through this before submitting a change. However, it is not a strict requirement enforced by CI.

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.