free_mutant/config/rubocop.yml

66 lines
1.6 KiB
YAML

AllCops:
Includes:
- '../**/*.rake'
- 'Gemfile'
- 'Gemfile.devtools'
Excludes:
- '**/vendor/**'
- '**/benchmarks/**'
# Avoid parameter lists longer than five parameters.
ParameterLists:
Max: 3
CountKeywordArgs: true
# Avoid more than `Max` levels of nesting.
BlockNesting:
Max: 3
# Align with the style guide.
CollectionMethods:
PreferredMethods:
collect: 'map'
inject: 'reduce'
find: 'detect'
find_all: 'select'
# Do not force public/protected/private keyword to be indented at the same
# level as the def keyword. My personal preference is to outdent these keywords
# because I think when scanning code it makes it easier to identify the
# sections of code and visually separate them. When the keyword is at the same
# level I think it sort of blends in with the def keywords and makes it harder
# to scan the code and see where the sections are.
AccessControl:
Enabled: false
# Limit line length
LineLength:
Max: 124 # TODO: lower to 79
# Disable documentation checking until a class needs to be documented once
Documentation:
Enabled: false
# Do not favor modifier if/unless usage when you have a single-line body
IfUnlessModifier:
Enabled: false
# Allow case equality operator (in limited use within the specs)
CaseEquality:
Enabled: false
# Constants do not always have to use SCREAMING_SNAKE_CASE
ConstantName:
Enabled: false
# Not all trivial readers/writers can be defined with attr_* methods
TrivialAccessors:
Enabled: false
# I like 1.8 syntax:
HashSyntax:
Enabled: false
# And also have a differend opinion here
AndOr:
Enabled: false