Closed jj1bdx closed 3 years ago
I've been compiling it on OTP-24 release candidates without much of a problem, so that's sort of surprising. Which version of rebar3 are you using?
Is rebar3_hex
in your global plugins?
This must be mix using its own rebar3 which is likely old.
it on OTP-24 release candidates without much of a problem
Me too; I stated this over Slack. The issue got split between Slack and GitHub 😄
using its own rebar3 which is likely old.
I thought about some magic like this, but I don't know enough mix
yet.
@jj1bdx, from the doc.s it seems you can override the rebar3
version.
yeah mix tends to bundle builds and even our latest official release was built with OTP-19 to be compatible with all follow-up versions. By deprecating stacktraces we can build rebar3 on OTP-20 still, but it needs to be built on OTP-21 (or later) to be compatible with OTP-24. Our CI rules have been updated for that, but the version bundled with Mix is much older than this.
The failed configuration was:
% # at my login directory
% ./.mix/rebar3 version
rebar 3.13.1 on Erlang/OTP 23 Erts 11.2.2
After performing mix local.rebar
of Elixir 1.11.4:
% ~/.mix/rebar3 version
rebar 3.14.4 on Erlang/OTP 23 Erts 11.2.2
Then building elixir-ls on OTP 24.0 went fine.
So I guess the reason seemed to be that the rebar3 used by mix was older than it was supposed to be.
Thanks for help to all!
Synopsis: the rebar3 used by mix as
~/.mix/rebar3
was obsolete. Updating the rebar3 bymix local.rebar
solved this issue.When I tried to compile elixir-ls on OTP 24.0 with Elixir 1.11.4, the following error was generated. Compiling elixir-ls on OTP 23.3.4 with Elixir 1.11.4 didn't generate this error and went fine.