cookstyle 6.0.19 → 6.1.6

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: 8630cadf214ce92de0f6c69de2951015e6930943b7fe4e987a0ac5ab0191d73e
4
- data.tar.gz: 4aa39f4879f6eb93bf2ff9cd7922e471eb366d62992474ced13c7f9ac27e0108
3
+ metadata.gz: 2b60366fb42569f18aa8b379dff84bcceeb8ecb6b5feb52753cbd9c41575fd2c
4
+ data.tar.gz: '098c9ff5b266289457e5127b41eb1662191b4453dc0d31fb9a7955ea1774d995'
5
5
  SHA512:
6
- metadata.gz: 7a5aedf9341dd80db77974b72c8e4a07f1aeb2a583764f9d7232ee57860c1e5e3433eb0dcecaadaf45abfc2256d9ca64f220a74747feeb90458931c7a6ca0846
7
- data.tar.gz: 292a4016ac850e050005a7b2f686d8d6c41201372ccb747457cd74eab46ccbbc60f4eac7ed70576829578509a996e58e987f7b4e1c6b9bd49aebac314c60ed4f
6
+ metadata.gz: 94a5cc1725f5264bc1d6abf84e5d8e8bc1e954609ea8ab5a080db7df7db0fc3333ba4d2a53199279f28e3b7567e2f22fe70c1c3564c1b11bd19e6d520790a02c
7
+ data.tar.gz: 113a4e827cd32b5c20e2fbc6ee561255d7a3f1508d930851f799aa6e8bc3d4ae850071fb3f302771cc5774ffec9d80bcd1e392e53e0f713d96acc0e41dee4bbb
@@ -341,6 +341,15 @@ ChefCorrectness/PowershellScriptDeleteFile:
341
341
  - '**/metadata.rb'
342
342
  - '**/Berksfile'
343
343
 
344
+ ChefCorrectness/ConditionalRubyShellout:
345
+ Description: Don't use Ruby to shellout in an only_if / not_if conditional when you can shellout directly by wrapping the command in quotes.
346
+ Enabled: true
347
+ VersionAdded: '6.1.0'
348
+ Exclude:
349
+ - '**/attributes/*.rb'
350
+ - '**/metadata.rb'
351
+ - '**/Berksfile'
352
+
344
353
  ###############################
345
354
  # ChefSharing: Issues that prevent sharing code with other teams or with the Chef community in general
346
355
  ###############################
@@ -377,6 +386,21 @@ ChefSharing/EmptyMetadataField:
377
386
  Include:
378
387
  - '**/metadata.rb'
379
388
 
389
+ ChefSharing/IncludePropertyDescriptions:
390
+ Description: Properties should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.
391
+ Enabled: false
392
+ VersionAdded: '6.1.0'
393
+ Include:
394
+ - '**/libraries/*.rb'
395
+ - '**/resources/*.rb'
396
+
397
+ ChefSharing/IncludeResourceDescriptions:
398
+ Description: Resources should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.
399
+ Enabled: false
400
+ VersionAdded: '6.1.0'
401
+ Include:
402
+ - '**/resources/*.rb'
403
+
380
404
  ###############################
381
405
  # ChefDeprecations: Resolving Deprecations that block upgrading Chef Infra Client
382
406
  ###############################
@@ -774,6 +798,22 @@ ChefDeprecations/ResourceWithoutNameOrProvides:
774
798
  Include:
775
799
  - '**/libraries/*.rb'
776
800
 
801
+ ChefDeprecations/WindowsVersionHelpers:
802
+ Description: Use node['platform_version'] data instead of the Windows::VersionHelper helper from the Windows cookbook.
803
+ Enabled: true
804
+ VersionAdded: '5.4.0'
805
+ Exclude:
806
+ - '**/metadata.rb'
807
+ - '**/Berksfile'
808
+
809
+ ChefDeprecations/PowershellCookbookHelpers:
810
+ Description: Use node['powershell']['version'] or the new powershell_version helper available in Chef Infra Client 16+ instead of the deprecated PowerShell cookbook helpers.
811
+ Enabled: true
812
+ VersionAdded: '6.1.0'
813
+ Exclude:
814
+ - '**/metadata.rb'
815
+ - '**/Berksfile'
816
+
777
817
  ###############################
