AllCops:
  Exclude:
    - 'bin/**/*'
    - 'coverage/**/*'
    - 'db/**/*'
    - 'log/**/*'
    - 'public/**/*'
    - 'tmp/**/*'
    - 'vendor/**/*'

Lint/AmbiguousOperator:
  Enabled: false

Performance/RedundantMerge:
  MaxKeyValuePairs: 1

Style/Alias:
  EnforcedStyle: prefer_alias_method

Style/AlignHash:
  Enabled: false

Style/Documentation:
  Enabled: false

Style/DoubleNegation:
  Enabled: false

# auto-correct is broken for this cop:
# https://github.com/bbatsov/rubocop/issues/3271
Style/EachForSimpleLoop:
  AutoCorrect: false

Style/EachWithObject:
  Enabled: false

Style/EmptyLines:
  Enabled: false

Style/EmptyLinesAroundBlockBody:
  Enabled: false

Style/EmptyLinesAroundClassBody:
  Enabled: false

Style/EmptyLinesAroundModuleBody:
  Enabled: false

Style/EmptyLinesAroundMethodBody:
  Enabled: false

Style/EmptyLiteral:
  Enabled: false

Style/FrozenStringLiteralComment:
  Enabled: false

Style/GuardClause:
  Enabled: false

Style/Lambda:
  Enabled: false

Style/ModuleFunction:
  EnforcedStyle: extend_self

Style/MultilineMethodCallIndentation:
  Enabled: false

Style/MultilineOperationIndentation:
  Enabled: false

Style/MultilineBlockLayout:
  Enabled: false

# This cop complains about values like 05.
Style/NumericLiteralPrefix:
  Enabled: false

Style/Proc:
  Enabled: false

Style/RaiseArgs:
  EnforcedStyle: compact

Style/RegexpLiteral:
  Enabled: false

# This cop doesn't work properly if you a have a block with
# arguments split across multiple lines
Style/SpaceAroundBlockParameters:
  Enabled: false

Style/SignalException:
  EnforcedStyle: only_raise

Style/StringLiterals:
  EnforcedStyle: single_quotes
  Exclude:
    - 'spec/**/*'

Metrics/AbcSize:
  Enabled: false

Metrics/BlockNesting:
  Enabled: false

Metrics/ClassLength:
  Enabled: false

Metrics/CyclomaticComplexity:
  Enabled: false

# Disabling line length enforcement since annotate generates
# some pretty long lines
Metrics/LineLength:
  Enabled: false

Metrics/MethodLength:
  Enabled: false

Metrics/ModuleLength:
  Enabled: false

Metrics/ParameterLists:
  Enabled: false

Metrics/PerceivedComplexity:
  Enabled: false

Rails:
  Enabled: false

# This cop is too greedy I dont
# want to underscore my timestamps.
Style/NumericLiterals:
  Enabled: false

Style/StructInheritance:
  Enabled: false