.rubocop.yml
require:
- rubocop-minitest
- rubocop-packaging
- rubocop-performance
- rubocop-rails
- rubocop-rake
AllCops:
TargetRailsVersion: 6.1
TargetRubyVersion: 2.7
NewCops: enable
DisplayStyleGuide: true
ExtraDetails: true
Exclude:
- 'gemfiles/**/*'
- 'vendor/bundle/**/*'
Layout/HashAlignment:
EnforcedColonStyle: table
EnforcedHashRocketStyle: table
Layout/LineLength:
Enabled: false
Metrics/AbcSize:
Max: 23 # TODO: Lower to 15
Exclude:
- 'test/**/*'
Metrics/ClassLength:
Exclude:
- 'test/**/*'
Metrics/CyclomaticComplexity:
Max: 8 # TODO: Lower to 6
Exclude:
- 'test/**/*'
Metrics/MethodLength:
Max: 19
Exclude:
- 'test/**/*'
Metrics/ModuleLength:
Exclude:
- 'test/**/*'
Metrics/ParameterLists:
Max: 12
Metrics/PerceivedComplexity:
Exclude:
- 'test/**/*'
Minitest/MultipleAssertions:
Enabled: false
Rails/ActionControllerTestCase:
Enabled: false
Rails/Delegate:
Exclude:
- lib/route_translator.rb
Rails/I18nLocaleAssignment:
Exclude:
- 'test/support/i18n_helper.rb'
Style/ArgumentsForwarding:
Enabled: false
Style/Documentation:
Enabled: false
Style/IfUnlessModifier:
Enabled: false
Style/RedundantRegexpEscape:
Enabled: false # Escaping chars helps with syntax highlighting