778
818
  # ChefModernize: Cleaning up legacy code and using new built-in resources
779
819
  ###############################
@@ -867,13 +907,6 @@ ChefModernize/ExecuteAptUpdate:
867
907
  Exclude:
868
908
  - '**/metadata.rb'
869
909
 
870
- ChefModernize/WindowsVersionHelper:
871
- Description: Use node['platform_version'] data instead of the Windows::VersionHelper helper from the Windows cookbook.
872
- Enabled: true
873
- VersionAdded: '5.4.0'
874
- Exclude:
875
- - '**/metadata.rb'
876
-
877
910
  ChefModernize/MinitestHandlerUsage:
878
911
  Description: Use Chef InSpec for testing instead of the Minitest Handler cookbook pattern.
879
912
  Enabled: true
@@ -1224,6 +1257,14 @@ ChefModernize/DatabagHelpers:
1224
1257
  - '**/metadata.rb'
1225
1258
  - '**/Berksfile'
1226
1259
 
1260
+ ChefModernize/NodeRolesInclude:
1261
+ Description: Use `node.role?('foo')` to check if a node includes a role instead of `node['roles'].include?('foo')`.
1262
+ Enabled: true
1263
+ VersionAdded: '6.1.0'
1264
+ Exclude:
1265
+ - '**/metadata.rb'
1266
+ - '**/Berksfile'
1267
+
1227
1268
  ###############################
1228
1269
  # ChefRedundantCode: Cleanup unnecessary code in your cookbooks regardless of Chef Infra Client release
1229
1270
  ###############################
@@ -1,4 +1,4 @@
1
1
  module Cookstyle
2
- VERSION = "6.0.19".freeze # rubocop: disable Style/StringLiterals
2
+ VERSION = "6.1.6".freeze # rubocop: disable Style/StringLiterals
3
3
  RUBOCOP_VERSION = '0.80.1'.freeze
4
4
  end
