Browse Source

Merge pull request #123 from tsloughter/pkg_deps

package dep names are binary, fix install deps and related tests
pull/128/head
Tristan Sloughter 10 years ago
parent
commit
4408d8e502
2 changed files with 10 additions and 10 deletions
  1. +9
    -9
      src/rebar_digraph.erl
  2. +1
    -1
      src/rebar_prv_install_deps.erl

+ 9
- 9
src/rebar_digraph.erl View File

@ -40,15 +40,15 @@ add(Graph, {PkgName, Deps}) ->
end, end,
lists:foreach(fun(DepName) -> lists:foreach(fun(DepName) ->
case DepName of
{Name, _Vsn} ->
Name;
Name ->
Name
end,
V3 = case digraph:vertex(Graph, Name) of
Name1 = case DepName of
{Name, _Vsn} ->
ec_cnv:to_binary(Name);
Name ->
ec_cnv:to_binary(Name)
end,
V3 = case digraph:vertex(Graph, Name1) of
false -> false ->
digraph:add_vertex(Graph, Name);
digraph:add_vertex(Graph, Name1);
{V2, []} -> {V2, []} ->
V2 V2
end, end,
@ -112,5 +112,5 @@ names_to_apps(Names, Apps) ->
-spec find_app_by_name(atom(), [rebar_app_info:t()]) -> {ok, rebar_app_info:t()} | error. -spec find_app_by_name(atom(), [rebar_app_info:t()]) -> {ok, rebar_app_info:t()} | error.
find_app_by_name(Name, Apps) -> find_app_by_name(Name, Apps) ->
ec_lists:find(fun(App) -> ec_lists:find(fun(App) ->
binary_to_atom(rebar_app_info:name(App), utf8) =:= binary_to_atom(Name, utf8)
rebar_app_info:name(App) =:= Name
end, Apps). end, Apps).

+ 1
- 1
src/rebar_prv_install_deps.erl View File

@ -226,7 +226,7 @@ package_to_app(DepsDir, Packages, {Name, Vsn}) ->
error -> error ->
{error, missing_package}; {error, missing_package};
{ok, P} -> {ok, P} ->
PkgDeps = [{atom_to_binary(PkgName, class="n">utf8), list_to_binary(PkgVsn)}
PkgDeps = [{PkgName, PkgVsn}
|| {PkgName,PkgVsn} <- proplists:get_value(<<"deps">>, P, [])], || {PkgName,PkgVsn} <- proplists:get_value(<<"deps">>, P, [])],
Link = proplists:get_value(<<"link">>, P, ""), Link = proplists:get_value(<<"link">>, P, ""),
{ok, AppInfo} = rebar_app_info:new(Name, Vsn), {ok, AppInfo} = rebar_app_info:new(Name, Vsn),

Loading…
Cancel
Save