%% -*- mode: erlang;erlang-indent-level: 2;indent-tabs-mode: nil -*-
%% ex: ts=4 sw=4 ft=erlang et

%% == Erlang Compiler ==
{minimum_otp_vsn, "21"}.

%% Erlang compiler options
{erl_opts,
 [warn_unused_vars,
  ewarn_export_all,
  warn_shadow_vars,
  warn_unused_import,
  warn_unused_function,
  warn_bif_clash,
  warn_unused_record,
  warn_deprecated_function,
  warn_obsolete_guard,
  strict_validation,
  warn_export_vars,
  warn_exported_vars,
  warn_missing_spec,
  warn_untyped_record,
  debug_info]}.

{profiles,
 [{test,
   [{deps, [{katana, "1.0.0"}, {mixer, "1.2.0", {pkg, inaka_mixer}}, {meck, "0.9.2"}]}]}]}.

{ct_compile_opts,
 [warn_unused_vars,
  warn_export_all,
  warn_shadow_vars,
  warn_unused_import,
  warn_unused_function,
  warn_bif_clash,
  warn_unused_record,
  warn_deprecated_function,
  warn_obsolete_guard,
  strict_validation,
  warn_export_vars,
  warn_exported_vars,
  warn_missing_spec,
  warn_untyped_record,
  debug_info]}.

{ct_opts, []}.

{ct_extra_params,
 "-no_auto_compile -dir ebin -logdir log/ct --erl_args -smp enable -boot start_sasl"}.

{edoc_opts,
 [{report_missing_types, true},
  {source_path, ["src"]},
  {report_missing_types, true},
  {todo, true},
  {packages, false},
  {subpackages, false}]}.

{dialyzer,
 [{warnings,
   [race_conditions, unknown, no_return, unmatched_returns, error_handling, underspecs]}]}.

{project_plugins,
 [{rebar3_hex, "~> 6.11.7"},
  {rebar3_format, "~> 1.0.1"},
  {rebar3_lint, "~> 0.5.0"},
  {rebar3_hank, "~> 1.2.2"},
  rebar3_depup,
  covertool]}.

{cover_enabled, true}.

{cover_export_enabled, true}.

{cover_opts, [verbose]}.

{covertool, [{coverdata_files, ["ct.coverdata"]}]}.

{alias,
 [{test,
   [compile,
    format,
    lint,
    hank,
    dialyzer,
    {ct, "--verbose"},
    cover,
    {covertool, "generate"},
    edoc]}]}.

{format, [{files, ["*.config", "src/*", "test/*"]}]}.
