{deps, []}.

{project_plugins, [
    {rebar3_hex, "~> 7.0.1"},
    {rebar3_format, "~> 1.0.1"},
    {erlfmt, "~> 1.0.0"},
    {rebar3_ex_doc, "~> 0.2.9"},
    {rebar3_lint, "~> 1.0.2"},
    {rebar3_hank, "~> 1.2.2"}
]}.

{erl_opts, [
    warn_unused_vars,
    warn_shadow_vars,
    warn_unused_import,
    warn_obsolete_guard,
    debug_info
]}.

{dialyzer, [
    {warnings, [error_handling, underspecs, unknown, unmatched_returns]},
    {plt_extra_apps, [common_test]}
]}.

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

{pre_hooks, [
    {"(linux|darwin|solaris)", compile, "make -C c_src"},
    {"(freebsd)", compile, "gmake -C c_src"}
]}.

{post_hooks, [
    {"(linux|darwin|solaris)", clean, "make -C c_src clean"},
    {"(freebsd)", clean, "gmake -C c_src clean"}
]}.

{erl_opts, [
    warn_unused_vars, warn_shadow_vars, warn_unused_import, warn_obsolete_guard, debug_info
]}.

{ex_doc, [
    {extras, [
        {'README.md', #{title => <<"Overview">>}},
        {'LICENSE.md', #{title => <<"License">>}}
    ]},
    {main, "readme"},
    {homepage_url, <<"https://github.com/kafka4beam/sasl_auth">>},
    {source_url, <<"https://github.com/kafka4beam/sasl_auth">>}
]}.

{format, [
    {files, ["src/*.erl", "include/*.hrl"]},
    {formatter, erlfmt_formatter},
    {options, #{print_width => 120, ignore_pragma => true}}
]}.

{profiles, [
    {test, [
        {erl_opts, [nowarn_export_all]}
    ]}
]}.

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

{cover_enabled, true}.
{cover_opts, [verbose]}.

{alias, [
    {test, [ct, {cover, "-v"}]},
    {check, [hank, xref, dialyzer]}
]}.
