chefstyle 1.1.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cb8e8694ac330f16fbed4c272f4ea96ecc82e5ea0f4e5cb86d67afccd89dd4e9
4
- data.tar.gz: 1226349965ce1702235ee02901ced43ea2f96f9026fd41d40fcd16b34d01ed89
3
+ metadata.gz: e8a5a9a139fa8c13a7ed8661a647267905503b17e62362412af969e40d0df91b
4
+ data.tar.gz: 51ed4bc5b0918b590a16dc9892623385610c5033db3bc1aca87cbe1da30c5c1d
5
5
  SHA512:
6
- metadata.gz: 3805bdeb602027ca973b45838837039c4f8f41742495755df414bc1b9541b6e81e2e9dcb6ce8ff8857dd1c1080b7e6d131da0624b8ca883082b599e3244d5bd6
7
- data.tar.gz: e2c280aa7ad8d1779ada9549ccf89e5e6bd700b5c7a1a164404d47ea23609db213ef4ec61bdfdfe88dfe7ccec653698d3cdaa3d7e65c4befd60ea5f63aae68af
6
+ metadata.gz: c9cbd2f2fe158de67c16ec5932f449fc9e42877ddffe9e4e7f29881c05a645188f197241a930ddd4b51ffd2a75c38a726032a4e98fb22d922f8a755633a294d3
7
+ data.tar.gz: c439d8ae28a519fdd8190a13546db53f820ea46c8bcbd56eb8f676cf6b5f04b485d09a4da9ff52de1f46144aa00a6d0fda2cf60d377300f003a1a079a434d548
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
- # -*- encoding: utf-8 -*-
3
-
2
+ # frozen_string_literal: true
4
3
  $LOAD_PATH.unshift File.join(File.dirname(__FILE__), %w{.. lib})
5
4
 
6
5
  require "chefstyle"
@@ -1,4 +1,4 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
2
  lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require "chefstyle/version"
@@ -482,11 +482,15 @@ Style/WhileUntilModifier:
482
482
  Style/WordArray:
483
483
  Enabled: true
484
484
 
485
+ # we are ruby > 2.0 only so we can remove encoding comments for utf-8
486
+ Style/Encoding:
487
+ Enabled: true
488
+
485
489
  #
486
490
  # Disabled Style
487
491
  #
488
492
 
489
- # FIXME: we need to enable this
493
+ # reduces memory usage, but isn't a simple autocorrect so we need to do this one project at a time
490
494
  Style/FrozenStringLiteralComment:
491
495
  Enabled: false
492
496
 
@@ -529,10 +533,6 @@ Style/FormatString:
529
533
  Style/IfUnlessModifier:
530
534
  Enabled: false
531
535
 
532
- # we are ruby > 2.0 only so can disable the Encoding cop
533
- Style/Encoding:
534
- Enabled: false
535
-
536
536
  # Dan is -1 on this one: https://github.com/chef/chef/pull/4526#issuecomment-179950045
537
537
  Layout/IndentFirstHashElement:
538
538
  Enabled: false
@@ -207,10 +207,14 @@ Lint/AssignmentInCondition:
207
207
  Enabled: false
208
208
  Lint/BigDecimalNew:
209
209
  Enabled: false
210
+ Lint/BinaryOperatorWithIdenticalOperands:
211
+ Enabled: false
210
212
  Lint/BooleanSymbol:
211
213
  Enabled: false
212
214
  Lint/CircularArgumentReference:
213
215
  Enabled: false
216
+ Lint/ConstantResolution:
217
+ Enabled: false
214
218
  Lint/Debugger:
215
219
  Enabled: false
216
220
  Lint/DeprecatedClassMethods:
@@ -221,14 +225,20 @@ Lint/DisjunctiveAssignmentInConstructor:
221
225
  Enabled: false
222
226
  Lint/DuplicateCaseCondition:
223
227
  Enabled: false
228
+ Lint/DuplicateElsifCondition:
229
+ Enabled: false
224
230
  Lint/DuplicateHashKey:
225
231
  Enabled: false
226
232
  Lint/DuplicateMethods:
227
233
  Enabled: false
234
+ Lint/DuplicateRescueException:
235
+ Enabled: false
228
236
  Lint/EachWithObjectArgument:
229
237
  Enabled: false
230
238
  Lint/ElseLayout:
231
239
  Enabled: false
240
+ Lint/EmptyConditionalBody:
241
+ Enabled: false
232
242
  Lint/EmptyEnsure:
233
243
  Enabled: false
234
244
  Lint/EmptyExpression:
@@ -243,6 +253,8 @@ Lint/ErbNewArguments:
243
253
  Enabled: false
244
254
  Lint/FlipFlop:
245
255
  Enabled: false
256
+ Lint/FloatComparison:
257
+ Enabled: false
246
258
  Lint/FloatOutOfRange:
247
259
  Enabled: false
248
260
  Lint/FormatParameterMismatch:
@@ -265,6 +277,8 @@ Lint/Loop:
265
277
  Enabled: false
266
278
  Lint/MissingCopEnableDirective:
267
279
  Enabled: false
280
+ Lint/MissingSuper:
281
+ Enabled: false
268
282
  Lint/MixedRegexpCaptureTypes:
269
283
  Enabled: false
