Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/tools/gopls: constant crashing with emacs-lsp #37984

Closed
mikroskeem opened this issue Mar 21, 2020 · 18 comments
Closed

x/tools/gopls: constant crashing with emacs-lsp #37984

mikroskeem opened this issue Mar 21, 2020 · 18 comments
Labels
FrozenDueToAge gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Milestone

Comments

@mikroskeem
Copy link

What version of Go are you using (go version)?

$ go version
go version go1.14.1 darwin/amd64

Does this issue reproduce with the latest release?

Currently 1.14.1 is the latest release.

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/mark/Library/Caches/go-build"
GOENV="/Users/mark/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/mark/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/03/l39qx4sd3g31crj98xtwz44h0000gn/T/go-build952685482=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

Set up gopls, emacs-lsp & lsp-ui

GO111MODULE=on go get golang.org/x/tools/gopls@latest
(autoload 'go-mode "go-mode" nil t)
(add-to-list 'auto-mode-alist '("\\.go\\'" . go-mode))
(add-hook 'go-mode-hook 'lsp-deferred)

... and trying to use Emacs for writing code

What did you expect to see?

Autocompletion etc. working without constant crashing

What did you see instead?

Emacs asking if I want to restart gopls and in *gopls::stderr*:

panic: runtime error: index out of range [0] with length 0

goroutine 5076 [running]:
golang.org/x/tools/internal/imports.(*ModuleResolver).init(0xc004132be0, 0x0, 0xc0006940c0)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/imports/mod.go:85 +0xfac
golang.org/x/tools/internal/imports.(*ModuleResolver).ClearForNewMod(0xc004132be0)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/imports/mod.go:194 +0xa2
golang.org/x/tools/internal/lsp/cache.(*view).RunProcessEnvFunc(0xc000290280, 0x1a123c0, 0xc005a352f0, 0xc006eef400, 0x0, 0x0)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/lsp/cache/view.go:279 +0x33f
golang.org/x/tools/internal/lsp/source.AllImportsFixes(0x1a123c0, 0xc005a352f0, 0x1a245c0, 0xc00079c060, 0x1a10a80, 0xc0002b0720, 0x0, 0xc00035ed60, 0x2, 0x2, ...)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/lsp/source/format.go:87 +0x479
golang.org/x/tools/internal/lsp.(*Server).codeAction(0xc00021dc80, 0x1a123c0, 0xc00595a390, 0xc005ea0780, 0xc005ea0780, 0x0, 0x0, 0x0, 0xc00466cd10)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/lsp/code_action.go:68 +0x8f5
golang.org/x/tools/internal/lsp.(*Server).CodeAction(0xc00021dc80, 0x1a123c0, 0xc00595a390, 0xc005ea0780, 0xc005ea0780, 0x0, 0x0, 0x1038bc3, 0x17e0260)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/lsp/server_gen.go:12 +0x4d
golang.org/x/tools/internal/lsp/protocol.serverHandler.Deliver(0x1a2cbc0, 0xc00021dc80, 0x1a123c0, 0xc00595a390, 0xc004291d00, 0x16e7e00, 0x1a10000)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/lsp/protocol/tsserver.go:433 +0x1e38
golang.org/x/tools/internal/jsonrpc2.(*Conn).Run.func1(0xc00507cde0, 0xc004291d00, 0xc000365140, 0x1a123c0, 0xc00595a390, 0x0, 0x0, 0xc005e15ea0)
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/jsonrpc2/jsonrpc2.go:372 +0x160
created by golang.org/x/tools/internal/jsonrpc2.(*Conn).Run
	/Users/mark/go/pkg/mod/golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a/internal/jsonrpc2/jsonrpc2.go:356 +0x850

Process gopls stderr finished
@gopherbot gopherbot added this to the Unreleased milestone Mar 21, 2020
@gopherbot gopherbot added Tools This label describes issues relating to any tools in the x/tools repository. gopls Issues related to the Go language server, gopls. labels Mar 21, 2020
@gopherbot
Copy link

Thank you for filing a gopls issue! Please take a look at the Troubleshooting guide, and make sure that you have provided all of the relevant information here.

@mikroskeem
Copy link
Author

gopls build info:

golang.org/x/tools/gopls v0.3.4
    golang.org/x/tools/gopls@v0.3.4 h1:4GC7q/pXQ/tsxHBGVdsMdlB4gCxVC06m/7rIXg1Px4E=
    github.com/BurntSushi/toml@v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
    github.com/sergi/go-diff@v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
    golang.org/x/mod@v0.1.1-0.20191105210325-c90efee705ee h1:WG0RUwxtNT4qqaXX3DPA8zHFNm/D9xaBpxzHt1WcA/E=
    golang.org/x/sync@v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
    golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a h1:hKrQy/q8/Xivoqgw6nGiz1jqpn1WGBLDcWLZwW0983E=
    golang.org/x/xerrors@v0.0.0-20191011141410-1b5146add898 h1:/atklqdjdhuosWIl6AIbOeHJjicWYPqR9bpxqxYG2pA=
    honnef.co/go/tools@v0.0.1-2020.1.3 h1:sXmLre5bzIR6ypkjXCDI3jHPssRhc8KD/Ome589sc3U=
    mvdan.cc/xurls/v2@v2.1.0 h1:KaMb5GLhlcSX+e+qhbRJODnUUBvlw01jt4yrjFIHAuA=

Cleared whole ~/go & caches up today for sure.

@stamblerre stamblerre changed the title x/tools/gopls: Constant crashing with emacs-lsp x/tools/gopls: constant crashing with emacs-lsp Mar 21, 2020
@stamblerre
Copy link
Contributor

Thanks for the report! Seems like the environment setting for your GOPATH is empty, even though you do have a GOPATH setting in your go env. Can you please share the output of running gopls -rpc.trace -v check path/to/file.go within your module? It will show what gopls thinks the GOPATH is.

@stamblerre stamblerre modified the milestones: Unreleased, gopls/v0.4.0 Mar 21, 2020
@mikroskeem
Copy link
Author

Oh interesting note, perhaps it's another dumb case of poor environment handling by OS X

2020/03/22 01:40:41 Info:2020/03/22 01:40:41 Build info
----------
golang.org/x/tools/gopls v0.3.4
    golang.org/x/tools/gopls@v0.3.4 h1:4GC7q/pXQ/tsxHBGVdsMdlB4gCxVC06m/7rIXg1Px4E=
    github.com/BurntSushi/toml@v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
    github.com/sergi/go-diff@v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
    golang.org/x/mod@v0.1.1-0.20191105210325-c90efee705ee h1:WG0RUwxtNT4qqaXX3DPA8zHFNm/D9xaBpxzHt1WcA/E=
    golang.org/x/sync@v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
    golang.org/x/tools@v0.0.0-20200316194252-fafb6e2e8a4a h1:hKrQy/q8/Xivoqgw6nGiz1jqpn1WGBLDcWLZwW0983E=
    golang.org/x/xerrors@v0.0.0-20191011141410-1b5146add898 h1:/atklqdjdhuosWIl6AIbOeHJjicWYPqR9bpxqxYG2pA=
    honnef.co/go/tools@v0.0.1-2020.1.3 h1:sXmLre5bzIR6ypkjXCDI3jHPssRhc8KD/Ome589sc3U=
    mvdan.cc/xurls/v2@v2.1.0 h1:KaMb5GLhlcSX+e+qhbRJODnUUBvlw01jt4yrjFIHAuA=

Go info
-------
go version go1.14.1 darwin/amd64

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/mark/Library/Caches/go-build"
GOENV="/Users/mark/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/mark/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="(redacted)/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/03/l39qx4sd3g31crj98xtwz44h0000gn/T/go-build876904722=/tmp/go-build -gno-record-gcc-switches -fno-common"
2020/03/22 01:40:41 Info:2020/03/22 01:40:41 go/packages.Load
	snapshot = 0
	query = [./... builtin]
	packages = 4
(redacted)/internal/core/core.go:(redacted):(redacted): (redacted) undefined (type (redacted) has no field or method (redacted))

@mikroskeem
Copy link
Author

mikroskeem commented Mar 21, 2020

Thank you for helping me to pinpoint the issue - missing GOPATH envvar was exactly the issue. Poor configuration on my side in the end :)

Maybe add a note about OS X & GOPATH environment variable to somewhere so someone else wouldn't step into the same bucket like I did?

(My solution:)

(setenv "GOPATH" (concat (getenv "HOME") "/go"))

@stamblerre
Copy link
Contributor

Glad that was the fix! I wonder if this is an Emacs issue - maybe @muirdm can give some insight on if it's expected for users to have to explicitly set the GOPATH in the Emacs config.

Also, @heschik - do you think there is any way we could handle this a bit more gracefully or is this fine?

@muirdm
Copy link

muirdm commented Mar 22, 2020

Regarding GOPATH in Emacs, https://github.com/golang/tools/blob/master/gopls/doc/emacs.md#troubleshooting has a tip:

Emacs must have your environment set properly (PATH, GOPATH, etc). You can run M-x getenv PATH to see if your PATH is set in Emacs. If not, you can try starting Emacs from your terminal, using this package, or moving your shell config from .bashrc into .bashenv (or .zshenv).

Basically, none of your shell config will be loaded if you start Emacs from Finder/Spotlight.

@heschi
Copy link
Contributor

heschi commented Mar 23, 2020

@stamblerre I'm not clear on what exactly happened, honestly. https://cs.opensource.google/go/tools/+/master:internal/lsp/cache/view.go;l=332;drc=521f4a0cd458c441dec3bafd8ba24526a6cb9b09 is supposed to have used the output of the go command to populate GOPATH, so why didn't it?

@stamblerre stamblerre modified the milestones: gopls/v0.4.0, gopls/v0.5.0 Apr 2, 2020
@codesuki
Copy link

I have the same issue since I upgraded gopls a few days ago.

