internal/lsp: remove extra `go env GOMOD` logic for single file mode
Now that the view always looks for its module, we don't need to pass
in the module root path when creating a view. This allows us to remove
some extra logic.
Change-Id: I35ffb71ec762b2dec0b72c84195ce008f7b35872
Reviewed-on: https://go-review.googlesource.com/c/tools/+/247897
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
diff --git a/internal/lsp/text_synchronization.go b/internal/lsp/text_synchronization.go
index 0b207e2..c709a3a 100644
--- a/internal/lsp/text_synchronization.go
+++ b/internal/lsp/text_synchronization.go
@@ -11,7 +11,6 @@
"path/filepath"
"sync"
- "golang.org/x/tools/internal/gocommand"
"golang.org/x/tools/internal/jsonrpc2"
"golang.org/x/tools/internal/lsp/protocol"
"golang.org/x/tools/internal/lsp/source"
@@ -82,22 +81,7 @@
// are no views in the session. I don't know if that logic should go
// here, or if we can continue to rely on that implementation detail.
if _, err := s.session.ViewOf(uri); err != nil {
- // Run `go env GOMOD` to detect a module root. If we are not in a module,
- // just use the current directory as the root.
dir := filepath.Dir(uri.Filename())
- stdout, err := (&gocommand.Runner{}).Run(ctx, gocommand.Invocation{
- Verb: "env",
- Args: []string{"GOMOD"},
- BuildFlags: s.session.Options().BuildFlags,
- Env: s.session.Options().Env,
- WorkingDir: dir,
- })
- if err != nil {
- return err
- }
- if stdout.String() != "" {
- dir = filepath.Dir(stdout.String())
- }
if err := s.addFolders(ctx, []protocol.WorkspaceFolder{{
URI: string(protocol.URIFromPath(dir)),
Name: filepath.Base(dir),