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

11e8f6b85 internal/lsp: refactor codeAction
1523bb47d internal/lsp: fix time.Duration hover name check
bcb2d7b23 internal/lsp: fix bad completion for variadic functions
7ee29554c internal/lsp/cache: refactor and improve go get quick fixes
1e524e26b internal/lsp/source: add the nilness analyzer
d34cf35d9 internal/lsp/source: return nil for foldingRange in case of parse error
c5f5f4bed gopls/doc: clarify how to set remote.listen.timeout
3e1cb9523 internal/lsp/source: correct workspace symbol logic for unpacking receivers
397283d20 internal/lsp/protocol/typescript: fix lint errors in .ts code
d19d8cffc internal/lsp/protocol/typecript: fix type merging
50ca8d007 all: recognize new error from go command when no go.mod is found
2cde57b5a internal/lsp: remove redundant didChange notifications
376db5724 internal/lsp: use pre-existing quick fixes for analysis diagnostics
144d5ced6 internal/lsp: run type error analyzers as part of diagnostics
24439e3c7 internal/lsp/source: eliminate GetTypeCheckDiagnostics
dafbee503 internal/lsp: show human-readable const time.Duration as a comment
9c452d857 internal/lsp/cache: don't rely on related diagnostics if unsupported
2ac05c832 internal/lsp: key GC details off package ID
303d8bbb5 gopls/internal/hooks: compile URL regexp once
94327d32c internal/lsp/cache: show type errors on parse errors in other files
16b2c8703 gopls/internal/regtest: add a failing test for issue 44736
78002535c internal/lsp/cache: split up sourceDiagnostics
47985cf3c internal/lsp/cache: refactor Go file parsing
6422c5c8c internal/lsp/cache: invalidate metadata on magic comment changes
f9c628b18 gopls/internal/regtest: add test for bad embed rules
89a9cb6e0 internal/lsp/cache: parse filenames from go list errors correctly
eb48d3f60 internal/lsp/cache: refactor diagnostic suppression
7a079fcd7 internal/lsp/cache: fix related error processing
f5a4005dd cmd/eg: don't do rewrites within the template file itself
28e7a3b5f cmd/eg: use go/packages
54dc8c5ed playground: remove /share registration, add Proxy
24aca17f6 cmd/guru: adjust describe qualifier function (fix describe test)
0150491f5 x/tools/internal/fastwalk: fixes "interrupted system call" error
b4639ccb8 internal/lsp/protocol: fix vet error in tsprotocol.go
a43f69b1f go/expect: use parser.AllErrors when extracting Notes
f48e60bd8 add comment and check action type neovim goimports
b8d1a33f7 internal/lsp/source: add the unusedwrite analyzer

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