brew/Library/Homebrew/.rubocop.yml
2018-03-08 14:10:02 +00:00

91 lines
1.7 KiB
YAML

inherit_from:
- ../.rubocop.yml
AllCops:
Include:
- '**/.simplecov'
Exclude:
- 'bin/*'
- '**/Casks/**/*'
- '**/vendor/**/*'
Layout/MultilineMethodCallIndentation:
Exclude:
- '**/*_spec.rb'
# so many of these in formulae but none in here
Lint/AmbiguousRegexpLiteral:
Enabled: true
# `formula do` uses nested method definitions
Lint/NestedMethodDefinition:
Exclude:
- 'test/**/*'
# so many of these in formulae but none in here
Lint/ParenthesesAsGroupedExpression:
Enabled: true
# TODO: try to bring down all metrics maximums
Metrics/AbcSize:
Max: 250
Metrics/BlockLength:
Max: 1250
Metrics/BlockNesting:
Max: 5
Metrics/ClassLength:
Max: 1226
Metrics/CyclomaticComplexity:
Max: 75
Metrics/LineLength:
# 124 is the goal as GitHub diff UI wraps beyond that
Max: 244
# ignore manpage comments
IgnoredPatterns: ['#: ']
Metrics/MethodLength:
Max: 195
Metrics/ModuleLength:
Max: 222
Metrics/PerceivedComplexity:
Max: 100
# we won't change backward compatible method names
Naming/MethodName:
Exclude:
- 'compat/**/*'
# we won't change backward compatible predicate names
Naming/PredicateName:
Exclude:
- 'compat/**/*'
NameWhitelist: is_32_bit?, is_64_bit?
# f meaning formulae is pretty standard
Naming/UncommunicativeMethodParamName:
Enabled: false
Style/BlockDelimiters:
Exclude:
- '**/*_spec.rb'
- '**/shared_examples/**/*.rb'
# so many of these in formulae but none in here
Style/GuardClause:
Enabled: true
# hash-rockets preferred for formulae, a: 1 preferred elsewhere
Style/HashSyntax:
EnforcedStyle: ruby19_no_mixed_keys
# so many of these in formulae but none in here
Style/TrailingBodyOnMethodDefinition:
Enabled: true