Open starbelly opened 1 year ago
Originally reported by liveforeverx in https://github.com/Supersonido/rebar_mix/issues/15
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_BUILD_PATH
build_path
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).
Originally reported by liveforeverx in https://github.com/Supersonido/rebar_mix/issues/15
Environment
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_BUILD_PATH
specifies only thebuild_path
prefix and that env+target are still concatenatedSo 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).