Skip to content

Instantly share code, notes, and snippets.

@sirn
Last active October 20, 2022 16:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sirn/3e37bd4a22d8d30751a139bfd405e4e3 to your computer and use it in GitHub Desktop.
Save sirn/3e37bd4a22d8d30751a139bfd405e4e3 to your computer and use it in GitHub Desktop.
Gopls and the Rabbit Hole

Gopls and the Rabbit Hole

gopls v0.9.5 hangs when visiting a buffer when running under eglot under Mac GUI for some reason. Downgrading gopls to v0.9.4 make it works under eglot again. Naturally, I would assume this was a regression with gopls. git bisect indicates that the first "bad" commit was https://github.com/golang/tools/commit/cd31eaad03d53a18fa4b5e25b94d0b65e7380349, which means it should fail since v0.8.2, but for some reason installing via go install golang.org/x/tools/gopls@vX.Y.Z worked up to v0.9.4, even with go 1.19, and even v0.9.5 works fine when running under LSP client (Sublime Text).

In an attempt to find out if this code path was indeed an issue, I cloned the latest commit and attempt to stub out gopls/internal/vulncheck. Fortunately, this particular code were already stubbed out for go version older than 1.18, so removing this code was easy:

diff --git a/gopls/internal/vulncheck/command.go b/gopls/internal/vulncheck/command.go
index 641c9ddeb..9d3ab5acb 100644
--- a/gopls/internal/vulncheck/command.go
+++ b/gopls/internal/vulncheck/command.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.

-//go:build go1.18
-// +build go1.18
+//go:build exclude
+// +build exclude

 package vulncheck

diff --git a/gopls/internal/vulncheck/command_test.go b/gopls/internal/vulncheck/command_test.go
index a9ab2c0a7..88dc6f9f2 100644
--- a/gopls/internal/vulncheck/command_test.go
+++ b/gopls/internal/vulncheck/command_test.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.

-//go:build go1.18
-// +build go1.18
+//go:build exclude
+// +build exclude

 package vulncheck

diff --git a/gopls/internal/vulncheck/util.go b/gopls/internal/vulncheck/util.go
index d21d30517..42eb2f46f 100644
--- a/gopls/internal/vulncheck/util.go
+++ b/gopls/internal/vulncheck/util.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.

-//go:build go1.18
-// +build go1.18
+//go:build exclude
+// +build exclude

 package vulncheck

Running go install and gopls works under eglot again. This particular code does indeed looks like the culprit. Further inspection suggests that just importing golang.org/x/vuln/vulncheck triggers the hang.

Even further inspection led down to this particular import chain:

  • golang.org/x/vuln/vulncheck
    • golang.org/x/exp/slices
      • golang.org/x/exp/constraints

With the rest of the vulncheck code still disabled, I added this import to vulncheck.go stub:

diff --git a/gopls/internal/vulncheck/vulncheck.go b/gopls/internal/vulncheck/vulncheck.go
index d452045a5..4d51b0e28 100644
--- a/gopls/internal/vulncheck/vulncheck.go
+++ b/gopls/internal/vulncheck/vulncheck.go
@@ -13,6 +13,8 @@ import (

        "golang.org/x/tools/go/packages"
        "golang.org/x/tools/gopls/internal/lsp/command"
+
+       _ "golang.org/x/exp/constraints"
 )

 // Govulncheck runs the in-process govulncheck implementation.

Running go install and gopls hangs under eglot again, which doesn't makes any sense. In an attempt to find out which part of golang.org/x/exp/constraints triggers the hang, it appears that a mere import of anything under golang.org/x/exp was enough to trigger it. Copying the entire body of constraints.go to vulncheck.go without importing golang.org/x/exp doesn't trigger the hang.

This is the part where I gave up. For now, my workaround is to stub out the entire vulncheck code, which seemed to solve the issue with eglot.

