this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

internal/lsp: Move much of our own code to internal/lsp

The initial clone of gopls added code to internal/golangorgx/gopls
However, having rewritten a lot of this code and added our own, it's
sensible to move our own code to internal/lsp.

Moving these files has meant they escape the scope of the
golangorgx/staticcheck.conf file which disables all linter checks. Thus
a few drive-by fixes have been applied.

Signed-off-by: Matthew Sackman <matthew@cue.works>
Change-Id: I8899539c7e9f44bc155fab2db2cbcb40bb23d732
Reviewed-on: https://review.gerrithub.io/c/cue-lang/cue/+/1219127
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
TryBot-Result: CUEcueckoo <cueckoo@cuelang.org>
Unity-Result: CUE porcuepine <cue.porcuepine@gmail.com>

+18 -17
+1 -1
cmd/cue/cmd/integration/workspace/imports_test.go
··· 4 4 "io/fs" 5 5 "testing" 6 6 7 - "cuelang.org/go/internal/golangorgx/gopls/cache" 8 7 "cuelang.org/go/internal/golangorgx/gopls/protocol" 9 8 . "cuelang.org/go/internal/golangorgx/gopls/test/integration" 9 + "cuelang.org/go/internal/lsp/cache" 10 10 "cuelang.org/go/mod/modcache" 11 11 "cuelang.org/go/mod/modconfig" 12 12 "cuelang.org/go/mod/modregistrytest"
internal/golangorgx/gopls/cache/cache.go internal/lsp/cache/cache.go
internal/golangorgx/gopls/cache/folder.go internal/lsp/cache/folder.go
internal/golangorgx/gopls/cache/module.go internal/lsp/cache/module.go
internal/golangorgx/gopls/cache/package.go internal/lsp/cache/package.go
internal/golangorgx/gopls/cache/path.go internal/lsp/cache/path.go
internal/golangorgx/gopls/cache/path_darwin.go internal/lsp/cache/path_darwin.go
internal/golangorgx/gopls/cache/path_windows.go internal/lsp/cache/path_windows.go
+3 -3
internal/golangorgx/gopls/cache/workspace.go internal/lsp/cache/workspace.go
··· 424 424 case file.Change: 425 425 fh, err = txn.Get(mod.URI) 426 426 427 - if errors.Is(fs.ErrNotExist, err) { 427 + if errors.Is(err, fs.ErrNotExist) { 428 428 return fmt.Errorf("updateOverlays: modifying unopened overlay %v", mod.URI) 429 429 } else if err != nil { 430 430 return err ··· 505 505 // buffer. 506 506 _, err := txn.Get(mod.URI) 507 507 508 - if mod.Action == file.Delete && errors.Is(fs.ErrInvalid, err) { 508 + if mod.Action == file.Delete && errors.Is(err, fs.ErrInvalid) { 509 509 // this is fine: this error means the delete is a delete 510 510 // of a directory, not a file. We should still add this to 511 511 // updatedFiles because (a) just because it was a ··· 515 515 // if it turns out this is/was a directory on disk. 516 516 updatedFiles[mod.URI] = nil 517 517 518 - } else if errors.Is(fs.ErrNotExist, err) { 518 + } else if errors.Is(err, fs.ErrNotExist) { 519 519 // If the uri exists in the overlays then we ignore the 520 520 // on-disk modification because the overlays always trumps 521 521 // disk. But here, the uri does not exist in the
+2 -2
internal/golangorgx/gopls/cmd/cmd.go
··· 21 21 "text/tabwriter" 22 22 "time" 23 23 24 - "cuelang.org/go/internal/golangorgx/gopls/cache" 25 24 "cuelang.org/go/internal/golangorgx/gopls/lsprpc" 26 25 "cuelang.org/go/internal/golangorgx/gopls/protocol" 27 26 "cuelang.org/go/internal/golangorgx/gopls/protocol/command" 28 - "cuelang.org/go/internal/golangorgx/gopls/server" 29 27 "cuelang.org/go/internal/golangorgx/gopls/settings" 30 28 "cuelang.org/go/internal/golangorgx/gopls/util/browser" 31 29 "cuelang.org/go/internal/golangorgx/gopls/util/constraints" 32 30 "cuelang.org/go/internal/golangorgx/tools/diff" 33 31 "cuelang.org/go/internal/golangorgx/tools/jsonrpc2" 34 32 "cuelang.org/go/internal/golangorgx/tools/tool" 33 + "cuelang.org/go/internal/lsp/cache" 34 + "cuelang.org/go/internal/lsp/server" 35 35 ) 36 36 37 37 // Application is the main application as passed to tool.Main
+1 -1
internal/golangorgx/gopls/cmd/serve.go
··· 14 14 "os" 15 15 "time" 16 16 17 - "cuelang.org/go/internal/golangorgx/gopls/cache" 18 17 "cuelang.org/go/internal/golangorgx/gopls/lsprpc" 19 18 "cuelang.org/go/internal/golangorgx/tools/fakenet" 20 19 "cuelang.org/go/internal/golangorgx/tools/jsonrpc2" 21 20 "cuelang.org/go/internal/golangorgx/tools/tool" 21 + "cuelang.org/go/internal/lsp/cache" 22 22 ) 23 23 24 24 // Serve is a struct that exposes the configurable parts of the LSP server as
+2 -2
internal/golangorgx/gopls/lsprpc/lsprpc.go
··· 19 19 "sync/atomic" 20 20 "time" 21 21 22 - "cuelang.org/go/internal/golangorgx/gopls/cache" 23 22 "cuelang.org/go/internal/golangorgx/gopls/protocol" 24 23 "cuelang.org/go/internal/golangorgx/gopls/protocol/command" 25 - "cuelang.org/go/internal/golangorgx/gopls/server" 26 24 "cuelang.org/go/internal/golangorgx/gopls/settings" 27 25 "cuelang.org/go/internal/golangorgx/tools/event" 28 26 "cuelang.org/go/internal/golangorgx/tools/event/tag" 29 27 "cuelang.org/go/internal/golangorgx/tools/jsonrpc2" 28 + "cuelang.org/go/internal/lsp/cache" 29 + "cuelang.org/go/internal/lsp/server" 30 30 ) 31 31 32 32 // Unique identifiers for client/server.
+2 -1
internal/golangorgx/gopls/server/format.go internal/lsp/server/format.go
··· 23 23 // 24 24 // Formatting implements [protocol.Server] 25 25 func (s *server) Formatting(ctx context.Context, params *protocol.DocumentFormattingParams) ([]protocol.TextEdit, error) { 26 - ctx, done := event.Start(ctx, "lsp.Server.formatting", tag.URI.Of(params.TextDocument.URI)) 26 + _, done := event.Start(ctx, "lsp.Server.formatting", tag.URI.Of(params.TextDocument.URI)) 27 27 defer done() 28 28 29 29 uri := params.TextDocument.URI ··· 31 31 if err != nil { 32 32 return nil, err 33 33 } else if mod == nil { 34 + //lint:ignore ST1005 Errors that go back to the editor can enjoy grammar. 34 35 return nil, fmt.Errorf("No module found for %v", uri) 35 36 } 36 37
+1 -1
internal/golangorgx/gopls/server/initialize.go internal/lsp/server/initialize.go
··· 21 21 "path" 22 22 23 23 "cuelang.org/go/internal/cueversion" 24 - "cuelang.org/go/internal/golangorgx/gopls/cache" 25 24 "cuelang.org/go/internal/golangorgx/gopls/progress" 26 25 "cuelang.org/go/internal/golangorgx/gopls/protocol" 27 26 "cuelang.org/go/internal/golangorgx/gopls/settings" 28 27 "cuelang.org/go/internal/golangorgx/tools/event" 29 28 "cuelang.org/go/internal/golangorgx/tools/jsonrpc2" 29 + "cuelang.org/go/internal/lsp/cache" 30 30 ) 31 31 32 32 func validateWorkspaceFolders(folders []protocol.WorkspaceFolder) (map[protocol.WorkspaceFolder]protocol.DocumentURI, error) {
internal/golangorgx/gopls/server/options.go internal/lsp/server/options.go
+2 -2
internal/golangorgx/gopls/server/server.go internal/lsp/server/server.go
··· 13 13 "strconv" 14 14 "sync/atomic" 15 15 16 - "cuelang.org/go/internal/golangorgx/gopls/cache" 17 16 "cuelang.org/go/internal/golangorgx/gopls/progress" 18 17 "cuelang.org/go/internal/golangorgx/gopls/protocol" 19 18 "cuelang.org/go/internal/golangorgx/gopls/settings" 20 19 "cuelang.org/go/internal/golangorgx/tools/event" 20 + "cuelang.org/go/internal/lsp/cache" 21 21 ) 22 22 23 23 var serverIDCounter int64 ··· 139 139 // 140 140 // This is asynchronous - it does not get a response. 141 141 func (s *server) Exit(ctx context.Context) error { 142 - ctx, done := event.Start(ctx, "lsp.Server.exit") 142 + _, done := event.Start(ctx, "lsp.Server.exit") 143 143 defer done() 144 144 145 145 s.client.Close()
internal/golangorgx/gopls/server/text_synchronization.go internal/lsp/server/text_synchronization.go
internal/golangorgx/gopls/server/unimplemented.go internal/lsp/server/unimplemented.go
internal/golangorgx/gopls/server/watching.go internal/lsp/server/watching.go
internal/golangorgx/gopls/server/workspace.go internal/lsp/server/workspace.go
+1 -1
internal/golangorgx/gopls/test/integration/expectation.go
··· 11 11 "strings" 12 12 13 13 "cuelang.org/go/internal/golangorgx/gopls/protocol" 14 - "cuelang.org/go/internal/golangorgx/gopls/server" 14 + "cuelang.org/go/internal/lsp/server" 15 15 "github.com/google/go-cmp/cmp" 16 16 ) 17 17
+1 -1
internal/golangorgx/gopls/test/integration/options.go
··· 5 5 package integration 6 6 7 7 import ( 8 - "cuelang.org/go/internal/golangorgx/gopls/cache" 9 8 "cuelang.org/go/internal/golangorgx/gopls/protocol" 10 9 "cuelang.org/go/internal/golangorgx/gopls/test/integration/fake" 10 + "cuelang.org/go/internal/lsp/cache" 11 11 ) 12 12 13 13 type runConfig struct {
+1 -1
internal/golangorgx/gopls/test/integration/regtest.go
··· 13 13 "testing" 14 14 "time" 15 15 16 - "cuelang.org/go/internal/golangorgx/gopls/cache" 17 16 "cuelang.org/go/internal/golangorgx/gopls/cmd" 18 17 "cuelang.org/go/internal/golangorgx/gopls/settings" 19 18 "cuelang.org/go/internal/golangorgx/tools/gocommand" 20 19 "cuelang.org/go/internal/golangorgx/tools/memoize" 21 20 "cuelang.org/go/internal/golangorgx/tools/testenv" 22 21 "cuelang.org/go/internal/golangorgx/tools/tool" 22 + "cuelang.org/go/internal/lsp/cache" 23 23 ) 24 24 25 25 var (
+1 -1
internal/golangorgx/gopls/test/integration/runner.go
··· 20 20 "testing" 21 21 "time" 22 22 23 - "cuelang.org/go/internal/golangorgx/gopls/cache" 24 23 "cuelang.org/go/internal/golangorgx/gopls/lsprpc" 25 24 "cuelang.org/go/internal/golangorgx/gopls/protocol" 26 25 "cuelang.org/go/internal/golangorgx/gopls/settings" ··· 30 29 "cuelang.org/go/internal/golangorgx/tools/memoize" 31 30 "cuelang.org/go/internal/golangorgx/tools/testenv" 32 31 "cuelang.org/go/internal/golangorgx/tools/xcontext" 32 + "cuelang.org/go/internal/lsp/cache" 33 33 "github.com/go-quicktest/qt" 34 34 ) 35 35