@@ -0,0 +1,72 @@
1
+ #
2
+ # Copyright:: 2020, Chef Software, Inc.
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+ module RuboCop
18
+ module Cop
19
+ module Chef
20
+ module ChefCorrectness
21
+ # Don't use Ruby to shellout in a only_if / not_if conditional when you can just shellout directly. Any string value used with only_if / not_if is executed in your system's shell and the return code of the command is the result for the not_if / only_if determination.
22
+ #
23
+ # @example
24
+ #
25
+ # # bad
26
+ # cookbook_file '/logs/foo/error.log' do
27
+ # source 'error.log'
28
+ # only_if { system('wget https://www.bar.com/foobar.txt -O /dev/null') }
29
+ # end
30
+ #
31
+ # cookbook_file '/logs/foo/error.log' do
32
+ # source 'error.log'
33
+ # only_if { shell_out('wget https://www.bar.com/foobar.txt -O /dev/null').exitstatus == 0 }
34
+ # end
35
+ #
36
+ # # good
37
+ # cookbook_file '/logs/foo/error.log' do
38
+ # source 'error.log'
39
+ # only_if 'wget https://www.bar.com/foobar.txt -O /dev/null'
40
+ # end
41
+ #
42
+ class ConditionalRubyShellout < Cop
43
+ include RuboCop::Chef::CookbookHelpers
44
+ MSG = "Don't use Ruby to shellout in an only_if / not_if conditional when you can shellout directly by wrapping the command in quotes.".freeze
45
+
46
+ def_node_matcher :conditional_shellout?, <<-PATTERN
47
+ (block
48
+ (send nil? ${:only_if :not_if})
49
+ (args)
50
+ {(send nil? :system $(str ...))
51
+ (send (send (send nil? :shell_out $(str ...)) :exitstatus) :== (int 0))
52
+ })
53
+ PATTERN
54
+
55
+ def on_block(node)
56
+ conditional_shellout?(node) do
57
+ add_offense(node, location: :expression, message: MSG, severity: :refactor)
58
+ end
59
+ end
60
+
61
+ def autocorrect(node)
62
+ lambda do |corrector|
63
+ conditional_shellout?(node) do |type, val|
64
+ corrector.replace(node.loc.expression, "#{type} #{val.source}")
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,61 @@
1
+ #
2
+ # Copyright:: 2020, Chef Software, Inc.
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+ module RuboCop
18
+ module Cop
19
+ module Chef
20
+ module ChefDeprecations
21
+ # Use node['powershell']['version'] or the new powershell_version helper available in Chef Infra Client 16+ instead of the deprecated PowerShell cookbook helpers
22
+ #
23
+ # @example
24
+ #
25
+ # # bad
26
+ # Powershell::VersionHelper.powershell_version?('4.0')
27
+ #
28
+ # # good
29
+ # node['powershell']['version'].to_f == 4.0
30
+ #
31
+ # # good (Chef Infra Client 16+)
32
+ # powershell_version == 4.0
33
+ #
34
+ class PowershellCookbookHelpers < Cop
35
+ MSG = "Use node['powershell']['version'] or the new powershell_version helper available in Chef Infra Client 16+ instead of the deprecated PowerShell cookbook helpers.".freeze
36
+
37
+ def_node_matcher :ps_cb_helper?, <<-PATTERN
38
+ (send
39
+ (const
40
+ (const {cbase nil?} :Powershell) :VersionHelper) :powershell_version?
41
+ $(...))
42
+ PATTERN
43
+
44
+ def on_send(node)
45
+ ps_cb_helper?(node) do
46
+ add_offense(node, location: :expression, message: MSG, severity: :warning)
47
+ end
48
+ end
49
+
50
+ def autocorrect(node)
51
+ lambda do |corrector|
52
+ ps_cb_helper?(node) do |ver|
53
+ corrector.replace(node.loc.expression, "node['powershell']['version'].to_f == #{ver.source}")
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,74 @@
1
+ #
2
+ # Copyright:: 2019-2020, Chef Software, Inc.
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+ module RuboCop
18
+ module Cop
19
+ module Chef
20
+ module ChefDeprecations
21
+ # Use node['platform_version'] and node['kernel'] data instead of the deprecated Windows::VersionHelper helpers from the Windows cookbook.
22
+ #
23
+ # @example
24
+ #
25
+ # # bad
26
+ # Windows::VersionHelper.nt_version
27
+ # Windows::VersionHelper.server_version?
28
+ # Windows::VersionHelper.core_version?
29
+ # Windows::VersionHelper.workstation_version?
30
+ #
31
+ # # good
32
+ # node['platform_version'].to_f
33
+ # node['kernel']['product_type'] == 'Server'
34
+ # node['kernel']['server_core']
35
+ # node['kernel']['product_type'] == 'Workstation'
36
+ #
37
+ class WindowsVersionHelpers < Cop
38
+ extend TargetChefVersion
39
+
40
+ minimum_target_chef_version '14.0'
41
+
42
+ MSG = "Use node['platform_version'] and node['kernel'] data introduced in Chef Infra Client 14 instead of the deprecated Windows::VersionHelper helpers from the Windows cookbook.".freeze
43
+
44
+ def_node_matcher :windows_helper?, <<-PATTERN
45
+ (send ( const ( const {nil? cbase} :Windows ) :VersionHelper ) $_ )
46
+ PATTERN
47
+
48
+ def on_send(node)
49
+ windows_helper?(node) do
50
+ add_offense(node, location: :expression, message: MSG, severity: :refactor)
51
+ end
52
+ end
53
+
54
+ def autocorrect(node)
55
+ lambda do |corrector|
56
+ windows_helper?(node) do |method|
57
+ case method
58
+ when :nt_version
59
+ corrector.replace(node.loc.expression, 'node[\'platform_version\'].to_f')
60
+ when :server_version?
61
+ corrector.replace(node.loc.expression, 'node[\'kernel\'][\'product_type\'] == \'Server\'')
62
+ when :core_version?
63
+ corrector.replace(node.loc.expression, 'node[\'kernel\'][\'server_core\']')
64
+ when :workstation_version?
65
+ corrector.replace(node.loc.expression, 'node[\'kernel\'][\'product_type\'] == \'Workstation\'')
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -18,9 +18,9 @@
18
18
  module RuboCop
