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

8a9a8936 internal/lsp/cache: don't set tempModFile is view's modURI is empty
0f1c5395 internal/lsp: show orphaned file warnings as diagnostics
7b6ac5b9 internal/lsp/cache: slightly more useful comment
24570c05 internal/lsp: handle initial workspace load failure per module
04afef38 internal/lsp: don't search for workspace modules by default
7bb30d14 internal/lsp: fix go generate command for subdirs
06f3a46a gopls/internal/regtest: add benchmarks for completions
463111b6 internal/lsp: add a command to generate the gopls.mod file
03f0cc1c internal/lsp: interpolate variables in the sandbox
ba800b16 internal/lsp: ignore errors when finding workspace modules
f5e916c6 internal/lsp/source/completion: move search path to candidate
a1f7ab68 internal/lsp/source/completion: move deep search to end of completion
82fe25c3 gopls/doc: improve enum value documentation
aeb8e369 internal/lsp: remove multi-module support in tests
fa012525 all: replace 'the the ' with 'the '
a20a5e7f internal/lsp: rewrite createView to populate fields independently
4aa5c68d internal/lsp: remove multi-module test cases
0f52b63a internal/lsp/tests: use NeedsGo1Point
ccabf82f internal/lsp/cache: populate URI on files with errors
d647fc25 cmd/benchcmp: mention deprecation in docs
78fed78f internal/lsp: handle modifications to the workspace module
e94ab728 internal/lsp/source/completion: improve import suggestion labels
d56e4e40 internal/lsp/cache: set GO111MODULE=auto in 1.16
3791637d all: fix tests in preparation for GO111MODULE=on by default
d148ae1e internal/lsp/source/completion: convert deep completion to bfs
0511c4cc internal/imports: use ProcessEnv to filter files
75ebdcb7 gopls/internal/regtest: add expected ranges in completion tests
60aba8ac internal/lsp: always show errors from running commands
63098cc4 internal/imports: don't set Context.WorkingDir, which was renamed
655488c8 internal/lsp: fix concurrency issues in view initialization
c537a342 internal/lsp: pass options by reference instead of by value
c9a70fc2 internal/lsp/cache: fix release tag parsing
f128e626 internal/memoize: show key type in panics
587cf233 internal/lsp/mod: handle nil pointers in code lenses
56d9a0cd cover: fix sorting of profile segment boundaries
c8d9e05b gopls/internal/regtest: simplify expectation return values
6ec2cde9 internal/lsp/source: add some additional symbol downranking
e20053b7 gopls/internal/regtest: remove ExpectNow
797bd0f0 gopls/internal/regtest: simplify regtest EditorConfig
cbbbe623 gopls/internal/regtest: add an InitialWorkspaceLoad expectation
bf5c620a gopls/internal/regtest: move expectations to their own file
f4cefd1c internal/lsp: enable multi-module workspace mode by default in tests
2db8f0ff internal/lsp/cache: fix -mod=mod for workspace module setups
64986481 internal/lsp: check file kind before showing warning
3c2036f9 go/packages: support overlays for replaced modules
2b477fad tools, gopls: update Go versions in go.mod files to 1.12
8f9ed77d go/packages: add roots for overlaid packages for all query types
17fc728d internal/lsp: handle staticcheck in code actions
2350fe8b internal/lsp/source: fix panic in addFieldItems
97363e29 internal/lsp: handle staticcheck in didChangeConfiguration
6422fca0 report cycle when visiting a grey analyzer
b43031a3 internal/lsp/cache: fix for default -mod=readonly
7ad463ce gopls/internal/regtest: add a test for new symbols in test variants
d49a6cb6 internal/lsp/protocol: add support for upcoming LSP 3.16
d179df38 internal/lsp/cache: automatically construct the workspace module
571a2076 internal/lsp/source: fix duplicates in workspaceSymbols
53e29e9d internal/lsp: show a warning message when opening an "orphaned" file
d6107fe4 gopls/internal/regtest: skip failing test for go1.13 and below
b484961f x/gools/gopls: document settings for working on source distribution
44a29229 internal/lsp, go/packages: fix Go 1.15-related overlay bug
6a8222ee gopls/doc: generate settings JSON, docs
201d438b internal/lsp: add more tests for package completion

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

Go Tools

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.