{erl_opts, [debug_info]}.

%% evoq-testkit is a test-support library: its purpose is to test evoq
%% aggregates, so evoq + mem-evoq + reckon_gater are genuine (not
%% test-profile) dependencies. Consumers add evoq_testkit to their OWN
%% test profile.
%%
%% Dependency DAG (no cycle): evoq_testkit -> evoq
%%                            evoq_testkit -> mem_evoq -> evoq
%%                            evoq_testkit -> reckon_gater
{deps, [
    {evoq, "~> 1.19"},
    {mem_evoq, "~> 0.1"},
    {reckon_gater, "~> 2.1"}
]}.

{project_plugins, [rebar3_ex_doc, rebar3_hex, rebar3_lint]}.

%% Elvis style rules — shared macula_min ruleset (mirrors evoq/reckon-db).
%% Targets deep nesting, nested try/catch, if-expressions. Run `rebar3 lint`.
{elvis, [
    {rulesets, #{
        macula_min => [
            {elvis_style, no_deep_nesting, #{level => 2}},
            {elvis_style, no_nested_try_catch, #{}},
            {elvis_style, no_if_expression, #{}}
        ]
    }},
    {config, [
        #{files => ["src/**/*.erl"], ruleset => macula_min}
    ]}
]}.

{ex_doc, [
    {extras, [<<"README.md">>, <<"CHANGELOG.md">>, <<"LICENSE">>]},
    {main, <<"README.md">>},
    {source_url, <<"https://codeberg.org/reckon-db-org/evoq-testkit">>}
]}.

{hex, [{doc, #{provider => ex_doc}}]}.