19
19
  module Cop
20
20
  module Chef
21
- # Policyfiles should be used for cookbook dependency solving instead of a Berkshelf Berksfile.
22
- #
23
21
  module ChefEffortless
22
+ # Policyfiles should be used for cookbook dependency solving instead of a Berkshelf Berksfile.
23
+ #
24
24
  class Berksfile < Cop
25
25
  include RangeHelp
26
26
 
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: 2019, Chef Software, Inc.
2
+ # Copyright:: 2019-2020, Chef Software, Inc.
3
3
  # Author:: Tim Smith (<tsmith@chef.io>)
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,7 +18,7 @@ module RuboCop
18
18
  module Cop
19
19
  module Chef
20
20
  module ChefModernize
21
- # Don't depend the zypper cookbook as the zypper_repository resource is built into Chef Infra Client 13.3
21
+ # Don't depend on the zypper cookbook as the zypper_repository resource is built into Chef Infra Client 13.3+
22
22
  #
23
23
  # @example
24
24
  #
@@ -31,7 +31,7 @@ module RuboCop
31
31
 
32
32
  minimum_target_chef_version '13.3'
33
33
 
34
- MSG = "Don't include the zypper cookbook as the zypper_repository resource is built into Chef Infra Client 13.3+".freeze
34
+ MSG = "Don't depend on the zypper cookbook as the zypper_repository resource is built into Chef Infra Client 13.3+".freeze
35
35
 
36
36
  def_node_matcher :zypper_depends?, <<-PATTERN
37
37
  (send nil? :depends (str "zypper"))
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: 2019, Chef Software, Inc.
2
+ # Copyright:: 2020, Chef Software, Inc.
3
3
  # Author:: Tim Smith (<tsmith@chef.io>)
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,28 +18,40 @@ module RuboCop
18
18
  module Cop
19
19
  module Chef
20
20
  module ChefModernize
21
- # Use node['platform_version] data instead of the Windows::VersionHelper helper from the Windows cookbook.
21
+ # Use `node.role?('foo')` to check if a node includes a role instead of `node['roles'].include?('foo')`.
22
22
  #
23
23
  # @example
24
24
  #
25
25
  # # bad
26
- # Windows::VersionHelper.nt_version
26
+ # node['roles'].include?('foo')
27
27
  #
28
28
  # # good
29
- # node['platform_version].to_i
29
+ # node.role?('foo')
30
30
  #
31
- class WindowsVersionHelper < Cop
32
- MSG = "Use node['platform_version'] data instead of the Windows::VersionHelper helper from the Windows cookbook.".freeze
31
+ class NodeRolesInclude < Cop
32
+ MSG = "Use `node.role?('foo')` to check if a node includes a role instead of `node['roles'].include?('foo')`.".freeze
33
33
 
34
- def_node_matcher :windows_helper?, <<-PATTERN
35
- (send ( const ( const {nil? cbase} :Windows ) :VersionHelper ) ... )
34
+ def_node_matcher :node_role_include?, <<-PATTERN
35
+ (send
36
+ (send
37
+ (send nil? :node) :[]
38
+ (str "roles")) :include?
39
+ $(...))
36
40
  PATTERN
37
41
 
38
42
  def on_send(node)
39
- windows_helper?(node) do
43
+ node_role_include?(node) do
40
44
  add_offense(node, location: :expression, message: MSG, severity: :refactor)
41
45
  end
42
46
  end
47
+
48
+ def autocorrect(node)
49
+ lambda do |corrector|
50
+ node_role_include?(node) do |val|
51
+ corrector.replace(node.loc.expression, "node.role?(#{val.source})")
52
+ end
53
+ end
54
+ end
43
55
  end
44
56
  end
45
57
  end
