simplycop 1.14.5 → 1.14.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/dobby-actions.yml +1 -1
- data/.simplycop.yml +9 -1754
- data/.simplycop_bundler.yml +18 -0
- data/.simplycop_gemspec.yml +28 -0
- data/.simplycop_layout.yml +311 -0
- data/.simplycop_lint.yml +415 -0
- data/.simplycop_metrics.yml +38 -0
- data/.simplycop_migration.yml +2 -0
- data/.simplycop_naming.yml +81 -0
- data/.simplycop_rspec.yml +53 -15
- data/.simplycop_security.yml +30 -0
- data/.simplycop_style.yml +824 -0
- data/catalog-info.yaml +2 -2
- data/docs/index.md +20 -1
- data/lib/simplycop/version.rb +1 -1
- metadata +10 -2
data/.simplycop_lint.yml
ADDED
@@ -0,0 +1,415 @@
|
|
1
|
+
Lint/AmbiguousAssignment:
|
2
|
+
Enabled: true
|
3
|
+
|
4
|
+
Lint/AmbiguousBlockAssociation:
|
5
|
+
Exclude:
|
6
|
+
- spec/**/*
|
7
|
+
|
8
|
+
Lint/AmbiguousOperator:
|
9
|
+
Enabled: true
|
10
|
+
|
11
|
+
# Overridden to false in Chopin
|
12
|
+
Lint/AmbiguousOperatorPrecedence:
|
13
|
+
Enabled: true
|
14
|
+
|
15
|
+
# Overridden to false in Chopin
|
16
|
+
Lint/AmbiguousRange:
|
17
|
+
Enabled: true
|
18
|
+
|
19
|
+
# TODO: One fail on rater spec then would pass
|
20
|
+
Lint/AmbiguousRegexpLiteral:
|
21
|
+
Enabled: true
|
22
|
+
|
23
|
+
Lint/AssignmentInCondition:
|
24
|
+
Enabled: true
|
25
|
+
|
26
|
+
Lint/BigDecimalNew:
|
27
|
+
Enabled: true
|
28
|
+
|
29
|
+
Lint/BinaryOperatorWithIdenticalOperands:
|
30
|
+
Enabled: true
|
31
|
+
|
32
|
+
Lint/BooleanSymbol:
|
33
|
+
Enabled: true
|
34
|
+
|
35
|
+
Lint/CircularArgumentReference:
|
36
|
+
Enabled: true
|
37
|
+
|
38
|
+
# TODO: 6 fails in Rater, otherwise clear
|
39
|
+
Lint/ConstantDefinitionInBlock:
|
40
|
+
Enabled: true
|
41
|
+
|
42
|
+
Lint/ConstantOverwrittenInRescue: # new in 1.31
|
43
|
+
Enabled: true
|
44
|
+
|
45
|
+
# Set to false as 10000s of fails on Rater and Chopin if enabled
|
46
|
+
# Rubocop docs suggest enabling only for constants that may cause concern
|
47
|
+
# so enable and set these if required
|
48
|
+
Lint/ConstantResolution:
|
49
|
+
Enabled: false
|
50
|
+
|
51
|
+
Lint/Debugger:
|
52
|
+
Enabled: true
|
53
|
+
|
54
|
+
Lint/DeprecatedClassMethods:
|
55
|
+
Enabled: true
|
56
|
+
|
57
|
+
Lint/DeprecatedConstants:
|
58
|
+
Enabled: true
|
59
|
+
|
60
|
+
Lint/DeprecatedOpenSSLConstant:
|
61
|
+
Enabled: true
|
62
|
+
|
63
|
+
Lint/DisjunctiveAssignmentInConstructor:
|
64
|
+
Enabled: true
|
65
|
+
|
66
|
+
Lint/DuplicateBranch:
|
67
|
+
Enabled: true
|
68
|
+
|
69
|
+
Lint/DuplicateCaseCondition:
|
70
|
+
Enabled: true
|
71
|
+
|
72
|
+
Lint/DuplicateElsifCondition:
|
73
|
+
Enabled: true
|
74
|
+
|
75
|
+
Lint/DuplicateHashKey:
|
76
|
+
Enabled: true
|
77
|
+
|
78
|
+
Lint/DuplicateMagicComment:
|
79
|
+
Enabled: true
|
80
|
+
|
81
|
+
Lint/DuplicateMatchPattern:
|
82
|
+
Enabled: true
|
83
|
+
|
84
|
+
Lint/DuplicateMethods:
|
85
|
+
Enabled: true
|
86
|
+
|
87
|
+
Lint/DuplicateRegexpCharacterClassElement:
|
88
|
+
Enabled: true
|
89
|
+
|
90
|
+
Lint/DuplicateRequire:
|
91
|
+
Enabled: true
|
92
|
+
|
93
|
+
Lint/DuplicateRescueException:
|
94
|
+
Enabled: true
|
95
|
+
|
96
|
+
Lint/EachWithObjectArgument:
|
97
|
+
Enabled: true
|
98
|
+
|
99
|
+
Lint/ElseLayout:
|
100
|
+
Enabled: true
|
101
|
+
|
102
|
+
Lint/EmptyBlock:
|
103
|
+
Enabled: true
|
104
|
+
|
105
|
+
Lint/EmptyClass:
|
106
|
+
Enabled: true
|
107
|
+
|
108
|
+
Lint/EmptyConditionalBody:
|
109
|
+
Enabled: true
|
110
|
+
|
111
|
+
Lint/EmptyEnsure:
|
112
|
+
Enabled: true
|
113
|
+
|
114
|
+
Lint/EmptyExpression:
|
115
|
+
Enabled: true
|
116
|
+
|
117
|
+
Lint/EmptyFile:
|
118
|
+
Enabled: true
|
119
|
+
|
120
|
+
Lint/EmptyInPattern: # new in 1.16
|
121
|
+
Enabled: true
|
122
|
+
|
123
|
+
Lint/EmptyInterpolation:
|
124
|
+
Enabled: true
|
125
|
+
|
126
|
+
Lint/EmptyWhen:
|
127
|
+
Enabled: true
|
128
|
+
|
129
|
+
Lint/ErbNewArguments:
|
130
|
+
Enabled: true
|
131
|
+
|
132
|
+
Lint/FlipFlop:
|
133
|
+
Enabled: true
|
134
|
+
|
135
|
+
Lint/FloatComparison:
|
136
|
+
Enabled: true
|
137
|
+
|
138
|
+
Lint/FloatOutOfRange:
|
139
|
+
Enabled: true
|
140
|
+
|
141
|
+
Lint/FormatParameterMismatch:
|
142
|
+
Enabled: true
|
143
|
+
|
144
|
+
Lint/HashCompareByIdentity:
|
145
|
+
Enabled: true
|
146
|
+
|
147
|
+
Lint/HeredocMethodCallPosition:
|
148
|
+
Enabled: true
|
149
|
+
|
150
|
+
Lint/IdentityComparison:
|
151
|
+
Enabled: true
|
152
|
+
|
153
|
+
Lint/ImplicitStringConcatenation:
|
154
|
+
Enabled: true
|
155
|
+
|
156
|
+
Lint/IncompatibleIoSelectWithFiberScheduler: # new in 1.21
|
157
|
+
Enabled: true
|
158
|
+
|
159
|
+
# TODO: two fails on Rater, one on CoCo, otherwise fine
|
160
|
+
Lint/IneffectiveAccessModifier:
|
161
|
+
Enabled: true
|
162
|
+
|
163
|
+
Lint/InheritException:
|
164
|
+
Enabled: true
|
165
|
+
|
166
|
+
Lint/InterpolationCheck:
|
167
|
+
Enabled: true
|
168
|
+
|
169
|
+
Lint/LambdaWithoutLiteralBlock:
|
170
|
+
Enabled: true
|
171
|
+
|
172
|
+
Lint/LiteralAsCondition:
|
173
|
+
Enabled: true
|
174
|
+
|
175
|
+
Lint/LiteralInInterpolation:
|
176
|
+
Enabled: true
|
177
|
+
|
178
|
+
Lint/Loop:
|
179
|
+
Enabled: true
|
180
|
+
|
181
|
+
Lint/MissingCopEnableDirective:
|
182
|
+
Enabled: true
|
183
|
+
|
184
|
+
# TODO: Handful of errors on Rater and CoCo
|
185
|
+
Lint/MissingSuper:
|
186
|
+
Enabled: true
|
187
|
+
|
188
|
+
Lint/MixedCaseRange:
|
189
|
+
Enabled: true
|
190
|
+
|
191
|
+
Lint/MixedRegexpCaptureTypes:
|
192
|
+
Enabled: true
|
193
|
+
|
194
|
+
Lint/MultipleComparison:
|
195
|
+
Enabled: true
|
196
|
+
|
197
|
+
Lint/NestedMethodDefinition:
|
198
|
+
Enabled: true
|
199
|
+
|
200
|
+
Lint/NestedPercentLiteral:
|
201
|
+
Enabled: true
|
202
|
+
|
203
|
+
Lint/NextWithoutAccumulator:
|
204
|
+
Enabled: true
|
205
|
+
|
206
|
+
Lint/NoReturnInBeginEndBlocks:
|
207
|
+
Enabled: true
|
208
|
+
|
209
|
+
# Overridden to false in Chopin
|
210
|
+
Lint/NonAtomicFileOperation:
|
211
|
+
Enabled: true
|
212
|
+
|
213
|
+
Lint/NonDeterministicRequireOrder:
|
214
|
+
Enabled: true
|
215
|
+
|
216
|
+
Lint/NonLocalExitFromIterator:
|
217
|
+
Enabled: true
|
218
|
+
|
219
|
+
Lint/NumberConversion:
|
220
|
+
Enabled: false
|
221
|
+
|
222
|
+
Lint/NumberedParameterAssignment:
|
223
|
+
Enabled: true
|
224
|
+
|
225
|
+
Lint/OrAssignmentToConstant:
|
226
|
+
Enabled: true
|
227
|
+
|
228
|
+
Lint/OrderedMagicComments:
|
229
|
+
Enabled: true
|
230
|
+
|
231
|
+
Lint/OutOfRangeRegexpRef:
|
232
|
+
Enabled: true
|
233
|
+
|
234
|
+
Lint/ParenthesesAsGroupedExpression:
|
235
|
+
Enabled: true
|
236
|
+
|
237
|
+
Lint/PercentStringArray:
|
238
|
+
Enabled: true
|
239
|
+
|
240
|
+
Lint/PercentSymbolArray:
|
241
|
+
Enabled: true
|
242
|
+
|
243
|
+
Lint/RaiseException:
|
244
|
+
Enabled: true
|
245
|
+
|
246
|
+
Lint/RandOne:
|
247
|
+
Enabled: true
|
248
|
+
|
249
|
+
Lint/RedundantCopDisableDirective:
|
250
|
+
Enabled: true
|
251
|
+
|
252
|
+
Lint/RedundantCopEnableDirective:
|
253
|
+
Enabled: true
|
254
|
+
|
255
|
+
Lint/RedundantDirGlobSort:
|
256
|
+
Enabled: true
|
257
|
+
|
258
|
+
Lint/RedundantRegexpQuantifiers:
|
259
|
+
Enabled: true
|
260
|
+
|
261
|
+
Lint/RedundantRequireStatement:
|
262
|
+
Enabled: true
|
263
|
+
|
264
|
+
Lint/RedundantSafeNavigation:
|
265
|
+
Enabled: true
|
266
|
+
|
267
|
+
Lint/RedundantSplatExpansion:
|
268
|
+
Enabled: true
|
269
|
+
|
270
|
+
Lint/RedundantStringCoercion:
|
271
|
+
Enabled: true
|
272
|
+
|
273
|
+
Lint/RedundantWithIndex:
|
274
|
+
Enabled: true
|
275
|
+
|
276
|
+
Lint/RedundantWithObject:
|
277
|
+
Enabled: true
|
278
|
+
|
279
|
+
Lint/RefinementImportMethods:
|
280
|
+
Enabled: true
|
281
|
+
|
282
|
+
Lint/RegexpAsCondition:
|
283
|
+
Enabled: true
|
284
|
+
|
285
|
+
Lint/RequireParentheses:
|
286
|
+
Enabled: true
|
287
|
+
|
288
|
+
Lint/RequireRangeParentheses:
|
289
|
+
Enabled: true
|
290
|
+
|
291
|
+
# Overridden to false in Chopin
|
292
|
+
Lint/RequireRelativeSelfPath:
|
293
|
+
Enabled: true
|
294
|
+
|
295
|
+
Lint/RescueException:
|
296
|
+
Enabled: true
|
297
|
+
|
298
|
+
Lint/RescueType:
|
299
|
+
Enabled: true
|
300
|
+
|
301
|
+
Lint/ReturnInVoidContext:
|
302
|
+
Enabled: true
|
303
|
+
|
304
|
+
Lint/SafeNavigationChain:
|
305
|
+
Enabled: true
|
306
|
+
|
307
|
+
Lint/SafeNavigationConsistency:
|
308
|
+
Enabled: true
|
309
|
+
|
310
|
+
Lint/SafeNavigationWithEmpty:
|
311
|
+
Enabled: true
|
312
|
+
|
313
|
+
Lint/ScriptPermission:
|
314
|
+
Enabled: true
|
315
|
+
|
316
|
+
Lint/SelfAssignment:
|
317
|
+
Enabled: true
|
318
|
+
|
319
|
+
Lint/SendWithMixinArgument:
|
320
|
+
Enabled: true
|
321
|
+
|
322
|
+
Lint/ShadowedArgument:
|
323
|
+
Enabled: true
|
324
|
+
|
325
|
+
Lint/ShadowedException:
|
326
|
+
Enabled: true
|
327
|
+
|
328
|
+
# Needs Chopin override
|
329
|
+
Lint/ShadowingOuterLocalVariable:
|
330
|
+
Enabled: true
|
331
|
+
|
332
|
+
Lint/StructNewOverride:
|
333
|
+
Enabled: true
|
334
|
+
|
335
|
+
Lint/SuppressedException:
|
336
|
+
Enabled: true
|
337
|
+
|
338
|
+
Lint/SymbolConversion:
|
339
|
+
Enabled: true
|
340
|
+
|
341
|
+
Lint/Syntax:
|
342
|
+
Enabled: true
|
343
|
+
|
344
|
+
Lint/ToEnumArguments:
|
345
|
+
Enabled: true
|
346
|
+
|
347
|
+
Lint/ToJSON:
|
348
|
+
Enabled: true
|
349
|
+
|
350
|
+
Lint/TopLevelReturnWithArgument:
|
351
|
+
Enabled: true
|
352
|
+
|
353
|
+
Lint/TrailingCommaInAttributeDeclaration:
|
354
|
+
Enabled: true
|
355
|
+
|
356
|
+
Lint/TripleQuotes:
|
357
|
+
Enabled: true
|
358
|
+
|
359
|
+
Lint/UnderscorePrefixedVariableName:
|
360
|
+
Enabled: true
|
361
|
+
|
362
|
+
Lint/UnexpectedBlockArity:
|
363
|
+
Enabled: true
|
364
|
+
|
365
|
+
Lint/UnifiedInteger:
|
366
|
+
Enabled: true
|
367
|
+
|
368
|
+
Lint/UnmodifiedReduceAccumulator:
|
369
|
+
Enabled: true
|
370
|
+
|
371
|
+
Lint/UnreachableCode:
|
372
|
+
Enabled: true
|
373
|
+
|
374
|
+
Lint/UnreachableLoop:
|
375
|
+
Enabled: true
|
376
|
+
|
377
|
+
Lint/UnusedBlockArgument:
|
378
|
+
Enabled: true
|
379
|
+
|
380
|
+
Lint/UnusedMethodArgument:
|
381
|
+
Enabled: true
|
382
|
+
|
383
|
+
Lint/UriEscapeUnescape:
|
384
|
+
Enabled: true
|
385
|
+
|
386
|
+
Lint/UriRegexp:
|
387
|
+
Enabled: true
|
388
|
+
|
389
|
+
Lint/UselessAccessModifier:
|
390
|
+
Enabled: true
|
391
|
+
|
392
|
+
Lint/UselessAssignment:
|
393
|
+
Enabled: true
|
394
|
+
|
395
|
+
Lint/UselessElseWithoutRescue:
|
396
|
+
Enabled: true
|
397
|
+
|
398
|
+
Lint/UselessMethodDefinition:
|
399
|
+
Enabled: true
|
400
|
+
|
401
|
+
# TODO: Single fail on Chopin
|
402
|
+
Lint/UselessRescue:
|
403
|
+
Enabled: true
|
404
|
+
|
405
|
+
Lint/UselessRuby2Keywords:
|
406
|
+
Enabled: true
|
407
|
+
|
408
|
+
Lint/UselessSetterCall:
|
409
|
+
Enabled: true
|
410
|
+
|
411
|
+
Lint/UselessTimes:
|
412
|
+
Enabled: true
|
413
|
+
|
414
|
+
Lint/Void:
|
415
|
+
Enabled: true
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# Metrics cops are enabled by default with the expectation that many repos will
|
2
|
+
# have to set their own limits or disable. #technical-excellence-community discussion
|
3
|
+
# suggested some liked to work from them, and that overriding should be a conscious decision
|
4
|
+
|
5
|
+
Metrics/AbcSize:
|
6
|
+
Enabled: true
|
7
|
+
|
8
|
+
Metrics/BlockLength:
|
9
|
+
Enabled: true
|
10
|
+
Exclude:
|
11
|
+
- spec/**/*.rb
|
12
|
+
|
13
|
+
Metrics/BlockNesting:
|
14
|
+
Enabled: true
|
15
|
+
|
16
|
+
Metrics/ClassLength:
|
17
|
+
Enabled: true
|
18
|
+
|
19
|
+
Metrics/CollectionLiteralLength:
|
20
|
+
Enabled: true
|
21
|
+
|
22
|
+
Metrics/CyclomaticComplexity:
|
23
|
+
Enabled: true
|
24
|
+
|
25
|
+
Metrics/MethodLength:
|
26
|
+
Enabled: true
|
27
|
+
Exclude:
|
28
|
+
- spec/**/*.rb
|
29
|
+
|
30
|
+
Metrics/ModuleLength:
|
31
|
+
Enabled: true
|
32
|
+
|
33
|
+
Metrics/ParameterLists:
|
34
|
+
CountKeywordArgs: false
|
35
|
+
Enabled: true
|
36
|
+
|
37
|
+
Metrics/PerceivedComplexity:
|
38
|
+
Enabled: true
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# Needs override or fix in Chopin
|
2
|
+
Naming/AccessorMethodName:
|
3
|
+
Enabled: true
|
4
|
+
|
5
|
+
Naming/AsciiIdentifiers:
|
6
|
+
Enabled: true
|
7
|
+
|
8
|
+
Naming/BinaryOperatorParameterName:
|
9
|
+
Enabled: true
|
10
|
+
|
11
|
+
Naming/BlockForwarding:
|
12
|
+
Enabled: true
|
13
|
+
|
14
|
+
Naming/BlockParameterName:
|
15
|
+
Enabled: true
|
16
|
+
|
17
|
+
Naming/ClassAndModuleCamelCase:
|
18
|
+
Enabled: true
|
19
|
+
|
20
|
+
Naming/ConstantName:
|
21
|
+
Enabled: true
|
22
|
+
|
23
|
+
Naming/FileName:
|
24
|
+
Enabled: true
|
25
|
+
|
26
|
+
Naming/HeredocDelimiterCase:
|
27
|
+
Enabled: true
|
28
|
+
|
29
|
+
Naming/HeredocDelimiterNaming:
|
30
|
+
Enabled: true
|
31
|
+
|
32
|
+
Naming/InclusiveLanguage:
|
33
|
+
Enabled: true
|
34
|
+
|
35
|
+
# Need override - 86 fails on Chopin
|
36
|
+
Naming/MemoizedInstanceVariableName:
|
37
|
+
Enabled: true
|
38
|
+
|
39
|
+
Naming/MethodName:
|
40
|
+
Enabled: true
|
41
|
+
|
42
|
+
Naming/MethodParameterName:
|
43
|
+
Enabled: true
|
44
|
+
AllowedNames:
|
45
|
+
- as
|
46
|
+
- at
|
47
|
+
- ex
|
48
|
+
- id
|
49
|
+
- ip
|
50
|
+
- n
|
51
|
+
- to
|
52
|
+
|
53
|
+
Naming/PredicateName:
|
54
|
+
Enabled: true
|
55
|
+
ForbiddenPrefixes: []
|
56
|
+
|
57
|
+
# Need Chopin override
|
58
|
+
Naming/RescuedExceptionsVariableName:
|
59
|
+
Enabled: true
|
60
|
+
|
61
|
+
Naming/VariableName:
|
62
|
+
Enabled: true
|
63
|
+
|
64
|
+
# snake_case: 311 fails on Chopin, normalcase: 1118 fails on Chopin
|
65
|
+
# snake_case default on Rater so make default in simplycop
|
66
|
+
Naming/VariableNumber:
|
67
|
+
Enabled: true
|
68
|
+
EnforcedStyle: snake_case
|
69
|
+
AllowedIdentifiers:
|
70
|
+
- capture3
|
71
|
+
- e164
|
72
|
+
- iso8601
|
73
|
+
- oauth2
|
74
|
+
- rfc1123_date
|
75
|
+
- rfc822
|
76
|
+
- rfc2822
|
77
|
+
- rfc3339
|
78
|
+
- s3
|
79
|
+
- x86_64
|
80
|
+
AllowedPatterns:
|
81
|
+
- v\d+
|
data/.simplycop_rspec.yml
CHANGED
@@ -126,6 +126,9 @@ RSpec/ExpectInHook:
|
|
126
126
|
RSpec/ExpectOutput:
|
127
127
|
Enabled: false
|
128
128
|
|
129
|
+
RSpec/FilePath:
|
130
|
+
Enabled: false
|
131
|
+
|
129
132
|
RSpec/Focus:
|
130
133
|
Enabled: true
|
131
134
|
|
@@ -186,7 +189,7 @@ RSpec/MessageSpies:
|
|
186
189
|
Enabled: false
|
187
190
|
|
188
191
|
RSpec/MetadataStyle:
|
189
|
-
Enabled:
|
192
|
+
Enabled: false
|
190
193
|
|
191
194
|
RSpec/MissingExampleGroupArgument:
|
192
195
|
Enabled: true
|
@@ -280,12 +283,12 @@ RSpec/SkipBlockInsideExample:
|
|
280
283
|
RSpec/SortMetadata:
|
281
284
|
Enabled: true
|
282
285
|
|
283
|
-
RSpec/SpecFilePathSuffix:
|
284
|
-
Enabled: false
|
285
|
-
|
286
286
|
RSpec/SpecFilePathFormat:
|
287
287
|
Enabled: false
|
288
288
|
|
289
|
+
RSpec/SpecFilePathSuffix:
|
290
|
+
Enabled: true
|
291
|
+
|
289
292
|
RSpec/StubbedMock:
|
290
293
|
Enabled: false
|
291
294
|
|
@@ -315,15 +318,19 @@ RSpec/Yield:
|
|
315
318
|
|
316
319
|
# Rspec/Capybara
|
317
320
|
|
321
|
+
# Similar to FactoryBot (see below) there is an RSpec/Capybara department and a separate Capybara
|
322
|
+
# package which is not installed in simplycop. This configuration is just for the RSpec department.
|
323
|
+
# The namespacing has been changed to avoid warnings.
|
324
|
+
|
318
325
|
RSpec/Capybara:
|
319
326
|
Enabled: true
|
320
327
|
Include:
|
321
328
|
- spec/integration/*.rb
|
322
329
|
|
323
|
-
|
330
|
+
Capybara/CurrentPathExpectation:
|
324
331
|
Enabled: true
|
325
332
|
|
326
|
-
Capybara/
|
333
|
+
RSpec/Capybara/FeatureMethods:
|
327
334
|
Enabled: true
|
328
335
|
|
329
336
|
Capybara/MatchStyle:
|
@@ -341,11 +348,13 @@ Capybara/SpecificFinders:
|
|
341
348
|
Capybara/SpecificMatcher:
|
342
349
|
Enabled: true
|
343
350
|
|
344
|
-
|
345
|
-
|
346
|
-
FactoryBot/AssociationStyle:
|
351
|
+
Capybara/VisibilityMatcher:
|
347
352
|
Enabled: true
|
348
353
|
|
354
|
+
# RSpec/FactoryBot
|
355
|
+
# NB: There is an RSpec/FactoryBot department and a separate FactoryBot package. The FactoryBot package is
|
356
|
+
# not installed on simplycop. The configuration is just for the RSpec department, namespaced to avoid warnings.
|
357
|
+
|
349
358
|
FactoryBot/AttributeDefinedStatically:
|
350
359
|
Enabled: true
|
351
360
|
|
@@ -355,22 +364,51 @@ FactoryBot/ConsistentParenthesesStyle:
|
|
355
364
|
FactoryBot/CreateList:
|
356
365
|
Enabled: false
|
357
366
|
|
358
|
-
FactoryBot/FactoryAssociationWithStrategy:
|
359
|
-
Enabled: true
|
360
|
-
|
361
367
|
FactoryBot/FactoryClassName:
|
362
368
|
Enabled: true
|
363
369
|
|
364
370
|
FactoryBot/FactoryNameStyle:
|
365
371
|
Enabled: true
|
366
372
|
|
367
|
-
FactoryBot/RedundantFactoryOption:
|
368
|
-
Enabled: true
|
369
|
-
|
370
373
|
# Prefer explicit factorybot call
|
371
374
|
FactoryBot/SyntaxMethods:
|
372
375
|
Enabled: false
|
373
376
|
|
377
|
+
# Previously some FactoryBot package cops were configured due to the above confusion. There is less crossover between
|
378
|
+
# RSpec/FactoryBot and FactoryBot than Capybara, so it generated a number of errors when they weren't found.
|
379
|
+
# This is how they were configured:
|
380
|
+
|
381
|
+
# FactoryBot/AssociationStyle:
|
382
|
+
# Enabled: true
|
383
|
+
|
384
|
+
# FactoryBot/AttributeDefinedStatically:
|
385
|
+
# Enabled: true
|
386
|
+
|
387
|
+
# FactoryBot/ConsistentParenthesesStyle:
|
388
|
+
# Enabled: true
|
389
|
+
|
390
|
+
# FactoryBot/CreateList:
|
391
|
+
# Enabled: false
|
392
|
+
|
393
|
+
# FactoryBot/FactoryAssociationWithStrategy:
|
394
|
+
# Enabled: true
|
395
|
+
|
396
|
+
# FactoryBot/FactoryClassName:
|
397
|
+
# Enabled: true
|
398
|
+
|
399
|
+
# FactoryBot/FactoryNameStyle:
|
400
|
+
# Enabled: true
|
401
|
+
|
402
|
+
# FactoryBot/IdSequence:
|
403
|
+
# Enabled: true
|
404
|
+
|
405
|
+
# FactoryBot/RedundantFactoryOption:
|
406
|
+
# Enabled: true
|
407
|
+
|
408
|
+
# # Prefer explicit factorybot call
|
409
|
+
# FactoryBot/SyntaxMethods:
|
410
|
+
# Enabled: false
|
411
|
+
|
374
412
|
# Rspec/Rails
|
375
413
|
|
376
414
|
RSpec/Rails/AvoidSetupHook: # new in 2.4
|
data/.simplycop_security.yml
CHANGED
@@ -3,6 +3,8 @@ require:
|
|
3
3
|
- './lib/simplycop/security/reject_all_requests_local.rb'
|
4
4
|
- './lib/simplycop/security/check_for_vulnerable_code.rb'
|
5
5
|
|
6
|
+
# Custom security cops
|
7
|
+
|
6
8
|
Security/CSRFTokenValidation:
|
7
9
|
Enabled: true
|
8
10
|
Details: >-
|
@@ -20,3 +22,31 @@ Security/CheckForVulnerableCode:
|
|
20
22
|
Details: >-
|
21
23
|
Please make sure that this is addressed accordingly.
|
22
24
|
Do not hesitate to contact infosec for help and guidance
|
25
|
+
|
26
|
+
# Standard security cops
|
27
|
+
|
28
|
+
# Overridden to false in Chopin
|
29
|
+
Security/CompoundHash:
|
30
|
+
Enabled: true
|
31
|
+
|
32
|
+
Security/Eval:
|
33
|
+
Enabled: true
|
34
|
+
Exclude:
|
35
|
+
- 'spec/**/*.rb'
|
36
|
+
|
37
|
+
# Overridden to false on Chopin
|
38
|
+
Security/IoMethods:
|
39
|
+
Enabled: true
|
40
|
+
|
41
|
+
# Needs override in chopin spec
|
42
|
+
Security/JSONLoad:
|
43
|
+
Enabled: true
|
44
|
+
|
45
|
+
Security/MarshalLoad:
|
46
|
+
Enabled: true
|
47
|
+
|
48
|
+
Security/Open:
|
49
|
+
Enabled: true
|
50
|
+
|
51
|
+
Security/YAMLLoad:
|
52
|
+
Enabled: true
|