elixir-lsp / coc-elixir

Elixir language server extension based on elixir-ls for coc.nvim
MIT License
168 stars 11 forks source link

coc-elixir crashing on Elixir 1.16 #75

Closed avillen closed 8 months ago

avillen commented 9 months ago

Hi 👋

Building coc-elixir on Elixir 1.16.0 is now crashing. It fails because of this error:

** (UndefinedFunctionError) function Mix.Dep.load_on_environment/1 is undefined or private
    (mix 1.16.0) Mix.Dep.load_on_environment([env: :dev])
    (mix_task_archive_deps 0.5.0) lib/mix/tasks/archive/build.deps.ex:61: Mix.Tasks.Archive.Build.Deps.list/1
    (mix_task_archive_deps 0.5.0) lib/mix/tasks/archive/build.deps.ex:42: Mix.Tasks.Archive.Build.Deps.build_archives/1
    (mix 1.16.0) lib/mix/task.ex:478: anonymous fn/3 in Mix.Task.run_task/5
    (elixir_ls_utils 0.19.0) lib/mix.tasks.elixir_ls.release.ex:17: Mix.Tasks.ElixirLs.Release.run/1
    (mix 1.16.0) lib/mix/task.ex:478: anonymous fn/3 in Mix.Task.run_task/5
    (mix 1.16.0) lib/mix/cli.ex:96: Mix.CLI.run_task/2
    /Users/alvaro.villen/.asdf/installs/elixir/1.16.0/bin/mix:2: (file)

It looks like the Mix.Dep.load_on_environment/1 was removed in the new Elixir release on this commit https://github.com/elixir-lang/elixir/commit/d46fa4b0426525e5fa492e9a98dcbbb89034508f.

I'm following the next steps to reproduce the issue and it fails on the latest step:

git clone https://github.com/elixir-lsp/elixir-ls.git ~/.elixir-ls
cd ~/.elixir-ls
mix deps.get && mix compile && mix elixir_ls.release -o release
avillen commented 8 months ago

It looks like using mix deps.get && mix compile && mix elixir_ls.release2 -o release in the latest step fixed my issue. Closing 😄