{erl_opts, [debug_info, warn_export_vars, warn_shadow_vars, warn_obsolete_guard]}.

{plugins, [
           {rebar3_elixir, "~> 0.2.0"},
           rebar3_hex,
           rebar3_lint
          ]}.

{elixir_bindings, [vice, {vice_subtitles, [{as, "Vice.Subtitles"}]}]}.

{deps, [
  {lager, "~> 3.2.0"},
  {bucs,  "~> 1.0.11"},
  {doteki, "~> 1.0.6"},
  {poolgirl, "~> 1.1.3"},
  {jsx, "~> 2.8.0"}
 ]}.

{pre_hooks, [{compile, "make -C c_src -f Makefile.build"}]}.

{eunit_opts, [no_tty, {report, {unite_compact, [profile]}}]}.

{profiles, [
            {test, [
                    {deps, [
                            meck,
                            {unite, "", {git, "git://github.com/basho/unite.git", {branch, "master"}}}
                           ]}
                   ]},
            {docs, [
                   {deps, [
                           {edown, {git, "https://github.com/botsunit/edown.git", {branch, "master"}}}
                          ]},
                   {edoc_opts, [
                                {doclet, edown_doclet}
                                , {app_default, "http://www.erlang.org/doc/man"}
                                , {source_path, ["src"]}
                                , {overview, "overview.edoc"}
                                , {stylesheet, ""}
                                , {image, ""}
                                , {top_level_readme, {"./README.md", "https://github.com/G-Corp/vice"}}
                               ]}
                   ]},
            {release, [
                       {elvis, [
                        #{dirs => ["."],
                          filter => "rebar.config",
                          rules => [{elvis_project, no_deps_master_rebar, []}]}]}
                      ]}
           ]}.

{elvis,
   [#{dirs => ["src", "test"],
      filter => "*.erl",
      ignore => [vice_prv_subs_parser],
      rules => [{elvis_style, line_length, #{limit => 180}},
                {elvis_style, no_tabs},
                {elvis_style, no_trailing_whitespace},
                {elvis_style, macro_names},
                {elvis_style, macro_module_names},
                {elvis_style, dont_repeat_yourself, #{min_complexity => 25}},
                {elvis_style, operator_spaces, #{rules => [{right, ","},
                                                           {right, "++"},
                                                           {left, "++"}]}}]}]}.

{xref_warnings, false}.
{xref_extra_paths, []}.
{xref_ignores, [{vice_prv_subs_parser, return_error, 2}]}.
{xref_checks, [undefined_function_calls
               , undefined_functions
               , locals_not_used
%               , exports_not_used
               , deprecated_function_calls
               , deprecated_functions]}.

{dialyzer, [{plt_prefix, "vice"}]}.

