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

Also update hardcoded version in internal/lsp/debug/info.go.

123adc86 godoc/vfs: add io/fs adapter
68c7d11a go/analysis: extend the loopclosure checker to considering errgroup.Group.Go.
add869b6 internal/lsp: always return file handles for nonexistent files
701d1429 internal/lsp/cache: build the workspace module deterministically
ed2b1e9f gopls/internal/regtest: exit if small machine
5bd3da9b godoc: convert Markdown files to HTML during serving
9eba6e15 gopls/internal/regtest: skip known flake TestGCDetails
9f3e2260 gopls/internal/regtest/workspace: disable flaky MultiModule_OneBrokenModule test
706a59cb internal/lsp: apply go.mod/sum changes via workspace edits
8316e564 internal/lsp/command: stub out the ListKnownPackages and AddImport commands
51f72a19 internal/lsp: address Rob's comments from CL 289772
d4590503 internal/lsp: apply go.sum fixes to all modules in multi-module module
5fbed493 internal/lsp/command: pass Context to commands
1bc371e2 gopls/doc: add argument documentation for commands
8aef11fa internal/lsp: switch to the new command API
a30116df internal/lsp: eliminate funcs from commands, and refactor
fd2f9f3b internal/lsp/command: use a build tag to avoid broken generation
553f4ba8 internal/lsp/command: rename commands to align with current naming
86984b87 internal/lsp/command: add an interface for workspace/executeCommand
d2671c4a internal/lsp: move some per-command set-up into a helper
94fce4dc internal/lsp/cache: remove stray debug logging
61406578 godoc: show earliest version when identifier was added
5ab06b02 internal/lsp/source: sort commands alphabetically
5941677e go/analysis: fix path to example-test.go
ef80cdb6 internal/lsp/completion: fix untyped int type inference
b30482dd internal/lsp/cache: allow fixing multiple syntax errors
513be0a9 internal/lsp/cache: disable network for mod tidy diagnostics
8938cee7 internal/lsp/completion: fix invalid struct literal field snippet
c3a8a1d8 internal/lsp/completion: fix untyped ints to match floats
842a9283 gopls/internal/regtest: only run in 'singleton' mode on certain GOOS
bd8508e4 gopls/internal/regtest/codelens: increase the timeout on TestGCDetails
6d19fbfa internal/lsp/cache: fix AllowModfileModifications on 1.16
6baea3f8 internal/jsonrpc2: remove unused invalidID constant
ed973575 all: upgrade all dependencies, if possible
e7dfe027 internal/lsp: remove redundant fields/code after source.Error deletion
51ce8377 internal/lsp: remove the source.Error type
5659e493 internal/lsp/protocol/typescript: update LSP generating code
ddc05f8a internal/lsp: enable semantic tokens as part of all experiments
c3402e3c internal/lsp: update to latest version of LSP protocol
2ab23861 internal/lsp: stop using structured errors

Change-Id: Id9cf9559e2e7a6177afc32feaccdad438a75bd52
tree: 7a965c136bbcbf0bb999a0335ff23ca6d6544b6b
  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.