Closed jswny closed 6 years ago
For the case of "must be a string", I'm not sure where the problem come problem, but please try the newer release I just released. It should have been resolved.
For the elixir error though, I believe it is the language server returns the "Invalid Request". Please report at language server repo.
Here is the language server implemented requests/notifications https://github.com/JakeBecker/elixir-ls/blob/ca60f47ad0559d0687f4fa6505dfbe8febe00a3d/apps/language_server/lib/language_server/protocol.ex
Ah yes, you are correct. It seems as though ElixirLS doesn't have that specific request implemented yet. There is an issue here for adding support for this particular request in ElixirLS: https://github.com/JakeBecker/elixir-ls/issues/18.
I also tried the latest version for the Rust sample project, and everything seems to work just fine now! Thanks so much for the support and the wonderful plugin!
bin/languageclient --version
to get its version number.languageclient 0.1.73 bfa74f1254805b463dbd1cbe0f24fa4eee0ec866
:checkhealth LanguageClient
?Summary
I am getting an
Invalid Request
error when calling:call LanguageClient_workspace_symbol()
in Elixir projects.Reproduction
nvim --version
orvim --version
):NVIM v0.2.2
git rev-parse --short HEAD
):d7cac79
bin/languageclient --version
):languageclient 0.1.73 bfa74f1254805b463dbd1cbe0f24fa4eee0ec866
let g:LanguageClient_loggingLevel = 'DEBUG'
to have full log:Plug 'autozimu/LanguageClient-neovim', { \ 'branch': 'next', \ 'do': 'bash install.sh', \ }
call plug#end()
augroup filetype_elixir autocmd! autocmd BufReadPost *.ex setlocal filetype=elixir augroup END
" Always draw sign column. Prevent buffer moving when adding/deleting sign. set signcolumn=yes
let g:LanguageClient_serverCommands = { \ 'elixir': ['elixir-ls.sh'], \ }
let g:LanguageClient_rootMarkers = { \ 'elixir': ['mix.exs'], \ }
let g:LanguageClient_loggingLevel = 'DEBUG'
####### LanguageClient 0.1.73 bfa74f1254805b463dbd1cbe0f24fa4eee0ec866 ####### 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 3 ==> 4 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[!!get(g:, 'LanguageClient_autoStart', 1), get(g:, 'LanguageClient_serverCommands', {}), get(g:, 'LanguageClient_selectionUI', v:null), get(g:, 'LanguageClient_trace', v:null), get(g:, 'LanguageClient_settingsPath', '.vim/settings.json'), !!get(g:, 'LanguageClient_loadSettings', 1), get(g:, 'LanguageClient_rootMarkers', v:null), get(g:, 'LanguageClient_changeThrottle', v:null), !!get(g:, 'LanguageClient_diagnosticsEnable', 1), get(g:, 'LanguageClient_diagnosticsList', v:null), get(g:, 'LanguageClient_diagnosticsDisplay', {}), get(g:, 'LanguageClient_windowLogMessageLevel', 'Warning'), has('nvim')]"],"id":4} 22:07:16 INFO main src/vim.rs:332 <= {"id": 4, "jsonrpc": "2.0", "result": [1, {"elixir": ["elixir-ls.sh"]}, null, null, ".vim/settings.json", 1, {"elixir": ["mix.exs"]}, null, 1, null, {"1": {"signText": "X", "texthl": "ErrorMsg", "signTexthl": "ErrorMsg"}, "2": {"signText": "!", "texthl": "WarningMsg", "signTexthl": "WarningMsg"}}, "Warning", 1]} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 4 ==> 5 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["get(g:, 'loaded_fzf')"],"id":5} 22:07:16 INFO main src/vim.rs:332 <= {"id": 5, "jsonrpc": "2.0", "result": 1} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.selectionUI: "LocationList" ==> "FZF" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.1.signText: "✖" ==> "X" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.serverCommands.elixir: null ==> ["elixir-ls.sh"] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.2.signText: "⚠" ==> "!" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.loadSettings: false ==> true 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.1.signTexthl: "ALEErrorSign" ==> "ErrorMsg" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.2.signTexthl: "ALEWarningSign" ==> "WarningMsg" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.trace: null ==> "off" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.1.texthl: "ALEError" ==> "ErrorMsg" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.rootMarkers: null ==> {"elixir":["mix.exs"]} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.is_nvim: false ==> true 22:07:16 DEBUG Handler-main src/vim.rs:269 state.diagnosticsDisplay.2.texthl: "ALEWarning" ==> "WarningMsg" 22:07:16 DEBUG Handler-main src/vim.rs:269 state.child_ids.elixir: null ==> 24277 22:07:16 INFO Handler-main src/languageclient.rs:2377 End languageClient/startServer 22:07:16 INFO Handler-main src/languageclient.rs:171 Define signs 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 5 ==> 6 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo | execute 'sign define LanguageClientError text=X texthl=ErrorMsg' | execute 'sign define LanguageClientHint text=➤ texthl=ALEInfoSign' | execute 'sign define LanguageClientInformation text=ℹ texthl=ALEInfoSign' | execute 'sign define LanguageClientWarning text=! texthl=WarningMsg'"],"id":6} 22:07:16 INFO main src/vim.rs:332 <= {"id": 6, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:185 Define signs 22:07:16 INFO Handler-main src/languageclient.rs:574 Begin initialize 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId, Filename] = [String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:07:16 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["rootPath", "hasSnippetSupport"]. Exps: ["v:null", "s:hasSnippetSupport()"] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 6 ==> 7 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[v:null, s:hasSnippetSupport()]"],"id":7} 22:07:16 INFO main src/vim.rs:332 <= {"id": 7, "jsonrpc": "2.0", "result": [null, 0]} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [("rootPath", "v:null"), ("hasSnippetSupport", "s:hasSnippetSupport()")] = [Null, Number(0)] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 7 ==> 8 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echomsg 'LanguageClient project root: /Users/joe/Downloads/thingy'"],"id":8} 22:07:16 INFO main src/vim.rs:332 <= {"id": 8, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:594 Project root: /Users/joe/Downloads/thingy 22:07:16 DEBUG Handler-main src/vim.rs:269 state.roots.elixir: null ==> "/Users/joe/Downloads/thingy" 22:07:16 DEBUG Handler-main src/languageclient.rs:611 Project settings: {} 22:07:16 DEBUG Handler-main src/languageclient.rs:613 Project settings.initializationOptions: null 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 8 ==> 9 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{"textDocument":{"completion":{"completionItem":{"commitCharactersSupport":null,"documentationFormat":null,"snippetSupport":false},"dynamicRegistration":null}}},"initializationOptions":null,"processId":24052,"rootPath":"/Users/joe/Downloads/thingy","rootUri":"file:///Users/joe/Downloads/thingy","trace":"off"},"id":9} 22:07:16 INFO main src/vim.rs:332 <= {"method": "languageClient/handleTextChanged", "jsonrpc": "2.0", "params": {"languageId": "elixir", "buftype": "", "filename": "/Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:16 INFO Handler-main src/languageclient.rs:1876 Begin languageClient/handleTextChanged 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, Filename] = [String(""), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:07:16 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:07:16 INFO Handler-main src/languageclient.rs:1500 Not opened yet. Switching to didOpen. 22:07:16 INFO Handler-main src/languageclient.rs:1446 Begin textDocument/didOpen 22:07:16 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["text"]. Exps: ["s:Text()"] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 9 ==> 10 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[s:Text()]"],"id":10} 22:07:16 INFO main src/vim.rs:332 <= {"id": 10, "jsonrpc": "2.0", "result": [["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""]]} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename, Text] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex"), Array([String("defmodule Thingy do"), String(" @moduledoc \"\"\""), String(" Documentation for Thingy."), String(" \"\"\""), String(""), String(" # Enum.reduce([1, 2, 3])"), String(" @doc \"\"\""), String(" Hello world."), String(""), String(" ## Examples"), String(""), String(" iex> Thingy.hello"), String(" :world"), String(""), String(" \"\"\""), String(" def hello do"), String(" :world"), String(" Enum.foo"), String(" end"), String("end"), String("")])] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.text_documents./Users/joe/Downloads/thingy/lib/thingy.ex: null ==> {"languageId":"elixir","text":"defmodule Thingy do\n @moduledoc \"\"\"\n Documentation for Thingy.\n \"\"\"\n\n # Enum.reduce([1, 2, 3])\n @doc \"\"\"\n Hello world.\n\n ## Examples\n\n iex> Thingy.hello\n :world\n\n \"\"\"\n def hello do\n :world\n Enum.foo\n end\nend\n","uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex","version":0} 22:07:16 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"languageId":"elixir","text":"defmodule Thingy do\n @moduledoc \"\"\"\n Documentation for Thingy.\n \"\"\"\n\n # Enum.reduce([1, 2, 3])\n @doc \"\"\"\n Hello world.\n\n ## Examples\n\n iex> Thingy.hello\n :world\n\n \"\"\"\n def hello do\n :world\n Enum.foo\n end\nend\n","uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex","version":0}}} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 10 ==> 11 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["setlocal omnifunc=LanguageClient#complete"],"id":11} 22:07:16 INFO main src/vim.rs:332 <= {"id": 11, "jsonrpc": "2.0", "result": 0} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 11 ==> 12 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientBufReadPost"],"id":12} 22:07:16 INFO main src/vim.rs:332 <= {"id": 12, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:1486 End textDocument/didOpen 22:07:16 INFO Handler-main src/languageclient.rs:1901 End languageClient/handleTextChanged 22:07:16 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Started ElixirLS\n","type":4}} 22:07:16 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:16 INFO RPC-elixir src/vim.rs:332 <= {"id":9,"jsonrpc":"2.0","result":{"capabilities":{"completionProvider":{"triggerCharacters":[".","@"]},"definitionProvider":true,"documentFormattingProvider":true,"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"\n"},"documentSymbolProvider":true,"hoverProvider":true,"referencesProvider":true,"signatureHelpProvider":{"triggerCharacters":["("]},"textDocumentSync":2}}} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.capabilities.elixir: null ==> {"capabilities":{"completionProvider":{"triggerCharacters":[".","@"]},"definitionProvider":true,"documentFormattingProvider":true,"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"\n"},"documentSymbolProvider":true,"hoverProvider":true,"referencesProvider":true,"signatureHelpProvider":{"triggerCharacters":["("]},"textDocumentSync":2}} 22:07:16 INFO Handler-main src/languageclient.rs:652 End initialize 22:07:16 INFO Handler-main src/languageclient.rs:410 Begin register NCM source 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 12 ==> 13 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["exists('g:cm_matcher')"],"id":13} 22:07:16 INFO main src/vim.rs:332 <= {"id": 13, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:662 Begin initialized 22:07:16 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId] = [String("elixir")] 22:07:16 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"initialized","params":{}} 22:07:16 INFO Handler-main src/languageclient.rs:669 End initialized 22:07:16 INFO Handler-main src/languageclient.rs:1446 Begin textDocument/didOpen 22:07:16 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["text"]. Exps: ["s:Text()"] 22:07:16 INFO Handler-elixir src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 13 ==> 14 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[s:Text()]"],"id":14} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.diagnostics./Users/joe/Downloads/thingy/lib/thingy.ex: null ==> [] 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 14 ==> 15 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"setqflist","params":[[],"r"],"id":15} 22:07:16 INFO main src/vim.rs:332 <= {"id": 14, "jsonrpc": "2.0", "result": [["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""]]} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename, Text] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex"), Array([String("defmodule Thingy do"), String(" @moduledoc \"\"\""), String(" Documentation for Thingy."), String(" \"\"\""), String(""), String(" # Enum.reduce([1, 2, 3])"), String(" @doc \"\"\""), String(" Hello world."), String(""), String(" ## Examples"), String(""), String(" iex> Thingy.hello"), String(" :world"), String(""), String(" \"\"\""), String(" def hello do"), String(" :world"), String(" Enum.foo"), String(" end"), String("end"), String("")])] 22:07:16 INFO main src/vim.rs:332 <= {"id": 15, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"languageId":"elixir","text":"defmodule Thingy do\n @moduledoc \"\"\"\n Documentation for Thingy.\n \"\"\"\n\n # Enum.reduce([1, 2, 3])\n @doc \"\"\"\n Hello world.\n\n ## Examples\n\n iex> Thingy.hello\n :world\n\n \"\"\"\n def hello do\n :world\n Enum.foo\n end\nend\n","uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex","version":0}}} 22:07:16 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 15 ==> 16 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 16 ==> 17 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["s:Expand('%:p')"],"id":16} 22:07:16 INFO Handler-elixir src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["setlocal omnifunc=LanguageClient#complete"],"id":17} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 17 ==> 18 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"setqflist","params":[[],"r"],"id":18} 22:07:16 INFO main src/vim.rs:332 <= {"id": 16, "jsonrpc": "2.0", "result": "/Users/joe/Downloads/thingy/lib/thingy.ex"} 22:07:16 INFO main src/vim.rs:332 <= {"id": 17, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO main src/vim.rs:332 <= {"id": 18, "jsonrpc": "2.0", "result": 0} 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 18 ==> 19 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 19 ==> 20 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientBufReadPost"],"id":19} 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["s:Expand('%:p')"],"id":20} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.signs./Users/joe/Downloads/thingy/lib/thingy.ex: null ==> [] 22:07:16 INFO Handler-elixir src/languageclient.rs:308 Command to update signs: echo 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 20 ==> 21 22:07:16 INFO main src/vim.rs:332 <= {"id": 19, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo"],"id":21} 22:07:16 INFO Handler-main src/languageclient.rs:1486 End textDocument/didOpen 22:07:16 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 22:07:16 INFO main src/vim.rs:332 <= {"id": 20, "jsonrpc": "2.0", "result": "/Users/joe/Downloads/thingy/lib/thingy.ex"} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:07:16 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["text"]. Exps: ["s:Text()"] 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 21 ==> 22 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[s:Text()]"],"id":22} 22:07:16 INFO Handler-elixir src/languageclient.rs:308 Command to update signs: echo 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 22 ==> 23 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo"],"id":23} 22:07:16 INFO main src/vim.rs:332 <= {"id": 21, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO main src/vim.rs:332 <= {"id": 22, "jsonrpc": "2.0", "result": [["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""]]} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 23 ==> 24 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,0,"Error",1,1,1],"id":24} 22:07:16 INFO Handler-main src/languageclient.rs:46 gather_args: [Text] = [Array([String("defmodule Thingy do"), String(" @moduledoc \"\"\""), String(" Documentation for Thingy."), String(" \"\"\""), String(""), String(" # Enum.reduce([1, 2, 3])"), String(" @doc \"\"\""), String(" Hello world."), String(""), String(" ## Examples"), String(""), String(" iex> Thingy.hello"), String(" :world"), String(""), String(" \"\"\""), String(" def hello do"), String(" :world"), String(" Enum.foo"), String(" end"), String("end"), String("")])] 22:07:16 INFO main src/vim.rs:332 <= {"id": 23, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:1515 Texts equal. Skipping didChange. 22:07:16 DEBUG Handler-main src/vim.rs:269 state.id: 24 ==> 25 22:07:16 INFO main src/vim.rs:332 <= {"id": 24, "jsonrpc": "2.0", "result": 1} 22:07:16 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientStarted"],"id":25} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.highlight_source: null ==> 1 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 25 ==> 26 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,0,"Error",1,1,1],"id":26} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 26 ==> 27 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_clear_highlight","params":[0,1,1,-1],"id":27} 22:07:16 INFO main src/vim.rs:332 <= {"id": 25, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-main src/languageclient.rs:1871 End languageClient/handleBufReadPost 22:07:16 INFO main src/vim.rs:332 <= {"id": 26, "jsonrpc": "2.0", "result": 2} 22:07:16 INFO main src/vim.rs:332 <= {"id": 27, "jsonrpc": "2.0", "result": null} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.highlight_source: 1 ==> 2 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 27 ==> 28 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 28 ==> 29 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_clear_highlight","params":[0,2,1,-1],"id":28} 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientDiagnosticsChanged"],"id":29} 22:07:16 INFO main src/vim.rs:332 <= {"id": 28, "jsonrpc": "2.0", "result": null} 22:07:16 INFO main src/vim.rs:332 <= {"id": 29, "jsonrpc": "2.0", "result": 0} 22:07:16 DEBUG Handler-elixir src/vim.rs:269 state.id: 29 ==> 30 22:07:16 INFO Handler-elixir src/languageclient.rs:1689 End textDocument/publishDiagnostics 22:07:16 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientDiagnosticsChanged"],"id":30} 22:07:16 INFO main src/vim.rs:332 <= {"id": 30, "jsonrpc": "2.0", "result": 0} 22:07:16 INFO Handler-elixir src/languageclient.rs:1689 End textDocument/publishDiagnostics 22:07:21 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Did not receive workspace/didChangeConfiguration notification after 5 seconds. Using default settings.","type":2}} 22:07:21 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:21 DEBUG Handler-elixir src/vim.rs:269 state.id: 30 ==> 31 22:07:21 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echomsg '[Warning] Did not receive workspace/didChangeConfiguration notification after 5 seconds. Using default settings.'"],"id":31} 22:07:21 INFO main src/vim.rs:332 <= {"id": 31, "jsonrpc": "2.0", "result": 0} 22:07:21 INFO Handler-elixir src/languageclient.rs:1703 End window/logMessage 22:07:22 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Compiling with Mix env test\n","type":4}} 22:07:22 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:22 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Analyzing 0 modules: []","type":3}} 22:07:22 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:22 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Analysis finished in 34 milliseconds","type":3}} 22:07:22 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:22 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}],"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:22 INFO Handler-elixir src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.diagnostics./Users/joe/Downloads/thingy/lib/thingy.ex: [] ==> [{"code":null,"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}] 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 31 ==> 32 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"setqflist","params":[[{"col":5,"filename":"/Users/joe/Downloads/thingy/lib/thingy.ex","lnum":18,"nr":null,"text":"Call to missing or unexported function 'Elixir.Enum':foo/0","type":"W"}],"r"],"id":32} 22:07:22 INFO main src/vim.rs:332 <= {"id": 32, "jsonrpc": "2.0", "result": 0} 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 32 ==> 33 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["s:Expand('%:p')"],"id":33} 22:07:22 INFO main src/vim.rs:332 <= {"id": 33, "jsonrpc": "2.0", "result": "/Users/joe/Downloads/thingy/lib/thingy.ex"} 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.signs./Users/joe/Downloads/thingy/lib/thingy.ex: [] ==> [{"id":75069,"line":18,"severity":2,"text":" Enum.foo"}] 22:07:22 INFO Handler-elixir src/languageclient.rs:308 Command to update signs: echo | execute 'sign place 75069 line=18 name=LanguageClientWarning file=/Users/joe/Downloads/thingy/lib/thingy.ex' 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 33 ==> 34 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo | execute 'sign place 75069 line=18 name=LanguageClientWarning file=/Users/joe/Downloads/thingy/lib/thingy.ex'"],"id":34} 22:07:22 INFO main src/vim.rs:332 <= {"id": 34, "jsonrpc": "2.0", "result": 0} 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 34 ==> 35 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_clear_highlight","params":[0,2,1,-1],"id":35} 22:07:22 INFO main src/vim.rs:332 <= {"id": 35, "jsonrpc": "2.0", "result": null} 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 35 ==> 36 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,2,"WarningMsg",17,4,12],"id":36} 22:07:22 INFO main src/vim.rs:332 <= {"id": 36, "jsonrpc": "2.0", "result": 2} 22:07:22 DEBUG Handler-elixir src/vim.rs:269 state.id: 36 ==> 37 22:07:22 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientDiagnosticsChanged"],"id":37} 22:07:22 INFO main src/vim.rs:332 <= {"id": 37, "jsonrpc": "2.0", "result": 0} 22:07:22 INFO Handler-elixir src/languageclient.rs:1689 End textDocument/publishDiagnostics 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Compile took 366 milliseconds","type":3}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Writing manifest...","type":3}} 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Checking for stale beam files","type":3}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"message":"function Enum.foo/0 is undefined or private","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"Xref"},{"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}],"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.diagnostics./Users/joe/Downloads/thingy/lib/thingy.ex: [{"code":null,"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}] ==> [{"code":null,"message":"function Enum.foo/0 is undefined or private","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"Xref"},{"code":null,"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}] 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 37 ==> 38 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"setqflist","params":[[{"col":5,"filename":"/Users/joe/Downloads/thingy/lib/thingy.ex","lnum":18,"nr":null,"text":"function Enum.foo/0 is undefined or private","type":"W"},{"col":5,"filename":"/Users/joe/Downloads/thingy/lib/thingy.ex","lnum":18,"nr":null,"text":"Call to missing or unexported function 'Elixir.Enum':foo/0","type":"W"}],"r"],"id":38} 22:07:23 INFO main src/vim.rs:332 <= {"id": 38, "jsonrpc": "2.0", "result": 0} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 38 ==> 39 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["s:Expand('%:p')"],"id":39} 22:07:23 INFO main src/vim.rs:332 <= {"id": 39, "jsonrpc": "2.0", "result": "/Users/joe/Downloads/thingy/lib/thingy.ex"} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.signs./Users/joe/Downloads/thingy/lib/thingy.ex: [{"id":75069,"line":18,"severity":2,"text":" Enum.foo"}] ==> [{"id":75069,"line":18,"severity":2,"text":" Enum.foo"},{"id":75069,"line":18,"severity":2,"text":" Enum.foo"}] 22:07:23 INFO Handler-elixir src/languageclient.rs:308 Command to update signs: echo | execute 'sign place 75069 line=18 name=LanguageClientWarning file=/Users/joe/Downloads/thingy/lib/thingy.ex' 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 39 ==> 40 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo | execute 'sign place 75069 line=18 name=LanguageClientWarning file=/Users/joe/Downloads/thingy/lib/thingy.ex'"],"id":40} 22:07:23 INFO main src/vim.rs:332 <= {"id": 40, "jsonrpc": "2.0", "result": 0} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 40 ==> 41 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_clear_highlight","params":[0,2,1,-1],"id":41} 22:07:23 INFO main src/vim.rs:332 <= {"id": 41, "jsonrpc": "2.0", "result": null} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 41 ==> 42 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,2,"WarningMsg",17,4,12],"id":42} 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Analyzing 0 modules: []","type":3}} 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Analysis finished in 8 milliseconds","type":3}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:23 INFO main src/vim.rs:332 <= {"id": 42, "jsonrpc": "2.0", "result": 2} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 42 ==> 43 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,2,"WarningMsg",17,4,12],"id":43} 22:07:23 INFO main src/vim.rs:332 <= {"id": 43, "jsonrpc": "2.0", "result": 2} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 43 ==> 44 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientDiagnosticsChanged"],"id":44} 22:07:23 INFO main src/vim.rs:332 <= {"id": 44, "jsonrpc": "2.0", "result": 0} 22:07:23 INFO Handler-elixir src/languageclient.rs:1689 End textDocument/publishDiagnostics 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"message":"function Enum.foo/0 is undefined or private","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"Xref"},{"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}],"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 44 ==> 45 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"setqflist","params":[[{"col":5,"filename":"/Users/joe/Downloads/thingy/lib/thingy.ex","lnum":18,"nr":null,"text":"function Enum.foo/0 is undefined or private","type":"W"},{"col":5,"filename":"/Users/joe/Downloads/thingy/lib/thingy.ex","lnum":18,"nr":null,"text":"Call to missing or unexported function 'Elixir.Enum':foo/0","type":"W"}],"r"],"id":45} 22:07:23 INFO main src/vim.rs:332 <= {"id": 45, "jsonrpc": "2.0", "result": 0} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 45 ==> 46 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["s:Expand('%:p')"],"id":46} 22:07:23 INFO main src/vim.rs:332 <= {"id": 46, "jsonrpc": "2.0", "result": "/Users/joe/Downloads/thingy/lib/thingy.ex"} 22:07:23 INFO Handler-elixir src/languageclient.rs:308 Command to update signs: echo 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 46 ==> 47 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo"],"id":47} 22:07:23 INFO main src/vim.rs:332 <= {"id": 47, "jsonrpc": "2.0", "result": 0} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 47 ==> 48 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_clear_highlight","params":[0,2,1,-1],"id":48} 22:07:23 INFO main src/vim.rs:332 <= {"id": 48, "jsonrpc": "2.0", "result": null} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 48 ==> 49 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,2,"WarningMsg",17,4,12],"id":49} 22:07:23 INFO main src/vim.rs:332 <= {"id": 49, "jsonrpc": "2.0", "result": 2} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 49 ==> 50 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"nvim_buf_add_highlight","params":[0,2,"WarningMsg",17,4,12],"id":50} 22:07:23 INFO main src/vim.rs:332 <= {"id": 50, "jsonrpc": "2.0", "result": 2} 22:07:23 DEBUG Handler-elixir src/vim.rs:269 state.id: 50 ==> 51 22:07:23 INFO Handler-elixir src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:ExecuteAutocmd","params":["LanguageClientDiagnosticsChanged"],"id":51} 22:07:23 INFO main src/vim.rs:332 <= {"id": 51, "jsonrpc": "2.0", "result": 0} 22:07:23 INFO Handler-elixir src/languageclient.rs:1689 End textDocument/publishDiagnostics 22:07:23 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Writing manifest...","type":3}} 22:07:23 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:07:25 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"[ElixirLS Dialyzer] Done writing manifest.","type":3}} 22:07:25 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage
22:09:07 INFO main src/vim.rs:332 <= {"id": 1, "jsonrpc": "2.0", "method": "textDocument/documentSymbol", "params": {"handle": true, "languageId": "elixir", "buftype": "", "text": ["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""], "filename": "/Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:09:07 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 22:09:07 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:09:07 INFO Handler-main src/languageclient.rs:46 gather_args: [Text] = [Array([String("defmodule Thingy do"), String(" @moduledoc \"\"\""), String(" Documentation for Thingy."), String(" \"\"\""), String(""), String(" # Enum.reduce([1, 2, 3])"), String(" @doc \"\"\""), String(" Hello world."), String(""), String(" ## Examples"), String(""), String(" iex> Thingy.hello"), String(" :world"), String(""), String(" \"\"\""), String(" def hello do"), String(" :world"), String(" Enum.foo"), String(" end"), String("end"), String("")])] 22:09:07 INFO Handler-main src/languageclient.rs:1515 Texts equal. Skipping didChange. 22:09:07 INFO Handler-main src/languageclient.rs:861 Begin textDocument/documentSymbol 22:09:07 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename, Handle] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex"), Bool(true)] 22:09:07 DEBUG Handler-main src/vim.rs:269 state.id: 51 ==> 52 22:09:07 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"}},"id":52} 22:09:07 INFO RPC-elixir src/vim.rs:332 <= {"id":52,"jsonrpc":"2.0","result":[{"containerName":null,"kind":2,"location":{"range":{"end":{"character":10,"line":0},"start":{"character":10,"line":0}},"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"},"name":"Thingy"},{"containerName":"Thingy","kind":12,"location":{"range":{"end":{"character":6,"line":15},"start":{"character":6,"line":15}},"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"},"name":"hello"}]} 22:09:07 DEBUG Handler-main src/vim.rs:269 state.id: 52 ==> 53 22:09:07 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"s:FZF","params":[["1:11:\tThingy","16:7:\thello"],"s:LanguageClient_FZFSinkLocation"],"id":53} 22:09:07 INFO main src/vim.rs:332 <= {"id": 53, "jsonrpc": "2.0", "result": 0} 22:09:07 INFO Handler-main src/languageclient.rs:929 End textDocument/documentSymbol 22:09:07 INFO Handler-main src/vim.rs:104 => {"jsonrpc":"2.0","result":[{"containerName":null,"kind":2,"location":{"range":{"end":{"character":10,"line":0},"start":{"character":10,"line":0}},"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"},"name":"Thingy"},{"containerName":"Thingy","kind":12,"location":{"range":{"end":{"character":6,"line":15},"start":{"character":6,"line":15}},"uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex"},"name":"hello"}],"id":1}
22:09:24 INFO main src/vim.rs:332 <= {"id": 2, "jsonrpc": "2.0", "method": "workspace/symbol", "params": {"query": "", "handle": true, "languageId": "elixir", "buftype": "", "text": ["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""], "filename": "/Users/joe/Downloads/thingy/lib/thingy.ex"}} 22:09:24 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 22:09:24 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("elixir"), String("/Users/joe/Downloads/thingy/lib/thingy.ex")] 22:09:24 INFO Handler-main src/languageclient.rs:46 gather_args: [Text] = [Array([String("defmodule Thingy do"), String(" @moduledoc \"\"\""), String(" Documentation for Thingy."), String(" \"\"\""), String(""), String(" # Enum.reduce([1, 2, 3])"), String(" @doc \"\"\""), String(" Hello world."), String(""), String(" ## Examples"), String(""), String(" iex> Thingy.hello"), String(" :world"), String(""), String(" \"\"\""), String(" def hello do"), String(" :world"), String(" Enum.foo"), String(" end"), String("end"), String("")])] 22:09:24 INFO Handler-main src/languageclient.rs:1515 Texts equal. Skipping didChange. 22:09:24 INFO Handler-main src/languageclient.rs:1345 Begin workspace/symbol 22:09:24 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Handle] = [String(""), String("elixir"), Bool(true)] 22:09:24 INFO Handler-main src/languageclient.rs:46 gather_args: [("query", "")] = [String("")] 22:09:24 DEBUG Handler-main src/vim.rs:269 state.id: 53 ==> 54 22:09:24 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"workspace/symbol","params":{"query":""},"id":54} 22:09:24 INFO RPC-elixir src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Unmatched request: %{\n \"id\" => 54,\n \"jsonrpc\" => \"2.0\",\n \"method\" => \"workspace/symbol\",\n \"params\" => %{\"query\" => \"\"}\n}\n","type":4}} 22:09:24 INFO RPC-elixir src/vim.rs:332 <= {"error":{"code":-32600,"message":"Invalid Request"},"id":54,"jsonrpc":"2.0"} 22:09:24 INFO Handler-elixir src/languageclient.rs:1694 Begin window/logMessage 22:09:24 ERROR Handler-main src/vim.rs:47 Error handling message: Invalid Request Message: {"id": 2, "jsonrpc": "2.0", "method": "workspace/symbol", "params": {"query": "", "handle": true, "languageId": "elixir", "buftype": "", "text": ["defmodule Thingy do", " @moduledoc \"\"\"", " Documentation for Thingy.", " \"\"\"", "", " # Enum.reduce([1, 2, 3])", " @doc \"\"\"", " Hello world.", "", " ## Examples", "", " iex> Thingy.hello", " :world", "", " \"\"\"", " def hello do", " :world", " Enum.foo", " end", "end", ""], "filename": "/Users/joe/Downloads/thingy/lib/thingy.ex"}} Error: ErrorMessage { msg: "Invalid Request" } 22:09:24 INFO Handler-main src/vim.rs:104 => {"jsonrpc":"2.0","error":{"code":-32603,"message":"Invalid Request"},"id":2}
10:54:09 INFO main src/vim.rs:332 <= {"method": "exit", "jsonrpc": "2.0", "params": {"languageId": "elixir", "buftype": ""}} 10:54:09 INFO Handler-main src/languageclient.rs:1742 Begin exit 10:54:09 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId] = [String("elixir")] 10:54:09 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"exit","params":null} 10:54:09 DEBUG Handler-main src/vim.rs:269 state.child_ids.elixir: 24277 ==> null 10:54:09 DEBUG Handler-main src/vim.rs:269 state.text_documents./Users/joe/Downloads/thingy/lib/thingy.ex: {"languageId":"elixir","text":"defmodule Thingy do\n @moduledoc \"\"\"\n Documentation for Thingy.\n \"\"\"\n\n # Enum.reduce([1, 2, 3])\n @doc \"\"\"\n Hello world.\n\n ## Examples\n\n iex> Thingy.hello\n :world\n\n \"\"\"\n def hello do\n :world\n Enum.foo\n end\nend\n","uri":"file:///Users/joe/Downloads/thingy/lib/thingy.ex","version":0} ==> null 10:54:09 DEBUG Handler-main src/vim.rs:269 state.roots.elixir: "/Users/joe/Downloads/thingy" ==> null 10:54:09 DEBUG Handler-main src/vim.rs:269 state.signs./Users/joe/Downloads/thingy/lib/thingy.ex: [{"id":75069,"line":18,"severity":2,"text":" Enum.foo"},{"id":75069,"line":18,"severity":2,"text":" Enum.foo"}] ==> null 10:54:09 DEBUG Handler-main src/vim.rs:269 state.diagnostics./Users/joe/Downloads/thingy/lib/thingy.ex: [{"code":null,"message":"function Enum.foo/0 is undefined or private","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"Xref"},{"code":null,"message":"Call to missing or unexported function 'Elixir.Enum':foo/0","range":{"end":{"character":12,"line":17},"start":{"character":4,"line":17}},"severity":2,"source":"ElixirLS Dialyzer"}] ==> null 10:54:09 DEBUG Handler-main src/vim.rs:269 state.id: 54 ==> 55 10:54:09 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo | execute 'sign unplace 75069 file=/Users/joe/Downloads/thingy/lib/thingy.ex' | execute 'sign unplace 75069 file=/Users/joe/Downloads/thingy/lib/thingy.ex'"],"id":55} 10:54:09 INFO main src/vim.rs:332 <= {"id": 55, "jsonrpc": "2.0", "result": 0}
####### LanguageClient 0.1.73 bfa74f1254805b463dbd1cbe0f24fa4eee0ec866 ####### 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 3 ==> 4 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[!!get(g:, 'LanguageClient_autoStart', 1), get(g:, 'LanguageClient_serverCommands', {}), get(g:, 'LanguageClient_selectionUI', v:null), get(g:, 'LanguageClient_trace', v:null), get(g:, 'LanguageClient_settingsPath', '.vim/settings.json'), !!get(g:, 'LanguageClient_loadSettings', 1), get(g:, 'LanguageClient_rootMarkers', v:null), get(g:, 'LanguageClient_changeThrottle', v:null), !!get(g:, 'LanguageClient_diagnosticsEnable', 1), get(g:, 'LanguageClient_diagnosticsList', v:null), get(g:, 'LanguageClient_diagnosticsDisplay', {}), get(g:, 'LanguageClient_windowLogMessageLevel', 'Warning'), has('nvim')]"],"id":4} 11:07:19 INFO main src/vim.rs:332 <= {"id": 4, "jsonrpc": "2.0", "result": [1, {"rust": ["rustup", "run", "stable", "rls"]}, null, null, ".vim/settings.json", 1, null, null, 1, null, {}, "Warning", 1]} 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 4 ==> 5 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["get(g:, 'loaded_fzf')"],"id":5} 11:07:19 INFO main src/vim.rs:332 <= {"id": 5, "jsonrpc": "2.0", "result": 0} 11:07:19 DEBUG Handler-main src/vim.rs:269 state.serverCommands.rust: null ==> ["rustup","run","stable","rls"] 11:07:19 DEBUG Handler-main src/vim.rs:269 state.trace: null ==> "off" 11:07:19 DEBUG Handler-main src/vim.rs:269 state.loadSettings: false ==> true 11:07:19 DEBUG Handler-main src/vim.rs:269 state.is_nvim: false ==> true 11:07:19 DEBUG Handler-main src/vim.rs:269 state.child_ids.rust: null ==> 46147 11:07:19 INFO Handler-main src/languageclient.rs:2377 End languageClient/startServer 11:07:19 INFO Handler-main src/languageclient.rs:171 Define signs 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 5 ==> 6 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echo | execute 'sign define LanguageClientWarning text=⚠ texthl=ALEWarningSign' | execute 'sign define LanguageClientError text=✖ texthl=ALEErrorSign' | execute 'sign define LanguageClientInformation text=ℹ texthl=ALEInfoSign' | execute 'sign define LanguageClientHint text=➤ texthl=ALEInfoSign'"],"id":6} 11:07:19 INFO main src/vim.rs:332 <= {"id": 6, "jsonrpc": "2.0", "result": 0} 11:07:19 INFO Handler-main src/languageclient.rs:185 Define signs 11:07:19 INFO Handler-main src/languageclient.rs:574 Begin initialize 11:07:19 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId, Filename] = [String("rust"), String("/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs")] 11:07:19 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["rootPath", "hasSnippetSupport"]. Exps: ["v:null", "s:hasSnippetSupport()"] 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 6 ==> 7 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[v:null, s:hasSnippetSupport()]"],"id":7} 11:07:19 INFO main src/vim.rs:332 <= {"id": 7, "jsonrpc": "2.0", "result": [null, 0]} 11:07:19 INFO Handler-main src/languageclient.rs:46 gather_args: [("rootPath", "v:null"), ("hasSnippetSupport", "s:hasSnippetSupport()")] = [Null, Number(0)] 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 7 ==> 8 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["echomsg 'LanguageClient project root: /Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs'"],"id":8} 11:07:19 INFO main src/vim.rs:332 <= {"id": 8, "jsonrpc": "2.0", "result": 0} 11:07:19 INFO Handler-main src/languageclient.rs:594 Project root: /Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs 11:07:19 DEBUG Handler-main src/vim.rs:269 state.roots.rust: null ==> "/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs" 11:07:19 DEBUG Handler-main src/languageclient.rs:611 Project settings: {"cfg_test":true,"clippy_preferences":"on"} 11:07:19 DEBUG Handler-main src/languageclient.rs:613 Project settings.initializationOptions: null 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 8 ==> 9 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{"textDocument":{"completion":{"completionItem":{"commitCharactersSupport":null,"documentationFormat":null,"snippetSupport":false},"dynamicRegistration":null}}},"initializationOptions":null,"processId":46146,"rootPath":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs","rootUri":"file:///Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs","trace":"off"},"id":9} 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","id":9,"result":{"capabilities":{"textDocumentSync":2,"hoverProvider":true,"completionProvider":{"resolveProvider":true,"triggerCharacters":[".",":"]},"definitionProvider":true,"referencesProvider":true,"documentHighlightProvider":true,"documentSymbolProvider":true,"workspaceSymbolProvider":true,"codeActionProvider":true,"documentFormattingProvider":true,"documentRangeFormattingProvider":false,"renameProvider":true,"executeCommandProvider":{"commands":["rls.applySuggestion","rls.deglobImports"]}}}} 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/progress","params":{"id":"progress_1","title":"Building"}} 11:07:19 DEBUG Handler-main src/vim.rs:269 state.capabilities.rust: null ==> {"capabilities":{"codeActionProvider":true,"completionProvider":{"resolveProvider":true,"triggerCharacters":[".",":"]},"definitionProvider":true,"documentFormattingProvider":true,"documentHighlightProvider":true,"documentRangeFormattingProvider":false,"documentSymbolProvider":true,"executeCommandProvider":{"commands":["rls.applySuggestion","rls.deglobImports"]},"hoverProvider":true,"referencesProvider":true,"renameProvider":true,"textDocumentSync":2,"workspaceSymbolProvider":true}} 11:07:19 INFO Handler-main src/languageclient.rs:652 End initialize 11:07:19 INFO Handler-main src/languageclient.rs:410 Begin register NCM source 11:07:19 INFO Handler-rust src/languageclient.rs:2217 Begin window/progress 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 9 ==> 10 11:07:19 DEBUG Handler-rust src/vim.rs:269 state.id: 10 ==> 11 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["exists('g:cm_matcher')"],"id":10} 11:07:19 INFO Handler-rust src/vim.rs:135 => {"jsonrpc":"2.0","method":"execute","params":["let g:LanguageClient_serverStatus=1 | let g:LanguageClient_serverStatusMessage='LS: Building'"],"id":11} 11:07:19 INFO main src/vim.rs:332 <= {"id": 10, "jsonrpc": "2.0", "result": 0} 11:07:19 INFO main src/vim.rs:332 <= {"id": 11, "jsonrpc": "2.0", "result": 0} 11:07:19 INFO Handler-main src/languageclient.rs:662 Begin initialized 11:07:19 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId] = [String("rust")] 11:07:19 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"initialized","params":{}} 11:07:19 INFO Handler-rust src/languageclient.rs:2251 End window/progress 11:07:19 INFO Handler-main src/languageclient.rs:669 End initialized 11:07:19 INFO Handler-main src/languageclient.rs:1446 Begin textDocument/didOpen 11:07:19 INFO Handler-main src/languageclient.rs:29 Some arguments are not available. Requesting from vim. Keys: ["text"]. Exps: ["s:Text()"] 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"client/registerCapability","id":1,"params":{"registrations":[{"id":"rls-watch","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/Cargo{.toml,.lock}"},{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/target","kind":4}]}}]}} 11:07:19 DEBUG Handler-main src/vim.rs:269 state.id: 11 ==> 12 11:07:19 INFO Handler-main src/vim.rs:135 => {"jsonrpc":"2.0","method":"eval","params":["[s:Text()]"],"id":12} 11:07:19 INFO Handler-rust src/languageclient.rs:1712 Begin client/registerCapability 11:07:19 ERROR Handler-rust src/vim.rs:47 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"client/registerCapability","id":1,"params":{"registrations":[{"id":"rls-watch","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/Cargo{.toml,.lock}"},{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/target","kind":4}]}}]}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO Handler-rust src/vim.rs:104 => {"jsonrpc":"2.0","error":{"code":-32603,"message":"key must be a string"},"id":1} 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"client/registerCapability","id":1,"params":{"registrations":[{"id":"rls-watch","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/Cargo{.toml,.lock}"},{"globPattern":"/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/target","kind":4}]}}]}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO main src/vim.rs:332 <= {"id": 12, "jsonrpc": "2.0", "result": [["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""]]} 11:07:19 ERROR Handler-main src/vim.rs:349 Error handling message: key must be a string Message: {"id": 12, "jsonrpc": "2.0", "result": [["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""]]} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/progress","params":{"id":"progress_1","message":"sample","title":"Building"}} 11:07:19 INFO Handler-rust src/languageclient.rs:2217 Begin window/progress 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"window/progress","params":{"id":"progress_1","message":"sample","title":"Building"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/progress","params":{"done":true,"id":"progress_1","title":"Building"}} 11:07:19 INFO Handler-rust src/languageclient.rs:2217 Begin window/progress 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"window/progress","params":{"done":true,"id":"progress_1","title":"Building"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/progress","params":{"id":"progress_0","title":"Indexing"}} 11:07:19 INFO Handler-rust src/languageclient.rs:2217 Begin window/progress 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"window/progress","params":{"id":"progress_0","title":"Indexing"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"unused_variables","message":"unused variable:
a
\n\nnote: #[warn(unused_variables)] on by default\nhelp: consider using_a
instead:_a
","range":{"end":{"character":9,"line":1},"start":{"character":8,"line":1}},"severity":2,"source":"rustc"},{"code":"dead_code","message":"function is never used:ref_in_main
","range":{"end":{"character":23,"line":15},"start":{"character":0,"line":15}},"severity":2,"source":"rustc"}],"uri":"file:///Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} 11:07:19 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"unused_variables","message":"unused variable:b
\n\nhelp: consider using_b
instead:_b
","range":{"end":{"character":9,"line":3},"start":{"character":8,"line":3}},"severity":2,"source":"rustc"},{"code":"dead_code","message":"function is never used:yo
\n\nnote: #[warn(dead_code)] on by default","range":{"end":{"character":18,"line":1},"start":{"character":0,"line":1}},"severity":2,"source":"rustc"}],"uri":"file:///Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/libs.rs"}} 11:07:19 INFO Handler-rust src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 11:07:19 INFO Handler-rust src/languageclient.rs:1628 Begin textDocument/publishDiagnostics 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"unused_variables","message":"unused variable:a
\n\nnote: #[warn(unused_variables)] on by default\nhelp: consider using_a
instead:_a
","range":{"end":{"character":9,"line":1},"start":{"character":8,"line":1}},"severity":2,"source":"rustc"},{"code":"dead_code","message":"function is never used:ref_in_main
","range":{"end":{"character":23,"line":15},"start":{"character":0,"line":15}},"severity":2,"source":"rustc"}],"uri":"file:///Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:19 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"unused_variables","message":"unused variable:b
\n\nhelp: consider using_b
instead:_b
","range":{"end":{"character":9,"line":3},"start":{"character":8,"line":3}},"severity":2,"source":"rustc"},{"code":"dead_code","message":"function is never used:yo
\n\nnote: #[warn(dead_code)] on by default","range":{"end":{"character":18,"line":1},"start":{"character":0,"line":1}},"severity":2,"source":"rustc"}],"uri":"file:///Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/libs.rs"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:20 INFO RPC-rust src/vim.rs:332 <= {"jsonrpc":"2.0","method":"window/progress","params":{"done":true,"id":"progress_0","title":"Indexing"}} 11:07:20 INFO Handler-rust src/languageclient.rs:2217 Begin window/progress 11:07:20 ERROR Handler-rust src/vim.rs:349 Error handling message: key must be a string Message: {"jsonrpc":"2.0","method":"window/progress","params":{"done":true,"id":"progress_0","title":"Indexing"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 }11:07:36 INFO main src/vim.rs:332 <= {"id": 1, "jsonrpc": "2.0", "method": "workspace/symbol", "params": {"query": "", "handle": true, "languageId": "rust", "buftype": "", "text": ["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""], "filename": "/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} 11:07:36 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 11:07:36 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("rust"), String("/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs")] 11:07:36 INFO Handler-main src/languageclient.rs:1500 Not opened yet. Switching to didOpen. 11:07:36 INFO Handler-main src/languageclient.rs:1446 Begin textDocument/didOpen 11:07:36 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename, Text] = [String(""), String("rust"), String("/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"), Array([String("fn main() {"), String(" let a = 1;"), String(" println!(\"{}\", greet());"), String(" // place holder for didChange test."), String("}"), String(""), String(""), String("fn greet() -> i32 {"), String(" 42"), String("}"), String(""), String("// place holder for didChange test."), String(""), String("mod libs;"), String("use libs::yo;"), String("fn ref_in_main() -> i32 {"), String(" yo() + 1"), String("}"), String("")])] 11:07:36 ERROR Handler-main src/vim.rs:47 Error handling message: key must be a string Message: {"id": 1, "jsonrpc": "2.0", "method": "workspace/symbol", "params": {"query": "", "handle": true, "languageId": "rust", "buftype": "", "text": ["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""], "filename": "/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:36 INFO Handler-main src/vim.rs:104 => {"jsonrpc":"2.0","error":{"code":-32603,"message":"key must be a string"},"id":1}
11:07:47 INFO main src/vim.rs:332 <= {"id": 2, "jsonrpc": "2.0", "method": "textDocument/documentSymbol", "params": {"handle": true, "languageId": "rust", "buftype": "", "text": ["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""], "filename": "/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} 11:07:47 INFO Handler-main src/languageclient.rs:1491 Begin textDocument/didChange 11:07:47 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename] = [String(""), String("rust"), String("/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs")] 11:07:47 INFO Handler-main src/languageclient.rs:1500 Not opened yet. Switching to didOpen. 11:07:47 INFO Handler-main src/languageclient.rs:1446 Begin textDocument/didOpen 11:07:47 INFO Handler-main src/languageclient.rs:46 gather_args: [Buftype, LanguageId, Filename, Text] = [String(""), String("rust"), String("/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"), Array([String("fn main() {"), String(" let a = 1;"), String(" println!(\"{}\", greet());"), String(" // place holder for didChange test."), String("}"), String(""), String(""), String("fn greet() -> i32 {"), String(" 42"), String("}"), String(""), String("// place holder for didChange test."), String(""), String("mod libs;"), String("use libs::yo;"), String("fn ref_in_main() -> i32 {"), String(" yo() + 1"), String("}"), String("")])] 11:07:47 ERROR Handler-main src/vim.rs:47 Error handling message: key must be a string Message: {"id": 2, "jsonrpc": "2.0", "method": "textDocument/documentSymbol", "params": {"handle": true, "languageId": "rust", "buftype": "", "text": ["fn main() {", " let a = 1;", " println!(\"{}\", greet());", " // place holder for didChange test.", "}", "", "", "fn greet() -> i32 {", " 42", "}", "", "// place holder for didChange test.", "", "mod libs;", "use libs::yo;", "fn ref_in_main() -> i32 {", " yo() + 1", "}", ""], "filename": "/Users/joe/.vim/plugged/LanguageClient-neovim/tests/data/sample-rs/src/main.rs"}} Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:07:47 INFO Handler-main src/vim.rs:104 => {"jsonrpc":"2.0","error":{"code":-32603,"message":"key must be a string"},"id":2}
11:09:12 INFO main src/vim.rs:332 <= {"method": "exit", "jsonrpc": "2.0", "params": {"languageId": "rust", "buftype": ""}} 11:09:12 INFO Handler-main src/languageclient.rs:1742 Begin exit 11:09:12 INFO Handler-main src/languageclient.rs:46 gather_args: [LanguageId] = [String("rust")] 11:09:12 INFO Handler-main src/vim.rs:156 => {"jsonrpc":"2.0","method":"exit","params":null} 11:09:12 ERROR Handler-main src/languageclient.rs:1751 Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:09:12 ERROR Handler-main src/languageclient.rs:1755 Error: ErrorImpl { code: KeyMustBeAString, line: 0, column: 0 } 11:09:12 INFO Handler-main src/languageclient.rs:1757 End exit