require:
  - rubocop-performance
  - rubocop-rails
  - rubocop-rspec

AllCops:
  TargetRailsVersion: 5.2
  TargetRubyVersion: 2.6
  Exclude:
    - Brewfile
    - 'bin/*'
    - 'db/**/*'
    - 'vendor/bundle/**/*'

Layout/AlignHash:
  EnforcedColonStyle: table
  EnforcedHashRocketStyle: table

Lint/UriEscapeUnescape:
  Enabled: false

Metrics/AbcSize:
  Max: 22.29

Metrics/BlockLength:
  Enabled: false

Metrics/LineLength:
  Enabled: false

Metrics/MethodLength:
  Max: 14
  Exclude:
    - 'spec/**/*'

Metrics/ModuleLength:
  Exclude:
    - 'spec/**/*'

Rails:
  Enabled: true

Rails/HasAndBelongsToMany:
  Exclude:
    - 'app/models/conversation.rb'
    - 'app/models/user.rb'

Rails/HelperInstanceVariable:
  Enabled: false

Rails/SkipsModelValidations:
  Enabled: false

RSpec/DescribeClass:
  Exclude:
    - spec/features/**/*
    - spec/requests/**/*
    - spec/system/**/*

RSpec/ExampleLength:
  Max: 42

RSpec/MultipleExpectations:
  Enabled: false

RSpec/NestedGroups:
  Max: 4

Style/Documentation:
  Enabled: false

Style/IfUnlessModifier:
  Enabled: false

Style/RescueStandardError:
  Enabled: false

require:
  - rubocop-performance
  - rubocop-rails
  - rubocop-rspec

AllCops:
  TargetRailsVersion: 5.2
  TargetRubyVersion: 2.6
  Exclude:
    - Brewfile
    - 'bin/*'
    - 'db/**/*'
    - 'log/**/*'
    - 'node_modules/**/*'
    - 'tmp/**/*'
    - 'vendor/bundle/**/*'

Layout/AlignHash:
  EnforcedColonStyle: table
  EnforcedHashRocketStyle: table

Lint/UriEscapeUnescape:
  Enabled: false

Metrics/AbcSize:
  Max: 22.29

Metrics/BlockLength:
  Enabled: false

Metrics/LineLength:
  Enabled: false

Metrics/MethodLength:
  Max: 14
  Exclude:
    - 'spec/**/*'

Metrics/ModuleLength:
  Exclude:
    - 'spec/**/*'

Rails:
  Enabled: true

Rails/HasAndBelongsToMany:
  Exclude:
    - 'app/models/conversation.rb'
    - 'app/models/user.rb'

Rails/HelperInstanceVariable:
  Enabled: false

Rails/SkipsModelValidations:
  Enabled: false

RSpec/DescribeClass:
  Exclude:
    - spec/features/**/*
    - spec/requests/**/*
    - spec/system/**/*

RSpec/ExampleLength:
  Max: 42

RSpec/MultipleExpectations:
  Enabled: false

RSpec/NestedGroups:
  Max: 4

Style/Documentation:
  Enabled: false

Style/IfUnlessModifier:
  Enabled: false

Style/RescueStandardError:
  Enabled: false

Exclude some directories to speed up analysis
Exclude some directories to speed up analysis