ex_admin
ex_admin copied to clipboard
Following guide creates error
Versions
Erlang/OTP 20 [erts-9.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false]
Elixir 1.5.2
Error
mix deps.compile
== Compilation error in file lib/ex_admin/gettext.ex ==
** (CompileError) Elixir.ExAdmin.Gettext: function lgettext/4+1688:
Internal consistency check failed - please report this bug.
Instruction: {test,bs_match_string,{f,561},[{x,6},48,{string,"rofile"}]}
Error: {no_bsm_context,{x,6}}:
(stdlib) lists.erl:1338: :lists.foreach/2
(stdlib) erl_eval.erl:670: :erl_eval.do_apply/6
(elixir) lib/kernel/parallel_compiler.ex:121: anonymous fn/4 in Kernel.ParallelCompiler.spawn_compilers/1
could not compile dependency :ex_admin, "mix compile" failed. You can recompile this dependency with "mix deps.compile ex_admin", update it with "mix deps.update ex_admin" or clean it with "mix deps.clean ex_admin"
Same issue with my compile phase
Help!!!
@StephanMeijer I made some test. In my opinion, it's not a ex_admin bug, I switched the erlang version to 19.3.6 and this bug disappear. I also tested Erlang/OTP 20 [erts-9.1.2] and it works fine. However it does not work on Erlang/OTP 20 [erts-9.1]
Erlang/OTP 19 [erts-8.3.5] [source] [64-bit] [smp:2:2] [async-threads:10] [hipe] [kernel-poll:false] Eshell V8.3.5 (abort with ^G)
So whats the solution to this? Just downgrade Erlang and wait for next version of otp?
Confirmed it is an OTP bug and has been reported. It’s fixed in Erlang 20.1.3
There's no official Debian release containing the fix (latest is erts-9.1), how can I get the latest version on Debian ?
Use a version manager like asdf that allows you to pull from the GitHub repo. Not sure if asdf supports vanilla Debian, it supports Ubuntu. You can also download the tagged version of the code and use the compile and install from source instructions on Erlangs site to manually install it.
asdf surely supports debian.
did anyone manage to compile their own updated asdf-erlang (>=20.1.3) plugin to get around this bug? :) would appreciate some pointers, or better yet a link. :)
Add this line to your .tools-version file
erlang ref:OTP-20.1.3
Then run asdf install.
It’ll install the tagged version of Erlang. They may have already released the bug fix so 20.1.4 or 20.2 might be out which might be a better option.