-
Notifications
You must be signed in to change notification settings - Fork 3
/
.rubocop.yml
123 lines (94 loc) · 2.91 KB
/
.rubocop.yml
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# The behavior of RuboCop can be controlled via the .rubocop.yml
# configuration file. It makes it possible to enable/disable
# certain cops (checks) and to alter their behavior if they accept
# any parameters. The file can be placed either in your home
# directory or in some project directory.
#
# RuboCop will start looking for the configuration file in the directory
# where the inspected file is and continue its way up to the root directory.
#
# See https://docs.rubocop.org/rubocop/configuration
AllCops:
NewCops: enable
Exclude:
- vendor/bundle/**/**
TargetRubyVersion: 2.6
Metrics/ParameterLists:
Enabled: false
# This cop is annoying with typed configuration
Style/TrivialAccessors:
Enabled: false
# This rubocop is annoying when we use interfaces a lot
Lint/UnusedMethodArgument:
Enabled: false
Gemspec/RequireMFA:
Enabled: false
Lint/DuplicateBranch:
Enabled: false
# If is sometimes easier to think about than unless sometimes
Style/NegatedIf:
Enabled: false
# Disabling for now until it's clearer why we want this
Style/FrozenStringLiteralComment:
Enabled: false
# It's nice to be able to read the condition first before reading the code within the condition
Style/GuardClause:
Enabled: false
#
# Leaving length metrics to human judgment for now
#
Metrics/ModuleLength:
Enabled: false
Layout/LineLength:
Enabled: false
Metrics/BlockLength:
Enabled: false
Metrics/MethodLength:
Enabled: false
Metrics/AbcSize:
Enabled: false
Metrics/ClassLength:
Enabled: false
# This doesn't feel useful
Metrics/CyclomaticComplexity:
Enabled: false
# This doesn't feel useful
Metrics/PerceivedComplexity:
Enabled: false
# It's nice to be able to read the condition first before reading the code within the condition
Style/IfUnlessModifier:
Enabled: false
# This leads to code that is not very readable at times (very long lines)
Style/ConditionalAssignment:
Enabled: false
# For now, we prefer to lean on clean method signatures as documentation. We may change this later.
Style/Documentation:
Enabled: false
# Sometimes we leave comments in empty else statements intentionally
Style/EmptyElse:
Enabled: false
# Sometimes we want to more explicitly list out a condition
Style/RedundantCondition:
Enabled: false
# This leads to code that is not very readable at times (very long lines)
Layout/MultilineMethodCallIndentation:
Enabled: false
# Blocks across lines are okay sometimes
Style/BlockDelimiters:
Enabled: false
# Sometimes we like methods like `get_packages`
Naming/AccessorMethodName:
Enabled: false
# This leads to code that is not very readable at times (very long lines)
Layout/FirstArgumentIndentation:
Enabled: false
# This leads to code that is not very readable at times (very long lines)
Layout/ArgumentAlignment:
Enabled: false
Style/AccessorGrouping:
Enabled: false
Style/HashSyntax:
Enabled: false
Gemspec/DevelopmentDependencies:
Enabled: true
EnforcedStyle: gemspec