summaryrefslogtreecommitdiff
path: root/.rubocop.yml
blob: 5e60f77b2382a1004d1b74f348ae46cf9bbd7ffe (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
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

Lint/UnusedMethodArgument:
  Enabled: false

# Style

Style/AccessModifierIndentation:
  EnforcedStyle: outdent

Style/AlignParameters:
  EnforcedStyle: with_fixed_indentation

Style/MultilineOperationIndentation:
  EnforcedStyle: indented

Style/SpaceInsideBlockBraces:
  SpaceBeforeBlockParameters: false

Style/TrivialAccessors:
  Enabled: false

# 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