diff options
-rw-r--r-- | .cirrus.yml | 17 | ||||
-rw-r--r-- | src/rebar_prv_install_deps.erl | 15 | ||||
-rw-r--r-- | src/rebar_resource_v2.erl | 12 | ||||
-rw-r--r-- | test/rebar_deps_SUITE.erl | 11 | ||||
-rw-r--r-- | test/rebar_install_deps_SUITE.erl | 11 |
5 files changed, 38 insertions, 28 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index 44c8229..11d4229 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -18,11 +18,12 @@ osx_test_task: ./bootstrap ./rebar3 ct -windows_test_task: - windows_container: - image: cirrusci/windowsservercore:2019 - os_version: 2019 - install_script: choco install -y erlang - test_script: | - ./bootstrap - ./rebar3 ct +# Windows CI appears broken for now and never passes +#windows_test_task: +# windows_container: +# image: cirrusci/windowsservercore:2019 +# os_version: 2019 +# install_script: choco install -y erlang +# test_script: | +# ./bootstrap +# ./rebar3 ct diff --git a/src/rebar_prv_install_deps.erl b/src/rebar_prv_install_deps.erl index 0187b4f..4bd5805 100644 --- a/src/rebar_prv_install_deps.erl +++ b/src/rebar_prv_install_deps.erl @@ -283,7 +283,7 @@ update_seen_dep(AppInfo, _Profile, _Level, Deps, Apps, State, Upgrade, Seen, Loc %% meaning there is no conflict, so don't warn about it. skip; _ -> - warn_skip_deps(Name, Source, State) + warn_skip_deps(AppInfo, State) end; true -> ok @@ -395,8 +395,7 @@ make_relative_to_root(State, Path) when is_list(Path) -> rebar_dir:make_relative_path(Path, Root). fetch_app(AppInfo, State) -> - ?INFO("Fetching ~ts (~p)", [rebar_app_info:name(AppInfo), - rebar_resource_v2:format_source(rebar_app_info:source(AppInfo))]), + ?INFO("Fetching ~ts", [rebar_resource_v2:format_source(AppInfo)]), rebar_fetch:download_source(AppInfo, State). maybe_upgrade(AppInfo, _AppDir, Upgrade, State) -> @@ -404,8 +403,7 @@ maybe_upgrade(AppInfo, _AppDir, Upgrade, State) -> true -> case rebar_fetch:needs_update(AppInfo, State) of true -> - ?INFO("Upgrading ~ts (~p)", [rebar_app_info:name(AppInfo), - rebar_resource_v2:format_source(rebar_app_info:source(AppInfo))]), + ?INFO("Upgrading ~ts", [rebar_resource_v2:format_source(AppInfo)]), rebar_fetch:download_source(AppInfo, State); false -> case Upgrade of @@ -420,11 +418,10 @@ maybe_upgrade(AppInfo, _AppDir, Upgrade, State) -> AppInfo end. -warn_skip_deps(Name, Source, State) -> - Msg = "Skipping ~ts (from ~p) as an app of the same name " +warn_skip_deps(AppInfo, State) -> + Msg = "Skipping ~ts as an app of the same name " "has already been fetched", - Args = [Name, - rebar_resource_v2:format_source(Source)], + Args = [rebar_resource_v2:format_source(AppInfo)], case rebar_state:get(State, deps_error_on_conflict, false) of false -> case rebar_state:get(State, deps_warning_on_conflict, true) of diff --git a/src/rebar_resource_v2.erl b/src/rebar_resource_v2.erl index f032f6e..b7ee760 100644 --- a/src/rebar_resource_v2.erl +++ b/src/rebar_resource_v2.erl @@ -61,14 +61,20 @@ find_resource(Type, Resources) -> find_resource_state(Type, Resources) -> case lists:keyfind(Type, #resource.type, Resources) of - false -> + false -> {error, not_found}; #resource{state=State} -> State end. -format_source({pkg, Name, Vsn, _Hash, _}) -> {pkg, Name, Vsn}; -format_source(Source) -> Source. +format_source(AppInfo) -> + Name = rebar_app_info:name(AppInfo), + case rebar_app_info:source(AppInfo) of + {pkg, _Name, Vsn, _Hash, _} -> + io_lib:format("~ts v~s", [Name, Vsn]); + Source -> + io_lib:format("~ts (from ~p)", [Name, Source]) + end. lock(AppInfo, State) -> resource_run(lock, rebar_app_info:source(AppInfo), [AppInfo], State). diff --git a/test/rebar_deps_SUITE.erl b/test/rebar_deps_SUITE.erl index f9be2a3..58b9742 100644 --- a/test/rebar_deps_SUITE.erl +++ b/test/rebar_deps_SUITE.erl @@ -560,10 +560,13 @@ check_warnings(Warns, [{Name, Vsn} | Rest], Type) -> in_warnings(git, Warns, NameRaw, VsnRaw) -> Name = iolist_to_binary(NameRaw), - 1 =< length([1 || {_, [AppName, {git, _, {_, Vsn}}]} <- Warns, - AppName =:= Name, Vsn =:= VsnRaw]); + Vsn = iolist_to_binary([$",VsnRaw,$"]), + 1 =< length([1 || {_, [[AppName, $\s,$(,$f,$r,$o,$m,$\s,[${,["git",$,, _URL, $,,[${,["tag",$,, AppVsn], $}]],$}],$)]]} <- Warns, + iolist_to_binary(AppName) =:= Name, + iolist_to_binary(AppVsn) =:= Vsn]); in_warnings(pkg, Warns, NameRaw, VsnRaw) -> Name = iolist_to_binary(NameRaw), Vsn = iolist_to_binary(VsnRaw), - 1 =< length([1 || {_, [AppName, {pkg, _, AppVsn}]} <- Warns, - AppName =:= Name, AppVsn =:= Vsn]). + 1 =< length([1 || {_, [[AppName, $\s,$v, AppVsn]]} <- Warns, + iolist_to_binary(AppName) =:= Name, + iolist_to_binary(AppVsn) =:= Vsn]). diff --git a/test/rebar_install_deps_SUITE.erl b/test/rebar_install_deps_SUITE.erl index 96b9d38..81c751b 100644 --- a/test/rebar_install_deps_SUITE.erl +++ b/test/rebar_install_deps_SUITE.erl @@ -481,10 +481,13 @@ check_warnings(Warns, none, _Type) -> in_warnings(git, Warns, NameRaw, VsnRaw) -> Name = iolist_to_binary(NameRaw), - 1 =< length([1 || {_, [AppName, {git, _, {_, Vsn}}]} <- Warns, - AppName =:= Name, Vsn =:= VsnRaw]); + Vsn = iolist_to_binary([$",VsnRaw,$"]), + 1 =< length([1 || {_, [[AppName, $\s,$(,$f,$r,$o,$m,$\s,[${,["git",$,, _URL, $,,[${,["tag",$,, AppVsn], $}]],$}],$)]]} <- Warns, + iolist_to_binary(AppName) =:= Name, + iolist_to_binary(AppVsn) =:= Vsn]); in_warnings(pkg, Warns, NameRaw, VsnRaw) -> Name = iolist_to_binary(NameRaw), Vsn = iolist_to_binary(VsnRaw), - 1 =< length([1 || {_, [AppName, {pkg, _, AppVsn}]} <- Warns, - AppName =:= Name, AppVsn =:= Vsn]). + 1 =< length([1 || {_, [[AppName, $\s,$v, AppVsn]]} <- Warns, + iolist_to_binary(AppName) =:= Name, + iolist_to_binary(AppVsn) =:= Vsn]). |