[tools] gopls: move reset go.mod diagnostic codelens to module statement

116 views
Skip to first unread message

Suzy Mueller (Gerrit)

unread,
Dec 1, 2022, 1:07:44 PM12/1/22
to goph...@pubsubhelper.golang.org, golang-...@googlegroups.com, Hyang-Ah Hana Kim, Gopher Robot, kokoro, golang-co...@googlegroups.com

Suzy Mueller submitted this change.

View Change

Approvals: Hyang-Ah Hana Kim: Looks good to me, approved kokoro: gopls CI succeeded Suzy Mueller: Run TryBots Gopher Robot: TryBots succeeded
gopls: move reset go.mod diagnostic codelens to module statement

If there is no require statement, then there is no require
statement to attach the codelens to. Move the codelens to the
module statement instead.

Change-Id: I8f77f2cbf73d410ffdebb25f7c426379d06ad400
Reviewed-on: https://go-review.googlesource.com/c/tools/+/453957
TryBot-Result: Gopher Robot <go...@golang.org>
Reviewed-by: Hyang-Ah Hana Kim <hya...@gmail.com>
gopls-CI: kokoro <noreply...@google.com>
Run-TryBot: Suzy Mueller <suz...@golang.org>
---
M gopls/internal/lsp/mod/code_lens.go
1 file changed, 33 insertions(+), 9 deletions(-)

diff --git a/gopls/internal/lsp/mod/code_lens.go b/gopls/internal/lsp/mod/code_lens.go
index e61bb04..4e08f4a 100644
--- a/gopls/internal/lsp/mod/code_lens.go
+++ b/gopls/internal/lsp/mod/code_lens.go
@@ -31,15 +31,25 @@
if err != nil || pm.File == nil {
return nil, err
}
+ uri := protocol.URIFromSpanURI(fh.URI())
+ reset, err := command.NewResetGoModDiagnosticsCommand("Reset go.mod diagnostics", command.URIArg{URI: uri})
+ if err != nil {
+ return nil, err
+ }
+ // Put the `Reset go.mod diagnostics` codelens on the module statement.
+ modrng, err := moduleStmtRange(fh, pm)
+ if err != nil {
+ return nil, err
+ }
+ lenses := []protocol.CodeLens{{Range: modrng, Command: reset}}
if len(pm.File.Require) == 0 {
// Nothing to upgrade.
- return nil, nil
+ return lenses, nil
}
var requires []string
for _, req := range pm.File.Require {
requires = append(requires, req.Mod.Path)
}
- uri := protocol.URIFromSpanURI(fh.URI())
checkUpgrade, err := command.NewCheckUpgradesCommand("Check for upgrades", command.CheckUpgradesArgs{
URI: uri,
Modules: requires,
@@ -63,22 +73,18 @@
if err != nil {
return nil, err
}
- reset, err := command.NewResetGoModDiagnosticsCommand("Reset go.mod diagnostics", command.URIArg{URI: uri})
- if err != nil {
- return nil, err
- }
+
// Put the upgrade code lenses above the first require block or statement.
rng, err := firstRequireRange(fh, pm)
if err != nil {
return nil, err
}

- return []protocol.CodeLens{
+ return append(lenses, []protocol.CodeLens{
{Range: rng, Command: checkUpgrade},
{Range: rng, Command: upgradeTransitive},
{Range: rng, Command: upgradeDirect},
- {Range: rng, Command: reset},
- }, nil
+ }...), nil
}

func tidyLens(ctx context.Context, snapshot source.Snapshot, fh source.FileHandle) ([]protocol.CodeLens, error) {

To view, visit change 453957. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: tools
Gerrit-Branch: master
Gerrit-Change-Id: I8f77f2cbf73d410ffdebb25f7c426379d06ad400
Gerrit-Change-Number: 453957
Gerrit-PatchSet: 3
Gerrit-Owner: Suzy Mueller <suz...@golang.org>
Gerrit-Reviewer: Gopher Robot <go...@golang.org>
Gerrit-Reviewer: Hyang-Ah Hana Kim <hya...@gmail.com>
Gerrit-Reviewer: Suzy Mueller <suz...@golang.org>
Gerrit-Reviewer: kokoro <noreply...@google.com>
Gerrit-MessageType: merged
Reply all
Reply to author
Forward
0 new messages