diff options
author | Fred Hebert <mononcqc@ferd.ca> | 2015-08-23 16:46:07 +1200 |
---|---|---|
committer | Fred Hebert <mononcqc@ferd.ca> | 2015-08-23 16:46:07 +1200 |
commit | 725e2e9d255c7c2f8c680f60eb1b82284d55a333 (patch) | |
tree | 92a990b9718c6107a9032e9409a26f373e8579a1 /src/rebar_app_discover.erl | |
parent | 691662c794401b1061164710cd35c9a1000e80a1 (diff) | |
parent | 3c92505d49002bf1e610b0bd6585fe22d99ed013 (diff) |
Merge pull request #739 from tsloughter/master
don't store deps list with duplicate in state
Diffstat (limited to 'src/rebar_app_discover.erl')
-rw-r--r-- | src/rebar_app_discover.erl | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/rebar_app_discover.erl b/src/rebar_app_discover.erl index 8b1e58e..2b1c767 100644 --- a/src/rebar_app_discover.erl +++ b/src/rebar_app_discover.erl @@ -26,12 +26,13 @@ do(State, LibDirs) -> State1 = lists:foldl(fun(Profile, StateAcc) -> ProfileDeps = rebar_state:get(StateAcc, {deps, Profile}, []), ProfileDeps2 = rebar_utils:tup_dedup(rebar_utils:tup_sort(ProfileDeps)), + StateAcc1 = rebar_state:set(StateAcc, {deps, Profile}, ProfileDeps2), ParsedDeps = parse_profile_deps(Profile ,TopLevelApp ,ProfileDeps2 - ,StateAcc - ,StateAcc), - rebar_state:set(StateAcc, {parsed_deps, Profile}, ParsedDeps) + ,StateAcc1 + ,StateAcc1), + rebar_state:set(StateAcc1, {parsed_deps, Profile}, ParsedDeps) end, State, lists:reverse(CurrentProfiles)), %% Handle sub project apps deps @@ -109,7 +110,8 @@ handle_profile(Profile, Name, AppState, State) -> %% to be included in the parsed deps NewDeps = ProfileDeps2 -- TopLevelProfileDeps, ParsedDeps = parse_profile_deps(Profile, Name, NewDeps, AppState, State1), - rebar_state:set(State1, {parsed_deps, Profile}, TopParsedDeps++ParsedDeps). + State2 = rebar_state:set(State1, {deps, Profile}, ProfileDeps2), + rebar_state:set(State2, {parsed_deps, Profile}, TopParsedDeps++ParsedDeps). parse_profile_deps(Profile, Name, Deps, AppState, State) -> DepsDir = rebar_prv_install_deps:profile_dep_dir(State, Profile), |