Current section
Files
Jump to
Current section
Files
rebar.config
%% vim:ft=erlang:
{minimum_otp_vsn, "23.0"}.
%% Dependency pinning must be updated in mix.exs too.
{deps, [{ra, "2.0.2"},
%% PropEr isn't really a dependency. However, in order to be able to
%% run Dialyzer on the testsuites, the `prop_*` modules must compile
%% successfully first. Unfortunately there is no profiles dedicated to
%% Dialyzer.
%%
%% This application is neither added to mix.exs nor to khepri.app.src.
{proper, "1.4.0"}]}.
{project_plugins, [rebar3_proper]}.
{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]}]}.
%% In order to run Dialyzer on testsuites, we have to add `test` to the source
%% directories, even though this is semantically incorrect.
%%
%% The downside is that PropEr becomes a regular dependency (even when this
%% library is used as a dependency and never tested) and test modules are
%% compiled by default...
%%
%% Once and if Rebar grows support for Dialyzer on tests, we can get rid of all
%% this.
{extra_src_dirs, ["test"]}.
{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},
%% The CSS comes from the following Git repository:
%% https://github.com/sindresorhus/github-markdown-css
{stylesheet, "github-markdown.css"},
{layout, khepri_edoc_wrapper},
{doclet, khepri_edoc_wrapper},
{xml_export, khepri_edoc_export}]}.
{alias, [{check, [xref,
{eunit, "-c"},
{proper, "-c"},
{cover, "-v --min_coverage=75"},
dialyzer,
edoc]}]}.