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

%% == Erlang Compiler ==

%% Erlang compiler options
{erl_opts, [ warn_unused_vars
           , warnings_as_errors
           , 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
           , {parse_transform, lager_transform}
           ]}.

%% == Dependencies ==

{deps, [ {lager,   "3.2.1"}
       , {sumo_db, "0.6.1"}
       , {emysql,  "0.4.4", {pkg, inaka_emysql}}
       ]}.

%% == Profiles ==

{profiles, [
  {test, [
    {deps, [
      {katana_test, "0.1.1"},
      {mixer, "0.1.5", {pkg, inaka_mixer}}
    ]}
  ]}
]}.

%% == Common Test ==

{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,
  {parse_transform, lager_transform}
]}.

{ct_opts, [
  {sys_config, ["test/test.config"]}
]}.

%% == Cover ==

{cover_enabled, true}.

{cover_opts, [verbose]}.

%% == Dialyzer ==

{dialyzer, [ {warnings, [ no_return
                        , unmatched_returns
                        , error_handling
                        ]}
           , {plt_apps, top_level_deps}
           , {plt_extra_apps, []}
           , {plt_location, local}
           , {base_plt_apps, [stdlib, kernel]}
           , {base_plt_location, global}]}.

%% == Shell ==

{shell, [{apps, [sumo_db_mysql]}]}.
