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

42984c42 internal/lsp/regtest: run one quick fix at a time in TestUnknownRevision
19b1717e go.mod: upgrade to Go 1.17
a1fbb681 all: upgrade go.mod files to Go 1.16
062bf4eb internal/lsp: make ShowDocument RPC available to gopls
3e17c62e internal/lsp: warn users who have built gopls with go-diff v1.2.0
def02638 gopls: clarify policy with respect to support for older Go versions
7a6108e9 internal/lsp: don't use ast.NewPackage to build builtin
edbe9bef internal/lsp/completion: indicate completion candidates that are deprecated
9b9633e0 internal/lsp/regtest: force GOPACKAGESDRIVER=off
291330a8 gopls/internal/regtest/modfile: set an explicit go version in the TestUnknownRevision modules
aec13729 gopls/internal/regtest: unskip tests for golang/go#37098
28c1392e internal/lsp: don't call PackagesForFile on builtin.go
800adbe2 go/packages: enable TestIssue37098 for Go 1.17 and later
16b25d25 internal/lsp: print comments that would be lost during extract func
7c72a848 go/analysis/passes/fieldalignment: clarify reported diagnostics in docs
9ff86487 internal/lsp: add support for extracting non-nested returns
d0768c91 internal/lsp/source/completion: suggest only valid package names
6397a116 internal/lsp/debug: splice in updated servers rather than overwrite
7b9993c5 internal/lsp/cmd: add a command-line command to start daemon debugging
fe1c5480 gopls/test: it is safe to ignore json unmarshalling errors
735ed62f gopls: tidy module
e3dc99f8 cmd/guru: update referrers-json testdata to reflect new line numbering
3f1e7240 cmd/guru: remove test assertions involving unsafe to fix the build
cf354b66 internal/lsp/cache: improve snapshot clone perfomance
7657be6e gopls/doc: fix broken link
7c93484b internal/lsp: add a command to start the debug server
716a04c6 lsp/completion: fix postfix completions preceding assignments
f74a6698 internal/lsp/cache: preallocate internal maps when cloning snapshots
e435455a internal/lsp: introduce MemoryMode
f7e8e244 internal/lsp: support Check For Upgrades in vendor mode
a8e7c0c9 internal/lsp: move gopls/internal/regtest ->  internal/lsp/regtest
f946a157 passes/sigchanyzer: allow valid inlined unbuffered signal channel
4934781c lsp/completion: offer candidates converting arrays to slices
b3e5b999 internal/lsp: update unsafe completion test for upcoming spec changes
e74674ae internal/lsp/protocol: latest version of LSP
dbc87476 internal/lsp/semantic: avoid doing semantic tokens for large files
a13dbf1a lsp/completion: omit deep completions into unimported package names
10909d8c internal/lsp/cache: remove type info trimming
1dce19db internal/lsp/cache: don't trim types.Info with staticcheck enabled
07295caa internal/lsp/cache: prune types.Info entries in slice literals
1a0c6081 internal/lsp/protocol/typescript: update documentation and generated code
fe503716 internal/lsp/source: fix Deref function for cyclic types
cb5dc85c internal/lsp/cache: add a scheme for types error code links
799b6824 gopls/internal/hooks: respect the default checks of the staticcheck tool
d1362d7a internal/lsp/source: fix an infinite loop in Deref function
59a2b45a internal/lsp/source: update process of hover signature creation for type declarations
2140ccea fix the argument of the goimports example
ec686a2a all: upgrade all dependencies except for go-diff
0243799c gopls/internal/coverage: apply gofmt to the build tag syntax
be791d07 internal/lsp/source: small fixes to directory filters

Change-Id: If0eb9499020d2baab77f05523197adb95044705f
tree: 1cc7f777dec197136e1db5451ad3c2d2288a4859
  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.