.rubocop.yml
require: rubocop-rspec
AllCops:
TargetRubyVersion: 2.1
DisplayCopNames: true
# Metrics
Metrics/AbcSize:
Description: >-
A calculated magnitude based on number of assignments,
branches, and conditions.
Reference: 'http://c2.com/cgi/wiki?AbcMetric'
Enabled: true
Max: 25
Metrics/BlockNesting:
Description: 'Avoid excessive block nesting'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count'
Enabled: true
Max: 4
Metrics/ClassLength:
Description: 'Avoid classes longer than 250 lines of code.'
Enabled: true
Max: 250
Metrics/CyclomaticComplexity:
Description: >-
A complexity metric that is strongly correlated to the number
of test cases needed to validate a method.
Enabled: true
Metrics/LineLength:
Description: 'Limit lines to 80 characters.'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#80-character-limits'
Enabled: true
Exclude:
- lib/lunanode/api_actions/default/*.rb
Metrics/MethodLength:
Description: 'Avoid methods longer than 30 lines of code.'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
Enabled: true
Max: 30
Metrics/ModuleLength:
Description: 'Avoid modules longer than 250 lines of code.'
Enabled: true
Max: 250
Metrics/ParameterLists:
Description: 'Avoid parameter lists longer than three or four parameters.'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#too-many-params'
Enabled: true
Max: 4
CountKeywordArgs: false
Metrics/PerceivedComplexity:
Description: >-
A complexity metric geared towards measuring complexity for a
human reader.
Enabled: true
# Style
Style/AsciiComments:
Enabled: false
Style/CollectionMethods:
Enabled: true
Style/Documentation:
Enabled: false
Style/FormatString:
EnforcedStyle: percent
Style/HashSyntax:
EnforcedStyle: ruby19_no_mixed_keys
Style/MethodCalledOnDoEndBlock:
Enabled: true
Style/PercentLiteralDelimiters:
PreferredDelimiters:
'%i': '[]'
'%I': '[]'
'%w': '[]'
'%W': '[]'
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/SymbolArray:
Enabled: true
Style/TrailingCommaInLiteral:
EnforcedStyleForMultiline: comma