----------
golang.org/x/tools/gopls 0.4.0
    golang.org/x/tools/gopls@v0.4.0 h1:G4+YP9kaV4dJb79J5MobyApxX493Qa6VoiTceUmxqik=
    github.com/BurntSushi/toml@v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
    github.com/sergi/go-diff@v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
    golang.org/x/mod@v0.2.0 h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ=
    golang.org/x/sync@v0.0.0-20190911185100-cd5d95a43a6e h1:vcxGaoTs7kV8m5Np9uUNQin4BrLOthgV7252N8V+FwY=
    golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea h1:DUwLyMDMUauGMd9kSLIlhhYJNELm06HuxeBdkFkeax4=
    golang.org/x/xerrors@v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
    honnef.co/go/tools@v0.0.1-2020.1.3 h1:sXmLre5bzIR6ypkjXCDI3jHPssRhc8KD/Ome589sc3U=
    mvdan.cc/xurls/v2@v2.1.0 h1:KaMb5GLhlcSX+e+qhbRJODnUUBvlw01jt4yrjFIHAuA=```

Emacs has my GOPATH set correctly.

@stamblerre
Copy link
Contributor

Can you share your gopls logs where you're seeing this?

@codesuki
Copy link

I had a closer look. First I thought it's file handle limitation but then I actually found the error log:

panic: invalid URL escape "%/t"

goroutine 19513 [running]:
golang.org/x/tools/internal/span.URIFromURI(0xc0182ac0d0, 0xc4, 0x100ddb4, 0x17c7d60)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/span/uri.go:65 +0x284
golang.org/x/tools/internal/lsp/protocol.DocumentURI.SpanURI(...)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/lsp/protocol/span.go:31
golang.org/x/tools/internal/lsp.(*Server).didChangeWatchedFiles(0xc0001b5f00, 0x1a7f320, 0xc00bcc2840, 0xc00d96c2a0, 0x0, 0xc00199d8c0)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/lsp/text_synchronization.go:78 +0x110
golang.org/x/tools/internal/lsp.(*Server).DidChangeWatchedFiles(0xc0001b5f00, 0x1a7f320, 0xc00bcc2840, 0xc00d96c2a0, 0xc00d96c2a0, 0x0)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/lsp/server_gen.go:44 +0x49
golang.org/x/tools/internal/lsp/protocol.ServerHandler.func1(0x1a7f320, 0xc00bcc2840, 0xc00e8baa80, 0x2fcef681d5, 0x1fc4120)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/lsp/protocol/tsserver.go:148 +0x5801
golang.org/x/tools/internal/lsp/lsprpc.handshaker.func1(0x1a7f320, 0xc00bcc2840, 0xc00e8baa80, 0x0, 0x0)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/lsp/lsprpc/lsprpc.go:531 +0x534
golang.org/x/tools/internal/jsonrpc2.MustReply.func1(0x1a7f320, 0xc00bcc2840, 0xc00e8baa80, 0xc0185d1c20, 0x0)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/jsonrpc2/handler.go:54 +0x47
golang.org/x/tools/internal/jsonrpc2.AsyncHandler.func1.2(0xc0023fc540, 0xc00bcc2a50, 0xc0002af860, 0x1a7f320, 0xc00bcc2840, 0xc00e8baa80)
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/jsonrpc2/handler.go:110 +0x6c
created by golang.org/x/tools/internal/jsonrpc2.AsyncHandler.func1
	/Users/neri/Development/go/pkg/mod/golang.org/x/tools@v0.0.0-20200407041343-bf15fae40dea/internal/jsonrpc2/handler.go:107 +0x187

Process gopls stderr finished

Seems there are several related changes:
https://github.com/golang/tools/commits/master/internal/span/uri.go

@codesuki
Copy link

codesuki commented Apr 17, 2020

So turns out that Bazel creates paths with % in them which is not a valid URI.
Then this panics.

darwin_amd64_stripped/go_default_test%/testmain.go

codesuki added a commit to codesuki/tools that referenced this issue Apr 17, 2020
Bazel uses % in its temporary paths which is not a valid URI. 
Therefore url.PathUnescape will panic.
See golang/go#37984
@codesuki
Copy link

I tested this out locally.
golang/tools#223

@stamblerre
Copy link
Contributor

Thanks for the information and investigation! I followed up with you on your PR.

@codesuki
Copy link

The problem with emacs is fixed now: emacs-lsp/lsp-mode#1593
I don't know if this was also the solution for @mikroskeem

@mikroskeem
Copy link
Author

My solution was to set GOPATH etc. environment variables correctly, nothing for me to do with Bazel. 😄

@stamblerre
Copy link
Contributor

Glad to hear the fix is in, @codesuki - thanks!

I'm going to leave this issue open to investigate why the ProcessEnv could even be created without a GOPATH. I might be able to add a regression test that has an explicitly empty GOPATH to make sure that this doesn't happen again.

@gopherbot
Copy link

Change https://golang.org/cl/229128 mentions this issue: internal/lsp: add regtest for golang/go#37984

myitcv added a commit to govim/govim that referenced this issue Apr 30, 2020
* internal/event: re-use ocagent exporters 4b814e06
* internal/jsonrpc2: move the lock into logCommon 28a3422b
* internal/lsp/regtest: rearrange runner.go for readability 127c98bd
* internal/lsp/regtest: cosmetic fixes 290e0af1
* internal/lsp: handle hover documentation for package declarations b8428586
* internal/lsp: hide analysis diagnostics from generated files e4881b24
* internal/lsp/regtest: add a OnceMet combinator for Expectations 0c9eba77
* internal/lsp/regtest: add expository package documentation dbf5ce1e
* internal/lsp/regtest: rename and document some symbols 12a1c858
* internal/lsp/regtest: extract Runner to a new file 317da45f
* internal/lsp: instrument work done reporting to use in regtests 46dc332f
* internal/lsp: factor out progress reporting to a new WorkDone handle 9938a079
* internal/lsp/cache: correctly split env vars e9a00ec8
* internal/lsp: share common command line test functionality 006b16f6
* internal/lsp/fake: clean up Workspace.proxydir on close 7ae4988e
* go/analysis/analysistest: support testing mutually exclusive suggested fixes 4697a286
* go/internal/gcimporter: remove support for binary export data 65524870
* internal/lsp: handle different package names in signature help 352a5409
* internal/lsp/cmd: fix the command line query for definition e5642933
* internal/lsp: fix docs on hover for ungrouped package variables e0d5eebd
* internal/jsonrpc2: remove jsonrpc2.ErrDisconnected 9ea0146d
* internal/event: remove the event.eventType type a90b7300
* internal/event: don't print invalid labels bed54188
* internal/jsonrpc2: fix goroutine leak when listener is closed 479cc234
* internal/lsp: fix panic when trying to log an event f3a5411a
* internal/lsp/source: fix false positive "..." in completions 8463f397
* internal/lsp/source: add option for verbose work progress reporting 35850603
* internal/lsp: correctly handle type aliases when formatting 59e73619
* internal/lsp/regtest: track outstanding work using the progress API 38a97e00
* go/packages/packagestest: dedupe based on note position 2723c5de
* cmd/goimports: set correct permissions on Windows 01e68755
* internal/event: change event.At to be a private field a466788a
* internal/event: extract keys to their own package a82abb53
* internal/event: move event/core.Tag to event/label.Label c81623a0
* internal/event: renaming the main event API functions 7b212d60
* internal/telemetry: renaming to internal/event cf0cb927
* internal/lsp: refactor code for formatting signatures 72e4a01e
* internal/gocommand: clean up docstring typos and staticcheck errors 3d37a677
* internal/lsp: add regtest for golang/go#37984 3d57cf2e
* internal/lsp/regtest: add regtest for golang/go#38207 4e4aced3
* internal/lsp: add regtest for golang/go#38211 504fe87a
* internal/lsp/regtest: add regtest for golang/go#36951 66008de3
* internal/lsp: fix broken lsp logs 7504fd22
* internal/telemetry/export: guard against NPE when merging tag maps 26dd2a56
* internal/lsp: merge the in and out protocol logging functions 4b6a508a
* internal/jsonrpc2: rewrite streams in terms of messages 2dc43346
* go/packages/packagestest: do not walk packages and their test variants cfa8b221
* internal/lsp/tests: provide SymbolInformation.Name in @symbol annotations b4d5569d
* internal/lsp: switch the protocol logger to use the new jsonrpc2 message types 9f075f7b
* gopls: convert replay to use the new message types ca8a290c
* internal/jsonrpc2: add concrete types for Call, Notify and Response 434f7a8f
* internal/jsonrpc2: clean up the tests 98173f2f
* internal/telemetry: add support for using telemetry in tests f0ebba15
* internal/imports: update stdlib index for 1.14 978e26b7
* internal/lsp/source: enable type error analyzers c07e33ef
* internal/lsp/regtest: enable test for golang/go#37195 e3392970
* internal/lsp: fill in ServerInfo in the initialize response fc959738
* internal/lsp/regtest: generalize expectations beyond diagnostic messages f0387856
* internal/lsp/regtest: add support for custom test proxy data 92fa1ff4
* internal/lsp/fake: be more careful when closing the workspace 405595e0
* go/packages: fix misbehavior when an overlay changes the package name ea516885
* internal/lsp: fix imports issue with duplicate package decl 5744cfde
* internal/telemetry: delete the unit package 9c19d0db
* internal/telemetry: pack strings efficiently into tags 18395615
* internal/telemetry: add tag value formatting to the Key be55493b
* internal/telemetry: expose the TagOf* and Unpack* methods bd061c73
* internal/lsp: fix erroneous documentation for struct fields 5d8e1897
* go/analysis/analysistest: print unified diff for test failures 92398ad7
* internal/jsonrpc2: simplify request even futher 33e93722
* internal/jsonrpc2: remove the OnReply callbacks ce2627f3
* internal/lsp/fake: don't lock while calling formatting 6a72e378
* internal/lsp/fake: correctly configure the fake editor 3bb7580c
* internal/lsp/regtest: put testing.T back in the test func signature 91295897
* all: Fix spelling of Marshaling. 0037cb78
* gopls/internal/hooks: don't run staticcheck's SA5011 332987a8
* internal/lsp/diff/difftest: ignore for GOOS=illumos a4a177c7
* go/analysis/analysistest: give up if we can't find golden file ae52e4b5
* internal/proxydir: add an internal package for file-based proxies 07bb9fb2
* go/loader: remove check on ioutil.TestTempFile in TestStdlib 250b2131
* internal/jsonrpc2: split reply from request 1f08ef60
* internal/jsonrpc2: make the wire structures private b854406a
* internal/jsonrpc2: replace NewErrorf with fmt.Errorf 2595e725
* internal/lsp: add an extra bounds check to avoid nil pointers 79a7a312
* go/ast/inspector: impose maximum capacity e3f0bd94
* internal/lsp: remove the CallCanceller ae9902ac
* internal/lsp: improve ID formatting c92aeb74
* internal/lsp/cache: hide type errors if we fix up the AST 3bd20875
* internal/lsp: linkify IP addresses in textDocument/documentLink c08edad6
* internal/lsp/regtest: add test for issue 32149 (wrong package) 700752c2
* internal/lsp/regtest: output gopls logs on test failure bc09a2ca
* internal/lsp/protocol: make loggingStream log writes concurrency-safe 97c4fbe5
* go/packages: replace darwin with netbsd in TestSizes 77362c51
myitcv added a commit to govim/govim that referenced this issue Apr 30, 2020
* internal/event: re-use ocagent exporters 4b814e06
* internal/jsonrpc2: move the lock into logCommon 28a3422b
* internal/lsp/regtest: rearrange runner.go for readability 127c98bd
* internal/lsp/regtest: cosmetic fixes 290e0af1
* internal/lsp: handle hover documentation for package declarations b8428586
* internal/lsp: hide analysis diagnostics from generated files e4881b24
* internal/lsp/regtest: add a OnceMet combinator for Expectations 0c9eba77
* internal/lsp/regtest: add expository package documentation dbf5ce1e
* internal/lsp/regtest: rename and document some symbols 12a1c858
* internal/lsp/regtest: extract Runner to a new file 317da45f
* internal/lsp: instrument work done reporting to use in regtests 46dc332f
* internal/lsp: factor out progress reporting to a new WorkDone handle 9938a079
* internal/lsp/cache: correctly split env vars e9a00ec8
* internal/lsp: share common command line test functionality 006b16f6
* internal/lsp/fake: clean up Workspace.proxydir on close 7ae4988e
* go/analysis/analysistest: support testing mutually exclusive suggested fixes 4697a286
* go/internal/gcimporter: remove support for binary export data 65524870
* internal/lsp: handle different package names in signature help 352a5409
* internal/lsp/cmd: fix the command line query for definition e5642933
* internal/lsp: fix docs on hover for ungrouped package variables e0d5eebd
* internal/jsonrpc2: remove jsonrpc2.ErrDisconnected 9ea0146d
* internal/event: remove the event.eventType type a90b7300
* internal/event: don't print invalid labels bed54188
* internal/jsonrpc2: fix goroutine leak when listener is closed 479cc234
* internal/lsp: fix panic when trying to log an event f3a5411a
* internal/lsp/source: fix false positive "..." in completions 8463f397
* internal/lsp/source: add option for verbose work progress reporting 35850603
* internal/lsp: correctly handle type aliases when formatting 59e73619
* internal/lsp/regtest: track outstanding work using the progress API 38a97e00
* go/packages/packagestest: dedupe based on note position 2723c5de
* cmd/goimports: set correct permissions on Windows 01e68755
* internal/event: change event.At to be a private field a466788a
* internal/event: extract keys to their own package a82abb53
* internal/event: move event/core.Tag to event/label.Label c81623a0
* internal/event: renaming the main event API functions 7b212d60
* internal/telemetry: renaming to internal/event cf0cb927
* internal/lsp: refactor code for formatting signatures 72e4a01e
* internal/gocommand: clean up docstring typos and staticcheck errors 3d37a677
* internal/lsp: add regtest for golang/go#37984 3d57cf2e
* internal/lsp/regtest: add regtest for golang/go#38207 4e4aced3
* internal/lsp: add regtest for golang/go#38211 504fe87a
* internal/lsp/regtest: add regtest for golang/go#36951 66008de3
* internal/lsp: fix broken lsp logs 7504fd22
* internal/telemetry/export: guard against NPE when merging tag maps 26dd2a56
* internal/lsp: merge the in and out protocol logging functions 4b6a508a
* internal/jsonrpc2: rewrite streams in terms of messages 2dc43346
* go/packages/packagestest: do not walk packages and their test variants cfa8b221
* internal/lsp/tests: provide SymbolInformation.Name in @symbol annotations b4d5569d
* internal/lsp: switch the protocol logger to use the new jsonrpc2 message types 9f075f7b
* gopls: convert replay to use the new message types ca8a290c
* internal/jsonrpc2: add concrete types for Call, Notify and Response 434f7a8f
* internal/jsonrpc2: clean up the tests 98173f2f
* internal/telemetry: add support for using telemetry in tests f0ebba15
* internal/imports: update stdlib index for 1.14 978e26b7
* internal/lsp/source: enable type error analyzers c07e33ef
* internal/lsp/regtest: enable test for golang/go#37195 e3392970
* internal/lsp: fill in ServerInfo in the initialize response fc959738
* internal/lsp/regtest: generalize expectations beyond diagnostic messages f0387856
* internal/lsp/regtest: add support for custom test proxy data 92fa1ff4
* internal/lsp/fake: be more careful when closing the workspace 405595e0
* go/packages: fix misbehavior when an overlay changes the package name ea516885
* internal/lsp: fix imports issue with duplicate package decl 5744cfde
* internal/telemetry: delete the unit package 9c19d0db
* internal/telemetry: pack strings efficiently into tags 18395615
* internal/telemetry: add tag value formatting to the Key be55493b
* internal/telemetry: expose the TagOf* and Unpack* methods bd061c73
* internal/lsp: fix erroneous documentation for struct fields 5d8e1897
* go/analysis/analysistest: print unified diff for test failures 92398ad7
* internal/jsonrpc2: simplify request even futher 33e93722
* internal/jsonrpc2: remove the OnReply callbacks ce2627f3
* internal/lsp/fake: don't lock while calling formatting 6a72e378
* internal/lsp/fake: correctly configure the fake editor 3bb7580c
* internal/lsp/regtest: put testing.T back in the test func signature 91295897
* all: Fix spelling of Marshaling. 0037cb78
* gopls/internal/hooks: don't run staticcheck's SA5011 332987a8
* internal/lsp/diff/difftest: ignore for GOOS=illumos a4a177c7
* go/analysis/analysistest: give up if we can't find golden file ae52e4b5
* internal/proxydir: add an internal package for file-based proxies 07bb9fb2
* go/loader: remove check on ioutil.TestTempFile in TestStdlib 250b2131
* internal/jsonrpc2: split reply from request 1f08ef60
* internal/jsonrpc2: make the wire structures private b854406a
* internal/jsonrpc2: replace NewErrorf with fmt.Errorf 2595e725
* internal/lsp: add an extra bounds check to avoid nil pointers 79a7a312
* go/ast/inspector: impose maximum capacity e3f0bd94
* internal/lsp: remove the CallCanceller ae9902ac
* internal/lsp: improve ID formatting c92aeb74
* internal/lsp/cache: hide type errors if we fix up the AST 3bd20875
* internal/lsp: linkify IP addresses in textDocument/documentLink c08edad6
* internal/lsp/regtest: add test for issue 32149 (wrong package) 700752c2
* internal/lsp/regtest: output gopls logs on test failure bc09a2ca
* internal/lsp/protocol: make loggingStream log writes concurrency-safe 97c4fbe5
* go/packages: replace darwin with netbsd in TestSizes 77362c51
@stamblerre stamblerre modified the milestones: gopls/v0.5.0, gopls/v0.4.1 May 13, 2020
flawedmatrix added a commit to cloudfoundry/diego-release that referenced this issue Sep 9, 2020
Submodule src/golang.org/x/crypto 69ecbb4d6..75b288015:
�[32m  > ssh: Make error message deterministic�[m
�[32m  > internal/wycheproof: add tests for hmac generation�[m
�[32m  > ssh: don't err out on channel request msgs to unknown channels�[m
�[32m  > Use boolean tag (0x01) for boolean type.�[m
�[32m  > poly1305: modify s390x assembly to implement MAC interface�[m
�[32m  > ssh: improve docs on Certificate.SignCert�[m
�[32m  > chacha20: don't panic encrypting the final blocks�[m
�[32m  > cryptobyte: handle AddASN1BigInt with -1�[m
�[32m  > poly1305: add (*MAC).Verify API and use it in chacha20poly1305�[m
�[32m  > chacha20: improve generic implementation performance�[m
�[32m  > Revert "chacha20: don't panic encrypting the final blocks"�[m
�[32m  > chacha20: don't panic encrypting the final blocks�[m
�[32m  > Update reference to CBC vulnerability in cipher.go�[m
�[32m  > chacha20poly1305: improve ExampleNewX�[m
�[32m  > ssh/terminal: handle ctrl+C, ctrl+F, ctrl+B�[m
�[32m  > ssh/agent: handle ed25519.PrivateKey by value in AddedKey�[m
�[32m  > blake2b,blake2s: clarify difference between blake2b and blake2s�[m
�[32m  > ssh: support aes256-cbc for passphrase-protected OpenSSH keys�[m
�[32m  > gitignore: remove obsolete reference to .hgignore in comment�[m
�[32m  > internal/wycheproof: update TestEcdsa to use ecdsa.VerifyASN1�[m
�[32m  > ssh: fix data race in dh group exchange sha256�[m
�[32m  > sha3: mark xorInUnaligned with go:nocheckptr�[m
�[32m  > acme: make WaitAuthorization return authorization errors consistently�[m
�[32m  > openpgp/packet: ensure that first partial packet is 512 bytes�[m
�[32m  > chacha20,poly1305,chacha20poly1305: set consistent build tags�[m
�[32m  > chacha20: add SetCounter method�[m
�[32m  > internal/wycheproof: add test for ChaCha20-Poly1305 AEAD encryption/decryption�[m
�[32m  > ssh: return an error for malformed ed25519 public keys rather than panic�[m
�[32m  > internal/wycheproof: add test for CBC decryption with PKCS#5 padding�[m
�[32m  > acme/autocert: remove unused listener struct field�[m
�[32m  > acme/autocert: fix TLS-ALPN identifier in tests�[m
�[32m  > acme: update TLS-ALPN identifier to the latest IANA assignment�[m
�[32m  > ssh/terminal: adjust ReadConsole rules on windows�[m
�[32m  > ssh: support ECDSA private keys in OpenSSH format�[m
�[32m  > internal/wycheproof: add test for hkdf key extraction�[m
�[32m  > ssh: support encrypted OpenSSH private keys�[m
Submodule src/golang.org/x/sys 915c9c3d4...bc7a7d42d:
�[32m  > internal/unsafeheader: fix typos in comments�[m
�[32m  > unix: replace blocked dup2 calls with dup3 on Android�[m
�[32m  > unix: use a type equivalent to reflect.SliceHeader to manipulate slices�[m
�[32m  > unix: add support for timerfd syscalls on Linux�[m
�[32m  > unix: switch to Ubuntu 20.04 in Dockerfile�[m
�[32m  > unix: on linux-arm64, prefer prlimit to {g,s}etrlimit�[m
�[32m  > unix: add SockaddrUnix tests on darwin and *bsd�[m
�[32m  > unix: add SockaddrUnix tests on linux�[m
�[32m  > Revert "unix: add openat2 for linux"�[m
�[32m  > unix: update Dockerfile to Go 1.14.2�[m
�[32m  > unix: fix name of generated zerrors_*.go in README�[m
�[32m  > unix: add nexthop types and consts�[m
�[32m  > unix: add openat2 for linux�[m
�[32m  > unix: update Dockerfile to Linux 5.6, and Go 1.13.9�[m
�[32m  > unix: add fs-verity consts and types�[m
�[32m  > unix: allocate signalNameMap with enough space�[m
�[32m  > unix: add readv/writev for illumos�[m
�[32m  > gitignore: remove obsolete reference to .hgignore in comment�[m
�[32m  > unix: regenerate all definitions on FreeBSD 12.1 on {386,amd64,arm64}�[m
�[32m  > unix: add disk ioctl constants for FreeBSD�[m
�[32m  > unix: only declare PtraceGetFsBase() on x86-based platforms�[m
�[32m  > unix: implement L2TPIP socket address on Linux�[m
�[32m  > unix: update BPF consts on linux�[m
�[32m  > cpu: add mips64x feature detection�[m
�[32m  > unix: merge duplicate code in ztypes_linux_*.go�[m
�[32m  > unix: merge duplicate code in zsyscall_linux_*.go�[m
�[32m  > unix: merge duplicate code in zerrors_linux_*.go�[m
�[32m  > unix: add tool for merging duplicate code�[m
�[32m  > unix: add adjtimex return constants�[m
�[32m  > unix: mark capget/capset as non-blocking�[m
�[32m  > unix: gofmt after CL 218799�[m
�[32m  > unix: add RTMGRP_* consts from rtnetlink.h�[m
�[32m  > unix: add InotifyInit for mips64�[m
�[32m  > unix: update Dockerfile to Linux 5.5, glibc 2.31, Go 1.13.7�[m
�[31m  < [release-branch.go1.14-std] cpu: restore doinit() in cpu_riscv64.go�[m
�[31m  < [release-branch.go1.14-std] cpu: add basic support for GOARCH=riscv64�[m
�[32m  > unix: use pipe2 syscall on OpenBSD�[m
�[32m  > unix: add new setfsuid/setfsgid wrappers�[m
�[32m  > unix: correct PtraceIoDesc and define PtraceIoDesc per GOARCH on freebsd�[m
�[32m  > unix: test (*FdSet).Clear in TestFdSet�[m
�[32m  > Revert "unix: fix Setfsuid and Setfsgid return values"�[m
�[32m  > unix: fix Setfsuid and Setfsgid return values�[m
�[32m  > cpu: don't read ARM64 registers on Android�[m
�[32m  > windows: add missing network-related constants�[m
�[32m  > unix: add missing chtmpdir in TestPpoll on openbsd�[m
�[32m  > unix: add SysctlClockinfo on dragonfly and freebsd�[m
�[32m  > unix: add Inet4Pktinfo type on solaris�[m
�[32m  > unix: test UtimesNanoAt on *bsd and solaris�[m
�[32m  > unix: don't zero out extra registers on riscv64 syscalls�[m
�[32m  > unix: add flags argument in //sys comments for Fstatvfs1 and Statvfs1 on netbsd�[m
�[32m  > unix: add Dup3 on netbsd and openbsd�[m
�[32m  > unix: correct build tag to define Getdirentries for darwin/arm with Go 1.11�[m
�[32m  > windows: added SO_RCVTIMEO and IPPROTO_ICMP constants�[m
�[32m  > unix: compare Stat_t members in TestFstatat�[m
�[32m  > unix: unify definition of func fcntl�[m
�[32m  > unix: use correct file name in comment�[m
�[32m  > unix: add Readv/Writev family of syscalls for linux�[m
�[32m  > windows: fix recvfrom and sendto data types�[m
�[32m  > unix: add PrctlRetInt, a Prctl variant that returns (int, error)�[m
�[32m  > unix: move functions Ptrace{Get|Set}RegSetArm64 to a separate file�[m
�[32m  > unix: replace readlink in mkall.sh with portable shell commands�[m
�[32m  > unix: add functions PtraceGetRegSetArm64 and PtraceSetRegSetArm64�[m
�[32m  > unix: add Statvfs and Fstatvfs on NetBSD�[m
�[32m  > cpu: support reading arm64 CPU feature registers�[m
�[32m  > windows: add Recvfrom and Sendto implementations�[m
�[32m  > unix: add new fscrypt declarations from Linux v5.4�[m
�[32m  > unix/linux: bump Linux and Go versions to latest stable releases�[m
�[32m  > unix: check number of ready file descriptors in TestPselect�[m
�[32m  > unix: don't fail TestSelect on EINTR from Select�[m
�[32m  > windows: add Get*PreferredUILanguages�[m
�[32m  > unix: use same TestSelect on all Unices�[m
�[32m  > unix: fix EINTR check in TestPselect�[m
�[32m  > unix: regenerate zerrors for AIX�[m
�[32m  > windows: revert security_windows.go change of CL 202177�[m
�[32m  > unix: don't fail TestPselect on EINTR from Pselect�[m
�[32m  > unix: fix EINTR check in TestClockNanosleep�[m
�[32m  > unix: don't fail TestClockNanosleep on EINTR from ClockNanosleep�[m
�[32m  > unix: fix EpollEvent padding on mips64{,le}�[m
�[32m  > unix: check correct CPU for being enabled in old mask in TestSchedSetaffinity�[m
�[32m  > cpu: don't redeclare doinit on ppc64le�[m
�[32m  > unix: accept time.Now()±1 as valid in TestTime�[m
�[32m  > cpu: add basic support for GOARCH=riscv64�[m
�[32m  > cpu: move empty doinit to own file�[m
�[32m  > unix: skip TestPselect on EINTR�[m
�[32m  > unix: test returned fd in TestEpoll�[m
�[32m  > windows: add empty.s to fix build with Go 1.11 and earlier�[m
�[32m  > unix: add TestEpoll on linux�[m
�[32m  > unix: add methods to manipulate *FdSet�[m
�[32m  > windows: add EnumProcesses function�[m
�[32m  > windows/registry: make '-gcflags=all=-d=checkptr' flag work�[m
�[32m  > unix: add devlink Linux generic netlink API constants�[m
�[32m  > unix: add missing HCI_CHANNEL_LOGGING constant�[m
�[32m  > windows/registry: remove TestWalkFullRegistry due to false assumptions�[m
�[32m  > unix: don't use non-existing uint128 type on freebsd/arm64�[m
�[32m  > windows/registry: allow for non-null terminated strings�[m
�[32m  > unix: make convertFromDirents11 checkptr safe�[m
�[32m  > unix: remove un-used ptrSize�[m
�[32m  > unix: regenerate darwin libc trampolines after CL 202837�[m
�[32m  > unix: __sysctl is sysctl on darwin�[m
�[32m  > unix: comply with -d=checkptr in Test_anyToSockaddr�[m
�[32m  > windows: respect permission bits on file opening�[m
�[32m  > unix: don't use 32-bit aligned access for cmsgAlignOf on dragonfly after ABI change�[m
�[32m  > windows, unix: fix wrong unsafe.Pointer alignment in syscall�[m
�[32m  > unix: avoid "just past the end" pointers in UnixRights�[m
�[32m  > windows: add GetDiskFreeSpaceEx function�[m
�[32m  > unix: update rtnetlink constants�[m
�[32m  > unix: add new func PtraceInterrupt on Linux�[m
�[32m  > windows: fix ShellExecute return condition�[m
�[32m  > windows: use go:linkname instead of assembly�[m
�[32m  > windows: add module handle functions�[m
�[32m  > unix: add new func PtraceSeize on Linux�[m
�[32m  > unix: add Klogset and related SYSLOG_ACTION_ constants�[m
�[32m  > windows/mkwinsyscall: import mksyscall_windows.go from go repo�[m
�[32m  > windows/svc: use CloseServiceHandle for service handles�[m
�[32m  > unix: avoid __getdirentries64 on darwin�[m
�[32m  > unix: update openbsd/{386,amd64.arm} MAP_* consts�[m
�[32m  > windows: add LockFileEx, UnlockFileEx system calls�[m
�[32m  > cpu: support ARM feature detection on Linux�[m
�[32m  > windows: revert breaking API changes from CL 196798, add new accessor funcs�[m
�[32m  > unix: add NFDBITS const on Linux, update TestSelect�[m
�[32m  > unix: fix Select to return number of ready fds on Solaris�[m
�[32m  > unix: re-generate Select on dragonfly�[m
�[32m  > windows: use pseudo handle constants to implement GetCurrentProcess�[m
�[32m  > unix: fix Select to return number of ready fds on Darwin and *BSD�[m
�[32m  > windows: make SID.String() conform to the String interface�[m
�[32m  > windows: do not return invalid error for psuedo-handle functions�[m
�[32m  > windows: use correct type for security attributes' descriptor member�[m
�[32m  > windows: support SECURITY_DESCRIPTOR and ACL for secured objects�[m
�[32m  > unix: add KEYCTL_RESTRICT_KEYRING capabilities�[m
�[32m  > windows: do not corrupt stack with larger boolean return value�[m
�[32m  > unix: redefine TIPC_WAIT_FOREVER as a uint32 value�[m
�[32m  > windows: add various functions for shutting down and logging out�[m
�[32m  > unix: update Dockerfile to Linux 5.3 and use ubuntu 19.04 base image�[m
�[32m  > unix: add IfaCacheinfo on linux�[m
�[32m  > unix: sort Linux-specific includes in linux/types.go and mkerrors.sh�[m
�[32m  > cpu: remove encoding/binary dependency�[m
�[32m  > unix: add Msghdr.SetIovlen for solaris/amd64�[m
�[32m  > unix: add Msghdr.SetIovlen�[m
�[32m  > unix: disable sysctl on iOS�[m
�[32m  > cpu: add a space before build tag comment�[m
�[32m  > unix: implement AF_TIPC sockets on Linux�[m
�[32m  > unix/linux: upgrade Docker build container to Go 1.13�[m
�[32m  > unix: add IoctlRetInt for Linux�[m
�[32m  > unix: fix coredump bit on aix/ppc64�[m
�[32m  > windows: open process tokens with duplicate access�[m
�[32m  > unix: unify Ioctl* functions�[m
�[32m  > windows: add mutex management functions�[m
�[32m  > unix: use bits.OnesCount64 instead of local copy�[m
�[32m  > windows: add Windows directory accessors�[m
�[32m  > windows: allow re-enabling priority boost�[m
�[32m  > windows: allow retrieving true version with RtlGetNtVersionNumbers�[m
�[32m  > unix/linux: update Dockerfile to glibc 2.30�[m
�[32m  > unix: disable ptrace on iOS�[m
�[32m  > unix: fix epoll_event padding on riscv64�[m
�[32m  > windows: add support for automatic delayed start in windows service�[m
�[32m  > unix: remove nacl build tag from dirent code�[m
�[32m  > unix: fix several staticcheck issues�[m
�[32m  > windows: add CTRL_CLOSE_EVENT, CTRL_LOGOFF_EVENT, and CTRL_SHUTDOWN_EVENT�[m
�[32m  > unix: add riscv64 tag to endian_little.go�[m
�[32m  > unix: add constants and types to work with Linux loop devices�[m
�[32m  > unix: update Dockerfile to Linux 5.2 and Go 1.13beta1�[m
�[32m  > unix: add missing dirent* helper functions on aix�[m
�[32m  > unix: don't use syscall.ParseDirent�[m
�[32m  > unix: add Getdents on dragonfly�[m
�[32m  > unix: use ParseDirent in testGetdirentries�[m
�[32m  > unix: fix nil pointer dereference in Getdirentries on 32-bit freebsd 12�[m
�[32m  > unix: add missing import in readdirent_getdirentries.go�[m
�[32m  > unix: fix Getdirentries emulation using Getdents on netbsd, openbsd�[m
�[32m  > unix: add test for Getdirentries�[m
�[32m  > unix: merge implementation for ReadDirent�[m
�[32m  > unix: add support to get/set Linux capabilities�[m
�[32m  > unix: correctly rename Val member in Sigset_t on freebsd�[m
�[32m  > unix: add ptrace support for FreeBSD�[m
�[32m  > unix: add AT_SYMLINK_FOLLOW const on openbsd�[m
�[32m  > unix: add AT_SYMLINK_FOLLOW const on netbsd�[m
�[32m  > windows: make CoTaskMemFree public�[m
�[32m  > unix: remove net dependency�[m
�[32m  > windows: allow determining real version number�[m
�[32m  > unix: fix Getdirentries emulation using Getdents on netbsd, openbsd�[m
�[32m  > unix: change the mksysnum master to point to stable/11 on freebsd�[m
�[32m  > windows: rename some arguments to follow MSDN�[m
�[32m  > windows: allow looking up well-known folder paths�[m
�[32m  > windows: add OpenThread function�[m
�[32m  > windows: add GetProcessId function�[m
�[32m  > unix: fix Getdirentries on 32-bit freebsd 12�[m
�[32m  > windows: expose GetCurrentProcessId function�[m
�[32m  > windows: allow determining if manager is locked�[m
�[32m  > windows: correct types and error values of internal GUID handling�[m
�[32m  > windows: add Thread32{First,Next} funcions�[m
�[32m  > windows: properly plumb sidtype into service creation�[m
�[32m  > windows: add GUID handling functions�[m
�[32m  > windows: add accessor for duration since boot�[m
�[32m  > windows: add constants for access rights�[m
�[32m  > windows: make it easier to iterate over groups and privileges�[m
�[32m  > windows: delete mkerrors.go�[m
�[32m  > unix: provide linux/riscv64 assembly for syscalls�[m
�[32m  > unix: fix TestFchmodat on illumos�[m
�[32m  > Revert "windows: make zsyscall_windows.go generatable on non-WSL env"�[m
�[32m  > windows: make zsyscall_windows.go generatable on non-WSL env�[m
�[32m  > windows: add GenerateConsoleCtrlEvent function�[m
�[32m  > plan9: modify mkall.sh to support zsyscall*.go files generation�[m
Submodule src/golang.org/x/text 4b67af870..afb9336c4:
�[32m  > number: fix typo�[m
�[32m  > unicode/bidi: fix typo in variable name�[m
�[32m  > unicode/norm: look for symbols in TestLinking�[m
�[32m  > message/pipeline: detect unknown keys�[m
�[32m  > message/pipeline: sort maps to generate predictable output�[m
�[32m  > message/pipeline: avoid writing to the testdata directory�[m
Submodule src/golang.org/x/tools c00d67ef2...c1934b75d:
�[32m  > go/analysis: improve error message for string(int) warning�[m
�[32m  > internal/lsp: un-export (*snapshot).Config to limit it to cache�[m
�[32m  > internal/gocommand: refactor API to always use *gocommand.Runner�[m
�[32m  > internal/lsp: plumb fillstruct through analysis�[m
�[32m  > internal/lsp/cache: don't skip x_tests�[m
�[32m  > internal/lsp/cache: hide diagnostics for ignored dirs�[m
�[32m  > internal/imports: continue past parse errors�[m
�[32m  > internal/lsp: port fill struct into analysis framework�[m
�[32m  > internal/lsp/debug: show per-package memory usage�[m
�[32m  > gopls/doc: fix composites analyzer name�[m
�[32m  > internal/lsp: await the initial workspace load in ModHandle�[m
�[32m  > internal/lsp: cancel the initial workspace load when view shuts down�[m
�[32m  > gopls/doc: update vscode-go GitHub link�[m
�[32m  > internal/lsp: fix the cache debug page�[m
�[32m  > internal/lsp: remove Ignore feature�[m
�[32m  > internal/lsp/cache: vendored packages are not workspace packages�[m
�[32m  > internal/lsp/cache: intermediate test variants aren't workspace packages�[m
�[32m  > internal/lsp: read files eagerly�[m
�[32m  > internal/lsp/regtest: fix context for shared server�[m
�[32m  > internal/jsonrpc2: try to suppress unnecessary errors on shutdown�[m
�[32m  > internal/lsp/regtest: print RPC logs when verbose output is enabled�[m
�[32m  > internal/lsp: bring lsp protocol stubs up to date�[m
�[32m  > internal/lsp/analysis/fillreturns: implement matching in fillreturns�[m
�[32m  > internal/lsp: decouple client and server debug�[m
�[32m  > internal/lsp/source: format fill_struct.go�[m
�[32m  > go/packages: move TypecheckCgo to packagesinternal�[m
�[32m  > go/packages: use go115UsesCgo instead of UsesCgo�[m
�[32m  > go/packages: add a mechanism for drivers to decline requests�[m
�[32m  > internal/testenv: add a NeedsGoBuild function�[m
�[32m  > Revert "cmd/goimports: return exit code 1 when -l finds files to change"�[m
�[32m  > internal/lsp/source: support labeled statements when highlighting loops�[m
�[32m  > go/analysis/internal/checker: don't filter facts of parameters�[m
�[32m  > internal/lsp: minor protocol cleanup�[m
�[32m  > internal/lsp: add a way for regtests to look at the diagnostics�[m
�[32m  > cmd/godoc: support automatic vendoring�[m
�[32m  > internal/lsp: remove debug line�[m
�[32m  > internal/lsp: fix update code lens and add a regression test�[m
�[32m  > internal/lsp: minor cleanup of the client and server debug�[m
�[32m  > internal/lsp: clean out the debug handling�[m
�[32m  > internal/lsp: now connection shutdown works, use it�[m
�[32m  > internal/lsp/analysis/fillreturns: broaden type equality�[m
�[32m  > go/analysis: suggest to users how to associate diagnostics with severities�[m
�[32m  > internal/lsp: support `go mod vendor` as a command�[m
�[32m  > internal/lsp: support code folding for composite literals�[m
�[32m  > internal/lsp: added a fill struct code action�[m
�[32m  > internal/lsp: change the hover test to use normal editor methods�[m
�[32m  > internal/jsonrpc2: change StreamServer to operate on Conn instead of Stream�[m
�[32m  > internal/jsonrpc2: change jsonrpc2.Conn to be an interface�[m
�[32m  > x/tools/internal/lsp/source: avoid panic in failing Highlight test�[m
�[32m  > internal/lsp/regtest: print completed work when a regtest fails�[m
�[32m  > internal/lsp: lift up workdone instrumentation to didModifyFiles�[m
�[32m  > internal/lsp: change exit handling�[m
�[32m  > internal/lsp: change logging stream to be a framer�[m
�[32m  > internal/jsonrpc2: switch to building streams on top of net.Conn�[m
�[32m  > internal/jsonrpc2: add the ability to close connections�[m
�[31m  < [release-branch.go1.14] go/analysis/passes/printf: allow %O in format strings�[m
�[32m  > internal/lsp/regtest: add a test that reproduces golang/go#38878�[m
�[32m  > internal/lsp: fix typo in code comment�[m
�[32m  > internal/lsp: fix a few staticcheck issues�[m
�[32m  > go/packages: handle x test overlays with no content�[m
�[32m  > internal/lsp: regtests for removing files outside the editor�[m
�[32m  > godoc/static: replace innerHTML with textContent�[m
�[32m  > all: remove version-specific test files�[m
�[32m  > all: run prettier on js and css�[m
�[32m  > all: add a section on JS/CSS formatting to README�[m
�[32m  > all: replace build tags in tests with testenv helper�[m
�[32m  > internal/lsp/source: sort cached package completions by relevance�[m
�[32m  > internal/lsp/source: fix cached package name matching�[m
�[32m  > internal/jsonrpc2: Add Close method to Stream.�[m
�[32m  > internal/fakenet: add a fake network connection�[m
�[32m  > internal/stack: add the leak test�[m
�[32m  > internal/stack: adding an internal stack dump parsing library�[m
�[32m  > go/analysis/passes/printf: allow %O in format strings�[m
�[32m  > internal/lsp: fix formatting edge cases (36824)�[m
�[32m  > Revert "go/internal/gcimporter: remove support for binary export data"�[m
�[32m  > cmd/cover: more clearly mark as deprecated�[m
�[32m  > internal/fastwalk: attempt Symlink tests on Windows�[m
�[32m  > internal/lsp/regtest: add a t.Skip for golang/go#36824 regtest�[m
�[32m  > internal/lsp/source: offer smart "append()" completions�[m
�[32m  > internal/lsp: fix new bug duplicating comments after includes�[m
�[32m  > cmd/goimports: return exit code 1 when -l finds files to change�[m
�[32m  > internal/lsp/cache: show update codelens in go.mod when -mod=vendor�[m
�[32m  > go/packages: add a Module field to the Package struct�[m
�[32m  > internal/lsp/fake: fix broken build due to conflicting changes�[m
�[32m  > internal/lsp: simplify and correct fixing imports for CodeAction�[m
�[32m  > gopls: update dependencies in the go.mod�[m
�[32m  > internal/lsp: fix docs on hover for var/const blocks�[m
�[32m  > internal/testenv: tolerate missing cgo as needed�[m
�[32m  > internal/lsp/regtest: Skip failing/flaky TestRegenerateCgo�[m
�[32m  > all: consolidate cgo requirement checks�[m
�[32m  > internal/lsp: add Regenerate Cgo code lens�[m
�[32m  > internal/imports: only check first segment for .�[m
�[32m  > internal/lsp/cmd: clean up remote flag descriptions�[m
�[32m  > internal/lsp/source: don't link to packages matching GOPRIVATE in hover�[m
�[32m  > internal/lsp/cache: pass UsesCgo to go/types�[m
�[32m  > go/packages: fix compatibility with gopackagesdriver�[m
�[32m  > go/packages: fix nocgo build�[m
�[32m  > internal/lsp: use TypecheckCgo when possible�[m
�[32m  > internal/lsp/regtest: don't build unix_test for Plan 9�[m
�[32m  > gopls/doc: update code lens documentation for the new `test` lens�[m
�[32m  > go/ssa/interp: avoid vet warning about string(int) conversion�[m
�[32m  > go/packages: enable UsesCgo in go/types�[m
�[32m  > internal/lsp: add `run test` code lens�[m
�[32m  > internal/lsp/regtest: add regression test for golang/go#36960�[m
�[32m  > internal/lsp/cmd: fix not displaying symbols result�[m
�[32m  > gopls/doc: remove company-lsp from emacs.md�[m
�[32m  > internal/lsp: rename workspace symbol test symbols to avoid clash�[m
�[32m  > internal/lsp/fake: define Symbol method on Editor�[m
�[32m  > internal/lsp: add config option for SymbolMatch�[m
�[32m  > internal/lsp/source: handle nil pointer in package name hover�[m
�[32m  > internal/lsp: change workspace symbols to use session config for matcher�[m
�[32m  > internal/lsp/cmd: use JSON output for the inspect subcommand�[m
�[32m  > internal/event: improve the logging of events�[m
�[32m  > internal/lsp: return in the default case in cloneExpr�[m
�[32m  > godoc/vfs/mapfs: panic on invalid New usage�[m
�[32m  > internal/lsp/source: fix cloneExpr for SelectorExprs�[m
�[32m  > gopls: add note to vscode doc about tags�[m
�[32m  > internal/lsp/source: return nothing for empty workspace symbol queries�[m
�[32m  > internal/testenv: check that external 'diff' tool is the GNU version�[m
�[32m  > internal/lsp/fake: fix some messiness around client hooks�[m
�[32m  > internal/lsp/source: use the setString method when setting options�[m
�[32m  > internal/lsp: support configurable codeLens�[m
�[32m  > internal/lsp: return early in completion where possible�[m
�[32m  > internal/lsp: fix caching issue with duplicate handles�[m
�[32m  > internal/lsp/cache: add an UnsavedFiles method to Session�[m
�[32m  > internal/testenv: make ExitIfSmallMachine apply to plan9-arm builders�[m
�[32m  > internal/lsp/protocol: send responses for cancelled requests�[m
�[32m  > internal/lsp/cache: avoid string(int) conversion�[m
�[32m  > internal/lsp/fake: check for file changes after running the Go command�[m
�[32m  > internal/lsp: make sure diagnostics only refer to existing files�[m
�[32m  > internal/lsp/regtest: add test for a GOPATH that's missing an element�[m
�[32m  > internal/lsp/fake: split up and rename the Workspace type�[m
�[32m  > go/types/objectpath: cache result of call to scope.Names�[m
�[32m  > internal/lsp/fake: skip TestWorkspace_CheckForFileChanges�[m
�[32m  > internal/lsp: fix incorrect format strings when calling event.Error�[m
�[32m  > internal/lsp/regtest: add support for testing generate commands�[m
�[32m  > internal/jsonrpc2: rename NewStream to NewRawStream�[m
�[32m  > internal/lsp: use %w in error wrappers�[m
�[32m  > internal/lsp: add comment completions for remaining exported symbols�[m
�[32m  > internal/lsp: avoid showing no-GOPATH-nor-module message so much�[m
�[32m  > internal/lsp/cmd: partially revert "add a flag to disable telemetry"�[m
�[32m  > internal/lsp: add a regtest for formatting one-line files�[m
�[32m  > internal/lsp: don't offer suggested fixes for generated files�[m
�[32m  > internal/event: fix the agent start time�[m
�[32m  > internal/lsp/source: improve unimported package member ranking�[m
�[32m  > Revert "internal/lsp: hide analysis diagnostics from generated files"�[m
�[32m  > internal/event: re-use ocagent exporters�[m
�[32m  > internal/jsonrpc2: move the lock into logCommon�[m
�[32m  > internal/lsp/regtest: rearrange runner.go for readability�[m
�[32m  > internal/lsp/regtest: cosmetic fixes�[m
�[32m  > internal/lsp: handle hover documentation for package declarations�[m
�[32m  > internal/lsp: hide analysis diagnostics from generated files�[m
�[32m  > internal/lsp/regtest: add a OnceMet combinator for Expectations�[m
�[32m  > internal/lsp/regtest: add expository package documentation�[m
�[32m  > internal/lsp/regtest: rename and document some symbols�[m
�[32m  > internal/lsp/regtest: extract Runner to a new file�[m
�[32m  > internal/lsp: instrument work done reporting to use in regtests�[m
�[32m  > internal/lsp: factor out progress reporting to a new WorkDone handle�[m
�[32m  > internal/lsp/cache: correctly split env vars�[m
�[32m  > internal/lsp: share common command line test functionality�[m
�[32m  > internal/lsp/fake: clean up Workspace.proxydir on close�[m
�[32m  > go/analysis/analysistest: support testing mutually exclusive suggested fixes�[m
�[32m  > go/internal/gcimporter: remove support for binary export data�[m
�[32m  > internal/lsp: handle different package names in signature help�[m
�[32m  > internal/lsp/cmd: fix the command line query for definition�[m
�[32m  > internal/lsp: fix docs on hover for ungrouped package variables�[m
�[32m  > internal/jsonrpc2: remove jsonrpc2.ErrDisconnected�[m
�[32m  > internal/event: remove the event.eventType type�[m
�[32m  > internal/event: don't print invalid labels�[m
�[32m  > internal/jsonrpc2: fix goroutine leak when listener is closed�[m
�[32m  > internal/lsp: fix panic when trying to log an event�[m
�[32m  > internal/lsp/source: fix false positive "..." in completions�[m
�[32m  > internal/lsp/source: add option for verbose work progress reporting�[m
�[32m  > internal/lsp: correctly handle type aliases when formatting�[m
�[32m  > internal/lsp/regtest: track outstanding work using the progress API�[m
�[32m  > go/packages/packagestest: dedupe based on note position�[m
�[32m  > cmd/goimports: set correct permissions on Windows�[m
�[32m  > internal/event: change event.At to be a private field�[m
�[32m  > internal/event: extract keys to their own package�[m
�[32m  > internal/event: move event/core.Tag to event/label.Label�[m
�[32m  > internal/event: renaming the main event API functions�[m
�[32m  > internal/telemetry: renaming to internal/event�[m
�[32m  > internal/lsp: refactor code for formatting signatures�[m
�[32m  > internal/gocommand: clean up docstring typos and staticcheck errors�[m
�[32m  > internal/lsp: add regtest for golang/go#37984�[m
�[32m  > internal/lsp/regtest: add regtest for golang/go#38207�[m
�[32m  > internal/lsp: add regtest for golang/go#38211�[m
�[32m  > internal/lsp/regtest: add regtest for golang/go#36951�[m
�[32m  > internal/lsp: fix broken lsp logs�[m
�[32m  > internal/telemetry/export: guard against NPE when merging tag maps�[m
�[32m  > internal/lsp: merge the in and out protocol logging functions�[m
�[32m  > internal/jsonrpc2: rewrite streams in terms of messages�[m
�[32m  > go/packages/packagestest: do not walk packages and their test variants�[m
�[32m  > internal/lsp/tests: provide SymbolInformation.Name in @symbol annotations�[m
�[32m  > internal/lsp: switch the protocol logger to use the new jsonrpc2 message types�[m
�[32m  > gopls: convert replay to use the new message types�[m
�[32m  > internal/jsonrpc2: add concrete types for Call, Notify and Response�[m
�[32m  > internal/jsonrpc2: clean up the tests�[m
�[32m  > internal/telemetry: add support for using telemetry in tests�[m
�[32m  > internal/imports: update stdlib index for 1.14�[m
�[32m  > internal/lsp/source: enable type error analyzers�[m
�[32m  > internal/lsp/regtest: enable test for golang/go#37195�[m
�[32m  > internal/lsp: fill in ServerInfo in the initialize response�[m
�[32m  > internal/lsp/regtest: generalize expectations beyond diagnostic messages�[m
�[32m  > internal/lsp/regtest: add support for custom test proxy data�[m
�[32m  > internal/lsp/fake: be more careful when closing the workspace�[m
�[32m  > go/packages: fix misbehavior when an overlay changes the package name�[m
�[32m  > internal/lsp: fix imports issue with duplicate package decl�[m
�[32m  > internal/telemetry: delete the unit package�[m
�[32m  > internal/telemetry: pack strings efficiently into tags�[m
�[32m  > internal/telemetry: add tag value formatting to the Key�[m
�[32m  > internal/telemetry: expose the TagOf* and Unpack* methods�[m
�[32m  > internal/lsp: fix erroneous documentation for struct fields�[m
�[32m  > go/analysis/analysistest: print unified diff for test failures�[m
�[32m  > internal/jsonrpc2: simplify request even futher�[m
�[32m  > internal/jsonrpc2: remove the OnReply callbacks�[m
�[32m  > internal/lsp/fake: don't lock while calling formatting�[m
�[32m  > internal/lsp/fake: correctly configure the fake editor�[m
�[32m  > internal/lsp/regtest: put testing.T back in the test func signature�[m
�[32m  > all: Fix spelling of Marshaling.�[m
�[32m  > gopls/internal/hooks: don't run staticcheck's SA5011�[m
�[32m  > internal/lsp/diff/difftest: ignore for GOOS=illumos�[m
�[32m  > go/analysis/analysistest: give up if we can't find golden file�[m
�[32m  > internal/proxydir: add an internal package for file-based proxies�[m
�[32m  > go/loader: remove check on ioutil.TestTempFile in TestStdlib�[m
�[32m  > internal/jsonrpc2: split reply from request�[m
�[32m  > internal/jsonrpc2: make the wire structures private�[m
�[32m  > internal/jsonrpc2: replace NewErrorf with fmt.Errorf�[m
�[32m  > internal/lsp: add an extra bounds check to avoid nil pointers�[m
�[32m  > go/ast/inspector: impose maximum capacity�[m
�[32m  > internal/lsp: remove the CallCanceller�[m
�[32m  > internal/lsp: improve ID formatting�[m
�[32m  > internal/lsp/cache: hide type errors if we fix up the AST�[m
�[32m  > internal/lsp: linkify IP addresses in textDocument/documentLink�[m
�[32m  > internal/lsp/regtest: add test for issue 32149 (wrong package)�[m
�[32m  > internal/lsp/regtest: output gopls logs on test failure�[m
�[32m  > internal/lsp/protocol: make loggingStream log writes concurrency-safe�[m
�[32m  > go/packages: replace darwin with netbsd in TestSizes�[m
�[32m  > internal/jsonrpc2: remove Direction�[m
�[32m  > internal/telemetry: a faster logging exporter�[m
�[32m  > internal/lsp: make tag iteration allocation-free�[m
�[32m  > internal/lsp/cache: add concurrency error check for go cmds�[m
�[32m  > internal/lsp: add type error fixes to existing diagnostics�[m
�[32m  > gopls/docs: adding nvim-lsp option in gopls README file�[m
�[32m  > internal/lsp: disable unimported completions for snippet tests�[m
�[32m  > internal/telemetry/event: fix error/value key type tag formatting�[m
�[32m  > internal/lsp: make sure that `gofmt -s` analyses don't modify AST�[m
�[32m  > internal/lsp: make event directly implement TagMap�[m
�[32m  > internal/telemetry: add an example of using the logging behaviour�[m
�[32m  > internal/lsp: use one context throughout completion�[m
�[32m  > internal/lsp: rewrite the rpc debug page�[m
�[32m  > internal/jsonrpc2: dont add any handlers by default�[m
�[32m  > internal/jsonrpc2: remove the legacy interface�[m
�[32m  > internal/jsonrpc2: break Run up into composable handlers�[m
�[32m  > internal/jsonrpc2: remove request state�[m
�[32m  > internal/jsonrpc2: make it an error to fail to call Reply�[m
�[32m  > internal/jsonrpc2: cleanup reply handling�[m
�[32m  > internal/jsonrpc2: change handler to a function type�[m
�[32m  > internal/lsp, go/packages: don't log context cancellation errors�[m
�[32m  > go/packages: only list current module's directory in determineRootDirs�[m
�[32m  > internal/lsp: use context with timeout in all RunProcessEnvFuncs�[m
�[32m  > internal/lsp/regtest: clean up module names and include github issues�[m
�[32m  > internal/lsp: fix references for transitive dependencies�[m
�[32m  > internal/lsp: handle non-file:// URIs gracefully�[m
�[32m  > internal/lsp/regtest: add functions to make diagnostic assertions easier�[m
�[32m  > internal/lsp: fix panic in builtin completions�[m
�[32m  > internal/lsp/source: propose loaded unimported package names first�[m
�[32m  > internal/lsp: temporarily disable type error analyzers by default�[m
�[32m  > internal/lsp: add a mutex around the view's options�[m
�[32m  > internal/lsp/source: add a replacement for experimentalDisabledAnalyses�[m
�[32m  > internal/lsp: add goreturns like functionality as quickfix�[m
�[32m  > internal/lsp: refactor and propagate errors from code actions�[m
�[32m  > go.mod: upgrade goldmark dependency to fix js/wasm build�[m
�[32m  > gopls/integration/govim: revert back to using the latest govim�[m
�[32m  > internal/lsp: add a reg test to test "go mod init"�[m
�[32m  > internal/lsp: avoid logging context cancellation�[m
�[32m  > internal/telemetry: give Event a custom implementation of TagMap�[m
�[32m  > internal/telemetry: removing the IsEmpty method of TagMap�[m
�[32m  > internal/telemetry: add a noop exporter benchmark�[m
�[32m  > internal/lsp: rewrite the stats using the newer telemetry features�[m
�[32m  > internal/telemetry: add a synchronization to telemetry�[m
�[32m  > internal/gocommand: fix environment on Windows�[m
�[32m  > internal/lsp/tests: remove ellipses from test names�[m
�[32m  > internal/lsp: fix view rebuilding when `go mod init` runs�[m
�[32m  > gopls/integration/govim: fix govim tests without a go.mod file�[m
�[32m  > x/tools/present: point to instagram sted twitter for Renee French�[m
�[32m  > internal/telemetry: minor improvement to span events�[m
�[32m  > internal/telemetry: add fast non variadic event functions�[m
�[32m  > internal/telemetry: use tags instead of special event fields.�[m
�[32m  > internal/telemetry: change tag to use type specific storage�[m
�[32m  > internal/gocommand: don't delete command's environment�[m
�[32m  > internal/lsp/cache: validate workspace path case�[m
�[32m  > internal/gocommand: only set working dir if it's not empty�[m
�[32m  > internal/lsp/analysis: add quickfix for "no new vars on left side"�[m
�[32m  > go/packages: add a workaround for different import stacks between go versions�[m
�[32m  > go/analysis/passes/unreachable: add suggested-fix to remove dead code�[m
�[32m  > internal/lsp/analysis: add quickfix for "no result values expected"�[m
�[32m  > internal/lsp/source: remove unused parameters from functions�[m
�[32m  > internal/lsp/cmd: add a flag to disable telemetry�[m
�[32m  > internal/lsp/analysis: add quickfix for undeclared variable�[m
�[32m  > internal/lsp: add support for type error analyzers�[m
�[32m  > internal/lsp: refactor references/rename/implementations�[m
�[32m  > internal/lsp/hooks: enable staticcheck hooks�[m
�[32m  > internal/lsp/analysis: add simplify-slice pass from "gofmt -s"�[m
�[32m  > internal/lsp/analysis: add simplify-composite-lit pass from "gofmt -s"�[m
�[32m  > internal/lsp/analysis: add pass for unused parameters�[m
�[32m  > internal/lsp/analysis: add simplify-range pass from "gofmt -s"�[m
�[32m  > internal/lsp: add support for sourceFixAll analyzers�[m
�[32m  > tools/gopls: add cmd support for workspace_symbol�[m
�[32m  > go/analysis/analysistest: expand testing to handle suggested fixes�[m
�[32m  > internal/lsp: change disabledAnalyses setting to be general�[m
�[32m  > internal/lsp: avoid possible nil pointer in references/rename�[m
�[32m  > internal/telemetry: render trace tags using typed keys�[m
�[32m  > internal/telemetry: convert attributes using the key type�[m
�[32m  > internal/telemetry: make metrics take a strongly typed key�[m
�[32m  > internal/telemetry: normalize the event reciever names to all use ev�[m
�[32m  > internal/telemetry: improve the telemetry benchmark�[m
�[32m  > lsp/source: create zero value ast.Exprs�[m
�[32m  > internal/lsp: remove command-line-arguments as a workspace package�[m
�[32m  > gopls/integration/govim: improvements/fixes for run_local.sh�[m
�[32m  > blog: use serial comma in long author lists�[m
�[32m  > internal/telemetry: hide event.Type�[m
�[32m  > internal/telemetry: remove the ProcessEvent function�[m
�[32m  > internal/telemetry: replace TagSet with TagMap and TagPointer�[m
�[32m  > internal/telemetry: change Exporter to be a function type.�[m
�[32m  > internal/lsp/regtest: remove redundant T and ctx params from regtest funcs�[m
�[32m  > go/packages: add test for golang/go#37971�[m
�[32m  > internal/lsp/fake: add regexp search and replace�[m
�[32m  > internal/lsp: print view-specific environment�[m
�[32m  > internal/lsp: stop showing workspace misconfiguration message�[m
�[32m  > internal/lsp: never reload command-line-arguments directly�[m
�[32m  > internal/lsp: fix nil pointer in 'go mod why' logic�[m
�[32m  > internal/telemetry/export/ocagent: add traces to tutorial�[m
�[32m  > internal/telemetry/export/ocagent: update metrics tutorial to use the event system�[m
�[32m  > go/analysis/passes/printf: warn against using %v verb in Error() methods�[m
�[32m  > internal/lsp/source: prefer unexported and non-func candidates�[m
�[32m  > internal/lsp: be more careful about showing workspace misconfig message�[m
�[32m  > present: test Markdown & fix splitting of pre blocks�[m
�[32m  > present: add end-to-end rendering test�[m
�[32m  > internal/lsp: fix nil pointer in renaming to "error"�[m
�[32m  > internal/telemetry: switch metrics to use the event system�[m
�[32m  > internal/telemetry: switch metrics to use only the public API�[m
�[32m  > internal/telemetry: replace event.TagList with event.TagSet�[m
�[32m  > internal/lsp: remove completion commands�[m
�[32m  > internal/telemetry/export/ocagent: update metric tutorial to use oragent�[m
�[32m  > internal/jsonrpc2: remove unnecessary Log comment from Handler interface�[m
�[32m  > internal/lsp/cmd: fix definition test to run independently�[m
�[32m  > gopls/doc: add documentation for "local" configuration�[m
�[32m  > internal/lsp: fix errors found by staticcheck�[m
�[32m  > blog: use first OldURL to generate atom feed ID�[m
�[32m  > internal/telemetry: add type safe tag keys�[m
�[32m  > internal/telemetry: delete the event.TagOf method�[m
�[32m  > internal/lsp: move the telemetry package�[m
�[32m  > internal/telemetry: change ocagent test to use the standard telemetry methods�[m
�[32m  > internal/telemetry: allow ProcessEvent to modify the event�[m
�[32m  > internal/lsp: move the operation key to the telemetry package�[m
�[32m  > internal/lsp/source: fix literal completions in variadic args�[m
�[32m  > internal/lsp/source: optimize enumeration of a type's fields�[m
�[32m  > cmd/compilebench: report rss measurement�[m
�[32m  > present2md: fix depth count for blogs with sections�[m
�[32m  > present: fix Markdown bugs�[m
�[32m  > present: add OldURL metadata and use for redirects in blog�[m
�[32m  > x/tools/gopls: 'go generate' should use $/progress if available�[m
�[32m  > internal/lsp: fix breadcrumbs when inside of a method�[m
�[32m  > internal/lsp: fix code.ts to generate progress and *TextEdit�[m
�[32m  > x/tools/gopls: run go generate through CodeLens�[m
�[32m  > internal/telemetry: split the ocagent tests from the support functions�[m
�[32m  > x/tools/gopls: add support for $/progress functionality�[m
�[32m  > gopls: update github.com/sergi/go-diff to v1.1.0�[m
�[32m  > internal/lsp/cache: fix typo�[m
�[32m  > cmd/present2md: add command to convert legacy present to Markdown-enabled present�[m
�[32m  > present: accept Markdown in present files�[m
�[32m  > present: record info in AST for reproducing present inputs�[m
�[32m  > present: improve error for bad author block�[m
�[32m  > present: allow line-wrapping of bullet list items�[m
�[32m  > gopls/doc: update daemon.md and remove 'experimental' caveats�[m
�[32m  > internal/lsp: clean up on Shutdown even if not initialized�[m
�[32m  > internal/lsp/lsprpc: expose configuration for auto-started daemon�[m
�[32m  > go/analysis/singlechecker: append a newline after "Flags:"�[m
�[32m  > internal/lsp/cmd: add an inspect verb�[m
�[32m  > godoc/static: update jquery.treeview to 1.4.2�[m
�[32m  > internal/lsp/source: offer loop keyword completions in range stmt�[m
�[32m  > internal/telemetry: convert key from string to struct�[m
�[32m  > internal/telemetry: use keys properly for benchmarks�[m
�[32m  > internal/telemetry: remove all the event aliases�[m
�[32m  > internal/lsp: migrate telemetry to using the event package�[m
�[32m  > internal/telemetry: unify the event handling to an event package�[m
�[32m  > internal/lsp/cache: remove parseGo semaphore�[m
�[32m  > all: run go generate�[m
�[32m  > internal/lsp/tests: fix WorkspaceSymbols tests�[m
�[32m  > go/analysis/passes/printf: give leeway for fmt.Formatter satisfaction�[m
�[32m  > internal/lsp/source: suppress keyword completions in "case" statement�[m
�[32m  > internal/lsp/source: fix completion in empty switch statements�[m
�[32m  > internal/telemetry: change detach to be an event�[m
�[32m  > internal/telemetry: add a stats benchmark�[m
�[32m  > go/packages: drop pruned packages in tests of import graph�[m
�[32m  > internal/lsp/source: avoid type checking in AllImportsFixes�[m
�[32m  > internal/lsp: change the type of CompletionItem.TextEdit back�[m
�[32m  > internal/lsp: suggest filing an issue if a warning is incorrect�[m
�[32m  > internal/lsp/source: offer completion "if err != nil { return err }"�[m
�[32m  > internal/lsp: bring generated protocol code up to date; stop corrupting logs�[m
�[32m  > internal/lsp/source: suppress completions in ellipsis�[m
�[32m  > internal/lsp/lsprpc: don't connect to sockets owned by different users�[m
�[32m  > gopls/integration/govim: update to go1.14 images�[m
�[32m  > internal/lsp/source: return location(s) for imported packages�[m
�[32m  > internal/lsp/source: support completing "range" keyword�[m
�[32m  > internal/lsp/source: complete keywords as types�[m
�[32m  > internal/lsp/cache/mod: return errors only within ModHandle and ModTidyHandle�[m
�[32m  > internal/lsp: support when hierarchicalDocumentSymbolSupport is false�[m
�[32m  > internal/telemetry: refactor the benchmark framework�[m
�[32m  > internal/lsp/debug: guard rpc stats with a Mutex�[m
�[32m  > internal/lsp/cmd: improve flexibility of suggested fixes�[m
�[32m  > internal/lsp: support textDocument/formatting for .mod extension�[m
�[32m  > internal/lsp/protocol: unmarshal to pointers when dispatching requests�[m
�[32m  > internal/lsp/lsprpc: use Setsid on POSIX GOOSes, to avoid SIGTERMs�[m
�[32m  > internal/lsp/cache: include session IDs in some cache keys�[m
�[32m  > internal/lsp/cache: fix NPE in fileWasSaved�[m
�[32m  > internal/tool: avoid editorialization�[m
�[32m  > internal/lsp: use standardised events for tagging�[m
�[32m  > internal/lsp/source: use logical filenames for workspace symbols�[m
�[32m  > internal/lsp/cache: attach ModTidyHandle to snapshot instance�[m
�[32m  > internal/telemetry: change tracing to be event based�[m
�[32m  > internal/telemetry: add simple tracing benchmarks�[m
�[32m  > internal/telemetry: move the benchmarks to the main package�[m
�[32m  > internal/telemetry: moving towards a unified event based exporter�[m
�[32m  > internal/telemetry: remove the concept of a Tagger�[m
�[32m  > internal/telemetry: use atomics to get the exporter�[m
�[32m  > internal/lsp: move the debug.Instance onto the Context�[m
�[32m  > internal/imports: don't set a logger unless the user has provided it�[m
�[32m  > all: upgrade outdated dependencies�[m
�[32m  > internal/lsp: fix active param in signature help�[m
�[32m  > internal/lsp: fix concurrent map read/write for missingmodules�[m
�[32m  > go/analysis/passes/errorsas: clarify message�[m
�[32m  > internal: rationalize debug logging�[m
�[32m  > internal/lsp/regtest: add a test for diagnostics on first file�[m
�[32m  > internal/lsp: add an upgrade all dependencies codelens�[m
�[32m  > internal/lsp/source: fix completion crash with untyped assignee�[m
�[32m  > internal/lsp/source: support inverse "implementations"�[m
�[32m  > internal/lsp/regtest: implement formatting and organizeImports�[m
�[32m  > internal/lsp/regtest: consolidate Env wrappers�[m
�[32m  > go/analysis/passes/nilness: detecting panic with provably nil values�[m
�[32m  > internal/lsp/debug: add nil checks in debug page�[m
�[32m  > internal/lsp/lsprpc: use localhost for remote gopls debug interface�[m
�[32m  > internal/telemetry: remove Flush method from exporter�[m
�[32m  > go/packages: drop imports of reflect in tests of import graph�[m
�[32m  > gopls/doc: update godoc.org to pkg.go.dev�[m
�[32m  > gopls/doc: add documentation for running gopls as a daemon�[m
�[32m  > internal/fastwalk: fix checkptr failure on Darwin�[m
�[32m  > internal/lsp/regtest: remove calls to t.Parallel()�[m
�[32m  > internal/lsp: mitigate possiibility of a slow code action�[m
�[32m  > internal/telemetry: removing the concept of exporter lists�[m
�[32m  > internal/lsp: remove unknown dependency from highlight tests�[m
�[32m  > internal/lsp/source: fix typo: identifer → identifier�[m
�[32m  > internal/lsp: replace mistaken "break" with "continue"�[m
�[32m  > internal/lsp: support textDocument/hover for .mod extension�[m
�[32m  > internal/lsp: support textDocument/documentLink for .mod extension�[m
�[32m  > internal/lsp: invalidate package IDs along with metadata�[m
�[32m  > internal/lsp/source: limit WorkspaceSymbols results�[m
�[32m  > internal/gocommand: kill gracefully�[m
�[32m  > all: consolidate invokeGo implementations�[m
�[32m  > go/ssa/interp: remove unused import�[m
�[32m  > go/ssa: disable recover2 testcase�[m
�[32m  > internal/lsp/regtest: clean-up and more error handling�[m
�[32m  > gopls: update staticcheck to 2020.1.3�[m
�[32m  > internal/imports: filepath.Clean module Dirs�[m
�[32m  > internal/lsp/lsprpc: wait for the handshake before running clientConn�[m
�[32m  > internal/lsp: add a test for internal imports handling�[m
�[32m  > internal/telemetry: add a benchmark with a null writer for comparison�[m
�[32m  > internal/lsp/lsprpc: add a 1m timeout to auto-started gopls�[m
�[32m  > internal/lsp/lsprpc: clean up client session on disconnection�[m
�[32m  > gopls/doc: Clear out fixed issues�[m
�[32m  > internal/jsonrpc2: add an idle timeout for stream serving�[m
�[32m  > internal/lsp/lsprpc: automatically resolve and start the remote gopls�[m
�[32m  > internal/lsp/lsprpc: add a handshake between forwarder and remote�[m
�[32m  > internal/lsp/debug: move all debug state onto the Instance�[m
�[32m  > internal/lsp/source: untangle completion type comparison�[m
�[32m  > Revert "Revert "go/analysis: add pass to check for impossible interface-to-interface type assertions""�[m
�[32m  > gopls: update Staticcheck to 2020.1.2�[m
�[32m  > internal/lsp: create more descriptive temp go.mod name�[m
�[32m  > internal/lsp/regtest: skip flaky TestGoToStdlibDefinition�[m
�[32m  > internal/lsp/source: improve completions at file scope�[m
�[32m  > internal/lsp/regtest: increase test timeout to 60s�[m
�[32m  > go/internal/gcimporter: update TestImportedTypes for BImportData removal�[m
�[32m  > internal/lsp/tests: fix regexp for removing links that contain versions�[m
�[32m  > go/analysis: add pass to check string(int) conversions�[m
�[32m  > internal/lsp: report use of disallowed internal packages�[m
�[32m  > internal/lsp: clear diagnostics for deleted files�[m
�[32m  > internal/lsp: add module versions from "go list" to pkg.go.dev links�[m
�[32m  > internal/lsp/cache: return concrete types where possible�[m
�[32m  > internal/lsp: limit diagnostics concurrency�[m
�[32m  > internal/jsonrpc2,internal/lsp/regtest: clean up some leaked tempfiles�[m
�[32m  > internal/jsonrpc2: support serving over unix domain sockets�[m
�[32m  > internal/lsp/lsprpc: add a forwarder handler�[m
�[32m  > internal/lsp/tests: fix reset of golden files�[m
�[32m  > internal/lsp/cache: kill unused func fixAccidentalDecl�[m
�[32m  > internal/span: handle URI escaping better�[m
�[32m  > internal/lsp/debug: drop memory debug threshold to 1GiB�[m
�[32m  > internal/lsp: add scheme checks to CodeLens�[m
�[32m  > internal/jsonrpc2/servertest: support both TCP and pipe connection�[m
�[32m  > internal/lsp: check for file URIs on LSP requests�[m
�[32m  > internal/span,lsp: disambiguate URIs, DocumentURIs, and paths�[m
�[32m  > internal/lsp/cache: parse go.mod file before running go mod tidy�[m
�[32m  > internal/lsp: fix error handling when getting go.mod codelens�[m
�[32m  > go/ssa: add DebugRef.Object�[m
�[32m  > internal/lsp/source: handle completing into variadic params�[m
�[32m  > internal/lsp/cache: fix crash fixing curlies near EOF�[m
�[32m  > internal/jsonrpc2: fix races in cancellation�[m
�[32m  > internal/lsp/lsprpc: add an LSP forwarder and regtest environment�[m
�[32m  > internal/lsp: add codelens for go.mod dependency upgrades�[m
�[32m  > internal/lsp/cache: improve completion after dangling selector�[m
�[32m  > internal/lsp/source: make matchers selectable in WorkspaceSymbols�[m
�[32m  > internal/lsp: fix diagnostics not clearing when creating new files�[m
�[32m  > internal/lsp: two trivial cleanups from CL 219077�[m
�[32m  > internal/lsp:  change return type of PrepareRename to *Range�[m
�[32m  > internal/lsp/cache: improve completion in init statements�[m
�[32m  > internal/lsp/cache: improve completion when missing opening curly�[m
�[32m  > internal/lsp: turn tempModfile flag on by default�[m
�[32m  > go/packages/packagestest: fix grouping to account for module versions�[m
�[32m  > internal/lsp/cache: add file contents to ParseGoHandle�[m
�[32m  > internal/lsp/source: fix completion crash in append()�[m
�[32m  > internal/lsp: remove nilness analyzer�[m
�[32m  > internal/lsp: ignore irrelevant on-disk changes�[m
�[32m  > internal/lsp/source: filter candidates when type name required�[m
�[32m  > Revert "go/analysis: add pass to check for impossible interface-to-interface type assertions"�[m
�[32m  > internal/lsp: disable nilness analyzer, unless staticcheck enabled�[m
�[32m  > internal/lsp: propagate file invalidations to all views�[m
�[32m  > internal/lsp/debug: fix early closure of logfile�[m
�[32m  > go/analysis: add pass to check for impossible interface-to-interface type assertions�[m
�[32m  > internal/lsp: support multi-dereferencing completion candidates�[m
�[32m  > internal/lsp/source: fix type modifier detection in composite literals�[m
�[32m  > internal/lsp/tests: fix missing period�[m
�[32m  > internal/lsp/source: limit to 5 unimported package name candidates�[m
�[32m  > internal/lsp/debug: write debug info for large goplses�[m
�[32m  > internal/imports: import packages from x/mod instead of internal copy�[m
�[32m  > internal/imports: change processEnv to use buildflags�[m
�[32m  > internal/lsp: move all debugging support to the debug package�[m
�[32m  > cmd/benchcmp: add deprecation notice�[m
�[32m  > internal/lsp/source: fix unimported member completion ranking�[m
�[32m  > internal/lsp/lsprpc: add test for definition outside of workspace�[m
�[32m  > internal/lsp/lsprpc: add test for empty diagnostics in deleted files�[m
�[32m  > internal/lsp/fake: add fakes for testing editor interaction�[m
�[32m  > internal/lsp: fix crash completing recursive pointer types�[m
�[32m  > internal/lsp/cache: refactor functions that return PackageHandles�[m
�[32m  > internal/lsp/source: export FindFileInpackage�[m
�[32m  > internal/lsp/source: default to full documentation for hover�[m
�[32m  > internal/lsp/tests: move workspace symbol test helpers functions into util.go�[m
�[32m  > internal/lsp/cache: hardcode parse modes instead of guessing them�[m
�[32m  > internal/lsp/source: eliminate setKind�[m
�[32m  > internal/lsp: don't use overlays from the session in the snapshot�[m
�[32m  > internal/lsp: build overlays through the snapshot�[m
�[32m  > internal/lsp/cache: don't type check types.Unsafe�[m
�[32m  > internal/lsp/cache: improve ModTidyHandle cache key�[m
�[32m  > fix(readme): expected comma�[m
�[32m  > internal/lsp: change debug instance to a struct�[m
�[32m  > internal/lsp: add quickfixes for missing dependencies in go.mod�[m
�[32m  > internal/lsp: refactor LSP server instantiation�[m
�[32m  > internal/lsp: move all of the test helpers functions into one file�[m
�[32m  > internal/lsp: export DiffSymbols to avoid duplication�[m
�[32m  > internal/lsp: don't return references for builtins�[m
�[32m  > internal/lsp: remove unnecessary source.SignatureInformation type�[m
�[32m  > go/packages/packagestest: do not overwrite existing go.mod file�[m
�[32m  > internal/lsp/tests: standardize testdata folder format�[m
�[32m  > internal/lsp: filter keyword completions in tests�[m
�[32m  > internal/lsp/source: improve completion after accidental keywords�[m
�[32m  > internal/lsp/source: improve completion involving multiple return values�[m
�[32m  > gopls/doc: update VS Code settings to correspond with current defaults�[m
�[32m  > internal/lsp: stop returning metadata from (*snapshot).load�[m
�[32m  > internal/imports: prevent self-imports in the stdlib�[m
�[32m  > internal/jsonrpc2: fix invalid invocations of Fatalf in goroutines�[m
�[32m  > internal/lsp: add support for workspace symbol�[m
�[32m  > internal/lsp: continue diagnostics if diagnosing go.mod fails�[m
�[32m  > gopls/integration/govim: switch to latest, and improve artifacts�[m
�[32m  > internal/lsp: determine parse mode based on workspace packages�[m
�[32m  > internal/lsp/tests: add severity parameter to @diag markers�[m
�[32m  > tools/gopls: add cmd support for prepare_rename�[m
�[32m  > internal/lsp/cache: use snapshot ID and view folder in ModTidyHandle key�[m
�[32m  > internal/imports: stop leaking listeners�[m
�[32m  > internal/span, internal/lsp: fix URI escaping�[m
�[32m  > gopls: add the link to the gopls/README.md�[m
�[32m  > internal/lsp/debug: serve cache entry counts�[m
�[32m  > internal/lsp: don't show links in hover for test functions�[m
�[32m  > internal/lsp: aggregate diagnostics before publishing them�[m
�[32m  > internal/lsp: skip packages load for auxilary go.mod changes�[m
�[32m  > internal/lsp: add diagnostics in .go files for missing deps in go.mod�[m
�[32m  > internal/lsp: return error if there is no builtin package�[m
�[32m  > go/expect: account for the offset from the file.base for modfiles�[m
�[32m  > internal/lsp: remove useless check�[m
�[32m  > internal/lsp/cache: refactor a few small things�[m
�[32m  > internal/lsp/source: improve completion for "make()" args�[m
�[31m  < [release-branch.go1.14] go/analysis/passes/asmdecl: add support for riscv64�[m
�[32m  > internal/lsp/debug: support dropping sessions and views�[m
�[32m  > internal/lsp/cache: add Env to debugView�[m
�[32m  > internal/lsp: change to helper.go to output a formatted file�[m
�[32m  > internal/lsp/cache: add context cancellation check inside importerFunc�[m
�[32m  > go/expect: add marker support for go.mod files�[m
�[32m  > internal/lsp/source: don't allow mutating DefaultOptions�[m
�[32m  > internal/lsp: fix typo�[m
�[32m  > internal/lsp: use span.URI constructor everywhere�[m
�[32m  > go/packages: fix non-determinism on package list order�[m
�[32m  > internal/span: always uppercase the drive letter for Windows�[m
�[32m  > go/packages: make TestOverlayDeps deterministic�[m
�[32m  > go/packages: work around pkg-config errors in go list�[m
�[32m  > go/packages: add a workaround for golang/go#36188�[m
�[32m  > all: revert uses of types.NewInterfaceType�[m
�[32m  > internal/lsp: set workspace packages during (*snapshot).load�[m
�[32m  > internal/lsp/mod: fix test that checks for unchanged go.mod�[m
�[32m  > internal/lsp/cache: move shouldLoad function to snapshot.go�[m
�[32m  > internal/lsp/cache: use telemetry logging for imports refresh�[m
�[32m  > internal/lsp/source: check cancellation before analysis�[m
�[32m  > internal/lsp/cache: delete a few unused functions�[m
�[32m  > all: fix some staticcheck errors�[m
�[32m  > go/packages: remove code that handled ordering in overlays�[m
�[32m  > internal/lsp/cache: handle invalid analysis Pos�[m
�[32m  > go/packages: fix flaky failure creating non-test package from overlay�[m
�[32m  > internal/lsp: recover from a view initialization failure�[m
�[32m  > internal/lsp: provide arguments deterministically to packages.Load�[m
�[32m  > internal/lsp/cache: handle go.mod conflicts in go list�[m
�[32m  > internal/lsp: surface missing dependencies for imports not in go.mod�[m
�[32m  > internal/lsp: only reload orphaned files that belong to the workspace�[m
�[32m  > internal/lsp: remove shadow analysis from default suite�[m
�[32m  > internal/lsp/cmd: fix `gopls check`�[m
�[32m  > internal/lsp: don't show list errors unless necessary�[m
�[32m  > internal/lsp: handle metadata reloads for ad-hoc packages�[m
�[32m  > internal/lsp: fix active parameter for incomplete parentheses�[m
�[32m  > internal/lsp: log snapshot IDs, don't log context cancellation�[m
�[32m  > internal/lsp/source: add more go/analysis/passes analyzers to LSP's suite�[m
�[32m  > internal/lsp: permit renaming symbols declared in other packages�[m
�[32m  > internal/lsp: return context cancellation from LookupBuiltin�[m
�[32m  > go/packages: only run TestCgoNoSyntax when cgo is available�[m
�[32m  > internal/lsp: upgrade to current version of LSP�[m
�[32m  > gopls/doc: document updating to an unstable version�[m
�[32m  > internal/lsp/protocol: actually handle cancellation delivery�[m
�[32m  > internal/lsp: remove the checkErrors command in internal/lsp/source�[m
�[32m  > internal/lsp: push more build-specific logic into the view�[m
�[32m  > internal/lsp: reload metadata for orphaned files�[m
�[32m  > internal/lsp: disable literal completion candidates for some clients�[m
�[32m  > internal/lsp: small change to helper.go to use ast.IsExported�[m
�[32m  > go/analysis/passes/asmdecl: add support for riscv64�[m
�[32m  > internal/lsp/cache: move mod-related functions and file�[m
�[32m  > internal/lsp: generate boilerplate stubs for type Server�[m
�[32m  > internal/lsp: stop returning errors when we can't find a snapshot�[m
�[32m  > internal/lsp/cache: check go.mod even if tempModFile is false�[m
�[32m  > internal/lsp/cache: fix GOPATH vendoring�[m
�[32m  > go/packages: fix GOPATH vendoring with overlays�[m
�[32m  > internal/lsp: eliminate redundant view.ModFile function�[m
�[32m  > internal/lsp: recreate the view when needed�[m
�[32m  > internal/lsp: check that a file handle is unmodified before read�[m
�[32m  > internal/lsp: batch file changes in didChangeWatchedFiles�[m
�[32m  > internal/lsp: support batched on-disk changes in source.DidModifyFiles�[m
�[32m  > internal/lsp: support multiple URIs in (*view).invalidateContent�[m
�[32m  > internal/lsp: use x/mod to get edits for go.mod quick fixes�[m
�[32m  > internal/imports: add buildflags to ProcessEnv�[m
�[32m  > go/packages: fix doc for NeedExportsFile�[m
�[32m  > go/packages: handle an overlay edge case with test variants�[m
�[32m  > internal/lsp: add tests for references includeDeclaration setting�[m
�[32m  > internal/lsp: refactor (*snapshot).clone to handle multiple URIs�[m
�[32m  > go/packages: refactor list driver�[m
�[32m  > cmd/stress: use an ellipsis when truncating output�[m
�[32m  > internal/lsp/cmd: add a test for client logging�[m
�[32m  > internal/lsp/source: support dereferencing for completion�[m
�[32m  > go/packages: remove named query�[m
�[32m  > gopls/integration/govim: update to latest govim�[m
�[32m  > go/ssa: replace DefaultType with go/types.Default�[m
�[32m  > go/ast/inspector: fix misnomer in callback signature�[m
�[32m  > analysis/passes: consolidate imports helper�[m
�[32m  > internal/lsp: remove the Context argument from NewSession�[m
�[32m  > internal/telemetry/log: correct the docstring for Error�[m
�[32m  > internal/lsp/protocol: handle cancellation delivery�[m
�[32m  > internal/lsp: eliminate getFileLocked function�[m
�[32m  > internal/lsp/source: rename "typeInference" to "candidateInference"�[m
�[32m  > internal/imports: pass dummy source for completion functions�[m
�[32m  > internal/lsp: use correct file identities when computing diagnostics�[m
�[32m  > internal/lsp/cache: create infra for caching go.mod diagnostics�[m
�[32m  > internal/lsp/cache: fix mod file change check�[m
�[32m  > internal/lsp/protocol: remove unused DocumentUri type�[m
�[32m  > internal/lsp/source: fix typeIsValid() inf recursion�[m
�[32m  > go/ssa: remove workaround for lack of vendoring in go/loader�[m
�[32m  > go/ssa/interp: fix goroutines and channels leaks�[m
�[32m  > internal/lsp/source: enable unimported completions by default�[m
�[32m  > internal/lsp/source: fix ranking of untyped completions�[m
�[32m  > internal/lsp: do not invoke the Go command when checking common errors�[m
�[32m  > internal/lsp/cache: let gopls track go.mod files�[m
�[32m  > internal/lsp: add recency check to avoid sending old diagnostics�[m
�[32m  > internal/lsp: invalidate directories if we have no direct IDs�[m
�[32m  > internal/lsp/source: trim file very carefully�[m
�[32m  > internal/lsp: consolidate completion sorting�[m
�[32m  > internal/lsp/cache: invalidate metadata for x_tests and test variants�[m
�[32m  > internal/lsp: add highlighting for import statement�[m
�[32m  > go/ast/astutil: fix DeleteImport SEGV when Rparen is invalid�[m
�[32m  > gopls/internal/hooks: ignore a duplicate analysis from staticcheck�[m
�[32m  > internal/lsp/source: score in-memory unimported candidates�[m
�[32m  > go/packages: fix incorrect needtypes and needsrcs logic�[m
�[32m  > go/packages: internally expose ForTests in go/packages�[m
�[32m  > internal/lsp/cache: refresh imports cache in the background�[m
�[32m  > internal/lsp: don't log context.Cancelation in diagnostics�[m
�[32m  > internal/lsp/source: return obj decl first in find-references�[m
�[32m  > internal/lsp/source: improve completion for "range" and "<-"�[m
�[32m  > internal/lsp: refactor find-references and rename�[m
�[32m  > internal/lsp/source: always look up mapper when building ranges�[m
�[32m  > internal/lsp/source: improve completion in type assertions�[m
�[32m  > internal/lsp/cache: initialize view before LookupBuiltin�[m
�[32m  > internal/lsp: diagnose the snapshot on every text synchronization event�[m
�[32m  > internal/lsp: remove boolean for publishEmpty in diagnostics�[m
�[32m  > cover: error on negative numbers in profiles�[m
�[32m  > internal/lsp/cache: refactor initialization for builtins�[m
�[32m  > gopls/doc: improve troubleshooting docs with specifics�[m
�[32m  > internal/lsp/cache: construct package handles as part of IWL�[m
�[32m  > internal/lsp: add and use nonstandard gopls/diagnoseFiles�[m
�[32m  > internal/lsp: show dependency quick fixes for go.mod diagnostics�[m
�[32m  > gopls/doc: fix it's/its typo�[m
�[32m  > internal/lsp: add server instance to debug info�[m
�[32m  > gopls/integration/govim: update build steps to capture artifacts�[m
�[32m  > internal/lsp/tests: correct typo 'CompletionCaseSensitve'�[m
�[32m  > internal/lsp,internal/telemetry: correct stale docstrings�[m
�[32m  > internal/lsp: push initialization tasks into one function�[m
�[32m  > internal/lsp: finish renaming CheckPackageHandle to PackageHandle�[m
�[32m  > internal/imports: load test exports of package under test�[m
�[32m  > gopls/doc: minor fixes in design.md and implementation.md�[m
�[32m  > internal/lsp: make sure diagnostics with analyses are not overwritten�[m
�[32m  > internal/lsp: add mapper for go.mod files�[m
�[32m  > internal/lsp/protocol: support nonstandard requests�[m
�[32m  > internal/lsp: fix flaking internal/lsp/cmd tests�[m
�[32m  > internal/lsp: use URIs instead of FileIdentity in errors�[m
�[32m  > internal/lsp/source: improve completion support for args to builtins�[m
�[32m  > cmd/stringer: remove redundant check in generated code�[m
�[32m  > internal/lsp: fix context cancellation�[m
�[32m  > internal/lsp: use latest file versions in diagnostics�[m
�[32m  > internal/lsp: allow subdirectories of module roots when checking errors�[m
�[32m  > internal/lsp: change go1.14 check to be more lenient�[m
�[32m  > go/analysis: remove stale documentation citing vet�[m
�[32m  > gopls/doc: fix 'Report the issue' bad link�[m
�[32m  > internal/lsp: reload workspace package metadata on demand�[m
�[32m  > internal/lsp: merge completion options into source.Options�[m
�[32m  > internal/lsp: don't require type-checking for formatting�[m
�[32m  > internal/lsp: fix support for watching changed files�[m
�[32m  > internal/lsp: remove view.FindPosInPackage and view.FindMapperInPackage�[m
�[32m  > …
@golang golang locked and limited conversation to collaborators May 13, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Projects
None yet
Development

No branches or pull requests

6 participants