270
284
  Lint/MultipleComparison:
@@ -283,6 +297,8 @@ Lint/NumberConversion:
283
297
  Enabled: false
284
298
  Lint/OrderedMagicComments:
285
299
  Enabled: false
300
+ Lint/OutOfRangeRegexpRef:
301
+ Enabled: false
286
302
  Lint/ParenthesesAsGroupedExpression:
287
303
  Enabled: false
288
304
  Lint/PercentStringArray:
@@ -325,6 +341,8 @@ Lint/SafeNavigationWithEmpty:
325
341
  Enabled: false
326
342
  Lint/ScriptPermission:
327
343
  Enabled: false
344
+ Lint/SelfAssignment:
345
+ Enabled: false
328
346
  Lint/SendWithMixinArgument:
329
347
  Enabled: false
330
348
  Lint/ShadowedArgument:
@@ -341,12 +359,16 @@ Lint/Syntax:
341
359
  Enabled: false
342
360
  Lint/ToJSON:
343
361
  Enabled: false
362
+ Lint/TopLevelReturnWithArgument:
363
+ Enabled: false
344
364
  Lint/UnderscorePrefixedVariableName:
345
365
  Enabled: false
346
366
  Lint/UnifiedInteger:
347
367
  Enabled: false
348
368
  Lint/UnreachableCode:
349
369
  Enabled: false
370
+ Lint/UnreachableLoop:
371
+ Enabled: false
350
372
  Lint/UnusedBlockArgument:
351
373
  Enabled: false
352
374
  Lint/UnusedMethodArgument:
@@ -359,8 +381,6 @@ Lint/UselessAccessModifier:
359
381
  Enabled: false
360
382
  Lint/UselessAssignment:
361
383
  Enabled: false
362
- Lint/UselessComparison:
363
- Enabled: false
364
384
  Lint/UselessElseWithoutRescue:
365
385
  Enabled: false
366
386
  Lint/UselessSetterCall:
@@ -419,10 +439,14 @@ Naming/VariableNumber:
419
439
  Enabled: false
420
440
  Style/AccessModifierDeclarations:
421
441
  Enabled: false
442
+ Style/AccessorGrouping:
443
+ Enabled: false
422
444
  Style/Alias:
423
445
  Enabled: false
424
446
  Style/AndOr:
425
447
  Enabled: false
448
+ Style/ArrayCoercion:
449
+ Enabled: false
426
450
  Style/ArrayJoin:
427
451
  Enabled: false
428
452
  Style/AsciiComments:
@@ -435,12 +459,16 @@ Style/BarePercentLiterals:
435
459
  Enabled: false
436
460
  Style/BeginBlock:
437
461
  Enabled: false
462
+ Style/BisectedAttrAccessor:
463
+ Enabled: false
438
464
  Style/BlockComments:
439
465
  Enabled: false
440
466
  Style/BlockDelimiters:
441
467
  Enabled: false
442
468
  Style/CaseEquality:
443
469
  Enabled: false
470
+ Style/CaseLikeIf:
471
+ Enabled: false
444
472
  Style/CharacterLiteral:
445
473
  Enabled: false
446
474
  Style/ClassAndModuleChildren:
@@ -511,6 +539,8 @@ Style/EvenOdd:
511
539
  Enabled: false
512
540
  Style/ExpandPathArguments:
513
541
  Enabled: false
542
+ Style/ExplicitBlockArgument:
543
+ Enabled: false
514
544
  Style/ExponentialNotation:
515
545
  Enabled: false
516
546
  Style/FloatDivision:
@@ -523,12 +553,18 @@ Style/FormatStringToken:
523
553
  Enabled: false
524
554
  Style/FrozenStringLiteralComment:
525
555
  Enabled: false
556
+ Style/GlobalStdStream:
557
+ Enabled: false
526
558
  Style/GlobalVars:
527
559
  Enabled: false
528
560
  Style/GuardClause:
529
561
  Enabled: false
562
+ Style/HashAsLastArrayItem:
563
+ Enabled: false
530
564
  Style/HashEachMethods:
531
565
  Enabled: false
566
+ Style/HashLikeCase:
567
+ Enabled: false
532
568
  Style/HashSyntax:
533
569
  Enabled: false
534
570
  Style/HashTransformKeys:
@@ -565,12 +601,16 @@ Style/MethodCallWithoutArgsParentheses:
565
601
  Enabled: false
566
602
  Style/MethodCallWithArgsParentheses:
567
603
  Enabled: false
604
+ Style/RedundantAssignment:
605
+ Enabled: false
606
+ Style/RedundantFetchBlock:
607
+ Enabled: false
608
+ Style/RedundantFileExtensionInRequire:
609
+ Enabled: false
568
610
  Style/MethodCalledOnDoEndBlock:
569
611
  Enabled: false
570
612
  Style/MethodDefParentheses:
571
613
  Enabled: false
572
- Style/MethodMissingSuper:
573
- Enabled: false
574
614
  Style/MinMax:
575
615
  Enabled: false
576
616
  Style/MissingElse:
@@ -635,6 +675,8 @@ Style/OptionHash:
635
675
  Enabled: false
636
676
  Style/OptionalArguments:
637
677
  Enabled: false
