.rubocop.yml
# We chose not to make these changes
inherit_from:
- .rubocop_gemspec.yml
- .rubocop_performance.yml
- .rubocop_rspec.yml
- .rubocop_thread_safety.yml
- .rubocop_todo.yml
require:
- rubocop-md
- rubocop-packaging
- rubocop-performance
- rubocop-rake
- rubocop-rspec
- rubocop-thread_safety
# It's the lowest supported Ruby version
AllCops:
DisplayCopNames: true # Display the name of the failing cops
TargetRubyVersion: 2.3
NewCops: enable
# It's a matter of taste
Layout/ParameterAlignment:
EnforcedStyle: with_fixed_indentation
Layout/HashAlignment:
Enabled: false
Lint/RaiseException:
Enabled: true
Lint/StructNewOverride:
Enabled: true
Style/HashEachMethods:
Enabled: true
Style/HashTransformKeys:
Enabled: true
Style/HashTransformValues:
Enabled: true
Style/GuardClause:
Enabled: false
Style/FormatStringToken:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/IfUnlessModifier:
Enabled: false
Style/EachWithObject:
Enabled: false
Style/SafeNavigation:
Enabled: false
Style/BlockDelimiters:
Enabled: false
Layout/MultilineMethodCallIndentation:
EnforcedStyle: indented
Naming/VariableNumber:
Enabled: false
Style/MultilineBlockChain:
Enabled: false
Style/TrailingCommaInHashLiteral:
Enabled: false
Style/TrailingCommaInArrayLiteral:
Enabled: false
Style/TrailingCommaInArguments:
Enabled: false
Style/UnlessElse:
Enabled: false
# We aren't so brave to tackle all these issues right now
Layout/LineLength:
Enabled: false
Metrics/BlockLength:
Enabled: false
Metrics/MethodLength:
Enabled: false
Metrics/CyclomaticComplexity:
Enabled: false
Metrics/AbcSize:
Enabled: false
Metrics/ModuleLength:
Enabled: false
Metrics/BlockNesting:
Enabled: false
Metrics/PerceivedComplexity:
Enabled: false
Metrics/ClassLength:
Enabled: false
# Minor annoying issues
Lint/UselessAssignment:
Enabled: false
Lint/AmbiguousBlockAssociation:
Enabled: false
Lint/AssignmentInCondition:
Enabled: false
Style/Documentation:
Enabled: false
Style/DateTime:
Enabled: false
Style/MissingRespondToMissing:
Enabled: false
Naming/PredicateName:
Enabled: false
Security/YAMLLoad:
Enabled: false
Lint/EmptyClass:
Exclude:
- README.md
Lint/EmptyBlock:
Exclude:
- README.md