1
0
mirror of https://github.com/golang/go synced 2024-11-18 18:14:43 -07:00
go/internal/lsp
Rebecca Stambler 3cbd95df51 internal/lsp: support a file belonging to multiple packages
This change adds supports for a package belonging to multiple files.
It requires additional packages.Loads for all of the packages to which a
file belongs (for example, if a non-test file also belongs to a package's
test variant).

For now, we re-run go/packages.Load for each file we open, regardless of
whether or not we already know about it.

This solves the issue of packages randomly belonging to a test or not.
Follow-up work needs to be done to support multiple packages in
references, rename, and diagnostics.

Fixes golang/go#32791
Fixes golang/go#30100

Change-Id: I0a5870a05825fc16cc46d405ef50c775094b0fbb
Reviewed-on: https://go-review.googlesource.com/c/tools/+/183628
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Ian Cottrell <iancottrell@google.com>
2019-06-26 17:56:19 +00:00
..
browser internal/lsp: add version and bug commands 2019-05-11 04:16:02 +00:00
cache internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
cmd internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
debug internal/lsp: add telemetry stubs 2019-06-24 18:10:36 +00:00
diff internal/lsp/diff: remove redundant memory allocate and copy operations in function 'shortestEditSequence'. 2019-06-17 16:22:25 +00:00
protocol internal/lsp: send client expected rename provider 2019-06-20 18:21:41 +00:00
snippet internal/lsp: introduce snippet builder object 2019-04-25 18:37:29 +00:00
source internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
telemetry internal/lsp: add telemetry stubs 2019-06-24 18:10:36 +00:00
testdata internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
tests internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
xlog internal/lsp: add the ability to log back to the client 2019-04-01 16:22:08 +00:00
code_action.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
completion.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
definition.go internal/lsp: attach documentation to signature help 2019-06-06 17:46:28 +00:00
diagnostics.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
format.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
general.go internal/lsp: send client expected rename provider 2019-06-20 18:21:41 +00:00
highlight.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
hover.go internal/lsp: attach documentation to signature help 2019-06-06 17:46:28 +00:00
link.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
lsp_test.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
references.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
rename.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
reset_golden.sh internal/lsp: fix definition tests to use golden files 2019-05-10 21:06:55 +00:00
server.go internal/lsp: add identifier renaming 2019-06-19 21:54:42 +00:00
signature_help.go internal/lsp: reply with nil, rather than empty, signature help 2019-06-08 02:21:20 +00:00
symbols.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
text_synchronization.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
util.go internal/span: change URI.Filename so it just returns the filename 2019-06-10 21:39:43 +00:00
workspace.go internal/lsp: build the packages config on demand from proper configuration 2019-05-21 17:12:43 +00:00