@@ -18,7 +18,7 @@ module RuboCop
18
18
  module Cop
19
19
  module Chef
20
20
  module ChefModernize
21
- # Use the windows_feature resource built into Chef Infra Client 15+ instead of the powershell_script resource
21
+ # Use the windows_feature resource built into Chef Infra Client 14+ instead of the powershell_script resource
22
22
  # to run Install-WindowsFeature or Add-WindowsFeature
23
23
  #
24
24
  # @example
@@ -38,9 +38,9 @@ module RuboCop
38
38
  include RuboCop::Chef::CookbookHelpers
39
39
  extend TargetChefVersion
40
40
 
41
- minimum_target_chef_version '13.0'
41
+ minimum_target_chef_version '14.0'
42
42
 
43
- MSG = 'Use the windows_feature resource built into Chef Infra Client 13+ instead of using Install-WindowsFeature or Add-WindowsFeature in a powershell_script resource'.freeze
43
+ MSG = 'Use the windows_feature resource built into Chef Infra Client 14+ instead of using Install-WindowsFeature or Add-WindowsFeature in a powershell_script resource'.freeze
44
44
 
45
45
  def on_block(node)
46
46
  match_property_in_resource?(:powershell_script, 'code', node) do |code_property|
@@ -0,0 +1,53 @@
1
+ #
2
+ # Copyright:: Copyright 2020, Chef Software Inc.
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+ module RuboCop
18
+ module Cop
19
+ module Chef
20
+ module ChefSharing
21
+ # Resource properties should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.
22
+ #
23
+ # @example
24
+ #
25
+ # # bad
26
+ # property :foo, String
27
+ #
28
+ # # good
29
+ # property :foo, String, description: "Set the important thing to..."
30
+ #
31
+ class IncludePropertyDescriptions < Cop
32
+ extend TargetChefVersion
33
+
34
+ minimum_target_chef_version '13.9'
35
+
36
+ MSG = 'Resource properties should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.'.freeze
37
+
38
+ # any method named property being called with a symbol argument and anything else
39
+ def_node_matcher :property?, '(send nil? :property (sym _) ...)'
40
+
41
+ # hash that contains description in any order (that's the <> bit)
42
+ def_node_search :description_hash, '(hash <(pair (sym :description) ...) ...>)'
43
+
44
+ def on_send(node)
45
+ property?(node) do
46
+ add_offense(node, location: :expression, message: MSG, severity: :refactor) unless description_hash(processed_source.ast).any?
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,51 @@
1
+ #
2
+ # Copyright:: Copyright 2020, Chef Software Inc.
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #
17
+ module RuboCop
18
+ module Cop
19
+ module Chef
20
+ module ChefSharing
21
+ # Resources should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.
22
+ #
23
+ # @example
24
+ #
25
+ # # good
26
+ # resource_name :foo
27
+ # description "The foo resource is used to do..."
28
+ #
29
+ class IncludeResourceDescriptions < Cop
30
+ include RangeHelp
31
+ extend TargetChefVersion
32
+
33
+ minimum_target_chef_version '13.9'
34
+
35
+ MSG = 'Resources should include description fields to allow automated documention. Requires Chef Infra Client 13.9 or later.'.freeze
36
+
37
+ def investigate(processed_source)
38
+ return if processed_source.blank?
39
+
40
+ # Using range similar to RuboCop::Cop::Naming::Filename (file_name.rb)
41
+ range = source_range(processed_source.buffer, 1, 0)
42
+
43
+ add_offense(nil, location: range, message: MSG, severity: :refactor) unless resource_description(processed_source.ast).any?
44
+ end
45
+
46
+ def_node_search :resource_description, '(send nil? :description str ...)'
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cookstyle
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.19
4
+ version: 6.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thom May
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-03-20 00:00:00.000000000 Z
12
+ date: 2020-03-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubocop
@@ -52,6 +52,7 @@ files:
52
52
  - lib/rubocop/cop/chef/correctness/block_guard_clause_string_only.rb
53
53
  - lib/rubocop/cop/chef/correctness/cb_depends_on_self.rb
