chefstyle 1.6.2 → 1.7.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 +4 -4
- data/config/chefstyle.yml +10 -0
- data/config/disable_all.yml +4 -0
- data/config/upstream.yml +38 -16
- data/lib/chefstyle/version.rb +2 -2
- data/lib/rubocop/cop/chef/ruby/gemspec_license.rb +55 -0
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 83ab4efcaac7ca6e5d7d3d2453685273ac015024fd39d0ef1db3a1f2a1e8d84f
|
4
|
+
data.tar.gz: ba401d9837304e9327bd6c6749ffbdd34ba76790c967cb4dd6989fa2a354595c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a6ec0f6ea2b3ec795bc4762b7944945754690babae83889a49f281b6683282653ec4b2cc955a0868ef13c6ee57451242c67e1fd07587a7222436bb1220a0c7c1
|
7
|
+
data.tar.gz: d7ec55522948386fd693fda2c3c3a5e81b69c07217c0e42216374237da42f1aeedf30c2f3b8f176ee0f92e6202da094ad3996083c67511aa84dffedbf811a9a4
|
data/config/chefstyle.yml
CHANGED
@@ -710,6 +710,16 @@ Chef/Ruby/GemspecRequireRubygems:
|
|
710
710
|
Include:
|
711
711
|
- '**/*.gemspec'
|
712
712
|
|
713
|
+
Chef/Ruby/GemspecLicense:
|
714
|
+
Description: 'All gemspec files should define their license.'
|
715
|
+
Enabled: true
|
716
|
+
VersionAdded: '1.7.0'
|
717
|
+
Include:
|
718
|
+
- '**/*.gemspec'
|
719
|
+
Exclude:
|
720
|
+
- '/**/spec/**/*'
|
721
|
+
- '/**/test/**/*'
|
722
|
+
|
713
723
|
Chef/Ruby/RequireNetHttps:
|
714
724
|
Description: net/https is deprecated and just includes net/http and openssl. We should include those directly instead
|
715
725
|
Enabled: true
|
data/config/disable_all.yml
CHANGED
@@ -9,6 +9,8 @@ Bundler/InsecureProtocolSource:
|
|
9
9
|
Enabled: false
|
10
10
|
Bundler/OrderedGems:
|
11
11
|
Enabled: false
|
12
|
+
Gemspec/DateAssignment:
|
13
|
+
Enabled: false
|
12
14
|
Gemspec/DuplicatedAssignment:
|
13
15
|
Enabled: false
|
14
16
|
Gemspec/OrderedDependencies:
|
@@ -631,6 +633,8 @@ Style/GuardClause:
|
|
631
633
|
Enabled: false
|
632
634
|
Style/HashAsLastArrayItem:
|
633
635
|
Enabled: false
|
636
|
+
Style/HashConversion:
|
637
|
+
Enabled: false
|
634
638
|
Style/HashEachMethods:
|
635
639
|
Enabled: false
|
636
640
|
Style/HashExcept:
|
data/config/upstream.yml
CHANGED
@@ -203,6 +203,13 @@ Bundler/OrderedGems:
|
|
203
203
|
|
204
204
|
#################### Gemspec ###############################
|
205
205
|
|
206
|
+
Gemspec/DateAssignment:
|
207
|
+
Description: 'Checks that `date =` is not used in gemspec file, it is set automatically when the gem is packaged.'
|
208
|
+
Enabled: pending
|
209
|
+
VersionAdded: '1.10'
|
210
|
+
Include:
|
211
|
+
- '**/*.gemspec'
|
212
|
+
|
206
213
|
Gemspec/DuplicatedAssignment:
|
207
214
|
Description: 'An attribute assignment method calls should be listed only once in a gemspec.'
|
208
215
|
Enabled: true
|
@@ -1446,23 +1453,31 @@ Lint/Debugger:
|
|
1446
1453
|
Description: 'Check for debugger calls.'
|
1447
1454
|
Enabled: true
|
1448
1455
|
VersionAdded: '0.14'
|
1449
|
-
VersionChanged: '
|
1450
|
-
DebuggerReceivers:
|
1451
|
-
- binding
|
1452
|
-
- Kernel
|
1453
|
-
- Pry
|
1456
|
+
VersionChanged: '1.10'
|
1457
|
+
DebuggerReceivers: [] # deprecated
|
1454
1458
|
DebuggerMethods:
|
1455
|
-
|
1456
|
-
|
1457
|
-
|
1458
|
-
|
1459
|
-
|
1460
|
-
|
1461
|
-
|
1462
|
-
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1459
|
+
# Groups are available so that a specific group can be disabled in
|
1460
|
+
# a user's configuration, but are otherwise not significant.
|
1461
|
+
Kernel:
|
1462
|
+
- binding.irb
|
1463
|
+
Byebug:
|
1464
|
+
- byebug
|
1465
|
+
- remote_byebug
|
1466
|
+
- Kernel.byebug
|
1467
|
+
- Kernel.remote_byebug
|
1468
|
+
Capybara:
|
1469
|
+
- save_and_open_page
|
1470
|
+
- save_and_open_screenshot
|
1471
|
+
Pry:
|
1472
|
+
- binding.pry
|
1473
|
+
- binding.remote_pry
|
1474
|
+
- binding.pry_remote
|
1475
|
+
- Pry.rescue
|
1476
|
+
Rails:
|
1477
|
+
- debugger
|
1478
|
+
- Kernel.debugger
|
1479
|
+
WebConsole:
|
1480
|
+
- binding.console
|
1466
1481
|
|
1467
1482
|
Lint/DeprecatedClassMethods:
|
1468
1483
|
Description: 'Check for deprecated class method calls.'
|
@@ -3087,6 +3102,8 @@ Style/ConstantVisibility:
|
|
3087
3102
|
visibility declarations.
|
3088
3103
|
Enabled: false
|
3089
3104
|
VersionAdded: '0.66'
|
3105
|
+
VersionChanged: '1.10'
|
3106
|
+
IgnoreModules: false
|
3090
3107
|
|
3091
3108
|
# Checks that you have put a copyright in a comment before any code.
|
3092
3109
|
#
|
@@ -3425,6 +3442,11 @@ Style/HashAsLastArrayItem:
|
|
3425
3442
|
- braces
|
3426
3443
|
- no_braces
|
3427
3444
|
|
3445
|
+
Style/HashConversion:
|
3446
|
+
Description: 'Avoid Hash[] in favor of ary.to_h or literal hashes.'
|
3447
|
+
Enabled: pending
|
3448
|
+
VersionAdded: '1.10'
|
3449
|
+
|
3428
3450
|
Style/HashEachMethods:
|
3429
3451
|
Description: 'Use Hash#each_key and Hash#each_value.'
|
3430
3452
|
StyleGuide: '#hash-each'
|
data/lib/chefstyle/version.rb
CHANGED
@@ -0,0 +1,55 @@
|
|
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
|
+
# All gemspec files should define their license.
|
24
|
+
#
|
25
|
+
# @example
|
26
|
+
#
|
27
|
+
# # good
|
28
|
+
# spec.license = "Apache-2.0"
|
29
|
+
#
|
30
|
+
class GemspecLicense < Base
|
31
|
+
include RangeHelp
|
32
|
+
|
33
|
+
MSG = "All gemspec files should define their license."
|
34
|
+
|
35
|
+
def_node_search :license, <<~PATTERN
|
36
|
+
(send _ {:license= :licenses=} _)
|
37
|
+
PATTERN
|
38
|
+
|
39
|
+
def_node_search :eval_method, <<~PATTERN
|
40
|
+
(send nil? {:eval :instance_eval} ... )
|
41
|
+
PATTERN
|
42
|
+
|
43
|
+
def on_new_investigation
|
44
|
+
# exit if we find a license statement or any eval since that usually happens
|
45
|
+
# when we have a windows platform gem that evals the main gemspec
|
46
|
+
return if license(processed_source.ast).first || eval_method(processed_source.ast).first
|
47
|
+
|
48
|
+
range = source_range(processed_source.buffer, 1, 0)
|
49
|
+
add_offense(range, message: MSG, severity: :warning)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
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.7.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: 2021-02-
|
11
|
+
date: 2021-02-15 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.10.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.10.0
|
27
27
|
description:
|
28
28
|
email:
|
29
29
|
- oss@chef.io
|
@@ -42,6 +42,7 @@ files:
|
|
42
42
|
- lib/chefstyle.rb
|
43
43
|
- lib/chefstyle/version.rb
|
44
44
|
- lib/rubocop/chef.rb
|
45
|
+
- lib/rubocop/cop/chef/ruby/gemspec_license.rb
|
45
46
|
- lib/rubocop/cop/chef/ruby/gemspec_require_rubygems.rb
|
46
47
|
- lib/rubocop/cop/chef/ruby/legacy_powershell_out_methods.rb
|
47
48
|
- lib/rubocop/cop/chef/ruby/require_net_https.rb
|