mongodb/mongo-ruby-driver

View on GitHub
.rubocop.yml

Summary

Maintainability
Test Coverage
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