%% keep debug info in beam file
{erl_opts, [debug_info]}.

%% no deps
{deps, []}.

%% Note: the use of ex_edoc requires Erlang/OTP 27, the rest of the code
%%       can probably run on older Erlang versions
{minimum_otp_vsn, "27"}.

%% needed by `cover` in `make test`
{cover_enabled, true}.

%% ------------------------------------------------------------------------------
%% Use `project_plugins` rather than `plugins`, for deps that should not be
%% pulled in as part of the final lib (nested_access). These deps are instead
%% used by rebar3 / make.
{project_plugins, [
                   rebar3_ex_doc,
                   %% elvis - specify a (version) tag, as elvis.config may need to change
                   %% if the elvis version changes
                   {rebar3_lint, "4.0.0"},

                   %% needed to submit repo to hex.pm
                   rebar3_hex
                  ]
}.

{ex_doc, [
          {extras, ["README.md",
                    {"LICENSE.md", #{title => "License"}}
                   ]},
          {main, "README.md"},
          {source_url, "https://github.com/hokan-st/nested_access"}
         ]}.

%% tell hex how to generate docs hosted on hex.pm
{hex, [{doc, ex_doc}]}.

%% ------------------------------------------------------------------------------
{alias, [
         %% do static checks
         {check, [
                  xref,
                  dialyzer,
                  lint      % elvis
                 ]
         }
        ]
}.

%% ------------------------------------------------------------------------------
{profiles, [
            {benchmark, [
                         {extra_src_dirs, ["benchmark"]}
                        ]}
           ]}.
