IsRebar3 = case application:get_key(rebar, vsn) of
               {ok, Vsn} ->
                   [MajorVersion|_] = string:tokens(Vsn, "."),
                   (list_to_integer(MajorVersion) >= 3);
               undefined ->
                   false
           end,

Rebar2Deps = [
              {cf, ".*", {git, "https://github.com/project-fifo/cf", {tag, "0.2.2"}}}
             ],

NoDialWarns  = {dialyzer, [{warnings, [no_unknown]}]},
OTPRelease   = erlang:list_to_integer(erlang:system_info(otp_release)),
WarnsRemoved = case OTPRelease<26 of
		   true  -> fun(Config) -> Config end;
		   false -> fun(Config) -> lists:keystore(dialyzer, 1, Config, NoDialWarns) end
	       end,

case IsRebar3 of
    true -> WarnsRemoved(CONFIG);
    false ->
        lists:keyreplace(deps, 1, WarnsRemoved(CONFIG), {deps, Rebar2Deps})
end.
