%% Elvis config uses maps, but they are not available in Erlang < 17
case erlang:is_builtin(erlang, is_map, 1) of
    true ->
        [{elvis,
          [maps:from_list(
             [{dirs, ["src", "src/*"]},
              {include_dirs, ["include"]},
              {filter, "*.erl"},
              {ruleset, erl_files},
              {rules,
                 [{elvis_style, line_length, maps:from_list([{limit, 120}])},
                  {elvis_style, god_modules, maps:from_list([{limit, 40}])},
                  {elvis_style, state_record_and_type, disable} % epgsql_sock
                 ]}
              ])
          ]
         } | CONFIG];
    false -> CONFIG
end.
