瀏覽代碼

Merge pull request #109 from tsloughter/error_dep_parsing

Error dep parsing
pull/113/head
Fred Hebert 10 年之前
父節點
當前提交
bca0d1f91d
共有 2 個文件被更改,包括 8 次插入5 次删除
  1. +1
    -1
      src/rebar_prv_clean.erl
  2. +7
    -4
      src/rebar_prv_install_deps.erl

+ 1
- 1
src/rebar_prv_clean.erl 查看文件

@ -69,7 +69,7 @@ clean_apps(State, Apps) ->
C = rebar_config:consult(AppDir),
S = rebar_state:new(State, C, AppDir),
?INFO("Cleaning out ~s...~n", [rebar_app_info:name(AppInfo)]),
?INFO("Cleaning out ~s...", [rebar_app_info:name(AppInfo)]),
%% Legacy hook support
rebar_hooks:run_compile_hooks(AppDir, pre_hooks, clean, S),
rebar_erlc_compiler:clean(State, ec_cnv:to_list(rebar_app_info:dir(AppInfo))),

+ 7
- 4
src/rebar_prv_install_deps.erl 查看文件

@ -102,7 +102,7 @@ do(State) ->
end
catch
%% maybe_fetch will maybe_throw an exception to break out of some loops
_:Reason ->
_:{error, Reason} ->
{error, Reason}
end.
@ -114,6 +114,8 @@ find_cycles(Apps) ->
end.
-spec format_error(any()) -> iolist().
format_error({parse_dep, Dep}) ->
io_lib:format("Failed parsing dep ~p~n", [Dep]);
format_error({cycles, Cycles}) ->
Prints = [["applications: ",
[io_lib:format("~s ", [Dep]) || Dep <- Cycle],
@ -325,7 +327,6 @@ handle_dep(State, DepsDir, AppInfo, Locks, Level) ->
AppInfo1 = rebar_app_info:state(AppInfo, S3),
Deps = rebar_state:get(S3, deps, []),
%% Update lock level to be the level the dep will have in this dep tree
NewLocks = [{DepName, Source, LockLevel+Level} ||
{DepName, Source, LockLevel} <- rebar_state:get(S3, {locks, default}, [])],
@ -427,7 +428,10 @@ parse_dep({Name, _Vsn, Source}, {SrcDepsAcc, PkgDepsAcc}, DepsDir, State) when i
parse_dep({Name, Source, Level}, {SrcDepsAcc, PkgDepsAcc}, DepsDir, State) when is_tuple(Source)
, is_integer(Level) ->
Dep = new_dep(DepsDir, Name, [], Source, State),
{[Dep | SrcDepsAcc], PkgDepsAcc}.
{[Dep | SrcDepsAcc], PkgDepsAcc};
parse_dep(Dep, _, _, _) ->
throw(?PRV_ERROR({parse_dep, Dep})).
new_dep(DepsDir, Name, Vsn, Source, State) ->
Dir = ec_cnv:to_list(filename:join(DepsDir, Name)),
@ -439,7 +443,6 @@ new_dep(DepsDir, Name, Vsn, Source, State) ->
end,
C = rebar_config:consult(rebar_app_info:dir(Dep)),
S = rebar_state:new(rebar_state:new(), C, rebar_app_info:dir(Dep)),
Overrides = rebar_state:get(State, overrides, []),
ParentOverrides = rebar_state:overrides(State),
Dep1 = rebar_app_info:state(Dep,

Loading…
取消
儲存