678
+ Style/OptionalBooleanParameter:
679
+ Enabled: false
638
680
  Style/ParallelAssignment:
639
681
  Enabled: false
640
682
  Style/ParenthesesAroundCondition:
@@ -703,6 +745,8 @@ Style/Send:
703
745
  Enabled: false
704
746
  Style/SignalException:
705
747
  Enabled: false
748
+ Style/SingleArgumentDig:
749
+ Enabled: false
706
750
  Style/SingleLineBlockParams:
707
751
  Enabled: false
708
752
  Style/SingleLineMethods:
@@ -715,6 +759,8 @@ Style/StabbyLambdaParentheses:
715
759
  Enabled: false
716
760
  Style/StderrPuts:
717
761
  Enabled: false
762
+ Style/StringConcatenation:
763
+ Enabled: false
718
764
  Style/StringHashKeys:
719
765
  Enabled: false
720
766
  Style/StringLiterals:
@@ -180,6 +180,9 @@ Bundler/OrderedGems:
180
180
  VersionAdded: '0.46'
181
181
  VersionChanged: '0.47'
182
182
  TreatCommentsAsGroupSeparators: true
183
+ # By default, "-" and "_" are ignored for order purposes.
184
+ # This can be overridden by setting this parameter to true.
185
+ ConsiderPunctuation: false
183
186
  Include:
184
187
  - '**/*.gemfile'
185
188
  - '**/Gemfile'
@@ -200,13 +203,17 @@ Gemspec/OrderedDependencies:
200
203
  Enabled: true
201
204
  VersionAdded: '0.51'
202
205
  TreatCommentsAsGroupSeparators: true
206
+ # By default, "-" and "_" are ignored for order purposes.
207
+ # This can be overridden by setting this parameter to true.
208
+ ConsiderPunctuation: false
203
209
  Include:
204
210
  - '**/*.gemspec'
205
211
 
206
212
  Gemspec/RequiredRubyVersion:
207
- Description: 'Checks that `required_ruby_version` of gemspec and `TargetRubyVersion` of .rubocop.yml are equal.'
213
+ Description: 'Checks that `required_ruby_version` of gemspec is specified and equal to `TargetRubyVersion` of .rubocop.yml.'
208
214
  Enabled: true
209
215
  VersionAdded: '0.52'
216
+ VersionChanged: '0.89'
210
217
  Include:
211
218
  - '**/*.gemspec'
212
219
 
@@ -1228,7 +1235,7 @@ Layout/SpaceInsideBlockBraces:
1228
1235
 
1229
1236
  Layout/SpaceInsideHashLiteralBraces:
1230
1237
  Description: "Use spaces inside hash literal braces - or don't."
1231
- StyleGuide: '#spaces-operators'
1238
+ StyleGuide: '#spaces-braces'
1232
1239
  Enabled: true
1233
1240
  VersionAdded: '0.49'
1234
1241
  EnforcedStyle: space
@@ -1349,6 +1356,12 @@ Lint/BigDecimalNew:
1349
1356
  Enabled: true
1350
1357
  VersionAdded: '0.53'
1351
1358
 
1359
+ Lint/BinaryOperatorWithIdenticalOperands:
1360
+ Description: 'This cop checks for places where binary operator has identical operands.'
1361
+ Enabled: pending
1362
+ Safe: false
1363
+ VersionAdded: '0.89'
1364
+
1352
1365
  Lint/BooleanSymbol:
1353
1366
  Description: 'Check for `:true` and `:false` symbols.'
1354
1367
  Enabled: true
@@ -1361,6 +1374,15 @@ Lint/CircularArgumentReference:
1361
1374
  Enabled: true
1362
1375
  VersionAdded: '0.33'
1363
1376
 
1377
+ Lint/ConstantResolution:
1378
+ Description: 'Check that constants are fully qualified with `::`.'
1379
+ Enabled: false
1380
+ VersionAdded: '0.86'
1381
+ # Restrict this cop to only looking at certain names
1382
+ Only: []
1383
+ # Restrict this cop from only looking at certain names
1384
+ Ignore: []
1385
+
1364
1386
  Lint/Debugger:
1365
1387
  Description: 'Check for debugger calls.'
1366
1388
  Enabled: true
@@ -1382,12 +1404,18 @@ Lint/DisjunctiveAssignmentInConstructor:
1382
1404
  Enabled: true
1383
1405
  Safe: false
1384
1406
  VersionAdded: '0.62'
1407
+ VersionChanged: '0.88'
1385
1408
 
1386
1409
  Lint/DuplicateCaseCondition:
1387
1410
  Description: 'Do not repeat values in case conditionals.'
1388
1411
  Enabled: true
1389
1412
  VersionAdded: '0.45'
1390
1413
 
1414
+ Lint/DuplicateElsifCondition:
1415
+ Description: 'Do not repeat conditions used in if `elsif`.'
1416
+ Enabled: 'pending'
1417
+ VersionAdded: '0.88'
1418
+
1391
1419
  Lint/DuplicateHashKey:
1392
1420
  Description: 'Check for duplicate keys in hash literals.'
1393
1421
  Enabled: true
@@ -1399,6 +1427,11 @@ Lint/DuplicateMethods:
1399
1427
  Enabled: true
1400
1428
  VersionAdded: '0.29'
