Skip to content

LanguageServer crashing #708

Closed
Closed
@smabie

Description

@smabie

So I'm having some issues with LanguageServer. I'm using emacs and actually having issues with both the version bundled with julia-lsp and the system one. I'm using julia 1.4.1. Here's the elisp code (from lsp-julia) that starts the server:

(defun lsp-julia--rls-command ()
  "The command to lauch the Julia Language Server."
  `(,lsp-julia-command
    ,@lsp-julia-flags
    ,(concat "-e using LanguageServer, Sockets, SymbolServer;"
             " server = LanguageServer.LanguageServerInstance("
             " stdin, stdout, false,"
             " \"" (lsp-julia--get-root) "\","
             " \"" (lsp-julia--get-depot-path) "\");"
             " server.runlinter = true;"
             " run(server);")))

lsp-julia-root is set to ~/.julia/environments/v1.4

lsp-julia-depot is set to ~/.julia/

The error I get is:

ERROR: MethodError: Cannot `convert` an object of type String to an object of type Function
Closest candidates are:
  convert(::Type{T}, !Matched::T) where T at essentials.jl:171
Stacktrace:
 [1] convert(::Type{Union{Nothing, Function}}, ::String) at ./some.jl:34
 [2] LanguageServer.JSONRPCEndpoints.JSONRPCEndpoint(::Base.PipeEndpoint, ::Base.PipeEndpoint, ::String) at /home/sturm/.julia/packages/LanguageServer/mpNvN/src/jsonrpcendpoint.jl:62
 [3] LanguageServerInstance(::Base.PipeEndpoint, ::Base.PipeEndpoint, ::Bool, ::String, ::String, ::Nothing) at /home/sturm/.julia/packages/LanguageServer/mpNvN/src/languageserverinstance.jl:62 (repeats 2 times)
 [4] top-level scope at none:1

If I instead use the bundled language server that comes with lsp-julia, I get a different error:

[ Info: Started symbol server
[ Info: JSON not stored on disc
ERROR: EOFError: read end of file

stderr from client process:

ERROR: LoadError: MethodError: no method matching is_stdlib(::Pkg.Types.Context, ::Base.UUID)
Stacktrace:
 [1] cache_package(::Pkg.Types.Context, ::Base.UUID, ::Dict{Any,Any}, ::String) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/symbols.jl:215
 [2] cache_package(::Pkg.Types.Context, ::Base.UUID, ::Dict{Any,Any}) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/symbols.jl:190
 [3] top-level scope at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/server.jl:39
in expression starting at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/server.jl:33

Stacktrace:
 [1] request(::SymbolServerProcess, ::Symbol, ::Array{String,1}) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:68
 [2] cache_package(::SymbolServerProcess, ::Array{Base.UUID,1}) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:235
 [3] cache_package at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:229 [inlined]
 [4] load_package_cache(::SymbolServerProcess, ::Base.UUID) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:173
 [5] load_project_packages(::SymbolServerProcess) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:95
 [6] getstore at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:101 [inlined]
 [7] run(::LanguageServerInstance) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/LanguageServer/src/languageserverinstance.jl:36
 [8] top-level scope at none:1
caused by [exception 1]
EOFError: read end of file
Stacktrace:
 [1] read(::Base.PipeEndpoint, ::Type{UInt8}) at ./stream.jl:868
 [2] deserialize at /build/julia/src/julia-1.4.1/usr/share/julia/stdlib/v1.4/Serialization/src/Serialization.jl:735 [inlined]
 [3] deserialize(::Base.Process) at /build/julia/src/julia-1.4.1/usr/share/julia/stdlib/v1.4/Serialization/src/Serialization.jl:722
 [4] request(::SymbolServerProcess, ::Symbol, ::Array{String,1}) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:60
 [5] cache_package(::SymbolServerProcess, ::Array{Base.UUID,1}) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:235
 [6] cache_package at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:229 [inlined]
 [7] load_package_cache(::SymbolServerProcess, ::Base.UUID) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:173
 [8] load_project_packages(::SymbolServerProcess) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:95
 [9] getstore at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/SymbolServer/src/SymbolServer.jl:101 [inlined]
 [10] run(::LanguageServerInstance) at /home/sturm/.emacs.d/elpa/lsp-julia-20200511.1444/languageserver/LanguageServer/src/languageserverinstance.jl:36
 [11] top-level scope at none:1

Process julia-ls stderr finished

Does anyone know what the problem is? Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions