bibliothecary 8.7.4 → 8.7.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +21 -4
  3. data/.rubocop.yml +32 -941
  4. data/Gemfile +1 -1
  5. data/Rakefile +10 -0
  6. data/bibliothecary.gemspec +2 -2
  7. data/lib/bibliothecary/analyser.rb +6 -6
  8. data/lib/bibliothecary/cli.rb +8 -8
  9. data/lib/bibliothecary/configuration.rb +8 -8
  10. data/lib/bibliothecary/file_info.rb +2 -2
  11. data/lib/bibliothecary/multi_parsers/bundler_like_manifest.rb +1 -1
  12. data/lib/bibliothecary/multi_parsers/cyclonedx.rb +16 -17
  13. data/lib/bibliothecary/multi_parsers/dependencies_csv.rb +16 -16
  14. data/lib/bibliothecary/multi_parsers/json_runtime.rb +3 -3
  15. data/lib/bibliothecary/multi_parsers/spdx.rb +14 -14
  16. data/lib/bibliothecary/parsers/bower.rb +7 -7
  17. data/lib/bibliothecary/parsers/cargo.rb +15 -15
  18. data/lib/bibliothecary/parsers/carthage.rb +16 -16
  19. data/lib/bibliothecary/parsers/clojars.rb +7 -7
  20. data/lib/bibliothecary/parsers/cocoapods.rb +20 -20
  21. data/lib/bibliothecary/parsers/conda.rb +9 -9
  22. data/lib/bibliothecary/parsers/cpan.rb +12 -12
  23. data/lib/bibliothecary/parsers/cran.rb +12 -12
  24. data/lib/bibliothecary/parsers/dub.rb +8 -8
  25. data/lib/bibliothecary/parsers/elm.rb +8 -8
  26. data/lib/bibliothecary/parsers/go.rb +147 -67
  27. data/lib/bibliothecary/parsers/hackage.rb +13 -13
  28. data/lib/bibliothecary/parsers/haxelib.rb +4 -4
  29. data/lib/bibliothecary/parsers/hex.rb +11 -11
  30. data/lib/bibliothecary/parsers/julia.rb +4 -4
  31. data/lib/bibliothecary/parsers/maven.rb +88 -89
  32. data/lib/bibliothecary/parsers/meteor.rb +4 -4
  33. data/lib/bibliothecary/parsers/npm.rb +31 -31
  34. data/lib/bibliothecary/parsers/nuget.rb +44 -44
  35. data/lib/bibliothecary/parsers/packagist.rb +14 -14
  36. data/lib/bibliothecary/parsers/pub.rb +13 -13
  37. data/lib/bibliothecary/parsers/pypi.rb +71 -71
  38. data/lib/bibliothecary/parsers/rubygems.rb +15 -15
  39. data/lib/bibliothecary/parsers/shard.rb +13 -13
  40. data/lib/bibliothecary/parsers/swift_pm.rb +6 -6
  41. data/lib/bibliothecary/purl_util.rb +1 -1
  42. data/lib/bibliothecary/runner.rb +4 -4
  43. data/lib/bibliothecary/version.rb +1 -1
  44. data/lib/bibliothecary.rb +3 -3
  45. data/lib/sdl_parser.rb +5 -5
  46. metadata +2 -2
data/.rubocop.yml CHANGED
@@ -2,969 +2,60 @@
2
2
 
3
3
  AllCops:
4
4
  DisabledByDefault: true
5
+ TargetRubyVersion: 2.7
5
6
 
