Skip to content

LanguageServer crashing #708

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!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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