.rubocop.yml
# This is the configuration used to check the rubocop source code.
# Check out: https://github.com/bbatsov/rubocop
require:
- rubocop-performance
- rubocop-rspec
- rubocop-rails
AllCops:
NewCops: enable
DisplayCopNames: true
TargetRubyVersion: 2.7
Include:
- '**/Rakefile'
- '**/config.ru'
- 'Gemfile'
- '**/*.rb'
- '**/*.rake'
Exclude:
- 'vendor/**/*'
- 'spec/fixtures/**/*'
- 'node_modules/**/*'
- 'db/**/*'
- 'db/schema.rb'
- 'db/seeds.rb'
- 'bin/**/*'
- 'Procfile.*'
Layout/LineLength:
Max: 120
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/Documentation:
Enabled: false
Style/HashEachMethods:
Enabled: true
Style/HashTransformKeys:
Enabled: true
Style/HashTransformValues:
Enabled: true
Lint/AssignmentInCondition:
Exclude:
- 'bin/spring'
Lint/SuppressedException:
Exclude:
- 'bin/rails'
- 'bin/rake'
Metrics/AbcSize:
Max: 28
Metrics/CyclomaticComplexity:
Max: 7
Metrics/PerceivedComplexity:
Max: 10
Metrics/ClassLength:
Max: 150
Metrics/BlockLength:
Exclude:
- 'config/environments/development.rb'
- 'lib/tasks/linters.rake'
- 'spec/rails_helper.rb'
- 'spec/system/add_new_comment_spec.rb'
- 'spec/system/react_router_demo_spec.rb'
- 'lib/tasks/ci.rake'
Metrics/ParameterLists:
Max: 5
CountKeywordArgs: false
Metrics/MethodLength:
Max: 41
Metrics/ModuleLength:
Max: 180
Naming/RescuedExceptionsVariableName:
Enabled: false
RSpec/DescribeClass:
Enabled: false
RSpec/ExampleLength:
Enabled: false
RSpec/MessageSpies:
Enabled: false
RSpec/NestedGroups:
Max: 4
RSpec/MessageChain:
Enabled: false
RSpec/MultipleExpectations:
Enabled: false
RSpec/MultipleMemoizedHelpers:
Max: 12