6
- Layout/AccessModifierIndentation:
7
- Description: Check indentation of private/protected visibility modifiers.
8
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#indent-public-private-protected
9
- Enabled: false
10
-
11
- Layout/ArrayAlignment:
12
- Description: Align the elements of an array literal if they span more than one line.
13
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#align-multiline-arrays
14
- Enabled: false
15
-
16
- Layout/BlockAlignment:
17
- Description: Align block ends correctly.
18
- Enabled: true
19
-
20
- Layout/BlockEndNewline:
21
- Description: Put end statement of multiline block on its own line.
22
- Enabled: false
23
-
24
- Layout/CaseIndentation:
25
- Description: Indentation of when in a case/when/[else/]end.
26
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#indent-when-to-case
27
- Enabled: false
28
-
29
- Layout/ClosingParenthesisIndentation:
30
- Description: Checks the indentation of hanging closing parentheses.
31
- Enabled: false
32
-
33
- Layout/CommentIndentation:
34
- Description: Indentation of comments.
35
- Enabled: false
36
-
37
- Layout/ConditionPosition:
38
- Description: Checks for condition placed in a confusing position relative to the
39
- keyword.
40
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#same-line-condition
41
- Enabled: true
42
-
43
- Layout/DefEndAlignment:
44
- Description: Align ends corresponding to defs correctly.
45
- Enabled: true
46
-
47
- Layout/DotPosition:
48
- Description: Checks the position of the dot in multi-line method calls.
49
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains
50
- Enabled: false
51
-
52
- Layout/ElseAlignment:
53
- Description: Align elses and elsifs correctly.
54
- Enabled: false
55
-
56
- Layout/EmptyLineBetweenDefs:
57
- Description: Use empty lines between defs.
58
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#empty-lines-between-methods
59
- Enabled: false
60
-
61
- Layout/EmptyLines:
62
- Description: Don't use several empty lines in a row.
63
- Enabled: false
64
-
65
- Layout/EmptyLinesAroundAccessModifier:
66
- Description: Keep blank lines around access modifiers.
67
- Enabled: false
68
-
69
- Layout/EmptyLinesAroundBlockBody:
70
- Description: Keeps track of empty lines around block bodies.
71
- Enabled: false
72
-
73
- Layout/EmptyLinesAroundClassBody:
74
- Description: Keeps track of empty lines around class bodies.
75
- Enabled: false
76
-
77
- Layout/EmptyLinesAroundMethodBody:
78
- Description: Keeps track of empty lines around method bodies.
79
- Enabled: false
80
-
81
- Layout/EmptyLinesAroundModuleBody:
82
- Description: Keeps track of empty lines around module bodies.
83
- Enabled: false
84
-
85
- Layout/EndAlignment:
86
- Description: Align ends correctly.
87
- Enabled: true
88
-
89
- Layout/EndOfLine:
90
- Description: Use Unix-style line endings.
91
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#crlf
92
- Enabled: false
93
-
94
- Layout/ExtraSpacing:
95
- Description: Do not use unnecessary spacing.
96
- Enabled: false
97
-
98
- Layout/FirstArrayElementIndentation:
99
- Description: Checks the indentation of the first element in an array literal.
100
- Enabled: false
101
-
102
- Layout/FirstHashElementIndentation:
103
- Description: Checks the indentation of the first key in a hash literal.
104
- Enabled: false
105
-
106
- Layout/FirstParameterIndentation:
107
- Description: Checks the indentation of the first parameter in a method call.
108
- Enabled: false
109
-
110
- Layout/HashAlignment:
111
- Description: Align the elements of a hash literal if they span more than one line.
112
- Enabled: false
113
7
 
