mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-28 16:34:13 +01:00
rebar.config.script: Support relaxed dependency version (#4192)
Instead of adding another element to the tuple, let's reuse the second element, which was used only by rebar2, and always has ".*" as value.
This commit is contained in:
parent
0345f798bd
commit
1a63443e02
@ -219,20 +219,35 @@ AppendList2 = fun(Append) ->
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
Rebar3DepsFilter =
|
% Convert our rich deps syntax to rebar2 format:
|
||||||
|
% https://github.com/rebar/rebar/wiki/Dependency-management
|
||||||
|
Rebar2DepsFilter =
|
||||||
fun(DepsList, GitOnlyDeps) ->
|
fun(DepsList, GitOnlyDeps) ->
|
||||||
lists:map(fun({DepName, _, {git, _, {tag, Version}}} = Dep) ->
|
lists:map(fun({DepName, _HexVersion, Source}) ->
|
||||||
case lists:member(DepName, GitOnlyDeps) of
|
{DepName, ".*", Source}
|
||||||
true ->
|
|
||||||
Dep;
|
|
||||||
_ ->
|
|
||||||
{DepName, Version}
|
|
||||||
end;
|
|
||||||
(Dep) ->
|
|
||||||
Dep
|
|
||||||
end, DepsList)
|
end, DepsList)
|
||||||
end,
|
end,
|
||||||
|
|
||||||
|
% Convert our rich deps syntax to rebar3 version definition format:
|
||||||
|
% https://rebar3.org/docs/configuration/dependencies/#dependency-version-handling
|
||||||
|
% https://hexdocs.pm/elixir/Version.html
|
||||||
|
Rebar3DepsFilter =
|
||||||
|
fun(DepsList, GitOnlyDeps) ->
|
||||||
|
lists:map(fun({DepName, HexVersion, {git, _, {tag, GitVersion}} = Source}) ->
|
||||||
|
case {lists:member(DepName, GitOnlyDeps), HexVersion == ".*"} of
|
||||||
|
{true, _} ->
|
||||||
|
{DepName, ".*", Source};
|
||||||
|
{false, true} ->
|
||||||
|
{DepName, GitVersion};
|
||||||
|
{false, false} ->
|
||||||
|
{DepName, HexVersion}
|
||||||
|
end;
|
||||||
|
({DepName, _HexVersion, Source}) ->
|
||||||
|
{DepName, ".*", Source}
|
||||||
|
end, DepsList)
|
||||||
|
end,
|
||||||
|
|
||||||
|
|
||||||
DepAlts = fun("esip") -> ["esip", "p1_sip"];
|
DepAlts = fun("esip") -> ["esip", "p1_sip"];
|
||||||
("xmpp") -> ["xmpp", "p1_xmpp"];
|
("xmpp") -> ["xmpp", "p1_xmpp"];
|
||||||
("fast_xml") -> ["fast_xml", "p1_xml"];
|
("fast_xml") -> ["fast_xml", "p1_xml"];
|
||||||
@ -423,6 +438,8 @@ Rules = [
|
|||||||
ProcessRelx, [], []},
|
ProcessRelx, [], []},
|
||||||
{[deps], [floating_deps], true,
|
{[deps], [floating_deps], true,
|
||||||
ProcessFloatingDeps, [], []},
|
ProcessFloatingDeps, [], []},
|
||||||
|
{[deps], [gitonly_deps], (not IsRebar3),
|
||||||
|
Rebar2DepsFilter, [], []},
|
||||||
{[deps], [gitonly_deps], IsRebar3,
|
{[deps], [gitonly_deps], IsRebar3,
|
||||||
Rebar3DepsFilter, [], []},
|
Rebar3DepsFilter, [], []},
|
||||||
{[deps], SystemDeps /= false,
|
{[deps], SystemDeps /= false,
|
||||||
|
Loading…
Reference in New Issue
Block a user