chefstyle 1.6.2 → 1.7.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 +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
|