1
0
mirror of https://github.com/golang/go synced 2024-10-01 08:18:32 -06:00
go/internal/lsp
Rob Findley 20370b0cb4 internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers
Several fixes related to GOPRIVATE handling and links:
 + In Go source, fix links matching GOPRIVATE for external modules.
   Previously, in these cases we'd try to match <mod>@v1.2.3/<suffix>,
   which wasn't the correct input into the GOPRIVATE matching algorithm.
 + Similarly check GOPRIVATE for go.mod require statement hovers.
 + Likewise, for documentLink requests (both mod and source).
 + Move the existing hover regtest to link_test.go, and expand to cover
   all these cases.

Along the way, I encountered a couple apparent bugs, which I fixed:
 + Correctly handle the case where there is only one require in a go.mod
   file. This was exercised by the regtest, so took some debugging.
 + Only format links [like](this) if the requested format is actually
   markdown.

Fixes golang/go#36998

Change-Id: I92011821f646f2a7449dcca619483f83bdeb54b0
Reviewed-on: https://go-review.googlesource.com/c/tools/+/238029
Run-TryBot: Robert Findley <rfindley@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2020-06-18 13:42:42 +00:00
..
analysis internal/lsp: plumb fillstruct through analysis 2020-06-15 21:22:08 +00:00
browser
cache internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
cmd internal/lsp/cmd/test/cmdtest: shutdown connections on test completion 2020-06-18 11:25:59 +00:00
debug internal/lsp/debug: show per-package memory usage 2020-06-12 20:10:52 +00:00
diff internal/testenv: check that external 'diff' tool is the GNU version 2020-05-08 20:46:49 +00:00
fake internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
fuzzy internal/lsp: fix errors found by staticcheck 2020-03-19 19:20:54 +00:00
helper
lsprpc internal/lsp/lsprpc: forward the go environment in initialize requests 2020-06-16 15:43:56 +00:00
mod internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
protocol internal/lsp: bring lsp protocol stubs up to date 2020-06-11 18:15:06 +00:00
regtest internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
snippet
source internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
testdata internal/lsp/source: avoid panic in rename check 2020-06-16 19:50:46 +00:00
tests internal/lsp: plumb fillstruct through analysis 2020-06-15 21:22:08 +00:00
code_action.go internal/lsp: plumb fillstruct through analysis 2020-06-15 21:22:08 +00:00
command.go internal/lsp: un-export (*snapshot).Config to limit it to cache 2020-06-15 22:28:25 +00:00
completion_test.go internal/lsp/source: offer smart "append()" completions 2020-05-20 22:05:37 +00:00
completion.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
definition.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
diagnostics.go internal/lsp: use a new temporary go.mod for every go list call 2020-06-18 02:37:23 +00:00
folding_range.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
format.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
general.go internal/lsp: cancel the initial workspace load when view shuts down 2020-06-12 18:06:40 +00:00
generate.go internal/lsp: un-export (*snapshot).Config to limit it to cache 2020-06-15 22:28:25 +00:00
highlight.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
hover.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
implementation.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
link.go internal/lsp: honor GOPRIVATE in documentLinks and go.mod hovers 2020-06-18 13:42:42 +00:00
lsp_test.go internal/lsp: use a new temporary go.mod for every go list call 2020-06-18 02:37:23 +00:00
progress.go internal/lsp: factor out progress reporting to a new WorkDone handle 2020-04-28 20:46:18 +00:00
references.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
rename.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
reset_golden.sh
server_gen.go x/tools/gopls: add support for $/progress functionality 2020-03-16 21:25:24 +00:00
server.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
signature_help.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
symbols.go internal/lsp: read files eagerly 2020-06-11 22:11:59 +00:00
text_synchronization.go internal/lsp: use a new temporary go.mod for every go list call 2020-06-18 02:37:23 +00:00
workspace_symbol.go internal/lsp: add config option for SymbolMatch 2020-05-11 19:58:58 +00:00
workspace.go