您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

23 行
767 B

  1. -module(rebar_packages).
  2. -export([get_packages/1]).
  3. -include("rebar.hrl").
  4. -spec get_packages(rebar_state:t()) -> {list(), rlx_depsolver:t()}.
  5. get_packages(State) ->
  6. RebarDir = rebar_state:get(State, global_rebar_dir, filename:join(os:getenv("HOME"), ".rebar")),
  7. PackagesFile = filename:join(RebarDir, "packages"),
  8. case ec_file:exists(PackagesFile) of
  9. true ->
  10. try
  11. {ok, Binary} = file:read_file(PackagesFile),
  12. binary_to_term(Binary)
  13. catch
  14. _:_ ->
  15. ?ERROR("Bad packages index, try to fix with `rebar update`~n", []),
  16. {[], rlx_depsolver:new_graph()}
  17. end;
  18. false ->
  19. {[], rlx_depsolver:new_graph()}
  20. end.