Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin doesn't work with upcoming Elixir v1.10 #15

Open
liveforeverx opened this issue Jan 3, 2020 · 2 comments
Open

Plugin doesn't work with upcoming Elixir v1.10 #15

liveforeverx opened this issue Jan 3, 2020 · 2 comments

Comments

@liveforeverx
Copy link

Environment

  • Elixir & Erlang/OTP versions (elixir --version): Elixir 1.10.0-dev (46f6ba5) (compiled with Erlang/OTP 22)
  • Operating system: Mac OS

Current behavior

Creating new application and using rebar_mix plugin for example to include jason library, like this in rebar.config:

{erl_opts, [debug_info]}.
{deps, [
         {jason, "1.1.2"}
]}.

{plugins, [rebar_mix]}.
{provider_hooks, [
  {pre,  [{compile, {mix, find_elixir_libs}}]},
  {post, [{compile, {mix, consolidate_protocols}}]}
]}.

{shell, [
    {apps, [mylib]}
]}.

Expected behavior

Jason compiled.

Jason compiles with Elixir v1.9, but with upcoming Elixir v1.10 it produces an error:

rebar3 shell
...
Generated decimal app
===> Failed to read required .app file for processing the application 'decimal': no such file or directory

Tracing back it is dependent on this change:

* [Mix.Project] Make sure `MIX_BUILD_PATH` specifies only the `build_path` prefix and that env+target are still concatenated

So probably this change could fix this:

https://github.com/Supersonido/rebar_mix/blob/master/src/rebar_mix_builder.erl#L14-L15

to:

{env, [{"MIX_BUILD_PATH", filename:join(AppDir, "../../../")},
    {"MIX_ENV", "default"}]}]) of

Or getting MIX_ENV from profiles (I see multiple profiles, but I don't know, which one to use).

@tsloughter
Copy link
Collaborator

Thanks. That fix isn't completely right though, we need to tell it use use prod MIX_ENV and to use a specific build path that is unrelated to its ENV.

@tsloughter
Copy link
Collaborator

Issue was found and I talked to Jose, he is resolving it. It happened because of elixir-lang/elixir#9188

Thanks for catching this early!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants