NVIM v0.5.0-dev+1182-gb79596eb5
Build type: RelWithDebInfo
LuaJIT 2.0.5
Compilation: /bin/cc -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/home/snyssfx/.cache/yay/neovim-git/src/build/config -I/home/snyssfx/.cache/yay/neovim-git/src/neovim-git/src -I/usr/include -I/home/snyssfx/.cache/yay/neovim-git/src/build/src/nvim/auto -I/home/snyssfx/.cache/yay/neovim-git/src/build/include
Compiled by snyssfx
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/share/nvim"
Run :checkhealth for more info
- nvim-lsp version(commit hash):
97bdebe
- What language server (If the problem is related to a specific language server):
gopls
- Can you reproduce this behavior on other language server clients (vscode, languageclient-neovim, coc.nvim, etc.):
vscode nope, coc.nvim yes
- Can you reproduce this behavior on other language servers offered in the nvim-lspconfig repo? (pyls -> pyright):
nope, since gopls is the only server for Go
- Is the problem isolated to a particular language server:
yes
- Operating system/version:
OS: Arch Linux x86_64
Kernel: 5.11.9-arch1-1
How to reproduce the problem from neovim startup
Jump to definition of the symbol in a submodule, which replaces its parent module in go.mod.
Actual behaviour
You cannot go to the definition of the symbols of the parent module, since neovim lsp sees go.mod in a directory, starts new server and then tries to replace parent module. But in $GOPATH/pkg/mod
there is other modules hierarchy there, so gopls cannot find parent module and failes to go to definition with message:
message = "err: exit status 1: stderr: go: github.com/Snyssfx/[email protected] (replaced by ./..): reading ../go.mod: open /home/snyssfx/go/pkg/mod/github.com/!snyssfx/neovim-lspconfig-gopls-bug/go.mod: no such file or directory : packages.Load error",
title = "Error loading workspace"
Expected behaviour
You can go to definition of the symbols of the parent module from there.
Minimal init.vim or init.lua and code sample
I use minimal_init.lua with gopls server,
and created project with submodule for example here: https://github.com/Snyssfx/neovim-lspconfig-gopls-bug
how to reproduce:
- create empty directrory
- create 2 files there: go.mod:
module github.com/Snyssfx/neovim-lspconfig-main
go 1.16
require github.com/Snyssfx/neovim-lspconfig-gopls-bug/another v0.0.0-20210328075753-65b65cceefa8 // indirect
and main.go:
package main
import (
"github.com/Snyssfx/neovim-lspconfig-gopls-bug/another"
)
func main() {
another.AnotherPrint()
}
then try to go to definition of AnotherPrint
function and there try to go to definition of the main_package.Print()
.
Health check
Checkhealth result
health#lspconfig#check
========================================================================
## Checking language server protocol configuration
- INFO: gopls: configuration checked.
LSP log
Log file
[ START ] 2021-03-28T12:17:59+0300 ] LSP logging initiated
[ INFO ] 2021-03-28T12:17:59+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:311 ] "Starting RPC client" { args = {}, cmd = "gopls", extra = {}}
[ DEBUG ] 2021-03-28T12:17:59+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:659 ] "LSP[gopls]" "initialize_params" { capabilities = { callHierarchy = { dynamicRegistration = false, = { __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, = }, = }, dynamicRegistration = false, = }, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, = }, completionItemKind = { 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 }, = }, contextSupport = false, dynamicRegistration = false, = }, declaration = { linkSupport = true, = }, definition = { linkSupport = true, = }, documentHighlight = { dynamicRegistration = false, = }, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, 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 }, = }, = }, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, = }, implementation = { linkSupport = true, = }, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, = }, = }, references = { dynamicRegistration = false, = }, rename = { dynamicRegistration = false, prepareSupport = true, = }, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, = }, = }, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, = }, typeDefinition = { linkSupport = true, = }, = }, window = { showDocument = { support = false, = }, showMessage = { messageActionItem = { additionalPropertiesSupport = false, = }, = }, workDoneProgress = true, = }, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, 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 }, = }, = }, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, = }, workspaceFolders = true, = } }, clientInfo = { name = "Neovim", version = "0.5.0" }, initializationOptions = vim.empty_dict(), processId = 41448, rootPath = "/home/snyssfx/private/neovim-lspconfig-main", rootUri = "file:///home/snyssfx/private/neovim-lspconfig-main", trace = "off", workspaceFolders = { { name = "/home/snyssfx/private/neovim-lspconfig-main", uri = "file:///home/snyssfx/private/neovim-lspconfig-main" } }}
[ DEBUG ] 2021-03-28T12:17:59+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { id = 1, jsonrpc = "2.0", method = "initialize", params = { capabilities = { callHierarchy = { dynamicRegistration = false, = { __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, = }, = }, dynamicRegistration = false, = }, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, = }, completionItemKind = { 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 }, = }, contextSupport = false, dynamicRegistration = false, = }, declaration = { linkSupport = true, = }, definition = { linkSupport = true, = }, documentHighlight = { dynamicRegistration = false, = }, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, 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 }, = }, = }, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, = }, implementation = { linkSupport = true, = }, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, = }, = }, references = { dynamicRegistration = false, = }, rename = { dynamicRegistration = false, prepareSupport = true, = }, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, = }, = }, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, = }, typeDefinition = { linkSupport = true, = }, = }, window = { showDocument = { support = false, = }, showMessage = { messageActionItem = { additionalPropertiesSupport = false, = }, = }, workDoneProgress = true, = }, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, 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 }, = }, = }, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, = }, workspaceFolders = true, = } }, clientInfo = { name = "Neovim", version = "0.5.0" }, initializationOptions = vim.empty_dict(), processId = 41448, rootPath = "/home/snyssfx/private/neovim-lspconfig-main", rootUri = "file:///home/snyssfx/private/neovim-lspconfig-main", trace = "off", workspaceFolders = { { name = "/home/snyssfx/private/neovim-lspconfig-main", uri = "file:///home/snyssfx/private/neovim-lspconfig-main" } } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { id = 1, jsonrpc = "2.0", result = { capabilities = { callHierarchyProvider = true, codeActionProvider = { codeActionKinds = { "quickfix", "refactor.extract", "refactor.rewrite", "source.fixAll", "source.organizeImports" } }, codeLensProvider = vim.empty_dict(), completionProvider = { triggerCharacters = { "." } }, definitionProvider = true, documentFormattingProvider = true, documentHighlightProvider = true, documentLinkProvider = vim.empty_dict(), documentOnTypeFormattingProvider = { firstTriggerCharacter = "" }, documentSymbolProvider = true, executeCommandProvider = { commands = { "gopls.generate", "gopls.fill_struct", "gopls.regenerate_cgo", "gopls.test", "gopls.tidy", "gopls.update_go_sum", "gopls.undeclared_name", "gopls.go_get_package", "gopls.add_dependency", "gopls.upgrade_dependency", "gopls.remove_dependency", "gopls.vendor", "gopls.extract_variable", "gopls.extract_function", "gopls.gc_details", "gopls.generate_gopls_mod" } }, foldingRangeProvider = true, hoverProvider = true, implementationProvider = true, referencesProvider = true, renameProvider = { prepareProvider = true }, signatureHelpProvider = { triggerCharacters = { "(", "," } }, textDocumentSync = { change = 2, openClose = true, save = vim.empty_dict() }, typeDefinitionProvider = true, workspace = { workspaceFolders = { changeNotifications = "workspace/didChangeWorkspaceFolders", supported = true } }, workspaceSymbolProvider = true }, serverInfo = { name = "gopls", version = '{"path":"golang.org/x/tools/gopls","version":"(devel)","deps":[{"path":"github.com/BurntSushi/toml","version":"v0.3.1","sum":"h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ="},{"path":"github.com/google/go-cmp","version":"v0.5.4","sum":"h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M="},{"path":"github.com/sergi/go-diff","version":"v1.1.0","sum":"h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0="},{"path":"golang.org/x/mod","version":"v0.4.0","sum":"h1:8pl+sMODzuvGJkmj2W4kZihvVb5mKm8pB/X44PIQHv8="},{"path":"golang.org/x/sync","version":"v0.0.0-20201020160332-67f06af15bc9","sum":"h1:SQFwaSi55rU7vdNs9Yr0Z324VNlrF+0wMqRXT4St8ck="},{"path":"golang.org/x/sys","version":"v0.0.0-20210119212857-b64e53b001e4","sum":"h1:myAQVi0cGEoqQVR5POX+8RR2mrocKqNN1hmeMqhX27k="},{"path":"golang.org/x/tools","version":"v0.1.1-0.20210119222907-0a1a9685734a","sum":"h1:ttr/sghFptib3jlHwNS65KwGoqjr03TFzso3kpHyia8="},{"path":"golang.org/x/xerrors","version":"v0.0.0-20200804184101-5ec99f83aff1","sum":"h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE="},{"path":"honnef.co/go/tools","version":"v0.0.1-2020.1.6","sum":"h1:W18jzjh8mfPez+AwGLxmOImucz/IFjpNlrKVnaj2YVc="},{"path":"mvdan.cc/gofumpt","version":"v0.1.0","sum":"h1:hsVv+Y9UsZ/mFZTxJZuHVI6shSQCtzZ11h1JEFPAZLw="},{"path":"mvdan.cc/xurls/v2","version":"v2.2.0","sum":"h1:NSZPykBXJFCetGZykLAxaL6SIpvbVy/UFEniIfHAa8A="}]}' } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { jsonrpc = "2.0", method = "initialized", params = { [true] = 6 }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:686 ] "LSP[gopls]" "server_capabilities" { callHierarchyProvider = true, codeActionProvider = { codeActionKinds = { "quickfix", "refactor.extract", "refactor.rewrite", "source.fixAll", "source.organizeImports" } }, codeLensProvider = {}, completionProvider = { triggerCharacters = { "." } }, definitionProvider = true, documentFormattingProvider = true, documentHighlightProvider = true, documentLinkProvider = {}, documentOnTypeFormattingProvider = { firstTriggerCharacter = "" }, documentSymbolProvider = true, executeCommandProvider = { commands = { "gopls.generate", "gopls.fill_struct", "gopls.regenerate_cgo", "gopls.test", "gopls.tidy", "gopls.update_go_sum", "gopls.undeclared_name", "gopls.go_get_package", "gopls.add_dependency", "gopls.upgrade_dependency", "gopls.remove_dependency", "gopls.vendor", "gopls.extract_variable", "gopls.extract_function", "gopls.gc_details", "gopls.generate_gopls_mod" } }, foldingRangeProvider = true, hoverProvider = true, implementationProvider = true, referencesProvider = true, renameProvider = { prepareProvider = true }, signatureHelpProvider = { triggerCharacters = { "(", "," } }, textDocumentSync = { change = 2, openClose = true, save = {} }, typeDefinitionProvider = true, workspace = { workspaceFolders = { changeNotifications = "workspace/didChangeWorkspaceFolders", supported = true } }, workspaceSymbolProvider = true}
[ INFO ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:687 ] "LSP[gopls]" "initialized" { resolved_capabilities = { call_hierarchy = true, code_action = { codeActionKinds = { "quickfix", "refactor.extract", "refactor.rewrite", "source.fixAll", "source.organizeImports" } }, code_lens = true, code_lens_resolve = false, completion = true, declaration = false, document_formatting = true, document_highlight = true, document_range_formatting = false, document_symbol = true, execute_command = true, find_references = true, goto_definition = true, hover = true, implementation = true, rename = true, signature_help = true, signature_help_trigger_characters = { "(", "," }, text_document_did_change = 2, text_document_open_close = true, text_document_save = {}, text_document_save_include_text = false, text_document_will_save = false, text_document_will_save_wait_until = false, type_definition = true, workspace_folder_properties = { changeNotifications = "workspace/didChangeWorkspaceFolders", supported = true }, workspace_symbol = true }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { jsonrpc = "2.0", method = "textDocument/didOpen", params = { textDocument = { languageId = "go", text = 'package main\n\nimport (\n\t"github.com/Snyssfx/neovim-lspconfig-gopls-bug/another"\n)\n\nfunc main() {\n\tanother.AnotherPrint()\n}\n', uri = "file:///home/snyssfx/private/neovim-lspconfig-main/main.go", version = 0 } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "textDocument/publishDiagnostics" { client_id = 1, params = { diagnostics = {}, uri = "file:///home/snyssfx/private/neovim-lspconfig-main/main.go" }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { id = 1, jsonrpc = "2.0", method = "window/workDoneProgress/create", params = { token = "5577006791947779410" }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:527 ] "server_request" "window/workDoneProgress/create" { token = "5577006791947779410"}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:530 ] "server_request: found handler for" "window/workDoneProgress/create"
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "window/workDoneProgress/create" { client_id = 1, params = { token = "5577006791947779410" }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:503 ] "server_request: callback result" { result = vim.NIL, status = true}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { id = 1, jsonrpc = "2.0", result = vim.NIL}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { jsonrpc = "2.0", method = "$/progress", params = { token = "5577006791947779410", value = { kind = "begin", message = "Loading packages...", title = "Setting up workspace" } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:513 ] "notification" "$/progress" { token = "5577006791947779410", value = { kind = "begin", message = "Loading packages...", title = "Setting up workspace" }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "$/progress" { client_id = 1, params = { token = "5577006791947779410", value = { kind = "begin", message = "Loading packages...", title = "Setting up workspace" } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { id = 2, jsonrpc = "2.0", method = "workspace/configuration", params = { items = { { scopeUri = "file:///home/snyssfx/private/neovim-lspconfig-main", section = "gopls" } } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:527 ] "server_request" "workspace/configuration" { items = { { scopeUri = "file:///home/snyssfx/private/neovim-lspconfig-main", section = "gopls" } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:530 ] "server_request: found handler for" "workspace/configuration"
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "workspace/configuration" { client_id = 1, params = { items = { { scopeUri = "file:///home/snyssfx/private/neovim-lspconfig-main", section = "gopls" } } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:503 ] "server_request: callback result" { result = { vim.NIL }, status = true}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { id = 2, jsonrpc = "2.0", result = { vim.NIL }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "2021/03/28 12:18:02 go env for /home/snyssfx/private/neovim-lspconfig-main\n(root /home/snyssfx/private/neovim-lspconfig-main)\n(go version go version go1.16.2 linux/amd64)\n(valid build configuration = true)\n(build flags: [])\nGONOSUMDB=\nGOPATH=/home/snyssfx/go\nGOPRIVATE=\nGOROOT=/usr/lib/go\nGONOPROXY=\nGOFLAGS=\nGOINSECURE=\nGOMODCACHE=/home/snyssfx/go/pkg/mod\nGOPROXY=https://proxy.golang.org,direct\nGOSUMDB=sum.golang.org\nGO111MODULE=\nGOMOD=/home/snyssfx/private/neovim-lspconfig-main/go.mod\nGOCACHE=/home/snyssfx/.cache/go-build\n\n", type = 3 }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:513 ] "notification" "window/logMessage" { message = "2021/03/28 12:18:02 go env for /home/snyssfx/private/neovim-lspconfig-main\n(root /home/snyssfx/private/neovim-lspconfig-main)\n(go version go version go1.16.2 linux/amd64)\n(valid build configuration = true)\n(build flags: [])\nGONOSUMDB=\nGOPATH=/home/snyssfx/go\nGOPRIVATE=\nGOROOT=/usr/lib/go\nGONOPROXY=\nGOFLAGS=\nGOINSECURE=\nGOMODCACHE=/home/snyssfx/go/pkg/mod\nGOPROXY=https://proxy.golang.org,direct\nGOSUMDB=sum.golang.org\nGO111MODULE=\nGOMOD=/home/snyssfx/private/neovim-lspconfig-main/go.mod\nGOCACHE=/home/snyssfx/.cache/go-build\n\n", type = 3}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "2021/03/28 12:18:02 go env for /home/snyssfx/private/neovim-lspconfig-main\n(root /home/snyssfx/private/neovim-lspconfig-main)\n(go version go version go1.16.2 linux/amd64)\n(valid build configuration = true)\n(build flags: [])\nGONOSUMDB=\nGOPATH=/home/snyssfx/go\nGOPRIVATE=\nGOROOT=/usr/lib/go\nGONOPROXY=\nGOFLAGS=\nGOINSECURE=\nGOMODCACHE=/home/snyssfx/go/pkg/mod\nGOPROXY=https://proxy.golang.org,direct\nGOSUMDB=sum.golang.org\nGO111MODULE=\nGOMOD=/home/snyssfx/private/neovim-lspconfig-main/go.mod\nGOCACHE=/home/snyssfx/.cache/go-build\n\n", type = 3 }}
[ INFO ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:381 ] "2021/03/28 12:18:02 go env for /home/snyssfx/private/neovim-lspconfig-main\n(root /home/snyssfx/private/neovim-lspconfig-main)\n(go version go version go1.16.2 linux/amd64)\n(valid build configuration = true)\n(build flags: [])\nGONOSUMDB=\nGOPATH=/home/snyssfx/go\nGOPRIVATE=\nGOROOT=/usr/lib/go\nGONOPROXY=\nGOFLAGS=\nGOINSECURE=\nGOMODCACHE=/home/snyssfx/go/pkg/mod\nGOPROXY=https://proxy.golang.org,direct\nGOSUMDB=sum.golang.org\nGO111MODULE=\nGOMOD=/home/snyssfx/private/neovim-lspconfig-main/go.mod\nGOCACHE=/home/snyssfx/.cache/go-build\n\n"
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "2021/03/28 12:18:02 go/packages.Load\n\tsnapshot=0\n\tdirectory=/home/snyssfx/private/neovim-lspconfig-main\n\tquery=[builtin github.com/Snyssfx/neovim-lspconfig-main/...]\n\tpackages=2\n", type = 3 }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:513 ] "notification" "window/logMessage" { message = "2021/03/28 12:18:02 go/packages.Load\n\tsnapshot=0\n\tdirectory=/home/snyssfx/private/neovim-lspconfig-main\n\tquery=[builtin github.com/Snyssfx/neovim-lspconfig-main/...]\n\tpackages=2\n", type = 3}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "2021/03/28 12:18:02 go/packages.Load\n\tsnapshot=0\n\tdirectory=/home/snyssfx/private/neovim-lspconfig-main\n\tquery=[builtin github.com/Snyssfx/neovim-lspconfig-main/...]\n\tpackages=2\n", type = 3 }}
[ INFO ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:381 ] "2021/03/28 12:18:02 go/packages.Load\n\tsnapshot=0\n\tdirectory=/home/snyssfx/private/neovim-lspconfig-main\n\tquery=[builtin github.com/Snyssfx/neovim-lspconfig-main/...]\n\tpackages=2\n"
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { jsonrpc = "2.0", method = "$/progress", params = { token = "5577006791947779410", value = { kind = "end", message = "Finished loading packages." } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:513 ] "notification" "$/progress" { token = "5577006791947779410", value = { kind = "end", message = "Finished loading packages." }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "$/progress" { client_id = 1, params = { token = "5577006791947779410", value = { kind = "end", message = "Finished loading packages." } }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { jsonrpc = "2.0", method = "textDocument/publishDiagnostics", params = { diagnostics = { { message = "github.com/Snyssfx/neovim-lspconfig-gopls-bug/another should be direct", range = { end = { character = 108, line = 4 }, start = { character = 97, line = 4 } }, severity = 2, source = "go mod tidy" } }, uri = "file:///home/snyssfx/private/neovim-lspconfig-main/go.mod" }}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:513 ] "notification" "textDocument/publishDiagnostics" { diagnostics = { { message = "github.com/Snyssfx/neovim-lspconfig-gopls-bug/another should be direct", range = { end = { character = 108, line = 4 }, start = { character = 97, line = 4 } }, severity = 2, source = "go mod tidy" } }, uri = "file:///home/snyssfx/private/neovim-lspconfig-main/go.mod"}
[ DEBUG ] 2021-03-28T12:18:02+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "textDocument/publishDiagnostics" { client_id = 1, params = { diagnostics = { { message = "github.com/Snyssfx/neovim-lspconfig-gopls-bug/another should be direct", range = { end = { character = 108, line = 4 }, start = { character = 97, line = 4 } }, severity = 2, source = "go mod tidy" } }, uri = "file:///home/snyssfx/private/neovim-lspconfig-main/go.mod" }}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:724 ] "LSP[gopls]" "client.request" 1 "textDocument/definition" { position = { character = 16, line = 7 }, textDocument = { uri = "file:///home/snyssfx/private/neovim-lspconfig-main/main.go" }} 1
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { id = 2, jsonrpc = "2.0", method = "textDocument/definition", params = { position = { character = 16, line = 7 }, textDocument = { uri = "file:///home/snyssfx/private/neovim-lspconfig-main/main.go" } }}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:492 ] "decoded" { id = 2, jsonrpc = "2.0", result = { { range = { end = { character = 17, line = 6 }, start = { character = 5, line = 6 } }, uri = "file:///home/snyssfx/go/pkg/mod/github.com/%21snyssfx/neovim-lspconfig-gopls-bug/[email protected]/another.go" } }}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:409 ] "default_handler" "textDocument/definition" { bufnr = 1, client_id = 1, params = { { range = { end = { character = 17, line = 6 }, start = { character = 5, line = 6 } }, uri = "file:///home/snyssfx/go/pkg/mod/github.com/%21snyssfx/neovim-lspconfig-gopls-bug/[email protected]/another.go" } }}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { jsonrpc = "2.0", method = "textDocument/didClose", params = { textDocument = { uri = "file:///home/snyssfx/private/neovim-lspconfig-main/main.go" } }}
[ INFO ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:311 ] "Starting RPC client" { args = {}, cmd = "gopls", extra = {}}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:659 ] "LSP[gopls]" "initialize_params" { capabilities = { callHierarchy = { dynamicRegistration = false, = { __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, = }, = }, dynamicRegistration = false, = }, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, = }, completionItemKind = { 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 }, = }, contextSupport = false, dynamicRegistration = false, = }, declaration = { linkSupport = true, = }, definition = { linkSupport = true, = }, documentHighlight = { dynamicRegistration = false, = }, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, 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 }, = }, = }, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, = }, implementation = { linkSupport = true, = }, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, = }, = }, references = { dynamicRegistration = false, = }, rename = { dynamicRegistration = false, prepareSupport = true, = }, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, = }, = }, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, = }, typeDefinition = { linkSupport = true, = }, = }, window = { showDocument = { support = false, = }, showMessage = { messageActionItem = { additionalPropertiesSupport = false, = }, = }, workDoneProgress = true, = }, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, 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 }, = }, = }, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, = }, workspaceFolders = true, = } }, clientInfo = { name = "Neovim", version = "0.5.0" }, initializationOptions = vim.empty_dict(), processId = 41448, rootPath = "/home/snyssfx/go/pkg/mod/github.com/!snyssfx/neovim-lspconfig-gopls-bug/[email protected]", rootUri = "file:///home/snyssfx/go/pkg/mod/github.com/!snyssfx/neovim-lspconfig-gopls-bug/[email protected]", trace = "off", workspaceFolders = { { name = "/home/snyssfx/go/pkg/mod/github.com/!snyssfx/neovim-lspconfig-gopls-bug/[email protected]", uri = "file:///home/snyssfx/go/pkg/mod/github.com/!snyssfx/neovim-lspconfig-gopls-bug/[email protected]" } }}
[ DEBUG ] 2021-03-28T12:18:04+0300 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:391 ] "rpc.send.payload" { id = 1, jsonrpc = "2.0", method = "initialize", params = { capabilities = { callHierarchy = { dynamicRegistration = false, = { __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, = }, = }, dynamicRegistration = false, = }, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, = }, completionItemKind = { 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 }, = }, contextSupport = false, dynamicRegistration = false, = }, declaration = { linkSupport = true, = }, definition = { linkSupport = true, = }, documentHighlight = { dynamicRegistration = false, = }, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, 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 }, = }, = }, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, = }, implementation = { linkSupport = true, = }, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, = }, = }, references = { dynamicRegistration = false, = }, rename = { dynamicRegistration = false, prepareSupport = true, = }, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, = }, = }, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, = }, typeDefinition = { linkSupport = true, = }, = }, window = { showDocument = { support = false, = }, showMessage = { messageActionItem = { additionalPropertiesSupport = false, = }, = }, workDoneProgress = true, = }, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, 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 }, = }, = }, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, =