1401
1429
 
1430
+ Lint/DuplicateRescueException:
1431
+ Description: 'Checks that there are no repeated exceptions used in `rescue` expressions.'
1432
+ Enabled: pending
1433
+ VersionAdded: '0.89'
1434
+
1402
1435
  Lint/EachWithObjectArgument:
1403
1436
  Description: 'Check for immutable argument given to each_with_object.'
1404
1437
  Enabled: true
@@ -1409,6 +1442,12 @@ Lint/ElseLayout:
1409
1442
  Enabled: true
1410
1443
  VersionAdded: '0.17'
1411
1444
 
1445
+ Lint/EmptyConditionalBody:
1446
+ Description: 'This cop checks for the presence of `if`, `elsif` and `unless` branches without a body.'
1447
+ Enabled: 'pending'
1448
+ AllowComments: true
1449
+ VersionAdded: '0.89'
1450
+
1412
1451
  Lint/EmptyEnsure:
1413
1452
  Description: 'Checks for empty ensure block.'
1414
1453
  Enabled: true
@@ -1452,6 +1491,12 @@ Lint/FlipFlop:
1452
1491
  Enabled: true
1453
1492
  VersionAdded: '0.16'
1454
1493
 
1494
+ Lint/FloatComparison:
1495
+ Description: 'Checks for the presence of precise comparison of floating point numbers.'
1496
+ StyleGuide: '#float-comparison'
1497
+ Enabled: pending
1498
+ VersionAdded: '0.89'
1499
+
1455
1500
  Lint/FloatOutOfRange:
1456
1501
  Description: >-
1457
1502
  Catches floating-point literals too large or small for Ruby to
@@ -1499,7 +1544,9 @@ Lint/InheritException:
1499
1544
  Lint/InterpolationCheck:
1500
1545
  Description: 'Raise warning for interpolation in single q strs.'
1501
1546
  Enabled: true
1547
+ Safe: false
1502
1548
  VersionAdded: '0.50'
1549
+ VersionChanged: '0.87'
1503
1550
 
1504
1551
  Lint/LiteralAsCondition:
1505
1552
  Description: 'Checks of literals used in conditions.'
@@ -1519,6 +1566,7 @@ Lint/Loop:
1519
1566
  StyleGuide: '#loop-with-break'
1520
1567
  Enabled: true
1521
1568
  VersionAdded: '0.9'
1569
+ VersionChanged: '0.89'
1522
1570
 
1523
1571
  Lint/MissingCopEnableDirective:
1524
1572
  Description: 'Checks for a `# rubocop:enable` after `# rubocop:disable`.'
@@ -1533,6 +1581,13 @@ Lint/MissingCopEnableDirective:
1533
1581
  # .inf for any size
1534
1582
  MaximumRangeSize: .inf
1535
1583
 
1584
+ Lint/MissingSuper:
1585
+ Description: >-
1586
+ This cop checks for the presence of constructors and lifecycle callbacks
1587
+ without calls to `super`'.
1588
+ Enabled: pending
1589
+ VersionAdded: '0.89'
1590
+
1536
1591
  Lint/MixedRegexpCaptureTypes:
1537
1592
  Description: 'Do not mix named captures and numbered captures in a Regexp literal.'
1538
1593
  Enabled: pending
@@ -1585,6 +1640,12 @@ Lint/OrderedMagicComments:
1585
1640
  Enabled: true
1586
1641
  VersionAdded: '0.53'
1587
1642
 
1643
+ Lint/OutOfRangeRegexpRef:
1644
+ Description: 'Checks for out of range reference for Regexp because it always returns nil.'
1645
+ Enabled: pending
1646
+ Safe: false
1647
+ VersionAdded: '0.89'
1648
+
1588
1649
  Lint/ParenthesesAsGroupedExpression:
1589
1650
  Description: >-
1590
1651
  Checks for method calls with a space before the opening
@@ -1611,7 +1672,9 @@ Lint/RaiseException:
1611
1672
  Description: Checks for `raise` or `fail` statements which are raising `Exception` class.
1612
1673
  StyleGuide: '#raise-exception'
1613
1674
  Enabled: pending
1675
+ Safe: false
1614
1676
  VersionAdded: '0.81'
1677
+ VersionChanged: '0.86'
1615
1678
  AllowedImplicitNamespaces:
1616
1679
  - 'Gem'
1617
1680
 
@@ -1668,6 +1731,7 @@ Lint/RegexpAsCondition:
1668
1731
  The regexp literal matches `$_` implicitly.
1669
1732
  Enabled: true
1670
1733
  VersionAdded: '0.51'
1734
+ VersionChanged: '0.86'
1671
1735
 
1672
1736
  Lint/RequireParentheses:
1673
1737
  Description: >-
@@ -1724,6 +1788,7 @@ Lint/SafeNavigationWithEmpty:
1724
1788
  Description: 'Avoid `foo&.empty?` in conditionals.'
1725
1789
  Enabled: true
1726
1790
  VersionAdded: '0.62'
1791
+ VersionChanged: '0.87'
1727
1792
 
1728
1793
  Lint/ScriptPermission:
1729
1794
  Description: 'Grant script file execute permission.'
@@ -1731,6 +1796,11 @@ Lint/ScriptPermission:
1731
1796
  VersionAdded: '0.49'