114
- Layout/IndentationConsistency:
115
- Description: Keep indentation straight.
116
- Enabled: false
117
-
118
- Layout/IndentationStyle:
119
- Description: No hard tabs.
120
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
121
- Enabled: false
8
+ Metrics/BlockLength:
9
+ Max: 100
10
+ Exclude:
11
+ - config/routes.rb
12
+ - config/initializers/*
13
+ - spec/**/*_spec.rb
14
+ - spec/factories.rb
15
+ - lib/tasks/*.rake
122
16
 
123
- Layout/IndentationWidth:
124
- Description: Use 2 spaces for indentation.
125
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
126
- Enabled: false
127
-
128
- Layout/InitialIndentation:
129
- Description: Checks the indentation of the first non-blank non-comment line in a
130
- file.
131
- Enabled: false
132
-
133
- Layout/LeadingCommentSpace:
134
- Description: Comments should start with a space.
135
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#hash-space
17
+ # metrics and documentation. code is complex as it needs to be,
18
+ # and docs shouldn't be required. add them when needed.
19
+ Metrics/AbcSize:
136
20
  Enabled: false
137
-
138
21
  Layout/LineLength:
139
- Description: Limit lines to 80 characters.
140
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#80-character-limits
141
- Enabled: false
142
-
143
- Layout/MultilineBlockLayout:
144
- Description: Ensures newlines after multiline block do statements.
145
- Enabled: false
146
-
147
- Layout/MultilineOperationIndentation:
148
- Description: Checks indentation of binary operations that span more than one line.
149
- Enabled: false
150
-
151
- Layout/ParameterAlignment:
152
- Description: Align the parameters of a method call if they span more than one line.
153
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-double-indent
154
- Enabled: false
155
-
156
- Layout/RescueEnsureAlignment:
157
- Description: Align rescues and ensures correctly.
158
- Enabled: false
159
-
160
- Layout/SpaceAfterColon:
161
- Description: Use spaces after colons.
162
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-operators
163
- Enabled: false
164
-
165
- Layout/SpaceAfterComma:
166
- Description: Use spaces after commas.
167
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-operators
168
- Enabled: false
169
-
170
- Layout/SpaceAfterMethodName:
171
- Description: Do not put a space between a method name and the opening parenthesis
172
- in a method definition.
173
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#parens-no-spaces
174
- Enabled: false
175
-
176
- Layout/SpaceAfterNot:
177
- Description: Tracks redundant space after the ! operator.
178
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-space-bang
179
- Enabled: false
180
-
181
- Layout/SpaceAfterSemicolon:
182
- Description: Use spaces after semicolons.
183
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-operators
184
- Enabled: false
185
-
186
- Layout/SpaceAroundBlockParameters:
187
- Description: Checks the spacing inside and after block parameters pipes.
188
- Enabled: false
189
-
190
- Layout/SpaceAroundEqualsInParameterDefault:
191
- Description: Checks that the equals signs in parameter default assignments have
192
- or don't have surrounding space depending on configuration.
193
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-around-equals
194
- Enabled: false
195
-
196
- Layout/SpaceAroundKeyword:
197
- Description: Use spaces around keywords.
198
- Enabled: false
199
-
200
- Layout/SpaceAroundOperators:
201
- Description: Use a single space around operators.
202
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-operators
203
- Enabled: false
204
-
205
- Layout/SpaceBeforeBlockBraces:
206
- Description: Checks that the left block brace has or doesn't have space before it.
207
- Enabled: false
208
-
209
- Layout/SpaceBeforeComma:
210
- Description: No spaces before commas.
211
- Enabled: false
212
-
213
- Layout/SpaceBeforeComment:
214
- Description: Checks for missing space between code and a comment on the same line.
215
22
  Enabled: false
216
-
217
- Layout/SpaceBeforeFirstArg:
218
- Description: Checks that exactly one space is used between a method name and the
219
- first argument for method calls without parentheses.
220
- Enabled: true
221
-
222
- Layout/SpaceBeforeSemicolon:
223
- Description: No spaces before semicolons.
224
- Enabled: false
225
-
226
- Layout/SpaceInsideArrayLiteralBrackets:
227
- Description: Checks that brackets used for array literals have or don't have surrounding
228
- space depending on configuration.
229
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-spaces-braces
230
- Enabled: false
231
-
232
- Layout/SpaceInsideBlockBraces:
233
- Description: Checks that block braces have or don't have surrounding space. For
234
- blocks taking parameters, checks that the left brace has or doesn't have trailing
235
- space.
236
- Enabled: false
237
-
238
- Layout/SpaceInsideHashLiteralBraces:
239
- Description: Use spaces inside hash literal braces - or don't.
240
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-operators
241
- Enabled: true
242
-
243
- Layout/SpaceInsideParens:
244
- Description: No spaces after ( or before ).
245
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-spaces-braces
246
- Enabled: false
247
-
248
- Layout/SpaceInsideRangeLiteral:
249
- Description: No spaces inside range literals.
250
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-space-inside-range-literals
251
- Enabled: false
252
-
253
- Layout/SpaceInsideReferenceBrackets:
254
- Description: Checks that reference brackets have or don't have surrounding space
255
- depending on configuration.
256
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-spaces-braces
257
- Enabled: false
258
-
259
- Layout/SpaceInsideStringInterpolation:
260
- Description: Checks for padding/surrounding spaces inside string interpolation.
261
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#string-interpolation
262
- Enabled: false
263
-
264
- Layout/TrailingEmptyLines:
265
- Description: Checks trailing blank lines and final newline.
266
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#newline-eof
267
- Enabled: false
268
-
269
- Layout/TrailingWhitespace:
270
- Description: Avoid trailing whitespace.
271
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-trailing-whitespace
272
- Enabled: false
273
-
274
- Lint/AmbiguousOperator:
275
- Description: Checks for ambiguous operators in the first argument of a method invocation
276
- without parentheses.
277
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#parens-as-args
278
- Enabled: true
279
-
280
- Lint/AmbiguousRegexpLiteral:
281
- Description: Checks for ambiguous regexp literals in the first argument of a method
282
- invocation without parenthesis.
283
- Enabled: true
284
-
285
- Lint/AssignmentInCondition:
286
- Description: Don't use assignment in conditions.
287
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#safe-assignment-in-condition
288
- Enabled: true
289
-
290
- Lint/BinaryOperatorWithIdenticalOperands:
291
- Description: Checks for places where binary operator has identical operands.
292
- Enabled: true
293
-
294
- Lint/CircularArgumentReference:
295
- Description: Don't refer to the keyword argument in the default value.
296
- Enabled: true
297
-
298
- Lint/Debugger:
299
- Description: Check for debugger calls.
300
- Enabled: true
301
-
302
- Lint/DeprecatedClassMethods:
303
- Description: Check for deprecated class method calls.
304
- Enabled: true
305
-
306
- Lint/DuplicateMethods:
307
- Description: Check for duplicate methods calls.
308
- Enabled: true
309
-
310
- Lint/EachWithObjectArgument:
311
- Description: Check for immutable argument given to each_with_object.
312
- Enabled: true
313
-
314
- Lint/ElseLayout:
315
- Description: Check for odd code arrangement in an else block.
316
- Enabled: true
317
-
318
- Lint/EmptyEnsure:
319
- Description: Checks for empty ensure block.
320
- Enabled: true
321
-
322
- Lint/EmptyInterpolation:
323
- Description: Checks for empty string interpolation.
324
- Enabled: true
325
-
326
- Lint/EnsureReturn:
327
- Description: Do not use return in an ensure block.
328
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-return-ensure
329
- Enabled: true
330
-
331
- Lint/FlipFlop:
332
- Description: Checks for flip flops
333
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-flip-flops
334
- Enabled: false
335
-
336
- Lint/FormatParameterMismatch:
337
- Description: The number of parameters to format/sprint must match the fields.
338
- Enabled: true
339
-
340
- Lint/LiteralInInterpolation:
341
- Description: Checks for literals used in interpolation.
342
- Enabled: true
343
-
344
- Lint/Loop:
345
- Description: Use Kernel#loop with break rather than begin/end/until or begin/end/while
346
- for post-loop tests.
347
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#loop-with-break
348
- Enabled: true
349
-
350
- Lint/NestedMethodDefinition:
351
- Description: Do not use nested method definitions.
352
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-methods
353
- Enabled: true
354
-
355
- Lint/NonLocalExitFromIterator:
356
- Description: Do not use return in iterator to cause non-local exit.
357
- Enabled: true
358
-
359
- Lint/ParenthesesAsGroupedExpression:
360
- Description: Checks for method calls with a space before the opening parenthesis.
361
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#parens-no-spaces
362
- Enabled: true
363
-
364
- Lint/RedundantStringCoercion:
365
- Description: Checks for Object#to_s usage in string interpolation.
366
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-to-s
367
- Enabled: true
368
-
369
- Lint/RequireParentheses:
370
- Description: Use parentheses in the method call to avoid confusion about precedence.
371
- Enabled: true
372
-
373
- Lint/RescueException:
374
- Description: Avoid rescuing the Exception class.
375
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-blind-rescues
376
- Enabled: true
377
-
378
- Lint/ShadowingOuterLocalVariable:
379
- Description: Do not use the same name as outer local variable for block arguments
380
- or block local variables.
381
- Enabled: true
382
-
383
- Lint/SuppressedException:
384
- Description: Don't suppress exception.
385
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions
386
- Enabled: true
387
-
388
- Lint/UnderscorePrefixedVariableName:
389
- Description: Do not use prefix `_` for a variable that is used.
390
- Enabled: true
391
-
392
- Lint/UnreachableCode:
393
- Description: Unreachable code.
394
- Enabled: true
395
-
396
- Lint/UnusedBlockArgument:
397
- Description: Checks for unused block arguments.
398
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars
399
- Enabled: true
400
-
401
- Lint/UnusedMethodArgument:
402
- Description: Checks for unused method arguments.
403
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars
404
- Enabled: true
405
-
406
- Lint/UselessAccessModifier:
407
- Description: Checks for useless access modifiers.
408
- Enabled: true
409
-
410
- Lint/UselessAssignment:
411
- Description: Checks for useless assignment to a local variable.
412
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars
413
- Enabled: true
414
-
415
- Lint/UselessElseWithoutRescue:
416
- Description: Checks for useless `else` in `begin..end` without `rescue`.
417
- Enabled: true
418
-
419
- Lint/UselessSetterCall:
420
- Description: Checks for useless setter call to a local variable.
421
- Enabled: true
422
-
423
- Lint/Void:
424
- Description: Possible use of operator/literal/variable in void context.
425
- Enabled: true
426
-
427
- Metrics/AbcSize:
428
- Description: A calculated magnitude based on number of assignments, branches, and
429
- conditions.
430
- Reference: http://c2.com/cgi/wiki?AbcMetric
431
- Enabled: false
432
- Max: 20
433
-
434
- Metrics/BlockNesting:
435
- Description: Avoid excessive block nesting
436
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count
437
- Enabled: true
438
- Max: 4
439
-
440
23
  Metrics/ClassLength:
441
- Description: Avoid classes longer than 250 lines of code.
442
- Enabled: true
443
- Max: 250
444
-
445
- Metrics/CyclomaticComplexity:
446
- Description: A complexity metric that is strongly correlated to the number of test
447
- cases needed to validate a method.
448
- Enabled: true
449
-
450
- Metrics/MethodLength:
451
- Description: Avoid methods longer than 30 lines of code.
452
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#short-methods
453
- Enabled: true
454
- Max: 30
455
-
456
- Metrics/ModuleLength:
457
- Description: Avoid modules longer than 250 lines of code.
458
- Enabled: true
459
- Max: 250
460
-
461
- Metrics/ParameterLists:
462
- Description: Avoid parameter lists longer than three or four parameters.
463
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#too-many-params
464
- Enabled: true
465
-
466
- Metrics/PerceivedComplexity:
467
- Description: A complexity metric geared towards measuring complexity for a human
468
- reader.
469
- Enabled: false
470
-
471
- Naming/AccessorMethodName:
472
- Description: Check the naming of accessor methods for get_/set_.
473
- Enabled: false
474
-
475
- Naming/AsciiIdentifiers:
476
- Description: Use only ascii symbols in identifiers.
477
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#english-identifiers
478
- Enabled: false
479
-
480
- Naming/BinaryOperatorParameterName:
481
- Description: When defining binary operators, name the argument other.
482
- StyleGuide: "#other-arg"
483
- Enabled: true
484
-
485
- Naming/ClassAndModuleCamelCase:
486
- Description: Use CamelCase for classes and modules.
487
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#camelcase-classes
488
- Enabled: false
489
-
490
- Naming/ConstantName:
491
- Description: Constants should use SCREAMING_SNAKE_CASE.
492
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#screaming-snake-case
493
- Enabled: false
494
-
495
- Naming/FileName:
496
- Description: Use snake_case for source file names.
497
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#snake-case-files
498
- Enabled: false
499
-
500
- Naming/MethodName:
501
- Description: Use the configured style when naming methods.
502
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars
503
- Enabled: false
504
-
505
- Naming/PredicateName:
506
- Description: Check the names of predicate methods.
507
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark
508
- Enabled: false
509
-
510
- Naming/VariableName:
511
- Description: Use the configured style when naming variables.
512
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars
513
- Enabled: false
514
-
515
- Security/Eval:
516
- Description: The use of eval represents a serious security risk.
517
- Enabled: true
518
-
519
- Style/Alias:
520
- Description: Use alias_method instead of alias.
521
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#alias-method
522
- Enabled: false
523
-
524
- Style/AndOr:
525
- Description: Use &&/|| instead of and/or.
526
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-and-or-or
527
- Enabled: false
528
-
529
- Style/ArrayJoin:
530
- Description: Use Array#join instead of Array#*.
531
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#array-join
532
- Enabled: false
533
-
534
- Style/AsciiComments:
535
- Description: Use only ascii symbols in comments.
536
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#english-comments
537
- Enabled: false
538
-
539
- Style/Attr:
540
- Description: Checks for uses of Module#attr.
541
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#attr
542
- Enabled: false
543
-
544
- Style/BarePercentLiterals:
545
- Description: Checks if usage of %() or %Q() matches configuration.
546
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-q-shorthand
547
- Enabled: false
548
-
549
- Style/BeginBlock:
550
- Description: Avoid the use of BEGIN blocks.
551
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-BEGIN-blocks
552
- Enabled: false
553
-
554
- Style/BlockComments:
555
- Description: Do not use block comments.
556
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-block-comments
557
- Enabled: false
558
-
559
- Style/BlockDelimiters:
560
- Description: Avoid using {...} for multi-line blocks (multiline chaining is always
561
- ugly). Prefer {...} over do...end for single-line blocks.
562
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#single-line-blocks
563
- Enabled: false
564
-
565
- Style/CaseEquality:
566
- Description: Avoid explicit use of the case equality operator(===).
567
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-case-equality
568
- Enabled: false
569
-
570
- Style/CharacterLiteral:
571
- Description: Checks for uses of character literals.
572
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-character-literals
573
24
  Enabled: false
574
-
575
- Style/ClassAndModuleChildren:
576
- Description: Checks style of children classes and modules.
577
- Enabled: false
578
-
579
- Style/ClassCheck:
580
- Description: Enforces consistent use of `Object#is_a?` or `Object#kind_of?`.
581
- Enabled: false
582
-
583
- Style/ClassMethods:
584
- Description: Use self when defining module/class methods.
585
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#def-self-class-methods
586
- Enabled: false
587
-
588
- Style/ClassVars:
589
- Description: Avoid the use of class variables.
590
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-class-vars
591
- Enabled: false
592
-
593
- Style/ColonMethodCall:
594
- Description: 'Do not use :: for method call.'
595
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#double-colons
25
+ Metrics/MethodLength:
596
26
  Enabled: false
597
-
598
- Style/CommandLiteral:
599
- Description: Use `` or %x around command literals.
600
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-x
27
+ Metrics/ModuleLength:
601
28
  Enabled: false
602
-
603
- Style/CommentAnnotation:
604
- Description: Checks formatting of annotation comments.
605
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#annotate-keywords
29
+ Metrics/CyclomaticComplexity:
606
30
  Enabled: false
607
-
608
- Style/DefWithParentheses:
609
- Description: Use def with parentheses when there are arguments.
610
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#method-parens
31
+ Metrics/PerceivedComplexity:
611
32
  Enabled: false
612
-
33
+ Metrics/ParameterLists:
34
+ Max: 7
35
+ CountKeywordArgs: false
613
36
  Style/Documentation:
614
- Description: Document classes and non-namespace modules.
615
- Enabled: false
616
-
617
- Style/DoubleNegation:
618
- Description: Checks for uses of double negation (!!).
619
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-bang-bang
620
- Enabled: false
621
-
622
- Style/EachWithObject:
623
- Description: Prefer `each_with_object` over `inject` or `reduce`.
624
- Enabled: false
625
-
626
- Style/EmptyElse:
627
- Description: Avoid empty else-clauses.
628
- Enabled: false
629
-
630
- Style/EmptyLiteral:
631
- Description: Prefer literals to Array.new/Hash.new/String.new.
632
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#literal-array-hash
633
- Enabled: false
634
-
635
- Style/EndBlock:
636
- Description: END blocks should not be placed inside method definitions.
637
- Enabled: true
638
-
639
- Style/EvenOdd:
640
- Description: Favor the use of Fixnum#even? && Fixnum#odd?
641
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#predicate-methods
642
- Enabled: false
643
-
644
- Style/For:
645
- Description: Checks use of for or each in multiline loops.
646
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-for-loops
647
- Enabled: false
648
-
649
- Style/FormatString:
650
- Description: Enforce the use of Kernel#sprintf, Kernel#format or String#%.
651
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#sprintf
652
- Enabled: false
653
-
654
- Style/GlobalVars:
655
- Description: Do not introduce global variables.
656
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#instance-vars
657
- Reference: http://www.zenspider.com/Languages/Ruby/QuickRef.html
658
- Enabled: false
659
-
660
- Style/GuardClause:
661
- Description: Check for conditionals that can be replaced with guard clauses
662
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
663
- Enabled: false
664
-
665
- Style/HashSyntax:
666
- Description: 'Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax { :a =>
667
- 1, :b => 2 }.'
668
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#hash-literals
669
- Enabled: true
670
-
671
- Style/IfUnlessModifier:
672
- Description: Favor modifier if/unless usage when you have a single-line body.
673
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#if-as-a-modifier
674
- Enabled: false
675
-
676
- Style/IfWithSemicolon:
677
- Description: Do not use if x; .... Use the ternary operator instead.
678
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-semicolon-ifs
679
- Enabled: false
680
-
681
- Style/InfiniteLoop:
682
- Description: Use Kernel#loop for infinite loops.
683
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#infinite-loop
684
- Enabled: false
685
-
686
- Style/Lambda:
687
- Description: Use the new lambda literal syntax for single-line blocks.
688
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#lambda-multi-line
689
- Enabled: false
690
-
691
- Style/LambdaCall:
692
- Description: Use lambda.call(...) instead of lambda.(...).
693
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#proc-call
694
- Enabled: false
695
-
696
- Style/LineEndConcatenation:
697
- Description: Use \ instead of + or << to concatenate two string literals at line
698
- end.
699
- Enabled: false
700
-
701
- Style/MethodCallWithoutArgsParentheses:
702
- Description: Do not use parentheses for method calls with no arguments.
703
- StyleGuide: "#method-invocation-parens"
704
- Enabled: true
705
- IgnoredMethods: []
706
-
707
- Style/MethodDefParentheses:
708
- Description: Checks if the method definitions have or don't have parentheses.
709
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#method-parens
710
- Enabled: false
711
-
712
- Style/ModuleFunction:
713
- Description: Checks for usage of `extend self` in modules.
714
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#module-function
715
- Enabled: false
716
-
717
- Style/MultilineBlockChain:
718
- Description: Avoid multi-line chains of blocks.
719
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#single-line-blocks
720
- Enabled: false
721
-
722
- Style/MultilineIfThen:
723
- Description: Do not use then for multi-line if/unless.
724
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-then
725
- Enabled: false
726
-
727
- Style/MultilineTernaryOperator:
728
- Description: 'Avoid multi-line ?: (the ternary operator); use if/unless instead.'
729
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-multiline-ternary
730
- Enabled: false
731
-
732
- Style/NegatedIf:
733
- Description: Favor unless over if for negative conditions (or control flow or).
734
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#unless-for-negatives
735
- Enabled: false
736
-
737
- Style/NegatedWhile:
738
- Description: Favor until over while for negative conditions.
739
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#until-for-negatives
740
- Enabled: false
741
-
742
- Style/NestedTernaryOperator:
743
- Description: Use one expression per branch in a ternary operator.
744
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-ternary
745
- Enabled: false
746
-
747
- Style/Next:
748
- Description: Use `next` to skip iteration instead of a condition at the end.
749
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
750
- Enabled: false
751
-
752
- Style/NilComparison:
753
- Description: Prefer x.nil? to x == nil.
754
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#predicate-methods
755
- Enabled: false
756
-
757
- Style/NonNilCheck:
758
- Description: Checks for redundant nil checks.
759
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-non-nil-checks
760
- Enabled: false
761
-
762
- Style/Not:
763
- Description: Use ! instead of not.
764
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#bang-not-not
765
- Enabled: false
766
-
767
- Style/NumericLiterals:
768
- Description: Add underscores to large numeric literals to improve their readability.
769
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics
770
- Enabled: false
771
-
772
- Style/OneLineConditional:
773
- Description: Favor the ternary operator(?:) over if/then/else/end constructs.
774
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#ternary-operator
775
- Enabled: false
776
-
777
- Style/OptionalArguments:
778
- Description: Checks for optional arguments that do not appear at the end of the
779
- argument list
780
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#optional-arguments
781
- Enabled: false
782
-
783
- Style/ParallelAssignment:
784
- Description: Check for simple usages of parallel assignment. It will only warn when
785
- the number of variables matches on both sides of the assignment. This also provides
786
- performance benefits
787
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#parallel-assignment
788
- Enabled: false
789
-
790
- Style/ParenthesesAroundCondition:
791
- Description: Don't use parentheses around the condition of an if/unless/while.
792
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-parens-if
793
- Enabled: false
794
-
795
- Style/PercentLiteralDelimiters:
796
- Description: Use `%`-literal delimiters consistently
797
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-literal-braces
798
- Enabled: false
799
-
800
- Style/PercentQLiterals:
801
- Description: Checks if uses of %Q/%q match the configured preference.
802
- Enabled: false
803
-
804
- Style/PerlBackrefs:
805
- Description: Avoid Perl-style regex back references.
806
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-perl-regexp-last-matchers
807
- Enabled: false
808
-
809
- Style/PreferredHashMethods:
810
- Description: Checks for use of deprecated Hash methods.
811
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#hash-key
812
- Enabled: false
813
-
814
- Style/Proc:
815
- Description: Use proc instead of Proc.new.
816
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#proc
817
- Enabled: false
818
-
819
- Style/RaiseArgs:
820
- Description: Checks the arguments passed to raise/fail.
821
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#exception-class-messages
822
- Enabled: false
823
-
824
- Style/RedundantBegin:
825
- Description: Don't use begin blocks when they are not needed.
826
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#begin-implicit
827
- Enabled: false
828
-
829
- Style/RedundantCapitalW:
830
- Description: Checks for %W when interpolation is not needed.
831
- Enabled: false
832
-
833
- Style/RedundantException:
834
- Description: Checks for an obsolete RuntimeException argument in raise/fail.
835
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-explicit-runtimeerror
836
- Enabled: false
837
-
838
- Style/RedundantPercentQ:
839
- Description: Checks for %q/%Q when single quotes or double quotes would do.
840
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-q
841
- Enabled: false
842
-
843
- Style/RedundantReturn:
844
- Description: Don't use return where it's not required.
845
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-explicit-return
846
- Enabled: false
847
-
848
- Style/RedundantSelf:
849
- Description: Don't use self where it's not needed.
850
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-self-unless-required
851
37
  Enabled: false
852
38
 
39
+ # differences from standard ruby style guide.
853
40
  Style/RegexpLiteral:
854
- Description: Use / or %r around regular expressions.
855
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-r
856
- Enabled: false
857
-
858
- Style/RescueModifier:
859
- Description: Avoid using rescue in its modifier form.
860
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-rescue-modifiers
861
- Enabled: false
862
-
863
- Style/SelfAssignment:
864
- Description: Checks for places where self-assignment shorthand should have been
865
- used.
866
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#self-assignment
867
- Enabled: false
868
-
869
- Style/Semicolon:
870
- Description: Don't use semicolons to terminate expressions.
871
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-semicolon
872
- Enabled: false
873
-
874
- Style/SignalException:
875
- Description: Checks for proper usage of fail and raise.
876
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#fail-method
877
- Enabled: false
878
-
879
- Style/SingleLineBlockParams:
880
- Description: Enforces the names of some block params.
881
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#reduce-blocks
882
41
  Enabled: false
883
-
884
- Style/SingleLineMethods:
885
- Description: Avoid single-line methods.
886
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-single-line-methods
887
- Enabled: false
888
-
889
- Style/SpecialGlobalVars:
890
- Description: Avoid Perl-style global variables.
891
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-cryptic-perlisms
892
- Enabled: false
893
-
894
42
  Style/StringLiterals:
895
- Description: Checks if uses of quotes match the configured preference.
896
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-string-literals
897
- Enabled: false
898
-
899
- Style/StringLiteralsInInterpolation:
900
- Description: Checks if uses of quotes inside expressions in interpolated strings
901
- match the configured preference.
902
- Enabled: false
903
-
904
- Style/StructInheritance:
905
- Description: Checks for inheritance from Struct.new.
906
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-extend-struct-new
907
- Enabled: false
908
-
909
- Style/SymbolLiteral:
910
- Description: Use plain symbols instead of string symbols when possible.
911
- Enabled: false
912
-
913
- Style/SymbolProc:
914
- Description: Use symbols as procs instead of blocks when possible.
915
- Enabled: false
916
-
917
- Style/TrailingCommaInArguments:
918
- Description: Checks for trailing comma in parameter lists.
919
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-trailing-params-comma
920
- Enabled: false
921
-
43
+ EnforcedStyle: double_quotes
922
44
  Style/TrailingCommaInArrayLiteral:
923
- Description: Checks for trailing comma in array literals.
924
- StyleGuide: "#no-trailing-array-commas"
925
- Enabled: true
926
-
45
+ EnforcedStyleForMultiline: comma
927
46
  Style/TrailingCommaInHashLiteral:
928
- Description: Checks for trailing comma in hash literals.
929
- Enabled: true
930
-
931
- Style/TrailingUnderscoreVariable:
932
- Description: Checks for the usage of unneeded trailing underscores at the end of
933
- parallel variable assignment.
934
- Enabled: false
935
-
936
- Style/TrivialAccessors:
937
- Description: Prefer attr_* methods to trivial readers/writers.
938
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#attr_family
939
- Enabled: false
940
-
941
- Style/UnlessElse:
942
- Description: Do not use unless with else. Rewrite these with the positive case first.
943
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-else-with-unless
944
- Enabled: false
945
-
946
- Style/VariableInterpolation:
947
- Description: Don't interpolate global, instance and class variables directly in
948
- strings.
949
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#curlies-interpolate
47
+ EnforcedStyleForMultiline: comma
48
+ Layout/FirstArrayElementIndentation:
950
49
  Enabled: false
951
-
952
- Style/WhenThen:
953
- Description: Use when x then ... for one-line cases.
954
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#one-line-cases
50
+ Layout/MultilineMethodCallIndentation:
51
+ EnforcedStyle: indented
52
+ Style/NumericPredicate:
955
53
  Enabled: false
956
-
957
- Style/WhileUntilDo:
958
- Description: Checks for redundant do after while or until.
959
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-multiline-while-do
54
+ Style/FormatStringToken:
960
55
  Enabled: false
961
-
962
- Style/WhileUntilModifier:
963
- Description: Favor modifier while/until usage when you have a single-line body.
964
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#while-as-a-modifier
56
+ Style/MultilineBlockChain:
965
57
  Enabled: false
966
-
967
- Style/WordArray:
968
- Description: Use %w or %W for arrays of words.
969
- StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-w
58
+ Style/IfUnlessModifier:
970
59
  Enabled: false
60
+ Layout/BlockAlignment:
61
+ EnforcedStyleAlignWith: start_of_block