[ {elvis, [ {config, [ #{ dirs => ["src", "include", "test"], filter => "*.erl", ruleset => erl_files, rules => [ % common conventions {elvis_text_style, line_length, #{limit => 120}}, {elvis_style, nesting_level, #{level => 3}}, {elvis_style, no_if_expression, disable}, {elvis_style, state_record_and_type, disable}, % woody_erlang specific {elvis_style, function_naming_convention, #{regex => "^([a-z][a-z0-9_]*_?)*$"}}, {elvis_style, atom_naming_convention, #{regex => "^([a-z][a-zA-Z0-9_]*_?)*$"}}, {elvis_style, macro_names, #{ignore => [woody_transport_opts_SUITE]}}, {elvis_style, macro_module_names, disable}, {elvis_style, invalid_dynamic_call, #{ ignore => [ woody_event_formatter, woody_event_handler, woody_util ] }}, {elvis_style, no_debug_call, #{ ignore => [ woody_ssl_SUITE, woody_tests_SUITE, woody_transport_opts_SUITE, woody_ct_event_h, benchmark_memory_pressure ] }}, {elvis_style, god_modules, #{limit => 25, ignore => [woody_tests_SUITE]}}, {elvis_style, dont_repeat_yourself, #{ min_complexity => 17, ignore => [woody_test_thrift, woody_tests_SUITE] }} ] }, #{ dirs => ["."], filter => "Makefile", ruleset => makefiles }, #{ dirs => ["."], filter => "elvis.config", ruleset => elvis_config }, #{ dirs => ["."], filter => "rebar.config", ruleset => rebar_config, rules => [ {elvis_text_style, line_length, #{limit => 120, skip_comments => false}}, {elvis_text_style, no_tabs}, {elvis_text_style, no_trailing_whitespace}, %% Temporarily disabled till regex pattern is available {elvis_project, no_deps_master_rebar, disable} ] }, #{ dirs => ["src"], filter => "*.app.src", rules => [ {elvis_text_style, line_length, #{limit => 120, skip_comments => false}}, {elvis_text_style, no_tabs}, {elvis_text_style, no_trailing_whitespace} ] } ]} ]} ].