.rubocop.yml
require:
- rubocop-performance
- rubocop-rake
- rubocop-rspec
AllCops:
TargetRubyVersion: 2.5
NewCops: enable
Exclude:
- 'spec/shared/**/*'
- 'spec/faas/**/*'
- 'vendor/**/*'
Bundler:
Enabled: true
Gemspec:
Enabled: true
Layout:
Enabled: true
Lint:
Enabled: true
Metrics:
Enabled: true
Naming:
Enabled: true
Security:
Enabled: true
Style:
Enabled: true
# --------------------------------------
# Cops below this line set intentionally
# --------------------------------------
Bundler/OrderedGems:
Enabled: false
Gemspec/OrderedDependencies:
Enabled: false
Layout/SpaceInsideArrayLiteralBrackets:
EnforcedStyle: space
Layout/SpaceInsidePercentLiteralDelimiters:
Enabled: false
Metrics/ClassLength:
Max: 200
Metrics/ModuleLength:
Enabled: false
Metrics/MethodLength:
Max: 20
Naming/MethodParameterName:
AllowedNames: [ id, op ]
RSpec/BeforeAfterAll:
Enabled: false
# Ideally, we'd use this one, too, but our tests have not historically followed
# this style and it's not worth changing right now, IMO
RSpec/DescribeClass:
Enabled: false
Style/FetchEnvVar:
Enabled: false
RSpec/ImplicitExpect:
EnforcedStyle: is_expected
RSpec/MultipleExpectations:
Enabled: false
RSpec/MultipleMemoizedHelpers:
Enabled: false
RSpec/NestedGroups:
Enabled: false
Style/Documentation:
Exclude:
- 'spec/**/*'
Style/FormatStringToken:
Enabled: false
Style/ModuleFunction:
EnforcedStyle: extend_self
Style/OptionalBooleanParameter:
Enabled: false
Style/ParallelAssignment:
Enabled: false
Style/TernaryParentheses:
EnforcedStyle: require_parentheses_when_complex
Style/TrailingCommaInArrayLiteral:
Enabled: false
Style/TrailingCommaInHashLiteral:
Enabled: false