[internal] Fri Oct 7 22:07:30 2022:
(:message "Running language server: (gopls)")
[client-request] (id:1) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 1 :method "initialize" :params
(:processId 51875 :rootPath "/Users/sirn/Downloads/" :rootUri "file:///Users/sirn/Downloads" :initializationOptions #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())
:capabilities
(:workspace
(:applyEdit t :executeCommand
(:dynamicRegistration :json-false)
:workspaceEdit
(:documentChanges t)
:didChangeWatchedFiles
(:dynamicRegistration t)
:symbol
(:dynamicRegistration :json-false)
:configuration t :workspaceFolders t)
:textDocument
(:synchronization
(:dynamicRegistration :json-false :willSave t :willSaveWaitUntil t :didSave t)
:completion
(:dynamicRegistration :json-false :completionItem
(:snippetSupport :json-false :deprecatedSupport t :tagSupport
(:valueSet
[1]))
:contextSupport t)
:hover
(:dynamicRegistration :json-false :contentFormat
["plaintext"])
:signatureHelp
(:dynamicRegistration :json-false :signatureInformation
(:parameterInformation
(:labelOffsetSupport t)
:activeParameterSupport t))
:references
(:dynamicRegistration :json-false)
:definition
(:dynamicRegistration :json-false :linkSupport t)
:declaration
(:dynamicRegistration :json-false :linkSupport t)
:implementation
(:dynamicRegistration :json-false :linkSupport t)
:typeDefinition
(:dynamicRegistration :json-false :linkSupport t)
:documentSymbol
(:dynamicRegistration :json-false :hierarchicalDocumentSymbolSupport t :symbolKind
(:valueSet
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26]))
:documentHighlight
(:dynamicRegistration :json-false)
:codeAction
(:dynamicRegistration :json-false :codeActionLiteralSupport
(:codeActionKind
(:valueSet
["quickfix" "refactor" "refactor.extract" "refactor.inline" "refactor.rewrite" "source" "source.organizeImports"]))
:isPreferredSupport t)
:formatting
(:dynamicRegistration :json-false)
:rangeFormatting
(:dynamicRegistration :json-false)
:rename
(:dynamicRegistration :json-false)
:publishDiagnostics
(:relatedInformation :json-false :codeDescriptionSupport :json-false :tagSupport
(:valueSet
[1 2])))
:experimental #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
:workspaceFolders
[(:uri "file:///Users/sirn/Downloads" :name "~/Downloads/")]))
[server-reply] (id:1) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :result
(:capabilities
(:textDocumentSync
(:openClose t :change 2 :save nil)
:completionProvider
(:triggerCharacters
["."])
:hoverProvider t :signatureHelpProvider
(:triggerCharacters
["(" ","])
:definitionProvider t :typeDefinitionProvider t :implementationProvider t :referencesProvider t :documentHighlightProvider t :documentSymbolProvider t :codeActionProvider
(:codeActionKinds
["quickfix" "refactor.extract" "refactor.rewrite" "source.fixAll" "source.organizeImports"])
:codeLensProvider nil :documentLinkProvider nil :workspaceSymbolProvider t :documentFormattingProvider t :renameProvider t :foldingRangeProvider t :executeCommandProvider
(:commands
["gopls.add_dependency" "gopls.add_import" "gopls.apply_fix" "gopls.check_upgrades" "gopls.edit_go_directive" "gopls.gc_details" "gopls.generate" "gopls.generate_gopls_mod" "gopls.go_get_package" "gopls.list_imports" "gopls.list_known_packages" "gopls.regenerate_cgo" "gopls.remove_dependency" "gopls.reset_go_mod_diagnostics" "gopls.run_tests" "gopls.run_vulncheck_exp" "gopls.start_debugging" "gopls.test" "gopls.tidy" "gopls.toggle_gc_details" "gopls.update_go_sum" "gopls.upgrade_dependency" "gopls.vendor"])
:callHierarchyProvider t :inlayHintProvider nil :workspace
(:workspaceFolders
(:supported t :changeNotifications "workspace/didChangeWorkspaceFolders")
:fileOperations nil))
:serverInfo
(:name "gopls" :version "{\"GoVersion\":\"go1.19.2\",\"Path\":\"golang.org/x/tools/gopls\",\"Main\":{\"Path\":\"golang.org/x/tools/gopls\",\"Version\":\"(devel)\",\"Sum\":\"\",\"Replace\":null},\"Deps\":[{\"Path\":\"github.com/BurntSushi/toml\",\"Version\":\"v1.2.0\",\"Sum\":\"h1:Rt8g24XnyGTyglgET/PRUNlrUeu9F5L+7FilkXfZgs0=\",\"Replace\":null},{\"Path\":\"github.com/google/go-cmp\",\"Version\":\"v0.5.8\",\"Sum\":\"h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=\",\"Replace\":null},{\"Path\":\"github.com/sergi/go-diff\",\"Version\":\"v1.1.0\",\"Sum\":\"h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=\",\"Replace\":null},{\"Path\":\"golang.org/x/exp/typeparams\",\"Version\":\"v0.0.0-20220722155223-a9213eeb770e\",\"Sum\":\"h1:7Xs2YCOpMlNqSQSmrrnhlzBXIE/bpMecZplbLePTJvE=\",\"Replace\":null},{\"Path\":\"golang.org/x/mod\",\"Version\":\"v0.6.0-dev.0.20220419223038-86c51ed26bb4\",\"Sum\":\"h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=\",\"Replace\":null},{\"Path\":\"golang.org/x/sync\",\"Version\":\"v0.0.0-20220722155255-886fb9371eb4\",\"Sum\":\"h1:uVc8UZUe6tr40fFVnUP5Oj+veunVezqYl9z7DYw9xzw=\",\"Replace\":null},{\"Path\":\"golang.org/x/sys\",\"Version\":\"v0.0.0-20220808155132-1c4a2a72c664\",\"Sum\":\"h1:v1W7bwXHsnLLloWYTVEdvGvA7BHMeBYsPcF0GLDxIRs=\",\"Replace\":null},{\"Path\":\"golang.org/x/text\",\"Version\":\"v0.3.7\",\"Sum\":\"h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=\",\"Replace\":null},{\"Path\":\"golang.org/x/tools\",\"Version\":\"v0.1.13-0.20220928184430-f80e98464e27\",\"Sum\":\"\",\"Replace\":{\"Path\":\"../\",\"Version\":\"(devel)\",\"Sum\":\"\",\"Replace\":null}},{\"Path\":\"honnef.co/go/tools\",\"Version\":\"v0.3.3\",\"Sum\":\"h1:oDx7VAwstgpYpb3wv0oxiZlxY+foCpRAwY7Vk6XpAgA=\",\"Replace\":null},{\"Path\":\"mvdan.cc/gofumpt\",\"Version\":\"v0.3.1\",\"Sum\":\"h1:avhhrOmv0IuvQVK7fvwV91oFSGAk5/6Po8GXTzICeu8=\",\"Replace\":null},{\"Path\":\"mvdan.cc/xurls/v2\",\"Version\":\"v2.4.0\",\"Sum\":\"h1:tzxjVAj+wSBmDcF6zBB7/myTy3gX9xvi8Tyr28AuQgc=\",\"Replace\":null}],\"Settings\":[{\"Key\":\"-compiler\",\"Value\":\"gc\"},{\"Key\":\"CGO_ENABLED\",\"Value\":\"1\"},{\"Key\":\"CGO_CFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_CPPFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_CXXFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_LDFLAGS\",\"Value\":\"\"},{\"Key\":\"GOARCH\",\"Value\":\"arm64\"},{\"Key\":\"GOOS\",\"Value\":\"darwin\"},{\"Key\":\"vcs\",\"Value\":\"git\"},{\"Key\":\"vcs.revision\",\"Value\":\"778f9457c06f914027799e97a008de83beaa2943\"},{\"Key\":\"vcs.time\",\"Value\":\"2022-10-06T21:06:44Z\"},{\"Key\":\"vcs.modified\",\"Value\":\"true\"}],\"Version\":\"master\"}"))
:id 1)
[client-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "initialized" :params #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
[client-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "textDocument/didOpen" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go" :version 0 :languageId "go" :text "package main\n")))
[client-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "workspace/didChangeConfiguration" :params
(:settings #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())))
[client-request] (id:2) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 2 :method "textDocument/documentSymbol" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")))
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/showMessage" :params
(:type 4 :message "Loading packages..."))
[server-request] (id:1) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "workspace/configuration" :params
(:items
[(:scopeUri "file:///Users/sirn/Downloads" :section "gopls")])
:id 1)
[client-reply] (id:1) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 1 :result
[nil])
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/logMessage" :params
(:type 3 :message "2022/10/07 22:07:30 go env for /Users/sirn/Downloads\n(root /Users/sirn/Downloads)\n(go version go version go1.19.2 darwin/arm64)\n(valid build configuration = false)\n(build flags: [])\nGOCACHE=/Users/sirn/Library/Caches/go-build\nGO111MODULE=\nGOPRIVATE=\nGOFLAGS=\nGOROOT=/opt/local/lib/go\nGOMODCACHE=/Users/sirn/Dev/go/gopath/pkg/mod\nGONOPROXY=\nGOWORK=\nGOINSECURE=\nGOMOD=/dev/null\nGOSUMDB=sum.golang.org\nGOPATH=/Users/sirn/Dev/go/gopath:/Users/sirn/Dev\nGONOSUMDB=\nGOPROXY=https://proxy.golang.org,direct\n\n"))
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/logMessage" :params
(:type 3 :message "2022/10/07 22:07:30 go/packages.Load #1\n snapshot=0\n directory=/Users/sirn/Downloads\n query=[./ builtin]\n packages=2\n"))
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/logMessage" :params
(:type 3 :message "2022/10/07 22:07:30 go/packages.Load #1: updating metadata for 1 packages\n"))
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/showMessage" :params
(:type 3 :message "Finished loading packages."))
[server-request] (id:2) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "client/registerCapability" :params
(:registrations
[(:id "workspace/didChangeWatchedFiles-0" :method "workspace/didChangeWatchedFiles" :registerOptions
(:watchers
[(:globPattern "**/*.{go,mod,sum,work}" :kind 7)]))])
:id 2)
[client-reply] (id:2) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 2 :result nil)
[server-request] (id:3) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "workspace/configuration" :params
(:items
[(:section "gopls")])
:id 3)
[client-reply] (id:3) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 3 :result
[nil])
[server-request] (id:4) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "workspace/configuration" :params
(:items
[(:scopeUri "file:///Users/sirn/Downloads" :section "gopls")])
:id 4)
[client-reply] (id:4) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 4 :result
[nil])
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "textDocument/publishDiagnostics" :params
(:uri "file:///Users/sirn/Downloads/main.go" :diagnostics
[]))
[server-reply] (id:2) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :result
[]
:id 2)
[client-request] (id:3) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 3 :method "textDocument/signatureHelp" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[client-request] (id:4) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 4 :method "textDocument/hover" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[client-request] (id:5) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :id 5 :method "textDocument/documentHighlight" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[server-reply] (id:3) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :result nil :id 3)
[server-notification] Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :method "window/logMessage" :params
(:type 1 :message "2022/10/07 22:07:30 no signature help: cannot find an enclosing function\n position=0:0\n"))
[server-reply] (id:4) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :result nil :id 4)
[server-reply] (id:5) Fri Oct 7 22:07:30 2022:
(:jsonrpc "2.0" :result
[]
:id 5)
[internal] Fri Oct 7 22:06:21 2022:
(:message "Running language server: (gopls)")
[client-request] (id:1) Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :id 1 :method "initialize" :params
(:processId 51799 :rootPath "/Users/sirn/Downloads/" :rootUri "file:///Users/sirn/Downloads" :initializationOptions #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())
:capabilities
(:workspace
(:applyEdit t :executeCommand
(:dynamicRegistration :json-false)
:workspaceEdit
(:documentChanges t)
:didChangeWatchedFiles
(:dynamicRegistration t)
:symbol
(:dynamicRegistration :json-false)
:configuration t :workspaceFolders t)
:textDocument
(:synchronization
(:dynamicRegistration :json-false :willSave t :willSaveWaitUntil t :didSave t)
:completion
(:dynamicRegistration :json-false :completionItem
(:snippetSupport :json-false :deprecatedSupport t :tagSupport
(:valueSet
[1]))
:contextSupport t)
:hover
(:dynamicRegistration :json-false :contentFormat
["plaintext"])
:signatureHelp
(:dynamicRegistration :json-false :signatureInformation
(:parameterInformation
(:labelOffsetSupport t)
:activeParameterSupport t))
:references
(:dynamicRegistration :json-false)
:definition
(:dynamicRegistration :json-false :linkSupport t)
:declaration
(:dynamicRegistration :json-false :linkSupport t)
:implementation
(:dynamicRegistration :json-false :linkSupport t)
:typeDefinition
(:dynamicRegistration :json-false :linkSupport t)
:documentSymbol
(:dynamicRegistration :json-false :hierarchicalDocumentSymbolSupport t :symbolKind
(:valueSet
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26]))
:documentHighlight
(:dynamicRegistration :json-false)
:codeAction
(:dynamicRegistration :json-false :codeActionLiteralSupport
(:codeActionKind
(:valueSet
["quickfix" "refactor" "refactor.extract" "refactor.inline" "refactor.rewrite" "source" "source.organizeImports"]))
:isPreferredSupport t)
:formatting
(:dynamicRegistration :json-false)
:rangeFormatting
(:dynamicRegistration :json-false)
:rename
(:dynamicRegistration :json-false)
:publishDiagnostics
(:relatedInformation :json-false :codeDescriptionSupport :json-false :tagSupport
(:valueSet
[1 2])))
:experimental #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
:workspaceFolders
[(:uri "file:///Users/sirn/Downloads" :name "~/Downloads/")]))
[server-reply] (id:1) Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :result
(:capabilities
(:textDocumentSync
(:openClose t :change 2 :save nil)
:completionProvider
(:triggerCharacters
["."]
:completionItem nil)
:hoverProvider t :signatureHelpProvider
(:triggerCharacters
["(" ","])
:definitionProvider t :typeDefinitionProvider t :implementationProvider t :referencesProvider t :documentHighlightProvider t :documentSymbolProvider t :codeActionProvider
(:codeActionKinds
["quickfix" "refactor.extract" "refactor.rewrite" "source.fixAll" "source.organizeImports"])
:codeLensProvider nil :documentLinkProvider nil :workspaceSymbolProvider t :documentFormattingProvider t :documentOnTypeFormattingProvider
(:firstTriggerCharacter "")
:renameProvider t :foldingRangeProvider t :executeCommandProvider
(:commands
["gopls.add_dependency" "gopls.add_import" "gopls.apply_fix" "gopls.check_upgrades" "gopls.edit_go_directive" "gopls.gc_details" "gopls.generate" "gopls.generate_gopls_mod" "gopls.go_get_package" "gopls.list_imports" "gopls.list_known_packages" "gopls.regenerate_cgo" "gopls.remove_dependency" "gopls.run_tests" "gopls.run_vulncheck_exp" "gopls.start_debugging" "gopls.test" "gopls.tidy" "gopls.toggle_gc_details" "gopls.update_go_sum" "gopls.upgrade_dependency" "gopls.vendor"])
:callHierarchyProvider t :workspace
(:workspaceFolders
(:supported t :changeNotifications "workspace/didChangeWorkspaceFolders"))
:inlayHintProvider nil)
:serverInfo
(:name "gopls" :version "{\"GoVersion\":\"go1.19.2\",\"Path\":\"golang.org/x/tools/gopls\",\"Main\":{\"Path\":\"golang.org/x/tools/gopls\",\"Version\":\"v0.9.5\",\"Sum\":\"h1:F3TO5th6TUg40FHrpxZfMkMlVaaTmByeEvylgVHGH2A=\",\"Replace\":null},\"Deps\":[{\"Path\":\"github.com/BurntSushi/toml\",\"Version\":\"v1.2.0\",\"Sum\":\"h1:Rt8g24XnyGTyglgET/PRUNlrUeu9F5L+7FilkXfZgs0=\",\"Replace\":null},{\"Path\":\"github.com/google/go-cmp\",\"Version\":\"v0.5.8\",\"Sum\":\"h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=\",\"Replace\":null},{\"Path\":\"github.com/sergi/go-diff\",\"Version\":\"v1.1.0\",\"Sum\":\"h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=\",\"Replace\":null},{\"Path\":\"golang.org/x/exp\",\"Version\":\"v0.0.0-20220722155223-a9213eeb770e\",\"Sum\":\"h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA=\",\"Replace\":null},{\"Path\":\"golang.org/x/exp/typeparams\",\"Version\":\"v0.0.0-20220722155223-a9213eeb770e\",\"Sum\":\"h1:7Xs2YCOpMlNqSQSmrrnhlzBXIE/bpMecZplbLePTJvE=\",\"Replace\":null},{\"Path\":\"golang.org/x/mod\",\"Version\":\"v0.6.0-dev.0.20220419223038-86c51ed26bb4\",\"Sum\":\"h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=\",\"Replace\":null},{\"Path\":\"golang.org/x/sync\",\"Version\":\"v0.0.0-20220722155255-886fb9371eb4\",\"Sum\":\"h1:uVc8UZUe6tr40fFVnUP5Oj+veunVezqYl9z7DYw9xzw=\",\"Replace\":null},{\"Path\":\"golang.org/x/sys\",\"Version\":\"v0.0.0-20220722155257-8c9f86f7a55f\",\"Sum\":\"h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s=\",\"Replace\":null},{\"Path\":\"golang.org/x/text\",\"Version\":\"v0.3.7\",\"Sum\":\"h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=\",\"Replace\":null},{\"Path\":\"golang.org/x/tools\",\"Version\":\"v0.1.13-0.20220908144252-ce397412b6a4\",\"Sum\":\"h1:glzimF7qHZuKVEiMbE7UqBu44MyTjt5u6j3Jz+rfMRM=\",\"Replace\":null},{\"Path\":\"golang.org/x/vuln\",\"Version\":\"v0.0.0-20220901221904-62b0186a1058\",\"Sum\":\"h1:YnB27EXBD8XxB0JcaOeluuvhF2kS4DrH0k+lpopG2xc=\",\"Replace\":null},{\"Path\":\"honnef.co/go/tools\",\"Version\":\"v0.3.2\",\"Sum\":\"h1:ytYb4rOqyp1TSa2EPvNVwtPQJctSELKaMyLfqNP4+34=\",\"Replace\":null},{\"Path\":\"mvdan.cc/gofumpt\",\"Version\":\"v0.3.1\",\"Sum\":\"h1:avhhrOmv0IuvQVK7fvwV91oFSGAk5/6Po8GXTzICeu8=\",\"Replace\":null},{\"Path\":\"mvdan.cc/xurls/v2\",\"Version\":\"v2.4.0\",\"Sum\":\"h1:tzxjVAj+wSBmDcF6zBB7/myTy3gX9xvi8Tyr28AuQgc=\",\"Replace\":null}],\"Settings\":[{\"Key\":\"-compiler\",\"Value\":\"gc\"},{\"Key\":\"CGO_ENABLED\",\"Value\":\"1\"},{\"Key\":\"CGO_CFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_CPPFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_CXXFLAGS\",\"Value\":\"\"},{\"Key\":\"CGO_LDFLAGS\",\"Value\":\"\"},{\"Key\":\"GOARCH\",\"Value\":\"arm64\"},{\"Key\":\"GOOS\",\"Value\":\"darwin\"}],\"Version\":\"v0.9.5\"}"))
:id 1)
[client-notification] Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :method "initialized" :params #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
[client-notification] Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :method "textDocument/didOpen" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go" :version 0 :languageId "go" :text "package main\n")))
[client-notification] Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :method "workspace/didChangeConfiguration" :params
(:settings #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())))
[client-request] (id:2) Fri Oct 7 22:06:21 2022:
(:jsonrpc "2.0" :id 2 :method "textDocument/documentSymbol" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")))
[client-request] (id:3) Fri Oct 7 22:06:32 2022:
(:jsonrpc "2.0" :id 3 :method "textDocument/signatureHelp" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[client-request] (id:4) Fri Oct 7 22:06:32 2022:
(:jsonrpc "2.0" :id 4 :method "textDocument/hover" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[client-request] (id:5) Fri Oct 7 22:06:32 2022:
(:jsonrpc "2.0" :id 5 :method "textDocument/documentHighlight" :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[internal] (id:3) Fri Oct 7 22:06:42 2022:
(:timed-out :textDocument/signatureHelp :id 3 :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[internal] (id:4) Fri Oct 7 22:06:42 2022:
(:timed-out :textDocument/hover :id 4 :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
[internal] (id:5) Fri Oct 7 22:06:42 2022:
(:timed-out :textDocument/documentHighlight :id 5 :params
(:textDocument
(:uri "file:///Users/sirn/Downloads/main.go")
:position
(:line 0 :character 0)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment