summaryrefslogtreecommitdiff
path: root/.rubocop.yml
blob: d5e7780ea6c9e9ff336a6a10450f862347428086 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
inherit_from:
  - .rubocop_todo.yml

AllCops:
  Exclude:
    - tmp/**/*
    - lib/bundler/vendor/**/*
  DisplayCopNames: true

# Lint

# They are idiomatic
Lint/AssignmentInCondition:
  Enabled: false

Lint/EndAlignment:
  AlignWith: variable

# Style

Style/MultilineOperationIndentation:
  EnforcedStyle: indented

# We adopted raise instead of fail.
Style/SignalException:
  EnforcedStyle: only_raise

Style/StringLiterals:
  EnforcedStyle: double_quotes

Style/StringLiteralsInInterpolation:
  EnforcedStyle: double_quotes

# Having these make it easier to *not* forget to add one when adding a new
# value and you can simply copy the previous line.
Style/TrailingComma:
  EnforcedStyleForMultiline: comma

# 1.8.7 support

Style/HashSyntax:
  EnforcedStyle: hash_rockets

Style/Lambda:
  Enabled: false

Style/DotPosition:
  EnforcedStyle: trailing

Style/EachWithObject:
  Enabled: false

Style/SpecialGlobalVars:
  Enabled: false

Style/TrailingComma:
  Enabled: false

# Metrics

# Arbitrary max lengths for classes simply do not work and enabling this will
# lead to a never ending stream of annoyance and changes.
Metrics/ClassLength:
  Enabled: false

# Arbitrary max lengths for methods simply do not work and enabling this will
# lead to a never ending stream of annoyance and changes.
Metrics/MethodLength:
  Enabled: false

# No enforced convention here.
Metrics/BlockNesting:
  Enabled: false

# It will be obvious which code is complex, Rubocop should only lint simple
# rules for us.
Metrics/AbcSize:
  Enabled: false

# It will be obvious which code is complex, Rubocop should only lint simple
# rules for us.
Metrics/CyclomaticComplexity:
  Enabled: false