%% vim:ft=erlang:
{minimum_otp_vsn, "23.0"}.

%% Dependency pinning must be updated in mix.exs too.
{deps, [{ra, "2.0.4"}]}.

{project_plugins, [rebar3_proper,
                   rebar3_hex,
                   {rebar3_edoc_extensions, "1.0.0"}]}.

{erl_opts, [debug_info,
            warnings_as_errors]}.

{dialyzer, [{plt_extra_apps, [edoc, eunit, inets, mnesia, proper, ssl, xmerl]},
            {warnings, [race_conditions,
                        underspecs,
                        unknown,
                        unmatched_returns]}]}.

{xref_checks, [undefined_function_calls,
               undefined_functions,
               locals_not_used,
               deprecated_function_calls,
               deprecated_functions]}.

{cover_enabled, true}.
{cover_print_enabled, true}.
{cover_export_enabled, true}.

{edoc_opts, [{preprocess, true},
             {includes, ["."]},
             {sort_functions, false}]}.

{alias, [{check, [xref,
                  {eunit, "-c"},
                  {proper, "-c"},
                  {cover, "-v --min_coverage=75"},
                  %% FIXME: Dialyzer is only executed on the library by
                  %% default, not its testsuite. To run Dialyzer on the
                  %% testsuites as well, the following command must be used:
                  %%   rebar as test dialyzer
                  dialyzer,
                  edoc]}]}.

{profiles,
 [{test,
   [{deps, [{proper, "1.4.0"}]}]}]}.

{hex, [{doc, edoc}]}.