1732
1797
  VersionChanged: '0.50'
1733
1798
 
1799
+ Lint/SelfAssignment:
1800
+ Description: 'Checks for self-assignments.'
1801
+ Enabled: pending
1802
+ VersionAdded: '0.89'
1803
+
1734
1804
  Lint/SendWithMixinArgument:
1735
1805
  Description: 'Checks for `send` method when using mixin.'
1736
1806
  Enabled: true
@@ -1781,6 +1851,11 @@ Lint/ToJSON:
1781
1851
  Enabled: true
1782
1852
  VersionAdded: '0.66'
1783
1853
 
1854
+ Lint/TopLevelReturnWithArgument:
1855
+ Description: 'This cop detects top level return statements with argument.'
1856
+ Enabled: 'pending'
1857
+ VersionAdded: '0.89'
1858
+
1784
1859
  Lint/UnderscorePrefixedVariableName:
1785
1860
  Description: 'Do not use prefix `_` for a variable that is used.'
1786
1861
  Enabled: true
@@ -1797,6 +1872,11 @@ Lint/UnreachableCode:
1797
1872
  Enabled: true
1798
1873
  VersionAdded: '0.9'
1799
1874
 
1875
+ Lint/UnreachableLoop:
1876
+ Description: 'This cop checks for loops that will have at most one iteration.'
1877
+ Enabled: pending
1878
+ VersionAdded: '0.89'
1879
+
1800
1880
  Lint/UnusedBlockArgument:
1801
1881
  Description: 'Checks for unused block arguments.'
1802
1882
  StyleGuide: '#underscore-unused-vars'
@@ -1846,11 +1926,6 @@ Lint/UselessAssignment:
1846
1926
  Enabled: true
1847
1927
  VersionAdded: '0.11'
1848
1928
 
1849
- Lint/UselessComparison:
1850
- Description: 'Checks for comparison of something with itself.'
1851
- Enabled: true
1852
- VersionAdded: '0.11'
1853
-
1854
1929
  Lint/UselessElseWithoutRescue:
1855
1930
  Description: 'Checks for useless `else` in `begin..end` without `rescue`.'
1856
1931
  Enabled: true
@@ -1884,15 +1959,16 @@ Metrics/AbcSize:
1884
1959
  # The ABC size is a calculated magnitude, so this number can be an Integer or
1885
1960
  # a Float.
1886
1961
  IgnoredMethods: []
1887
- Max: 15
1962
+ Max: 17
1888
1963
 
1889
1964
  Metrics/BlockLength:
1890
1965
  Description: 'Avoid long blocks with many lines.'
1891
1966
  Enabled: true
1892
1967
  VersionAdded: '0.44'
1893
- VersionChanged: '0.66'
1968
+ VersionChanged: '0.87'
1894
1969
  CountComments: false # count full line comments?
1895
1970
  Max: 25
1971
+ CountAsOne: []
1896
1972
  ExcludedMethods:
1897
1973
  # By default, exclude the `#refine` method, as it tends to have larger
1898
1974
  # associated blocks.
@@ -1913,8 +1989,10 @@ Metrics/ClassLength:
1913
1989
  Description: 'Avoid classes longer than 100 lines of code.'
1914
1990
  Enabled: true
1915
1991
  VersionAdded: '0.25'
1992
+ VersionChanged: '0.87'
1916
1993
  CountComments: false # count full line comments?
1917
1994
  Max: 100
1995
+ CountAsOne: []
1918
1996
 
1919
1997
  # Avoid complex methods.
1920
1998
  Metrics/CyclomaticComplexity:
@@ -1925,24 +2003,27 @@ Metrics/CyclomaticComplexity:
1925
2003
  VersionAdded: '0.25'
1926
2004
  VersionChanged: '0.81'
1927
2005
  IgnoredMethods: []
1928
- Max: 6
2006
+ Max: 7
1929
2007
 
1930
2008
  Metrics/MethodLength:
1931
2009
  Description: 'Avoid methods longer than 10 lines of code.'
1932
2010
  StyleGuide: '#short-methods'
1933
2011
  Enabled: true
1934
2012
  VersionAdded: '0.25'
1935
- VersionChanged: '0.59.2'
2013
+ VersionChanged: '0.87'
1936
2014
  CountComments: false # count full line comments?
1937
2015
  Max: 10
2016
+ CountAsOne: []
1938
2017
  ExcludedMethods: []
1939
2018
 
1940
2019
  Metrics/ModuleLength:
1941
2020
  Description: 'Avoid modules longer than 100 lines of code.'
1942
2021
  Enabled: true
1943
2022
  VersionAdded: '0.31'
2023
+ VersionChanged: '0.87'
1944
2024
  CountComments: false # count full line comments?
1945
2025
  Max: 100
2026
+ CountAsOne: []
1946
2027
 
1947
2028
  Metrics/ParameterLists:
1948
2029
  Description: 'Avoid parameter lists longer than three or four parameters.'
@@ -1960,7 +2041,7 @@ Metrics/PerceivedComplexity:
1960
2041
  VersionAdded: '0.25'
1961
2042
  VersionChanged: '0.81'
1962
2043
  IgnoredMethods: []
