Hi, I have some challenges compiling elixir-ls. Iām using Erlang 28.1.1 and Elixir 1.19.2-otp-28 installed with mise on Omarchy 3.1.5. using the latest nvim/lazyvim, I can see the following error generated in the logs in ~/.local/state/nvim/lsp.log.
[ERROR][2025-11-04 11:56:04] ...p/_transport.lua:36 "rpc" "elixir-ls" "stderr" "==> elixir_ls_utils\nCompiling 10 files (.ex)\n"
[ERROR][2025-11-04 11:56:04] ...p/_transport.lua:36 "rpc" "elixir-ls" "stderr" " error: ElixirSense.Core.Metadata.__struct__/1 is undefined, cannot expand struct ElixirSense.Core.Metadata. Make sure the struct name is correct. If the struct name exists and is correct but it still cannot be found, you likely have cyclic module usage in your code\n ā\n 7 ā def get_field_types(%Metadata{} = metadata, mod, include_private) when is_atom(mod) do\n ā ^\n ā\n āā lib/field.ex:7:23: ElixirLS.Utils.Field.get_field_types/3\n\n"
[ERROR][2025-11-04 11:56:04] ...p/_transport.lua:36 "rpc" "elixir-ls" "stderr" "\n== Compilation error in file lib/field.ex ==\n** (CompileError) lib/field.ex: cannot compile module ElixirLS.Utils.Field (errors have been logged)\n (stdlib 7.1) lists.erl:2466: :lists.foldl/3\n"
[ERROR][2025-11-04 11:56:04] ...p/_transport.lua:36 "rpc" "elixir-ls" "stderr" '==> elixir_ls\ncould not compile dependency :elixir_ls, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile elixir_ls --force", update it with "mix deps.update elixir_ls" or clean it with "mix deps.clean elixir_ls"\n'
Any idea what might be going on here?
Also, related question: is elixir-ls still supported, and is it better to switch to expert from now on? What are the pros and cons of using expert vs elixir-ls nowadays?




















