-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy path.rubocop.yml
187 lines (144 loc) · 4.08 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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
require:
- rubocop-capybara
- rubocop-factory_bot
- rubocop-performance
- rubocop-rails
- rubocop-rspec
- rubocop-rspec_rails
AllCops:
# すべてのCopsを有効にする
EnabledByDefault: true
# 新規追加のPendingCopsを有効化
NewCops: enable
Exclude:
- "bin/*"
- "db/schema.rb"
- "db/migrate/*"
# 以下デフォルト
- "node_modules/**/*"
- "tmp/**/*"
- "vendor/**/*"
- ".git/**/*"
## Enabled
# コメントをスペースで揃えるのを許す
Layout/ExtraSpacing:
Enabled: true
AllowBeforeTrailingComments: true
# メソッドチェーンでブロック引数があるときは改行をいれる
# ただし、RSpecのexpect{XXX}.toなどは除外する
Layout/SingleLineBlockChain:
Enabled: true
Exclude:
- "spec/**/*_spec.rb"
# eachなどの手続き型スタイルではdo/endを、mapなどの関数型スタイルでは{}を使う
# Cookpad Styleguideの良い点を採用する
# 1ライナーで{}の使用を許可する
Style/BlockDelimiters:
Enabled: true
EnforcedStyle: semantic
AllowBracesOnProceduralOneLiners: true
# メソッド呼び出しの括弧の省略を禁止
# ただし、マクロとspecファイルのDSLでは括弧を省略できる
Style/MethodCallWithArgsParentheses:
Enabled: true
IgnoreMacros: true
Exclude:
- "spec/**/*_spec.rb"
- "spec/factories/*.rb"
# 文字列はダブルクオート
Style/StringLiterals:
Enabled: true
EnforcedStyle: double_quotes
# 複数リテラルで末尾カンマを許可
# ただし1行1項目のときに限る
Style/TrailingCommaInArguments:
Enabled: true
EnforcedStyleForMultiline: comma
Style/TrailingCommaInArrayLiteral:
Enabled: true
EnforcedStyleForMultiline: comma
Style/TrailingCommaInHashLiteral:
Enabled: true
EnforcedStyleForMultiline: comma
## Disabled
Bundler/GemComment:
Enabled: false
Bundler/GemVersion:
Enabled: false
Gemspec/DependencyVersion:
Enabled: false
# クラス内要素の順番強制をしない
Layout/ClassStructure:
Enabled: false
# ヒアドックの閉じ括弧位置を強要しない
Layout/HeredocArgumentClosingParenthesis:
Enabled: false
# 1行に複数要素を許可
Layout/MultilineArrayLineBreaks:
Enabled: false
Layout/MultilineHashKeyLineBreaks:
Enabled: false
Layout/MultilineMethodArgumentLineBreaks:
Enabled: false
Layout/MultilineMethodParameterLineBreaks:
Enabled: false
# ::Userのような完全修飾を強要しない
Lint/ConstantResolution:
Enabled: false
# ヒアドックのメソッドコール位置を強要しない
Lint/HeredocMethodCallPosition:
Enabled: false
# to_iなどを許可
Lint/NumberConversion:
Enabled: false
# black、slaveの命名をチェックしない
Naming/InclusiveLanguage:
Enabled: false
# 日本語コメントを許可
Style/AsciiComments:
Enabled: false
# 各ファイルでコピーライトを強要しない
Style/Copyright:
Enabled: false
# def self.class_methodを強要しない
Style/ClassMethodsDefinitions:
Enabled: false
# コメントrubocp:disableを許可
Style/DisableCopsWithinSourceCodeDirective:
Enabled: false
# ドキュメント無しを許可
Style/Documentation:
Enabled: false
Style/DocumentationMethod:
Enabled: false
# 先頭行のfrozen stringマジックコメントはなしでもよい
Style/FrozenStringLiteralComment:
Enabled: false
# raiseでRuntimeErrorの省略を許可
Style/ImplicitRuntimeError:
Enabled: false
# 行末コメントを許可
Style/InlineComment:
Enabled: false
# unlessを許可
Style/InvertibleUnlessCondition:
Enabled: false
# else無しを許可
Style/MissingElse:
Enabled: false
# トップレベルのメソッド定義を許可
Style/TopLevelMethodDefinition:
Enabled: false
### rubocop-rails
## Disabled
# 環境変数へのアクセスを許可
Rails/EnvironmentVariableAccess:
Enabled: false
### rubocop-rspec
## Disabled
# let式の左括弧のインデントを揃えるのを強制しない
RSpec/AlignLeftLetBrace:
Enabled: false
# let式の右括弧のインデントを揃えるのを強制しない
RSpec/AlignRightLetBrace:
Enabled: false