1963
- Max: 7
2044
+ Max: 8
1964
2045
 
1965
2046
  ################## Migration #############################
1966
2047
 
@@ -1980,10 +2061,12 @@ Naming/AccessorMethodName:
1980
2061
  VersionAdded: '0.50'
1981
2062
 
1982
2063
  Naming/AsciiIdentifiers:
1983
- Description: 'Use only ascii symbols in identifiers.'
2064
+ Description: 'Use only ascii symbols in identifiers and constants.'
1984
2065
  StyleGuide: '#english-identifiers'
1985
2066
  Enabled: true
1986
2067
  VersionAdded: '0.50'
2068
+ VersionChanged: '0.87'
2069
+ AsciiConstants: true
1987
2070
 
1988
2071
  Naming/BinaryOperatorParameterName:
1989
2072
  Description: 'When defining binary operators, name the argument other.'
@@ -2150,17 +2233,18 @@ Naming/MethodParameterName:
2150
2233
  AllowNamesEndingInNumbers: true
2151
2234
  # Allowed names that will not register an offense
2152
2235
  AllowedNames:
2153
- - io
2154
- - id
2155
- - to
2236
+ - at
2156
2237
  - by
2157
- - 'on'
2238
+ - db
2239
+ - id
2158
2240
  - in
2159
- - at
2241
+ - io
2160
2242
  - ip
2161
- - db
2243
+ - of
2244
+ - 'on'
2162
2245
  - os
2163
2246
  - pp
2247
+ - to
2164
2248
  # Forbidden names that will register an offense
2165
2249
  ForbiddenNames: []
2166
2250
 
@@ -2276,6 +2360,17 @@ Style/AccessModifierDeclarations:
2276
2360
  - group
2277
2361
  AllowModifiersOnSymbols: true
2278
2362
 
2363
+ Style/AccessorGrouping:
2364
+ Description: 'Checks for grouping of accessors in `class` and `module` bodies.'
2365
+ Enabled: 'pending'
2366
+ VersionAdded: '0.87'
2367
+ EnforcedStyle: grouped
2368
+ SupportedStyles:
2369
+ # separated: each accessor goes in a separate statement.
2370
+ # grouped: accessors are grouped into a single statement.
2371
+ - separated
2372
+ - grouped
2373
+
2279
2374
  Style/Alias:
2280
2375
  Description: 'Use alias instead of alias_method.'
2281
2376
  StyleGuide: '#alias-method-lexically'
@@ -2300,6 +2395,15 @@ Style/AndOr:
2300
2395
  - always
2301
2396
  - conditionals
2302
2397
 
2398
+ Style/ArrayCoercion:
2399
+ Description: >-
2400
+ Use Array() instead of explicit Array check or [*var], when dealing
2401
+ with a variable you want to treat as an Array, but you're not certain it's an array.
2402
+ StyleGuide: '#array-coercion'
2403
+ Safe: false
2404
+ Enabled: 'pending'
2405
+ VersionAdded: '0.88'
2406
+
2303
2407
  Style/ArrayJoin:
2304
2408
  Description: 'Use Array#join instead of Array#*.'
2305
2409
  StyleGuide: '#array-join'
@@ -2343,6 +2447,13 @@ Style/BeginBlock:
2343
2447
  Enabled: true
2344
2448
  VersionAdded: '0.9'
2345
2449
 
2450
+ Style/BisectedAttrAccessor:
2451
+ Description: >-
2452
+ Checks for places where `attr_reader` and `attr_writer`
2453
+ for the same method can be combined into single `attr_accessor`.
2454
+ Enabled: 'pending'
2455
+ VersionAdded: '0.87'
2456
+
2346
2457
  Style/BlockComments:
2347
2458
  Description: 'Do not use block comments.'
2348
2459
  StyleGuide: '#no-block-comments'
@@ -2465,6 +2576,7 @@ Style/CaseEquality:
2465
2576
  StyleGuide: '#no-case-equality'
2466
2577
  Enabled: true
2467
2578
  VersionAdded: '0.9'
2579
+ VersionChanged: '0.89'
2468
2580
  # If AllowOnConstant is enabled, the cop will ignore violations when the receiver of
2469
2581
  # the case equality operator is a constant.
2470
2582
  #
@@ -2475,6 +2587,12 @@ Style/CaseEquality:
2475
2587
  # String === "string"
2476
2588
  AllowOnConstant: false
2477
2589
 
2590
+ Style/CaseLikeIf:
2591
+ Description: 'This cop identifies places where `if-elsif` constructions can be replaced with `case-when`.'
2592
+ StyleGuide: '#case-vs-if-else'
2593
+ Enabled: 'pending'
2594
+ VersionAdded: '0.88'
2595
+
2478
2596
  Style/CharacterLiteral:
2479
2597
  Description: 'Checks for uses of character literals.'
2480
2598
  StyleGuide: '#no-character-literals'
@@ -2717,6 +2835,7 @@ Style/DoubleNegation:
2717
2835
  VersionAdded: '0.19'
2718
2836
  VersionChanged: '0.84'
2719
2837
  EnforcedStyle: allowed_in_returns
2838
+ SafeAutoCorrect: false
2720
2839
  SupportedStyles:
2721
2840
  - allowed_in_returns
2722
2841
  - forbidden
