colorls/.rubocop.yml
Claudio Bley 0f9f01cdb1 Enable all newly introduced cops automatically
When Rubocop introduces new rules, existing code may violate them unknowingly.

That's why they are in a "pending" state initially and need to be enabled
explicitly:

```
The following cops were added to RuboCop, but are not configured. Please set
Enabled to either `true` or `false` in your `.rubocop.yml` file:

 - Layout/SpaceAroundMethodCallOperator (0.82)

 - Style/ExponentialNotation (0.82)

For more information: https://docs.rubocop.org/en/latest/versioning/
```

Since we never automatically let gem upgrade rubocop in this project, it is
safe to enable all pending cops globally. This way new cops are not silenced and
one has to deal with them when upgrading the dependency on Rubocop.
2020-04-20 10:20:10 +02:00

120 lines
1.9 KiB
YAML

require: rubocop-performance
AllCops:
Include:
- 'lib/**/*'
Exclude:
- 'vendor/**/*'
- 'benchmarks/*'
- 'profile/*'
- 'lib/yaml/*'
- 'lib/**/*.sh'
DisplayCopNames: true
NewCops: enable
TargetRubyVersion: 2.5
# Preferred codebase style ---------------------------------------------
Layout/ExtraSpacing:
AllowForAlignment: true
Style/FormatString:
EnforcedStyle: percent
Style/AndOr:
EnforcedStyle: conditionals
Layout/SpaceAroundEqualsInParameterDefault:
EnforcedStyle: no_space
Layout/SpaceInsideBlockBraces:
EnforcedStyle: space
Layout/SpaceInsideHashLiteralBraces:
EnforcedStyle: no_space
Layout/ParameterAlignment:
EnforcedStyle: with_fixed_indentation
Lint/RaiseException:
Enabled: true
Lint/StructNewOverride:
Enabled: true
Style/EmptyElse:
EnforcedStyle: empty
Metrics/BlockLength:
Exclude:
- 'spec/**/*'
Layout/LineLength:
Max: 120
Metrics/ModuleLength:
Max: 200
Metrics/ClassLength:
Max: 350
Metrics/ParameterLists:
Max: 15
Naming/FileName:
Enabled: false
Style/ParallelAssignment:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/HashEachMethods:
Enabled: true
Style/HashTransformKeys:
Enabled: true
Style/HashTransformValues:
Enabled: true
Style/SingleLineBlockParams:
Enabled: false
Style/PerlBackrefs:
Enabled: false
Layout/SpaceAfterComma:
Enabled: false
Layout/SpaceAroundOperators:
Enabled: false
Style/EmptyCaseCondition:
Enabled: false
Style/MultilineBlockChain:
Enabled: false
Style/StderrPuts:
Enabled: false
# Current preferred metrics --------------------------------------------
# Better values are encouraged, but not required.
Metrics/AbcSize:
Max: 30
Metrics/MethodLength:
Max: 20
Metrics/CyclomaticComplexity:
Max: 8
Metrics/PerceivedComplexity:
Max: 8
# TODO -----------------------------------------------------------------
Style/Documentation:
Enabled: false