%% == Erlang Compiler ==

{erl_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
]}.

%% == Dependencies ==

{profiles, [
  {test, [
    {deps, [
      {katana_test, "0.1.1"},
      {shotgun, "0.2.3"}
    ]}
  ]},
  {shell, [
    {deps, [
      {sync, {git, "https://github.com/rustyio/sync.git", {ref, "9c78e7b"}}}
    ]}
  ]}
]}.

{deps,
  [
   {cowboy,         "1.0.4"},
   {jiffy,          "0.14.7"},
   {trails,         "0.2.0"},
   {cowboy_swagger, "1.1.0"},
   {mixer,          "0.1.5", {pkg, inaka_mixer}},
   {iso8601,        "1.1.2", {pkg, inaka_iso8601}},
   {sumo_db,        "0.6.1"}
  ]
}.

%% == 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
]}.

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

%% == Cover ==

{cover_enabled, true}.

{cover_opts, [verbose]}.

%% == EDoc ==

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

%% == Xref ==
{xref_checks, [undefined_function_calls, locals_not_used, deprecated_function_calls]}.

%% == Dialyzer ==

{dialyzer, [
  {plt_apps, top_level_deps},
  {plt_location, local}
]}.

{overrides, [{override, jiffy, [{plugins, [pc]}, {artifacts, ["priv/jiffy.so"]}, {provider_hooks, [{post, [{compile, {pc, compile}}, {clean, {pc, clean}}]}]}]}]}.
