chefstyle 1.5.2 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/chefstyle.yml +12 -1
- data/config/disable_all.yml +28 -0
- data/config/upstream.yml +211 -29
- data/lib/chefstyle/version.rb +3 -3
- data/lib/rubocop/cop/chef/ruby/legacy_powershell_out_methods.rb +36 -0
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f6a4af8c1483231d1585eca05b6374c95b60b6c8446b9151569ba9572661ff8
|
4
|
+
data.tar.gz: d2969b37943ff4d69349ec82d75c602d86158e82775052c144a74bff648dc7f1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aeb0997f80921e092c541c33bf9182f6368c96d98b396ab8afe9ed5fe28feb897dab7cf1dd24006bd145dbe27d6013f25f3625b76cf777098839b7828ff76d9a
|
7
|
+
data.tar.gz: d38b958b953908730fc0977562e9783ae3c5456bdb44a40ce18d39a68fd39dd5b9f24657849cec287a13fefd364c962afef9b9564df2c71ebd97d7dc919ebe1e
|
data/config/chefstyle.yml
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
AllCops:
|
2
2
|
TargetRubyVersion: 2.4
|
3
|
+
SuggestExtensions: false
|
3
4
|
|
4
5
|
#
|
5
6
|
# Bundler
|
@@ -243,6 +244,7 @@ Layout/EmptyLineAfterGuardClause:
|
|
243
244
|
Enabled: true
|
244
245
|
Layout/EmptyLineBetweenDefs:
|
245
246
|
Enabled: true
|
247
|
+
AllowAdjacentOneLineDefs: true
|
246
248
|
Layout/EmptyLines:
|
247
249
|
Enabled: true
|
248
250
|
Layout/EmptyLinesAroundAccessModifier:
|
@@ -685,6 +687,10 @@ Lint/RedundantWithIndex:
|
|
685
687
|
Lint/DuplicateRequire:
|
686
688
|
Enabled: true
|
687
689
|
|
690
|
+
# detect assignment typos
|
691
|
+
Lint/AmbiguousAssignment:
|
692
|
+
Enabled: true
|
693
|
+
|
688
694
|
Chef/Ruby/Ruby27KeywordArgumentWarnings:
|
689
695
|
Description: Pass options to shell_out helpers without the brackets to avoid Ruby 2.7 deprecation warnings.
|
690
696
|
Enabled: true
|
@@ -707,4 +713,9 @@ Chef/Ruby/GemspecRequireRubygems:
|
|
707
713
|
Chef/Ruby/RequireNetHttps:
|
708
714
|
Description: net/https is deprecated and just includes net/http and openssl. We should include those directly instead
|
709
715
|
Enabled: true
|
710
|
-
VersionAdded: '1.3.0'
|
716
|
+
VersionAdded: '1.3.0'
|
717
|
+
|
718
|
+
Chef/Ruby/LegacyPowershellOutMethods:
|
719
|
+
Description: Use powershell_exec!/powershell_exec instead of the slower legacy powershell_out!/powershell_out methods.
|
720
|
+
Enabled: true
|
721
|
+
VersionAdded: '1.6.0'
|
data/config/disable_all.yml
CHANGED
@@ -169,6 +169,8 @@ Layout/SpaceAroundOperators:
|
|
169
169
|
Enabled: false
|
170
170
|
Layout/SpaceBeforeBlockBraces:
|
171
171
|
Enabled: false
|
172
|
+
Layout/SpaceBeforeBrackets:
|
173
|
+
Enabled: false
|
172
174
|
Layout/SpaceBeforeComma:
|
173
175
|
Enabled: false
|
174
176
|
Layout/SpaceBeforeComment:
|
@@ -201,6 +203,8 @@ Layout/TrailingEmptyLines:
|
|
201
203
|
Enabled: false
|
202
204
|
Layout/TrailingWhitespace:
|
203
205
|
Enabled: false
|
206
|
+
Lint/AmbiguousAssignment:
|
207
|
+
Enabled: false
|
204
208
|
Lint/AmbiguousBlockAssociation:
|
205
209
|
Enabled: false
|
206
210
|
Lint/AmbiguousOperator:
|
@@ -225,6 +229,8 @@ Lint/Debugger:
|
|
225
229
|
Enabled: false
|
226
230
|
Lint/DeprecatedClassMethods:
|
227
231
|
Enabled: false
|
232
|
+
Lint/DeprecatedConstants:
|
233
|
+
Enabled: false
|
228
234
|
Lint/DeprecatedOpenSSLConstant:
|
229
235
|
Enabled: false
|
230
236
|
Lint/DisjunctiveAssignmentInConstructor:
|
@@ -291,6 +297,8 @@ Lint/IneffectiveAccessModifier:
|
|
291
297
|
Enabled: false
|
292
298
|
Lint/InterpolationCheck:
|
293
299
|
Enabled: false
|
300
|
+
Lint/LambdaWithoutLiteralBlock:
|
301
|
+
Enabled: false
|
294
302
|
Lint/LiteralAsCondition:
|
295
303
|
Enabled: false
|
296
304
|
Lint/LiteralInInterpolation:
|
@@ -319,6 +327,10 @@ Lint/NonLocalExitFromIterator:
|
|
319
327
|
Enabled: false
|
320
328
|
Lint/NumberConversion:
|
321
329
|
Enabled: false
|
330
|
+
Lint/NumberedParameterAssignment:
|
331
|
+
Enabled: false
|
332
|
+
Lint/OrAssignmentToConstant:
|
333
|
+
Enabled: false
|
322
334
|
Lint/OrderedMagicComments:
|
323
335
|
Enabled: false
|
324
336
|
Lint/OutOfRangeRegexpRef:
|
@@ -337,6 +349,8 @@ Lint/RedundantCopDisableDirective:
|
|
337
349
|
Enabled: false
|
338
350
|
Lint/RedundantCopEnableDirective:
|
339
351
|
Enabled: false
|
352
|
+
Lint/RedundantDirGlobSort:
|
353
|
+
Enabled: false
|
340
354
|
Lint/RedundantRequireStatement:
|
341
355
|
Enabled: false
|
342
356
|
Lint/RedundantSafeNavigation:
|
@@ -381,6 +395,8 @@ Lint/StructNewOverride:
|
|
381
395
|
Enabled: false
|
382
396
|
Lint/SuppressedException:
|
383
397
|
Enabled: false
|
398
|
+
Lint/SymbolConversion:
|
399
|
+
Enabled: false
|
384
400
|
Lint/Syntax:
|
385
401
|
Enabled: false
|
386
402
|
Lint/ToEnumArguments:
|
@@ -391,8 +407,12 @@ Lint/TopLevelReturnWithArgument:
|
|
391
407
|
Enabled: false
|
392
408
|
Lint/TrailingCommaInAttributeDeclaration:
|
393
409
|
Enabled: false
|
410
|
+
Lint/TripleQuotes:
|
411
|
+
Enabled: false
|
394
412
|
Lint/UnderscorePrefixedVariableName:
|
395
413
|
Enabled: false
|
414
|
+
Lint/UnexpectedBlockArity:
|
415
|
+
Enabled: false
|
396
416
|
Lint/UnifiedInteger:
|
397
417
|
Enabled: false
|
398
418
|
Lint/UnmodifiedReduceAccumulator:
|
@@ -577,6 +597,8 @@ Style/EmptyLiteral:
|
|
577
597
|
Enabled: false
|
578
598
|
Style/EmptyMethod:
|
579
599
|
Enabled: false
|
600
|
+
Style/EndlessMethod:
|
601
|
+
Enabled: false
|
580
602
|
Style/Encoding:
|
581
603
|
Enabled: false
|
582
604
|
Style/EndBlock:
|
@@ -611,6 +633,8 @@ Style/HashAsLastArrayItem:
|
|
611
633
|
Enabled: false
|
612
634
|
Style/HashEachMethods:
|
613
635
|
Enabled: false
|
636
|
+
Style/HashExcept:
|
637
|
+
Enabled: false
|
614
638
|
Style/HashLikeCase:
|
615
639
|
Enabled: false
|
616
640
|
Style/HashSyntax:
|
@@ -627,6 +651,8 @@ Style/IfUnlessModifier:
|
|
627
651
|
Enabled: false
|
628
652
|
Style/IfUnlessModifierOfIfUnless:
|
629
653
|
Enabled: false
|
654
|
+
Style/IfWithBooleanLiteralBranches:
|
655
|
+
Enabled: false
|
630
656
|
Style/IfWithSemicolon:
|
631
657
|
Enabled: false
|
632
658
|
Style/ImplicitRuntimeError:
|
@@ -755,6 +781,8 @@ Style/RaiseArgs:
|
|
755
781
|
Enabled: false
|
756
782
|
Style/RandomWithOffset:
|
757
783
|
Enabled: false
|
784
|
+
Style/RedundantArgument:
|
785
|
+
Enabled: false
|
758
786
|
Style/RedundantBegin:
|
759
787
|
Enabled: false
|
760
788
|
Style/RedundantCapitalW:
|
data/config/upstream.yml
CHANGED
@@ -132,13 +132,24 @@ AllCops:
|
|
132
132
|
# If a value is specified for TargetRubyVersion then it is used. Acceptable
|
133
133
|
# values are specificed as a float (i.e. 2.5); the teeny version of Ruby
|
134
134
|
# should not be included. If the project specifies a Ruby version in the
|
135
|
-
# .ruby-version
|
136
|
-
# the desired version of Ruby by inspecting the
|
137
|
-
#
|
138
|
-
#
|
139
|
-
# from the lock file.) If the
|
140
|
-
#
|
135
|
+
# .tool-versions or .ruby-version files, Gemfile or gems.rb file, RuboCop will
|
136
|
+
# try to determine the desired version of Ruby by inspecting the
|
137
|
+
# .tool-versions file first, then .ruby-version, followed by the Gemfile.lock
|
138
|
+
# or gems.locked file. (Although the Ruby version is specified in the Gemfile
|
139
|
+
# or gems.rb file, RuboCop reads the final value from the lock file.) If the
|
140
|
+
# Ruby version is still unresolved, RuboCop will use the oldest officially
|
141
|
+
# supported Ruby version (currently Ruby 2.4).
|
141
142
|
TargetRubyVersion: ~
|
143
|
+
# Determines if a notification for extension libraries should be shown when
|
144
|
+
# rubocop is run. Keys are the name of the extension, and values are an array
|
145
|
+
# of gems in the Gemfile that the extension is suggested for, if not already
|
146
|
+
# included.
|
147
|
+
SuggestExtensions:
|
148
|
+
rubocop-rails: [rails]
|
149
|
+
rubocop-rspec: [rspec, rspec-rails]
|
150
|
+
rubocop-minitest: [minitest]
|
151
|
+
rubocop-sequel: [sequel]
|
152
|
+
rubocop-rake: [rake]
|
142
153
|
|
143
154
|
#################### Bundler ###############################
|
144
155
|
|
@@ -459,10 +470,14 @@ Layout/EmptyLineAfterMultilineCondition:
|
|
459
470
|
- https://github.com/airbnb/ruby#multiline-if-newline
|
460
471
|
|
461
472
|
Layout/EmptyLineBetweenDefs:
|
462
|
-
Description: 'Use empty lines between defs.'
|
473
|
+
Description: 'Use empty lines between class/module/method defs.'
|
463
474
|
StyleGuide: '#empty-lines-between-methods'
|
464
475
|
Enabled: true
|
465
476
|
VersionAdded: '0.49'
|
477
|
+
VersionChanged: '1.7'
|
478
|
+
EmptyLineBetweenMethodDefs: true
|
479
|
+
EmptyLineBetweenClassDefs: true
|
480
|
+
EmptyLineBetweenModuleDefs: true
|
466
481
|
# If `true`, this parameter means that single line method definitions don't
|
467
482
|
# need an empty line between them.
|
468
483
|
AllowAdjacentOneLineDefs: false
|
@@ -891,8 +906,8 @@ Layout/LineLength:
|
|
891
906
|
StyleGuide: '#max-line-length'
|
892
907
|
Enabled: true
|
893
908
|
VersionAdded: '0.25'
|
894
|
-
VersionChanged: '1.
|
895
|
-
AutoCorrect:
|
909
|
+
VersionChanged: '1.4'
|
910
|
+
AutoCorrect: true
|
896
911
|
Max: 120
|
897
912
|
# To make it possible to copy or click on URIs in the code, we allow lines
|
898
913
|
# containing a URI to be longer than Max.
|
@@ -1178,6 +1193,12 @@ Layout/SpaceBeforeBlockBraces:
|
|
1178
1193
|
- no_space
|
1179
1194
|
VersionChanged: '0.52'
|
1180
1195
|
|
1196
|
+
Layout/SpaceBeforeBrackets:
|
1197
|
+
Description: 'Checks for receiver with a space before the opening brackets.'
|
1198
|
+
StyleGuide: '#space-in-brackets-access'
|
1199
|
+
Enabled: pending
|
1200
|
+
VersionAdded: '1.7'
|
1201
|
+
|
1181
1202
|
Layout/SpaceBeforeComma:
|
1182
1203
|
Description: 'No spaces before commas.'
|
1183
1204
|
Enabled: true
|
@@ -1340,6 +1361,11 @@ Layout/TrailingWhitespace:
|
|
1340
1361
|
#################### Lint ##################################
|
1341
1362
|
### Warnings
|
1342
1363
|
|
1364
|
+
Lint/AmbiguousAssignment:
|
1365
|
+
Description: 'Checks for mistyped shorthand assignments.'
|
1366
|
+
Enabled: pending
|
1367
|
+
VersionAdded: '1.7'
|
1368
|
+
|
1343
1369
|
Lint/AmbiguousBlockAssociation:
|
1344
1370
|
Description: >-
|
1345
1371
|
Checks for ambiguous block association with method when param passed without
|
@@ -1382,6 +1408,7 @@ Lint/BinaryOperatorWithIdenticalOperands:
|
|
1382
1408
|
Enabled: true
|
1383
1409
|
Safe: false
|
1384
1410
|
VersionAdded: '0.89'
|
1411
|
+
VersionChanged: '1.7'
|
1385
1412
|
|
1386
1413
|
Lint/BooleanSymbol:
|
1387
1414
|
Description: 'Check for `:true` and `:false` symbols.'
|
@@ -1442,6 +1469,34 @@ Lint/DeprecatedClassMethods:
|
|
1442
1469
|
Enabled: true
|
1443
1470
|
VersionAdded: '0.19'
|
1444
1471
|
|
1472
|
+
Lint/DeprecatedConstants:
|
1473
|
+
Description: 'Checks for deprecated constants.'
|
1474
|
+
Enabled: pending
|
1475
|
+
VersionAdded: '1.8'
|
1476
|
+
# You can configure deprecated constants.
|
1477
|
+
# If there is an alternative method, you can set alternative value as `Alternative`.
|
1478
|
+
# And you can set the deprecated version as `DeprecatedVersion`.
|
1479
|
+
# These options can be omitted if they are not needed.
|
1480
|
+
#
|
1481
|
+
# DeprecatedConstants:
|
1482
|
+
# 'DEPRECATED_CONSTANT':
|
1483
|
+
# Alternative: 'alternative_value'
|
1484
|
+
# DeprecatedVersion: 'deprecated_version'
|
1485
|
+
#
|
1486
|
+
DeprecatedConstants:
|
1487
|
+
'NIL':
|
1488
|
+
Alternative: 'nil'
|
1489
|
+
DeprecatedVersion: '2.4'
|
1490
|
+
'TRUE':
|
1491
|
+
Alternative: 'true'
|
1492
|
+
DeprecatedVersion: '2.4'
|
1493
|
+
'FALSE':
|
1494
|
+
Alternative: 'false'
|
1495
|
+
DeprecatedVersion: '2.4'
|
1496
|
+
'Random::DEFAULT':
|
1497
|
+
Alternative: 'Random.new'
|
1498
|
+
DeprecatedVersion: '3.0'
|
1499
|
+
|
1445
1500
|
Lint/DeprecatedOpenSSLConstant:
|
1446
1501
|
Description: "Don't use algorithm constants for `OpenSSL::Cipher` and `OpenSSL::Digest`."
|
1447
1502
|
Enabled: true
|
@@ -1458,6 +1513,9 @@ Lint/DuplicateBranch:
|
|
1458
1513
|
Description: Checks that there are no repeated bodies within `if/unless`, `case-when` and `rescue` constructs.
|
1459
1514
|
Enabled: pending
|
1460
1515
|
VersionAdded: '1.3'
|
1516
|
+
VersionChanged: '1.7'
|
1517
|
+
IgnoreLiteralBranches: false
|
1518
|
+
IgnoreConstantBranches: false
|
1461
1519
|
|
1462
1520
|
Lint/DuplicateCaseCondition:
|
1463
1521
|
Description: 'Do not repeat values in case conditionals.'
|
@@ -1644,6 +1702,11 @@ Lint/InterpolationCheck:
|
|
1644
1702
|
VersionAdded: '0.50'
|
1645
1703
|
VersionChanged: '0.87'
|
1646
1704
|
|
1705
|
+
Lint/LambdaWithoutLiteralBlock:
|
1706
|
+
Description: 'Checks uses of lambda without a literal block.'
|
1707
|
+
Enabled: pending
|
1708
|
+
VersionAdded: '1.8'
|
1709
|
+
|
1647
1710
|
Lint/LiteralAsCondition:
|
1648
1711
|
Description: 'Checks of literals used in conditions.'
|
1649
1712
|
Enabled: true
|
@@ -1684,6 +1747,7 @@ Lint/MissingSuper:
|
|
1684
1747
|
without calls to `super`'.
|
1685
1748
|
Enabled: true
|
1686
1749
|
VersionAdded: '0.89'
|
1750
|
+
VersionChanged: '1.4'
|
1687
1751
|
|
1688
1752
|
Lint/MixedRegexpCaptureTypes:
|
1689
1753
|
Description: 'Do not mix named captures and numbered captures in a Regexp literal.'
|
@@ -1742,6 +1806,17 @@ Lint/NumberConversion:
|
|
1742
1806
|
- Time
|
1743
1807
|
- DateTime
|
1744
1808
|
|
1809
|
+
Lint/NumberedParameterAssignment:
|
1810
|
+
Description: 'Checks for uses of numbered parameter assignment.'
|
1811
|
+
Enabled: pending
|
1812
|
+
VersionAdded: '1.9'
|
1813
|
+
|
1814
|
+
Lint/OrAssignmentToConstant:
|
1815
|
+
Description: 'Checks unintended or-assignment to constant.'
|
1816
|
+
Enabled: pending
|
1817
|
+
Safe: false
|
1818
|
+
VersionAdded: '1.9'
|
1819
|
+
|
1745
1820
|
Lint/OrderedMagicComments:
|
1746
1821
|
Description: 'Checks the proper ordering of magic comments and whether a magic comment is not placed before a shebang.'
|
1747
1822
|
Enabled: true
|
@@ -1805,6 +1880,11 @@ Lint/RedundantCopEnableDirective:
|
|
1805
1880
|
Enabled: true
|
1806
1881
|
VersionAdded: '0.76'
|
1807
1882
|
|
1883
|
+
Lint/RedundantDirGlobSort:
|
1884
|
+
Description: 'Checks for redundant `sort` method to `Dir.glob` and `Dir[]`.'
|
1885
|
+
Enabled: pending
|
1886
|
+
VersionAdded: '1.8'
|
1887
|
+
|
1808
1888
|
Lint/RedundantRequireStatement:
|
1809
1889
|
Description: 'Checks for unnecessary `require` statement.'
|
1810
1890
|
Enabled: true
|
@@ -1827,6 +1907,8 @@ Lint/RedundantSplatExpansion:
|
|
1827
1907
|
Description: 'Checks for splat unnecessarily being called on literals.'
|
1828
1908
|
Enabled: true
|
1829
1909
|
VersionAdded: '0.76'
|
1910
|
+
VersionChanged: '1.7'
|
1911
|
+
AllowPercentLiteralArrayArgument: true
|
1830
1912
|
|
1831
1913
|
Lint/RedundantStringCoercion:
|
1832
1914
|
Description: 'Checks for Object#to_s usage in string interpolation.'
|
@@ -1961,12 +2043,16 @@ Lint/SuppressedException:
|
|
1961
2043
|
VersionAdded: '0.9'
|
1962
2044
|
VersionChanged: '0.81'
|
1963
2045
|
|
2046
|
+
Lint/SymbolConversion:
|
2047
|
+
Description: 'Checks for unnecessary symbol conversions.'
|
2048
|
+
Enabled: pending
|
2049
|
+
VersionAdded: '1.9'
|
2050
|
+
|
1964
2051
|
Lint/Syntax:
|
1965
|
-
Description: 'Checks syntax
|
2052
|
+
Description: 'Checks for syntax errors.'
|
1966
2053
|
Enabled: true
|
1967
2054
|
VersionAdded: '0.9'
|
1968
2055
|
|
1969
|
-
|
1970
2056
|
Lint/ToEnumArguments:
|
1971
2057
|
Description: 'This cop ensures that `to_enum`/`enum_for`, called for the current method, has correct arguments.'
|
1972
2058
|
Enabled: pending
|
@@ -1987,12 +2073,34 @@ Lint/TrailingCommaInAttributeDeclaration:
|
|
1987
2073
|
Enabled: true
|
1988
2074
|
VersionAdded: '0.90'
|
1989
2075
|
|
2076
|
+
Lint/TripleQuotes:
|
2077
|
+
Description: 'Checks for useless triple quote constructs.'
|
2078
|
+
Enabled: pending
|
2079
|
+
VersionAdded: '1.9'
|
2080
|
+
|
1990
2081
|
Lint/UnderscorePrefixedVariableName:
|
1991
2082
|
Description: 'Do not use prefix `_` for a variable that is used.'
|
1992
2083
|
Enabled: true
|
1993
2084
|
VersionAdded: '0.21'
|
1994
2085
|
AllowKeywordBlockArguments: false
|
1995
2086
|
|
2087
|
+
Lint/UnexpectedBlockArity:
|
2088
|
+
Description: 'Looks for blocks that have fewer arguments that the calling method expects.'
|
2089
|
+
Enabled: pending
|
2090
|
+
Safe: false
|
2091
|
+
VersionAdded: '1.5'
|
2092
|
+
Methods:
|
2093
|
+
chunk_while: 2
|
2094
|
+
each_with_index: 2
|
2095
|
+
each_with_object: 2
|
2096
|
+
inject: 2
|
2097
|
+
max: 2
|
2098
|
+
min: 2
|
2099
|
+
minmax: 2
|
2100
|
+
reduce: 2
|
2101
|
+
slice_when: 2
|
2102
|
+
sort: 2
|
2103
|
+
|
1996
2104
|
Lint/UnifiedInteger:
|
1997
2105
|
Description: 'Use Integer instead of Fixnum or Bignum.'
|
1998
2106
|
Enabled: true
|
@@ -2002,6 +2110,7 @@ Lint/UnmodifiedReduceAccumulator:
|
|
2002
2110
|
Description: Checks for `reduce` or `inject` blocks that do not update the accumulator each iteration.
|
2003
2111
|
Enabled: pending
|
2004
2112
|
VersionAdded: '1.1'
|
2113
|
+
VersionChanged: '1.5'
|
2005
2114
|
|
2006
2115
|
Lint/UnreachableCode:
|
2007
2116
|
Description: 'Unreachable code.'
|
@@ -2012,6 +2121,11 @@ Lint/UnreachableLoop:
|
|
2012
2121
|
Description: 'This cop checks for loops that will have at most one iteration.'
|
2013
2122
|
Enabled: true
|
2014
2123
|
VersionAdded: '0.89'
|
2124
|
+
VersionChanged: '1.7'
|
2125
|
+
IgnoredPatterns:
|
2126
|
+
# RSpec uses `times` in its message expectations
|
2127
|
+
# eg. `exactly(2).times`
|
2128
|
+
- !ruby/regexp /(exactly|at_least|at_most)\(\d+\)\.times/
|
2015
2129
|
|
2016
2130
|
Lint/UnusedBlockArgument:
|
2017
2131
|
Description: 'Checks for unused block arguments.'
|
@@ -2105,21 +2219,23 @@ Metrics/AbcSize:
|
|
2105
2219
|
- https://en.wikipedia.org/wiki/ABC_Software_Metric
|
2106
2220
|
Enabled: true
|
2107
2221
|
VersionAdded: '0.27'
|
2108
|
-
VersionChanged: '
|
2222
|
+
VersionChanged: '1.5'
|
2109
2223
|
# The ABC size is a calculated magnitude, so this number can be an Integer or
|
2110
2224
|
# a Float.
|
2111
2225
|
IgnoredMethods: []
|
2226
|
+
CountRepeatedAttributes: true
|
2112
2227
|
Max: 17
|
2113
2228
|
|
2114
2229
|
Metrics/BlockLength:
|
2115
2230
|
Description: 'Avoid long blocks with many lines.'
|
2116
2231
|
Enabled: true
|
2117
2232
|
VersionAdded: '0.44'
|
2118
|
-
VersionChanged: '
|
2233
|
+
VersionChanged: '1.5'
|
2119
2234
|
CountComments: false # count full line comments?
|
2120
2235
|
Max: 25
|
2121
2236
|
CountAsOne: []
|
2122
|
-
ExcludedMethods:
|
2237
|
+
ExcludedMethods: [] # deprecated, retained for backwards compatibility
|
2238
|
+
IgnoredMethods:
|
2123
2239
|
# By default, exclude the `#refine` method, as it tends to have larger
|
2124
2240
|
# associated blocks.
|
2125
2241
|
- refine
|
@@ -2160,11 +2276,12 @@ Metrics/MethodLength:
|
|
2160
2276
|
StyleGuide: '#short-methods'
|
2161
2277
|
Enabled: true
|
2162
2278
|
VersionAdded: '0.25'
|
2163
|
-
VersionChanged: '
|
2279
|
+
VersionChanged: '1.5'
|
2164
2280
|
CountComments: false # count full line comments?
|
2165
2281
|
Max: 10
|
2166
2282
|
CountAsOne: []
|
2167
|
-
ExcludedMethods: []
|
2283
|
+
ExcludedMethods: [] # deprecated, retained for backwards compatibility
|
2284
|
+
IgnoredMethods: []
|
2168
2285
|
|
2169
2286
|
Metrics/ModuleLength:
|
2170
2287
|
Description: 'Avoid modules longer than 100 lines of code.'
|
@@ -2180,8 +2297,10 @@ Metrics/ParameterLists:
|
|
2180
2297
|
StyleGuide: '#too-many-params'
|
2181
2298
|
Enabled: true
|
2182
2299
|
VersionAdded: '0.25'
|
2300
|
+
VersionChanged: '1.5'
|
2183
2301
|
Max: 5
|
2184
2302
|
CountKeywordArgs: true
|
2303
|
+
MaxOptionalParameters: 3
|
2185
2304
|
|
2186
2305
|
Metrics/PerceivedComplexity:
|
2187
2306
|
Description: >-
|
@@ -2441,17 +2560,19 @@ Naming/VariableName:
|
|
2441
2560
|
StyleGuide: '#snake-case-symbols-methods-vars'
|
2442
2561
|
Enabled: true
|
2443
2562
|
VersionAdded: '0.50'
|
2563
|
+
VersionChanged: '1.8'
|
2444
2564
|
EnforcedStyle: snake_case
|
2445
2565
|
SupportedStyles:
|
2446
2566
|
- snake_case
|
2447
2567
|
- camelCase
|
2568
|
+
AllowedIdentifiers: []
|
2448
2569
|
|
2449
2570
|
Naming/VariableNumber:
|
2450
2571
|
Description: 'Use the configured style when numbering symbols, methods and variables.'
|
2451
2572
|
StyleGuide: '#snake-case-symbols-methods-vars-with-numbers'
|
2452
2573
|
Enabled: true
|
2453
2574
|
VersionAdded: '0.50'
|
2454
|
-
VersionChanged: '1.
|
2575
|
+
VersionChanged: '1.4'
|
2455
2576
|
EnforcedStyle: normalcase
|
2456
2577
|
SupportedStyles:
|
2457
2578
|
- snake_case
|
@@ -2459,7 +2580,13 @@ Naming/VariableNumber:
|
|
2459
2580
|
- non_integer
|
2460
2581
|
CheckMethodNames: true
|
2461
2582
|
CheckSymbols: true
|
2462
|
-
AllowedIdentifiers:
|
2583
|
+
AllowedIdentifiers:
|
2584
|
+
- capture3 # Open3.capture3
|
2585
|
+
- iso8601 # Time#iso8601
|
2586
|
+
- rfc1123_date # CGI.rfc1123_date
|
2587
|
+
- rfc822 # Time#rfc822
|
2588
|
+
- rfc2822 # Time#rfc2822
|
2589
|
+
- rfc3339 # DateTime.rfc3339
|
2463
2590
|
|
2464
2591
|
#################### Security ##############################
|
2465
2592
|
|
@@ -2582,7 +2709,8 @@ Style/AsciiComments:
|
|
2582
2709
|
Enabled: true
|
2583
2710
|
VersionAdded: '0.9'
|
2584
2711
|
VersionChanged: '0.52'
|
2585
|
-
AllowedChars:
|
2712
|
+
AllowedChars:
|
2713
|
+
- ©
|
2586
2714
|
|
2587
2715
|
Style/Attr:
|
2588
2716
|
Description: 'Checks for uses of Module#attr.'
|
@@ -2851,7 +2979,7 @@ Style/CollectionMethods:
|
|
2851
2979
|
StyleGuide: '#map-find-select-reduce-include-size'
|
2852
2980
|
Enabled: false
|
2853
2981
|
VersionAdded: '0.9'
|
2854
|
-
VersionChanged: '
|
2982
|
+
VersionChanged: '1.7'
|
2855
2983
|
Safe: false
|
2856
2984
|
# Mapping from undesired method to desired method
|
2857
2985
|
# e.g. to use `detect` over `find`:
|
@@ -2866,6 +2994,11 @@ Style/CollectionMethods:
|
|
2866
2994
|
detect: 'find'
|
2867
2995
|
find_all: 'select'
|
2868
2996
|
member?: 'include?'
|
2997
|
+
# Methods in this array accept a final symbol as an implicit block
|
2998
|
+
# eg. `inject(:+)`
|
2999
|
+
MethodsAcceptingSymbol:
|
3000
|
+
- inject
|
3001
|
+
- reduce
|
2869
3002
|
|
2870
3003
|
Style/ColonMethodCall:
|
2871
3004
|
Description: 'Do not use :: for method call.'
|
@@ -2925,6 +3058,7 @@ Style/CommentedKeyword:
|
|
2925
3058
|
Description: 'Do not place comments on the same line as certain keywords.'
|
2926
3059
|
Enabled: true
|
2927
3060
|
VersionAdded: '0.51'
|
3061
|
+
VersionChanged: '1.7'
|
2928
3062
|
|
2929
3063
|
Style/ConditionalAssignment:
|
2930
3064
|
Description: >-
|
@@ -3007,6 +3141,8 @@ Style/DisableCopsWithinSourceCodeDirective:
|
|
3007
3141
|
Forbids disabling/enabling cops within source code.
|
3008
3142
|
Enabled: false
|
3009
3143
|
VersionAdded: '0.82'
|
3144
|
+
VersionChanged: '1.9'
|
3145
|
+
AllowedCops: []
|
3010
3146
|
|
3011
3147
|
Style/DocumentDynamicEvalDefinition:
|
3012
3148
|
Description: >-
|
@@ -3124,6 +3260,17 @@ Style/EndBlock:
|
|
3124
3260
|
VersionAdded: '0.9'
|
3125
3261
|
VersionChanged: '0.81'
|
3126
3262
|
|
3263
|
+
Style/EndlessMethod:
|
3264
|
+
Description: 'Avoid the use of multi-lined endless method definitions.'
|
3265
|
+
StyleGuide: '#endless-methods'
|
3266
|
+
Enabled: pending
|
3267
|
+
VersionAdded: '1.8'
|
3268
|
+
EnforcedStyle: allow_single_line
|
3269
|
+
SupportedStyles:
|
3270
|
+
- allow_single_line
|
3271
|
+
- allow_always
|
3272
|
+
- disallow
|
3273
|
+
|
3127
3274
|
Style/EvalWithLocation:
|
3128
3275
|
Description: 'Pass `__FILE__` and `__LINE__` to `eval` method, as they are used by backtraces.'
|
3129
3276
|
Enabled: true
|
@@ -3147,9 +3294,8 @@ Style/ExplicitBlockArgument:
|
|
3147
3294
|
that just passes its arguments to another block.
|
3148
3295
|
StyleGuide: '#block-argument'
|
3149
3296
|
Enabled: true
|
3150
|
-
# May change the yielding arity.
|
3151
|
-
Safe: false
|
3152
3297
|
VersionAdded: '0.89'
|
3298
|
+
VersionChanged: '1.8'
|
3153
3299
|
|
3154
3300
|
Style/ExponentialNotation:
|
3155
3301
|
Description: 'When using exponential notation, favor a mantissa between 1 (inclusive) and 10 (exclusive).'
|
@@ -3165,9 +3311,11 @@ Style/ExponentialNotation:
|
|
3165
3311
|
Style/FloatDivision:
|
3166
3312
|
Description: 'For performing float division, coerce one side only.'
|
3167
3313
|
StyleGuide: '#float-division'
|
3168
|
-
Reference: 'https://
|
3314
|
+
Reference: 'https://blog.rubystyle.guide/ruby/2019/06/21/float-division.html'
|
3169
3315
|
Enabled: true
|
3170
3316
|
VersionAdded: '0.72'
|
3317
|
+
VersionChanged: '1.9'
|
3318
|
+
Safe: false
|
3171
3319
|
EnforcedStyle: single_coerce
|
3172
3320
|
SupportedStyles:
|
3173
3321
|
- left_coerce
|
@@ -3215,6 +3363,7 @@ Style/FormatStringToken:
|
|
3215
3363
|
MaxUnannotatedPlaceholdersAllowed: 1
|
3216
3364
|
VersionAdded: '0.49'
|
3217
3365
|
VersionChanged: '1.0'
|
3366
|
+
IgnoredMethods: []
|
3218
3367
|
|
3219
3368
|
Style/FrozenStringLiteralComment:
|
3220
3369
|
Description: >-
|
@@ -3283,6 +3432,13 @@ Style/HashEachMethods:
|
|
3283
3432
|
VersionAdded: '0.80'
|
3284
3433
|
Safe: false
|
3285
3434
|
|
3435
|
+
Style/HashExcept:
|
3436
|
+
Description: >-
|
3437
|
+
Checks for usages of `Hash#reject`, `Hash#select`, and `Hash#filter` methods
|
3438
|
+
that can be replaced with `Hash#except` method.
|
3439
|
+
Enabled: pending
|
3440
|
+
VersionAdded: '1.7'
|
3441
|
+
|
3286
3442
|
Style/HashLikeCase:
|
3287
3443
|
Description: >-
|
3288
3444
|
Checks for places where `case-when` represents a simple 1:1
|
@@ -3361,6 +3517,11 @@ Style/IfUnlessModifierOfIfUnless:
|
|
3361
3517
|
VersionAdded: '0.39'
|
3362
3518
|
VersionChanged: '0.87'
|
3363
3519
|
|
3520
|
+
Style/IfWithBooleanLiteralBranches:
|
3521
|
+
Description: 'Checks for redundant `if` with boolean literal branches.'
|
3522
|
+
Enabled: pending
|
3523
|
+
VersionAdded: '1.9'
|
3524
|
+
|
3364
3525
|
Style/IfWithSemicolon:
|
3365
3526
|
Description: 'Do not use if x; .... Use the ternary operator instead.'
|
3366
3527
|
StyleGuide: '#no-semicolon-ifs'
|
@@ -3437,6 +3598,7 @@ Style/KeywordParametersOrder:
|
|
3437
3598
|
StyleGuide: '#keyword-parameters-order'
|
3438
3599
|
Enabled: true
|
3439
3600
|
VersionAdded: '0.90'
|
3601
|
+
VersionChanged: '1.7'
|
3440
3602
|
|
3441
3603
|
Style/Lambda:
|
3442
3604
|
Description: 'Use the new lambda literal syntax for single-line blocks.'
|
@@ -3475,7 +3637,7 @@ Style/MethodCallWithArgsParentheses:
|
|
3475
3637
|
StyleGuide: '#method-invocation-parens'
|
3476
3638
|
Enabled: false
|
3477
3639
|
VersionAdded: '0.47'
|
3478
|
-
VersionChanged: '
|
3640
|
+
VersionChanged: '1.7'
|
3479
3641
|
IgnoreMacros: true
|
3480
3642
|
IgnoredMethods: []
|
3481
3643
|
IgnoredPatterns: []
|
@@ -3509,7 +3671,7 @@ Style/MethodDefParentheses:
|
|
3509
3671
|
StyleGuide: '#method-parens'
|
3510
3672
|
Enabled: true
|
3511
3673
|
VersionAdded: '0.16'
|
3512
|
-
VersionChanged: '
|
3674
|
+
VersionChanged: '1.7'
|
3513
3675
|
EnforcedStyle: require_parentheses
|
3514
3676
|
SupportedStyles:
|
3515
3677
|
- require_parentheses
|
@@ -3615,6 +3777,7 @@ Style/MultilineMethodSignature:
|
|
3615
3777
|
Description: 'Avoid multi-line method signatures.'
|
3616
3778
|
Enabled: false
|
3617
3779
|
VersionAdded: '0.59'
|
3780
|
+
VersionChanged: '1.7'
|
3618
3781
|
|
3619
3782
|
Style/MultilineTernaryOperator:
|
3620
3783
|
Description: >-
|
@@ -3643,7 +3806,8 @@ Style/MutableConstant:
|
|
3643
3806
|
Description: 'Do not assign mutable objects to constants.'
|
3644
3807
|
Enabled: true
|
3645
3808
|
VersionAdded: '0.34'
|
3646
|
-
VersionChanged: '
|
3809
|
+
VersionChanged: '1.8'
|
3810
|
+
SafeAutoCorrect: false
|
3647
3811
|
EnforcedStyle: literals
|
3648
3812
|
SupportedStyles:
|
3649
3813
|
# literals: freeze literals assigned to constants
|
@@ -3976,6 +4140,22 @@ Style/RandomWithOffset:
|
|
3976
4140
|
Enabled: true
|
3977
4141
|
VersionAdded: '0.52'
|
3978
4142
|
|
4143
|
+
Style/RedundantArgument:
|
4144
|
+
Description: 'Check for a redundant argument passed to certain methods.'
|
4145
|
+
Enabled: pending
|
4146
|
+
Safe: false
|
4147
|
+
VersionAdded: '1.4'
|
4148
|
+
VersionChanged: '1.7'
|
4149
|
+
Methods:
|
4150
|
+
# Array#join
|
4151
|
+
join: ''
|
4152
|
+
# String#split
|
4153
|
+
split: ' '
|
4154
|
+
# String#chomp
|
4155
|
+
chomp: "\n"
|
4156
|
+
# String#chomp!
|
4157
|
+
chomp!: "\n"
|
4158
|
+
|
3979
4159
|
Style/RedundantAssignment:
|
3980
4160
|
Description: 'Checks for redundant assignment before returning.'
|
3981
4161
|
Enabled: true
|
@@ -4217,7 +4397,7 @@ Style/SingleLineBlockParams:
|
|
4217
4397
|
Description: 'Enforces the names of some block params.'
|
4218
4398
|
Enabled: false
|
4219
4399
|
VersionAdded: '0.16'
|
4220
|
-
VersionChanged: '
|
4400
|
+
VersionChanged: '1.6'
|
4221
4401
|
Methods:
|
4222
4402
|
- reduce:
|
4223
4403
|
- acc
|
@@ -4231,7 +4411,7 @@ Style/SingleLineMethods:
|
|
4231
4411
|
StyleGuide: '#no-single-line-methods'
|
4232
4412
|
Enabled: true
|
4233
4413
|
VersionAdded: '0.9'
|
4234
|
-
VersionChanged: '
|
4414
|
+
VersionChanged: '1.8'
|
4235
4415
|
AllowIfMethodIsEmpty: true
|
4236
4416
|
|
4237
4417
|
Style/SlicingWithRange:
|
@@ -4246,6 +4426,7 @@ Style/SoleNestedConditional:
|
|
4246
4426
|
which can be merged into outer conditional node.
|
4247
4427
|
Enabled: true
|
4248
4428
|
VersionAdded: '0.89'
|
4429
|
+
VersionChanged: '1.5'
|
4249
4430
|
AllowModifier: false
|
4250
4431
|
|
4251
4432
|
Style/SpecialGlobalVars:
|
@@ -4289,6 +4470,7 @@ Style/StringConcatenation:
|
|
4289
4470
|
Enabled: true
|
4290
4471
|
Safe: false
|
4291
4472
|
VersionAdded: '0.89'
|
4473
|
+
VersionChanged: '1.6'
|
4292
4474
|
|
4293
4475
|
Style/StringHashKeys:
|
4294
4476
|
Description: 'Prefer symbols instead of strings as hash keys.'
|
@@ -4378,7 +4560,7 @@ Style/SymbolProc:
|
|
4378
4560
|
Enabled: true
|
4379
4561
|
Safe: false
|
4380
4562
|
VersionAdded: '0.26'
|
4381
|
-
VersionChanged: '
|
4563
|
+
VersionChanged: '1.5'
|
4382
4564
|
# A list of method names to be ignored by the check.
|
4383
4565
|
# The names should be fairly unique, otherwise you'll end up ignoring lots of code.
|
4384
4566
|
IgnoredMethods:
|
data/lib/chefstyle/version.rb
CHANGED
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
#
|
3
|
+
# Copyright:: Chef Software, Inc.
|
4
|
+
# Author:: Tim Smith (<tsmith@chef.io>)
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
module RuboCop
|
20
|
+
module Cop
|
21
|
+
module Chef
|
22
|
+
module Ruby
|
23
|
+
# Use powershell_exec!/powershell_exec instead of powershell_out!/powershell_out. The new
|
24
|
+
# methods don't spawn 2 shells per shellout and instead use .NET bindings to call PS directly.
|
25
|
+
class LegacyPowershellOutMethods < Base
|
26
|
+
MSG = "Use powershell_exec!/powershell_exec instead of the slower legacy powershell_out!/powershell_out methods."
|
27
|
+
RESTRICT_ON_SEND = %i{powershell_out! powershell_out}.freeze
|
28
|
+
|
29
|
+
def on_send(node)
|
30
|
+
add_offense(node, message: MSG, severity: :refactor)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
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.
|
4
|
+
version: 1.6.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:
|
11
|
+
date: 2021-01-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: 1.9.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
26
|
+
version: 1.9.0
|
27
27
|
description:
|
28
28
|
email:
|
29
29
|
- oss@chef.io
|
@@ -43,6 +43,7 @@ files:
|
|
43
43
|
- lib/chefstyle/version.rb
|
44
44
|
- lib/rubocop/chef.rb
|
45
45
|
- lib/rubocop/cop/chef/ruby/gemspec_require_rubygems.rb
|
46
|
+
- lib/rubocop/cop/chef/ruby/legacy_powershell_out_methods.rb
|
46
47
|
- lib/rubocop/cop/chef/ruby/require_net_https.rb
|
47
48
|
- lib/rubocop/cop/chef/ruby/ruby_27_keyword_argument_warnings.rb
|
48
49
|
- lib/rubocop/cop/chef/ruby/unless_defined_require.rb
|
@@ -65,7 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
66
|
- !ruby/object:Gem::Version
|
66
67
|
version: '0'
|
67
68
|
requirements: []
|
68
|
-
rubygems_version: 3.
|
69
|
+
rubygems_version: 3.1.4
|
69
70
|
signing_key:
|
70
71
|
specification_version: 4
|
71
72
|
summary: RuboCop configuration for Chef's ruby projects
|