ytti/oxidized

View on GitHub
.rubocop.yml

Summary

Maintainability
Test Coverage
inherit_from: .rubocop_todo.yml

# Do not attempt to police vendored code
AllCops:
  NewCops: enable
  TargetRubyVersion: 3.1
  Exclude:
    - 'vendor/**/*'

Gemspec/DevelopmentDependencies:
  EnforcedStyle: gemspec

Style/StringLiterals:
  Enabled: false

Style/FrozenStringLiteralComment:
  Enabled: false

Layout/LineLength:
  Enabled: false

# We do not enforce the cop in the models as it would not work with the
# DSL style of the models
Lint/AmbiguousRegexpLiteral:
  Enabled: true
  Exclude:
   - lib/oxidized/model/*.rb

Lint/RaiseException:
  Enabled: true

Lint/StructNewOverride:
  Enabled: true

# Stick to verbose until https://bugs.ruby-lang.org/issues/10177 is closed.
Style/PreferredHashMethods:
  EnforcedStyle: verbose

Layout/HashAlignment:
  EnforcedHashRocketStyle: table
  EnforcedColonStyle: table

Style/Not:
  Enabled: false

# comply with @ytti's exacting specifications
Style/CommandLiteral:
  EnforcedStyle: percent_x

Style/FormatString:
  EnforcedStyle: percent

Style/FormatStringToken:
  EnforcedStyle: unannotated

Style/HashEachMethods:
  Enabled: true

Style/HashSyntax:
  EnforcedShorthandSyntax: either

Style/HashTransformKeys:
  Enabled: true

Style/HashTransformValues:
  Enabled: true

Style/RegexpLiteral:
  EnforcedStyle: slashes
  AllowInnerSlashes: true

Style/RescueModifier:
  Enabled: false

Style/SymbolProc:
  Enabled: false

Style/Documentation:
  Enabled: false

Style/ParallelAssignment:
  Enabled: false

Metrics/MethodLength:
  Max: 50

Metrics/AbcSize:
  Max: 28

Metrics/ClassLength:
  Max: 200

## Metrics/CyclomaticComplexity:
##   Max: 7

Metrics/BlockLength:
  Max: 150

Metrics/ParameterLists:
  Max: 6

Lint/EmptyBlock:
  Enabled: false

require:
  - rubocop-rake
  - rubocop-minitest