maximeg/email_inquire

View on GitHub
.rubocop.yml

Summary

Maintainability
Test Coverage
require: rubocop-performance

inherit_mode:
  merge:
    - Include
    - Exclude

AllCops:
  Exclude:
    - 'bin/*'
  TargetRubyVersion: 2.3

Layout/AccessModifierIndentation:
  EnforcedStyle: indent
  SupportedStyles:
    - outdent
    - indent

Layout/ClassStructure:
  Enabled: true
  Categories:
    module_inclusion:
      - include
      - prepend
      - extend
  ExpectedOrder:
    - module_inclusion
    - constants
    - public_class_methods
    - initializer
    - public_methods
    - protected_methods
    - private_methods

Layout/EmptyLinesAroundClassBody:
  EnforcedStyle: empty_lines_except_namespace

Layout/EmptyLinesAroundModuleBody:
  EnforcedStyle: empty_lines_except_namespace

Layout/EndAlignment:
  AutoCorrect: true

Layout/ExtraSpacing:
  AllowForAlignment: false

Layout/FirstArrayElementIndentation:
  EnforcedStyle: consistent

Layout/FirstArrayElementLineBreak:
  Enabled: true # default: false

Layout/FirstHashElementIndentation:
  EnforcedStyle: consistent

Layout/FirstHashElementLineBreak:
  Enabled: true # default: false

Layout/FirstMethodArgumentLineBreak:
  Enabled: true # default: false

Layout/FirstParameterIndentation:
  EnforcedStyle: consistent

Layout/HashAlignment:
  EnforcedHashRocketStyle: key
  EnforcedColonStyle: key
  EnforcedLastArgumentHashStyle: always_inspect

Layout/LineLength:
  Max: 100 # default: 80
  IgnoredPatterns:
    - "^ *#" # comments

Layout/MultilineAssignmentLayout:
  Enabled: true # default: false
  EnforcedStyle: new_line

Layout/MultilineMethodCallIndentation:
  EnforcedStyle: indented

Layout/MultilineOperationIndentation:
  EnforcedStyle: indented

Layout/ParameterAlignment:
  EnforcedStyle: with_fixed_indentation

Layout/SpaceAroundOperators:
  AllowForAlignment: false

Layout/SpaceBeforeFirstArg:
  AllowForAlignment: false

Lint/UnusedMethodArgument:
  AllowUnusedKeywordArguments: true
  IgnoreEmptyMethods: true

Metrics/AbcSize:
  Max: 20 # default: 15

Metrics/BlockLength:
  Max: 25 # default: 25

Metrics/ClassLength:
  Max: 100 # default: 100

Metrics/CyclomaticComplexity:
  Max: 10 # default: 6

Metrics/MethodLength:
  Max: 12 # default: 10

Metrics/ModuleLength:
  Max: 100 # default: 100

Metrics/PerceivedComplexity:
  Max: 10 # default: 7

Performance/ChainArrayAllocation:
  Enabled: true # default: false

Performance/OpenStruct:
  Enabled: true # default: false

Naming/VariableNumber:
  EnforcedStyle: snake_case

Style/AccessModifierDeclarations:
  Enabled: false # default: true

Style/AndOr:
  EnforcedStyle: conditionals

Style/AsciiComments:
  Enabled: false # default: true

Style/AutoResourceCleanup:
  Enabled: true # default: false

Style/BracesAroundHashParameters:
  Enabled: false # default: true

Style/CollectionMethods:
  Enabled: true # default: false

Style/DateTime:
  Enabled: true # default: false

Style/Documentation:
  Enabled: false # default: true

Style/MethodCalledOnDoEndBlock:
  Enabled: true # default: false

Style/MethodCallWithArgsParentheses:
  Enabled: true # default: false
  Exclude:
    - "Gemfile"
  IgnoreMacros: true
  IgnoredMethods:
    - include
    - load
    - print
    - private
    - protected
    - public
    - puts
    - raise
    - require
    - require_relative
    # rake
    - desc
    - namespace
    - task

Style/ModuleFunction:
  EnforcedStyle: extend_self

Style/ReturnNil:
  Enabled: true # default: false

Style/SignalException:
  EnforcedStyle: only_raise

Style/StringLiterals:
  EnforcedStyle: double_quotes

Style/StringLiteralsInInterpolation:
  EnforcedStyle: double_quotes

Style/TrailingCommaInArguments:
  EnforcedStyleForMultiline: no_comma

Style/TrailingCommaInArrayLiteral:
  EnforcedStyleForMultiline: comma

Style/TrailingCommaInHashLiteral:
  EnforcedStyleForMultiline: comma