54
54
  - lib/rubocop/cop/chef/correctness/chef_application_fatal.rb
55
+ - lib/rubocop/cop/chef/correctness/conditional_ruby_shellout.rb
55
56
  - lib/rubocop/cop/chef/correctness/dnf_package_allow_downgrades.rb
56
57
  - lib/rubocop/cop/chef/correctness/incorrect_library_injection.rb
57
58
  - lib/rubocop/cop/chef/correctness/invalid_notification_timing.rb
@@ -109,6 +110,7 @@ files:
109
110
  - lib/rubocop/cop/chef/deprecation/partial_search_class_usage.rb
110
111
  - lib/rubocop/cop/chef/deprecation/partial_search_helper_usage.rb
111
112
  - lib/rubocop/cop/chef/deprecation/poise_archive.rb
113
+ - lib/rubocop/cop/chef/deprecation/powershell_cookbook_helpers.rb
112
114
  - lib/rubocop/cop/chef/deprecation/require_recipe.rb
113
115
  - lib/rubocop/cop/chef/deprecation/resource_overrides_provides_method.rb
114
116
  - lib/rubocop/cop/chef/deprecation/resource_uses_dsl_name_method.rb
@@ -123,6 +125,7 @@ files:
123
125
  - lib/rubocop/cop/chef/deprecation/verify_property_file_expansion.rb
124
126
  - lib/rubocop/cop/chef/deprecation/windows_feature_servermanagercmd.rb
125
127
  - lib/rubocop/cop/chef/deprecation/windows_task_change_action.rb
128
+ - lib/rubocop/cop/chef/deprecation/windows_version_helpers.rb
126
129
  - lib/rubocop/cop/chef/deprecation/xml_ruby_recipe.rb
127
130
  - lib/rubocop/cop/chef/deprecation/yum_dnf_compat_recipe.rb
128
131
  - lib/rubocop/cop/chef/effortless/berksfile.rb
@@ -159,6 +162,7 @@ files:
159
162
  - lib/rubocop/cop/chef/modernize/macos_user_defaults.rb
160
163
  - lib/rubocop/cop/chef/modernize/minitest_handler_usage.rb
161
164
  - lib/rubocop/cop/chef/modernize/node_init_package.rb
165
+ - lib/rubocop/cop/chef/modernize/node_roles_include.rb
162
166
  - lib/rubocop/cop/chef/modernize/ohai_default_recipe.rb
163
167
  - lib/rubocop/cop/chef/modernize/openssl_rsa_key_resource.rb
164
168
  - lib/rubocop/cop/chef/modernize/openssl_x509_resource.rb
@@ -186,7 +190,6 @@ files:
186
190
  - lib/rubocop/cop/chef/modernize/whyrun_supported_true.rb
187
191
  - lib/rubocop/cop/chef/modernize/windows_default_recipe.rb
188
192
  - lib/rubocop/cop/chef/modernize/windows_registry_uac.rb
189
- - lib/rubocop/cop/chef/modernize/windows_version_helper.rb
190
193
  - lib/rubocop/cop/chef/modernize/windows_zipfile.rb
191
194
  - lib/rubocop/cop/chef/modernize/zipfile_resource.rb
192
195
  - lib/rubocop/cop/chef/modernize/zypper_repo.rb
@@ -211,6 +214,8 @@ files:
211
214
  - lib/rubocop/cop/chef/redundant/unnecessary_name_property.rb
212
215
  - lib/rubocop/cop/chef/sharing/default_maintainer_metadata.rb
213
216
  - lib/rubocop/cop/chef/sharing/empty_metadata_field.rb
217
+ - lib/rubocop/cop/chef/sharing/include_property_descriptions.rb
218
+ - lib/rubocop/cop/chef/sharing/include_resource_descriptions.rb
214
219
  - lib/rubocop/cop/chef/sharing/insecure_cookbook_url.rb
215
220
  - lib/rubocop/cop/chef/sharing/invalid_license_string.rb
216
221
  - lib/rubocop/cop/chef/style/attribute_keys.rb