@@ -2811,6 +2930,16 @@ Style/ExpandPathArguments:
2811
2930
  Enabled: true
2812
2931
  VersionAdded: '0.53'
2813
2932
 
2933
+ Style/ExplicitBlockArgument:
2934
+ Description: >-
2935
+ Consider using explicit block argument to avoid writing block literal
2936
+ that just passes its arguments to another block.
2937
+ StyleGuide: '#block-argument'
2938
+ Enabled: pending
2939
+ # May change the yielding arity.
2940
+ Safe: false
2941
+ VersionAdded: '0.89'
2942
+
2814
2943
  Style/ExponentialNotation:
2815
2944
  Description: 'When using exponential notation, favor a mantissa between 1 (inclusive) and 10 (exclusive).'
2816
2945
  StyleGuide: '#exponential-notation'
@@ -2894,6 +3023,12 @@ Style/FrozenStringLiteralComment:
2894
3023
  - never
2895
3024
  Safe: false
2896
3025
 
3026
+ Style/GlobalStdStream:
3027
+ Description: 'Enforces the use of `$stdout/$stderr/$stdin` instead of `STDOUT/STDERR/STDIN`.'
3028
+ StyleGuide: '#global-stdout'
3029
+ Enabled: pending
3030
+ VersionAdded: '0.89'
3031
+
2897
3032
  Style/GlobalVars:
2898
3033
  Description: 'Do not introduce global variables.'
2899
3034
  StyleGuide: '#instance-vars'
@@ -2913,6 +3048,18 @@ Style/GuardClause:
2913
3048
  # needs to have to trigger this cop
2914
3049
  MinBodyLength: 1
2915
3050
 
3051
+ Style/HashAsLastArrayItem:
3052
+ Description: >-
3053
+ Checks for presence or absence of braces around hash literal as a last
3054
+ array item depending on configuration.
3055
+ StyleGuide: '#hash-literal-as-last-array-item'
3056
+ Enabled: 'pending'
3057
+ VersionAdded: '0.88'
3058
+ EnforcedStyle: braces
3059
+ SupportedStyles:
3060
+ - braces
3061
+ - no_braces
3062
+
2916
3063
  Style/HashEachMethods:
2917
3064
  Description: 'Use Hash#each_key and Hash#each_value.'
2918
3065
  StyleGuide: '#hash-each'
@@ -2920,6 +3067,16 @@ Style/HashEachMethods:
2920
3067
  VersionAdded: '0.80'
2921
3068
  Safe: false
2922
3069
 
3070
+ Style/HashLikeCase:
3071
+ Description: >-
3072
+ Checks for places where `case-when` represents a simple 1:1
3073
+ mapping and can be replaced with a hash lookup.
3074
+ Enabled: 'pending'
3075
+ VersionAdded: '0.88'
3076
+ # `MinBranchesCount` defines the number of branches `case` needs to have
3077
+ # to trigger this cop
3078
+ MinBranchesCount: 3
3079
+
2923
3080
  Style/HashSyntax:
2924
3081
  Description: >-
2925
3082
  Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax
@@ -2983,6 +3140,7 @@ Style/IfUnlessModifierOfIfUnless:
2983
3140
  Avoid modifier if/unless usage on conditionals.
2984
3141
  Enabled: true
2985
3142
  VersionAdded: '0.39'
3143
+ VersionChanged: '0.87'
2986
3144
 
2987
3145
  Style/IfWithSemicolon:
2988
3146
  Description: 'Do not use if x; .... Use the ternary operator instead.'
@@ -3126,12 +3284,6 @@ Style/MethodDefParentheses:
3126
3284
  - require_no_parentheses
3127
3285
  - require_no_parentheses_except_multiline
3128
3286
 
3129
- Style/MethodMissingSuper:
3130
- Description: Checks for `method_missing` to call `super`.
3131
- StyleGuide: '#no-method-missing'
3132
- Enabled: true
3133
- VersionAdded: '0.56'
3134
-
3135
3287
  Style/MinMax:
3136
3288
  Description: >-
3137
3289
  Use `Enumerable#minmax` instead of `Enumerable#min`
@@ -3239,6 +3391,7 @@ Style/MultilineTernaryOperator:
3239
3391
  StyleGuide: '#no-multiline-ternary'
3240
3392
  Enabled: true
3241
3393
  VersionAdded: '0.9'
3394
+ VersionChanged: '0.86'
3242
3395
 
3243
3396
  Style/MultilineWhenThen:
3244
3397
  Description: 'Do not use then for multi-line when statement.'
@@ -3343,6 +3496,7 @@ Style/NestedTernaryOperator:
3343
3496
  StyleGuide: '#no-nested-ternary'
3344
3497
  Enabled: true
3345
3498
  VersionAdded: '0.9'
3499
+ VersionChanged: '0.86'
3346
3500
 
3347
3501
  Style/Next:
3348
3502
  Description: 'Use `next` to skip iteration instead of a condition at the end.'
@@ -3471,6 +3625,13 @@ Style/OptionalArguments:
3471
3625
  VersionAdded: '0.33'
3472
3626
  VersionChanged: '0.83'
3473
3627
 
