.rubocop.yml
require:
- rubocop-minitest
- rubocop-packaging
- rubocop-performance
- rubocop-rake
AllCops:
DisplayCopNames: true
DisplayStyleGuide: true
NewCops: enable
TargetRubyVersion: 3.0
Exclude:
- "tmp/**/*"
- "vendor/**/*"
Layout/FirstArrayElementIndentation:
EnforcedStyle: consistent
Layout/FirstArrayElementLineBreak:
Enabled: true
Layout/FirstHashElementLineBreak:
Enabled: true
Layout/FirstMethodArgumentLineBreak:
Enabled: true
Layout/HashAlignment:
EnforcedColonStyle:
- table
- key
EnforcedHashRocketStyle:
- table
- key
Layout/MultilineArrayLineBreaks:
Enabled: true
Layout/MultilineHashKeyLineBreaks:
Enabled: true
Layout/MultilineMethodArgumentLineBreaks:
Enabled: true
Layout/MultilineMethodCallIndentation:
EnforcedStyle: indented
Layout/SpaceAroundEqualsInParameterDefault:
EnforcedStyle: no_space
Metrics/AbcSize:
Max: 20
Exclude:
- "test/**/*"
Metrics/BlockLength:
Exclude:
- "*.gemspec"
- "Rakefile"
Metrics/ClassLength:
Exclude:
- "test/**/*"
Metrics/MethodLength:
Max: 18
Exclude:
- "test/**/*"
Metrics/ParameterLists:
Max: 6
Minitest/EmptyLineBeforeAssertionMethods:
Enabled: false
Minitest/MultipleAssertions:
Max: 20
Naming/MemoizedInstanceVariableName:
Enabled: false
Naming/VariableNumber:
Enabled: false
Rake/Desc:
Enabled: false
Style/BarePercentLiterals:
EnforcedStyle: percent_q
Style/ClassAndModuleChildren:
Enabled: false
Style/Documentation:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/EmptyMethod:
Enabled: false
Style/FrozenStringLiteralComment:
Enabled: false
Style/NumericPredicate:
Enabled: false
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/TrivialAccessors:
AllowPredicates: true
inherit_mode:
merge:
- AllowedNames
Naming/MethodParameterName:
AllowedNames:
- a
- b