.rubocop.yml
require:
- rubocop-rails
- rubocop-performance
AllCops:
TargetRubyVersion: 3.2
NewCops: enable
Exclude:
- bin/*
- db/**/*
- lib/**/*
- vendor/**/*
- node_modules/**/*
Layout/LineLength:
Max: 120
Rails/SkipsModelValidations:
Exclude:
- spec/**/*
Style/Lambda:
Enabled: false
Style/FrozenStringLiteralComment:
Enabled: false
Style/AsciiComments:
Enabled: false
Style/SymbolArray:
Enabled: false
Style/MixinGrouping:
Enabled: false
Style/ClassAndModuleChildren:
Enabled: false
Style/FormatStringToken:
Enabled: false
Style/Documentation:
Enabled: false
Style/FetchEnvVar:
Enabled: false
Style/HashSyntax:
EnforcedShorthandSyntax: either
Lint/ShadowingOuterLocalVariable:
Exclude:
- app/views/**/*.json.jbuilder
Lint/AmbiguousOperatorPrecedence:
Enabled: false
Metrics/ClassLength:
Description: 'Avoid classes longer than 100 lines of code.'
Enabled: false
Metrics/MethodLength:
Description: 'Avoid methods longer than 10 lines of code.'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
Enabled: false
Metrics/ModuleLength:
Description: 'Avoid modules longer than 100 lines of code.'
Enabled: false
Metrics/AbcSize:
Max: 25
Metrics/BlockLength:
Exclude:
- app/models/concerns/**/*
- app/views/**/*.json.jbuilder
- app/views/**/*.xml.builder
- config/**/*
- spec/**/*
Naming/VariableNumber:
Enabled: false # TODO: Enable