summaryrefslogtreecommitdiff
path: root/src/rebar_app_discover.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/rebar_app_discover.erl')
-rw-r--r--src/rebar_app_discover.erl22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/rebar_app_discover.erl b/src/rebar_app_discover.erl
index 03bb96a..a0b6d8c 100644
--- a/src/rebar_app_discover.erl
+++ b/src/rebar_app_discover.erl
@@ -26,7 +26,7 @@ do(State, LibDirs) ->
%% Handle top level deps
State1 = lists:foldl(fun(Profile, StateAcc) ->
ProfileDeps = rebar_state:get(StateAcc, {deps, Profile}, []),
- ProfileDeps2 = rebar_utils:tup_dedup(rebar_utils:tup_sort(ProfileDeps)),
+ ProfileDeps2 = rebar_utils:tup_dedup(ProfileDeps),
StateAcc1 = rebar_state:set(StateAcc, {deps, Profile}, ProfileDeps2),
ParsedDeps = parse_profile_deps(Profile
,TopLevelApp
@@ -73,7 +73,7 @@ format_error({missing_module, Module}) ->
io_lib:format("Module defined in app file missing: ~p~n", [Module]).
merge_deps(AppInfo, State) ->
- Default = rebar_state:default(State),
+ Default = reset_hooks(rebar_state:default(State)),
C = project_app_config(AppInfo, State),
AppInfo0 = rebar_app_info:update_opts(AppInfo, Default, C),
@@ -97,10 +97,9 @@ handle_profile(Profile, Name, AppInfo, State) ->
TopParsedDeps = rebar_state:get(State, {parsed_deps, Profile}, {[], []}),
TopLevelProfileDeps = rebar_state:get(State, {deps, Profile}, []),
AppProfileDeps = rebar_app_info:get(AppInfo, {deps, Profile}, []),
- AppProfileDeps2 = rebar_utils:tup_dedup(rebar_utils:tup_sort(AppProfileDeps)),
- ProfileDeps2 = rebar_utils:tup_dedup(rebar_utils:tup_umerge(
- rebar_utils:tup_sort(TopLevelProfileDeps)
- ,rebar_utils:tup_sort(AppProfileDeps2))),
+ AppProfileDeps2 = rebar_utils:tup_dedup(AppProfileDeps),
+ ProfileDeps2 = rebar_utils:tup_dedup(rebar_utils:tup_umerge(TopLevelProfileDeps
+ ,AppProfileDeps2)),
State1 = rebar_state:set(State, {deps, Profile}, ProfileDeps2),
%% Only deps not also specified in the top level config need
@@ -131,15 +130,16 @@ maybe_reset_hooks(C, Dir, State) ->
case ec_file:real_dir_path(rebar_dir:root_dir(State)) of
Dir ->
C1 = proplists:delete(provider_hooks, C),
- proplists:delete(post_hooks, proplists:delete(pre_hooks, C1));
+ C2 = proplists:delete(artifacts, C1),
+ proplists:delete(post_hooks, proplists:delete(pre_hooks, C2));
_ ->
C
end.
-%% reset_hooks(Opts) ->
-%% lists:foldl(fun(Key, OptsAcc) ->
-%% rebar_utils:set(OptsAcc, Key, [])
-%% end, Opts, [post_hooks, pre_hooks, provider_hooks]).
+reset_hooks(Opts) ->
+ lists:foldl(fun(Key, OptsAcc) ->
+ rebar_utils:set(OptsAcc, Key, [])
+ end, Opts, [post_hooks, pre_hooks, provider_hooks, artifacts]).
-spec all_app_dirs(list(file:name())) -> list(file:name()).
all_app_dirs(LibDirs) ->