1
0
mirror of https://github.com/golang/go synced 2024-09-30 14:18:32 -06:00
go/internal
Rebecca Stambler f1c4188a97 internal/lsp, go/packages: reproduce and fix golang/go#39646
This test exposes a lot of fundamental issues with `go list` overlays.
Now that we have the regression test framework, we can copy it over and
make any flakes completely reproducible by waiting for each change to
complete.

The issue here ended up being that initial workspace load returns
workspace packages with no associated files due to golang/go#39986.
Working around this allows invalidation to proceed as usual.

In the process of debugging this, I also noticed that packages can get
loaded as command-line-arguments even when we can get the correct
package path for them. It's pretty complicated to fix this, so
restructured the code a tiny bit and left a TODO. I'd like to come back
to this at some point, but it's not pressing since I was able to fix
this bug.

Fixes golang/go#39646.
Updates golang/go#39986.

Change-Id: Id6b08a5e92d28eddc731feb0ef3fd3b3fc69e64b
Reviewed-on: https://go-review.googlesource.com/c/tools/+/240098
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Michael Matloob <matloob@golang.org>
2020-07-10 04:28:08 +00:00
..
analysisinternal internal/lsp: extract highlighted selection to variable 2020-07-07 21:12:28 +00:00
apidiff all: fix more typos 2019-09-11 15:13:14 +00:00
event internal/event: improve the logging of events 2020-05-11 17:49:55 +00:00
fakenet internal/fakenet: add a fake network connection 2020-05-27 14:27:59 +00:00
fastwalk internal/fastwalk: attempt Symlink tests on Windows 2020-05-21 21:19:27 +00:00
gocommand all: rework goimports environment, support GOMODCACHE 2020-06-25 17:33:20 +00:00
gopathwalk internal: rationalize debug logging 2020-03-03 16:59:18 +00:00
imports internal/imports: require valid options, move LocalPrefix up 2020-07-07 20:02:13 +00:00
jsonrpc2 internal/jsonrpc2: omit empty error data 2020-06-24 06:08:01 +00:00
lsp internal/lsp, go/packages: reproduce and fix golang/go#39646 2020-07-10 04:28:08 +00:00
memoize internal/memoize: add an error return to (*handle).Get 2020-06-24 16:33:19 +00:00
packagesinternal go/packages: move TypecheckCgo to packagesinternal 2020-06-10 22:20:39 +00:00
proxydir all: remove version-specific test files 2020-05-28 17:13:50 +00:00
span internal/span: handle file URLs with two slashes 2020-06-24 22:54:43 +00:00
stack internal/stack: add the leak test 2020-05-27 14:25:42 +00:00
testenv internal/testenv: add a NeedsGoBuild function 2020-06-10 16:09:22 +00:00
tool internal/tool: avoid editorialization 2020-03-05 14:01:59 +00:00
typesinternal go/packages: use go115UsesCgo instead of UsesCgo 2020-06-10 21:22:23 +00:00
xcontext internal/lsp: stop making background contexts everywhere 2019-07-11 16:38:52 +00:00