3628
+ Style/OptionalBooleanParameter:
3629
+ Description: 'Use keyword arguments when defining method with boolean argument.'
3630
+ StyleGuide: '#boolean-keyword-arguments'
3631
+ Enabled: pending
3632
+ Safe: false
3633
+ VersionAdded: '0.89'
3634
+
3474
3635
  Style/OrAssignment:
3475
3636
  Description: 'Recommend usage of double pipe equals (||=) where applicable.'
3476
3637
  StyleGuide: '#double-pipe-for-uninit'
@@ -3567,6 +3728,11 @@ Style/RandomWithOffset:
3567
3728
  Enabled: true
3568
3729
  VersionAdded: '0.52'
3569
3730
 
3731
+ Style/RedundantAssignment:
3732
+ Description: 'Checks for redundant assignment before returning.'
3733
+ Enabled: 'pending'
3734
+ VersionAdded: '0.87'
3735
+
3570
3736
  Style/RedundantBegin:
3571
3737
  Description: "Don't use begin blocks when they are not needed."
3572
3738
  StyleGuide: '#begin-implicit'
@@ -3596,6 +3762,27 @@ Style/RedundantException:
3596
3762
  VersionAdded: '0.14'
3597
3763
  VersionChanged: '0.29'
3598
3764
 
3765
+ Style/RedundantFetchBlock:
3766
+ Description: >-
3767
+ Use `fetch(key, value)` instead of `fetch(key) { value }`
3768
+ when value has Numeric, Rational, Complex, Symbol or String type, `false`, `true`, `nil` or is a constant.
3769
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#hashfetch-with-argument-vs-hashfetch--block-code'
3770
+ Enabled: 'pending'
3771
+ Safe: false
3772
+ # If enabled, this cop will autocorrect usages of
3773
+ # `fetch` being called with block returning a constant.
3774
+ # This can be dangerous since constants will not be defined at that moment.
3775
+ SafeForConstants: false
3776
+ VersionAdded: '0.86'
3777
+
3778
+ Style/RedundantFileExtensionInRequire:
3779
+ Description: >-
3780
+ Checks for the presence of superfluous `.rb` extension in
3781
+ the filename provided to `require` and `require_relative`.
3782
+ StyleGuide: '#no-explicit-rb-to-require'
3783
+ Enabled: 'pending'
3784
+ VersionAdded: '0.88'
3785
+
3599
3786
  Style/RedundantFreeze:
3600
3787
  Description: "Checks usages of Object#freeze on immutable objects."
3601
3788
  Enabled: true
@@ -3763,6 +3950,12 @@ Style/SignalException:
3763
3950
  - only_fail
3764
3951
  - semantic
3765
3952
 
3953
+ Style/SingleArgumentDig:
3954
+ Description: 'Avoid using single argument dig method.'
3955
+ Enabled: pending
3956
+ VersionAdded: '0.89'
3957
+ Safe: false
3958
+
3766
3959
  Style/SingleLineBlockParams:
3767
3960
  Description: 'Enforces the names of some block params.'
3768
3961
  Enabled: false
@@ -3818,6 +4011,13 @@ Style/StderrPuts:
3818
4011
  Enabled: true
3819
4012
  VersionAdded: '0.51'
3820
4013
 
4014
+ Style/StringConcatenation:
4015
+ Description: 'Checks for places where string concatenation can be replaced with string interpolation.'
4016
+ StyleGuide: '#string-interpolation'
4017
+ Enabled: pending
4018
+ Safe: false
4019
+ VersionAdded: '0.89'
4020
+
3821
4021
  Style/StringHashKeys:
3822
4022
  Description: 'Prefer symbols instead of strings as hash keys.'
3823
4023
  StyleGuide: '#symbols-as-keys'
@@ -3875,6 +4075,7 @@ Style/StructInheritance:
3875
4075
  StyleGuide: '#no-extend-struct-new'
3876
4076
  Enabled: true
3877
4077
  VersionAdded: '0.29'
4078
+ VersionChanged: '0.86'
3878
4079
 
3879
4080
  Style/SymbolArray:
3880
4081
  Description: 'Use %i or %I for arrays of symbols.'
@@ -3896,7 +4097,7 @@ Style/SymbolLiteral:
3896
4097
  Style/SymbolProc:
3897
4098
  Description: 'Use symbols as procs instead of blocks when possible.'
3898
4099
  Enabled: true
3899
- SafeAutoCorrect: false
4100
+ Safe: false
3900
4101
  VersionAdded: '0.26'
3901
4102
  VersionChanged: '0.64'
3902
4103
  # A list of method names to be ignored by the check.
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require_relative "chefstyle/version"
2
3
 
3
4
  # ensure the desired target version of RuboCop is gem activated
@@ -1,4 +1,5 @@
1
+ # frozen_string_literal: true
1
2
  module Chefstyle
2
- VERSION = "1.1.0".freeze
3
- RUBOCOP_VERSION = "0.85.0".freeze
3
+ VERSION = "1.2.1"
4
+ RUBOCOP_VERSION = "0.89.1"
4
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chefstyle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chef Software, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-01 00:00:00.000000000 Z
11
+ date: 2020-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 0.85.0
61
+ version: 0.89.1
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 0.85.0
68
+ version: 0.89.1
69
69
  description:
70
70
  email:
71
71
  - oss@chef.io