armitage-rubocop 1.3.1.1 → 1.6.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/.gitignore +0 -1
- data/Gemfile.lock +78 -0
- data/Rakefile +13 -53
- data/armitage-rubocop.gemspec +5 -5
- data/lib/common/layout.yml +3 -0
- data/lib/common/lint.yml +4 -1
- data/lib/common/metrics.yml +7 -1
- data/lib/common/performance.yml +1 -1
- data/lib/common/rails.yml +9 -0
- data/lib/common/style.yml +4 -0
- metadata +12 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b300bd4a0d4d7b01a9c2249f1e8fb83ce5fbdcbc1925c056eecbdba03a6205b3
|
4
|
+
data.tar.gz: 58451e1b8322fec8e993db5639c2d60bfb9b1eaa77c47c724af349baec061536
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 70ed42502211016d45dfbd6b890daa0a2187faef42bd29aeaf81dc2e66686d12499718469e3da1fb6ad07581b8469ea02e956d09a92fed76bebe5fcda53f3750
|
7
|
+
data.tar.gz: 254883a9930ff28b65f88fb7ec025c3ea1c686be70e41385d002ebb950408fc091777a736ac905d64b3ae2e85568e45c122be4a39cd35faa0b1da815b3f8fe91
|
data/.gitignore
CHANGED
data/Gemfile.lock
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
armitage-rubocop (1.6.1)
|
5
|
+
rubocop (= 1.6.1)
|
6
|
+
rubocop-performance (= 1.9.1)
|
7
|
+
rubocop-rails (= 2.9.0)
|
8
|
+
rubocop-rake (= 0.5.1)
|
9
|
+
rubocop-rspec (= 2.0.1)
|
10
|
+
|
11
|
+
GEM
|
12
|
+
remote: https://rubygems.org/
|
13
|
+
specs:
|
14
|
+
activesupport (6.1.0)
|
15
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
16
|
+
i18n (>= 1.6, < 2)
|
17
|
+
minitest (>= 5.1)
|
18
|
+
tzinfo (~> 2.0)
|
19
|
+
zeitwerk (~> 2.3)
|
20
|
+
ast (2.4.1)
|
21
|
+
coderay (1.1.3)
|
22
|
+
concurrent-ruby (1.1.7)
|
23
|
+
i18n (1.8.5)
|
24
|
+
concurrent-ruby (~> 1.0)
|
25
|
+
method_source (1.0.0)
|
26
|
+
minitest (5.14.2)
|
27
|
+
parallel (1.20.1)
|
28
|
+
parser (2.7.2.0)
|
29
|
+
ast (~> 2.4.1)
|
30
|
+
pry (0.13.1)
|
31
|
+
coderay (~> 1.1)
|
32
|
+
method_source (~> 1.0)
|
33
|
+
rack (2.2.3)
|
34
|
+
rainbow (3.0.0)
|
35
|
+
rake (13.0.1)
|
36
|
+
regexp_parser (2.0.0)
|
37
|
+
rexml (3.2.4)
|
38
|
+
rubocop (1.6.1)
|
39
|
+
parallel (~> 1.10)
|
40
|
+
parser (>= 2.7.1.5)
|
41
|
+
rainbow (>= 2.2.2, < 4.0)
|
42
|
+
regexp_parser (>= 1.8, < 3.0)
|
43
|
+
rexml
|
44
|
+
rubocop-ast (>= 1.2.0, < 2.0)
|
45
|
+
ruby-progressbar (~> 1.7)
|
46
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
47
|
+
rubocop-ast (1.3.0)
|
48
|
+
parser (>= 2.7.1.5)
|
49
|
+
rubocop-performance (1.9.1)
|
50
|
+
rubocop (>= 0.90.0, < 2.0)
|
51
|
+
rubocop-ast (>= 0.4.0)
|
52
|
+
rubocop-rails (2.9.0)
|
53
|
+
activesupport (>= 4.2.0)
|
54
|
+
rack (>= 1.1)
|
55
|
+
rubocop (>= 0.90.0, < 2.0)
|
56
|
+
rubocop-rake (0.5.1)
|
57
|
+
rubocop
|
58
|
+
rubocop-rspec (2.0.1)
|
59
|
+
rubocop (~> 1.0)
|
60
|
+
rubocop-ast (>= 1.1.0)
|
61
|
+
ruby-progressbar (1.10.1)
|
62
|
+
tzinfo (2.0.3)
|
63
|
+
concurrent-ruby (~> 1.0)
|
64
|
+
unicode-display_width (1.7.0)
|
65
|
+
zeitwerk (2.4.2)
|
66
|
+
|
67
|
+
PLATFORMS
|
68
|
+
ruby
|
69
|
+
x86_64-darwin-20
|
70
|
+
|
71
|
+
DEPENDENCIES
|
72
|
+
armitage-rubocop!
|
73
|
+
bundler
|
74
|
+
pry
|
75
|
+
rake
|
76
|
+
|
77
|
+
BUNDLED WITH
|
78
|
+
2.2.0
|
data/Rakefile
CHANGED
@@ -5,20 +5,21 @@ require 'rubocop/rake_task'
|
|
5
5
|
require 'open3'
|
6
6
|
require 'yaml'
|
7
7
|
require 'rubocop'
|
8
|
+
require 'rubocop-performance'
|
8
9
|
require 'rubocop-rspec'
|
9
10
|
require 'rubocop-rails'
|
10
|
-
require 'rubocop-performance'
|
11
11
|
require 'rubocop-rake'
|
12
12
|
|
13
13
|
RuboCop::RakeTask.new(:rubocop) do |t|
|
14
14
|
config_path = File.expand_path(File.join('.rubocop.yml'), __dir__)
|
15
15
|
t.options = ['--config', config_path]
|
16
|
-
t.requires << 'rubocop-rspec'
|
17
16
|
t.requires << 'rubocop-performance'
|
18
17
|
t.requires << 'rubocop-rails'
|
18
|
+
t.requires << 'rubocop-rspec'
|
19
19
|
t.requires << 'rubocop-rake'
|
20
20
|
end
|
21
21
|
|
22
|
+
ARMITAGE_RUBOCOP_PATH = Pathname.new(__FILE__).join('../.rubocop.yml')
|
22
23
|
NON_CHECKABLE_COPS = %w[Rails].freeze # NOTE: Global "Rails" cop has only `Enabled` option
|
23
24
|
|
24
25
|
# rubocop:disable Rails/RakeEnvironment
|
@@ -78,58 +79,17 @@ namespace :armitage_rubocop do
|
|
78
79
|
|
79
80
|
desc 'Checks that all defined cops can be used'
|
80
81
|
task :recognizable_cops do
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
# - RuboCop::Config#warn_about_unrecognized_cops
|
89
|
-
# - RuboCop::ConfigLoader.load_file
|
90
|
-
# - RuboCop::ConfigLoader.default_configuration
|
91
|
-
yamls.each do |yaml_file|
|
92
|
-
rubocop_config = RuboCop::ConfigLoader.load_file(yaml_file)
|
93
|
-
|
94
|
-
# NOTE: validate cop existence
|
95
|
-
rubocop_config.each_key do |cop|
|
96
|
-
next if RuboCop::ConfigLoader.default_configuration.key?(cop)
|
97
|
-
next if RuboCop::Cop::Cop.registry.contains_cop_matching?([cop])
|
98
|
-
next if cop == 'inherit_mode'
|
99
|
-
|
100
|
-
invalid_cops[cop] = "\e[31mBAD COP\e[0m"
|
101
|
-
end
|
102
|
-
|
103
|
-
# NOTE: validate cop params
|
104
|
-
rubocop_config.each_key do |cop|
|
105
|
-
next if invalid_cops.key?(cop)
|
106
|
-
|
107
|
-
invalid_params = Set.new
|
108
|
-
|
109
|
-
rubocop_config[cop].each_key do |cop_param|
|
110
|
-
next if RuboCop::ConfigValidator::COMMON_PARAMS.include?(cop_param)
|
111
|
-
next if NON_CHECKABLE_COPS.include?(cop)
|
112
|
-
next if RuboCop::ConfigLoader.default_configuration[cop].key?(cop_param)
|
113
|
-
|
114
|
-
invalid_params << "\e[35m#{cop_param}\e[0m"
|
115
|
-
end
|
116
|
-
|
117
|
-
next if invalid_params.empty?
|
118
|
-
|
119
|
-
invalid_cops[cop] = "\e[31mBAD PARAMS\e[0m: #{invalid_params.to_a.join(', ')}"
|
120
|
-
end
|
121
|
-
end
|
122
|
-
|
123
|
-
if invalid_cops.empty?
|
124
|
-
puts "[\e[32mCOP RECOGNITION CHECK\e[0m] => \e[1;33mall cops are recognizable!\e[0m"
|
125
|
-
else
|
126
|
-
invalid_cops_message = invalid_cops.each_pair.map do |cop, message|
|
127
|
-
"[\e[32m#{cop}\e[0m]\t- #{message}"
|
128
|
-
end.join("\n")
|
82
|
+
RuboCop::ConfigLoader.load_file(ARMITAGE_RUBOCOP_PATH)
|
83
|
+
# TODO: validate each configured cop individually
|
84
|
+
puts "[\e[32mCOP RECOGNITION CHECK\e[0m] => \e[1;33mall cops are recognizable!\e[0m"
|
85
|
+
rescue
|
86
|
+
abort "[\e[31mCOP RECOGNITION CHECK\e[0m] => some cops can not be fully recognized!\n" \
|
87
|
+
"Run rake validation:recognize_and_show to show which cops have incompatabilities."
|
88
|
+
end
|
129
89
|
|
130
|
-
|
131
|
-
|
132
|
-
|
90
|
+
desc 'Show rubocop\'s validation result output'
|
91
|
+
task :recognize_and_show do
|
92
|
+
RuboCop::ConfigLoader.load_file(ARMITAGE_RUBOCOP_PATH) rescue nil
|
133
93
|
end
|
134
94
|
end
|
135
95
|
end
|
data/armitage-rubocop.gemspec
CHANGED
@@ -4,7 +4,7 @@ lib = File.expand_path('lib', __dir__)
|
|
4
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.version = '1.
|
7
|
+
spec.version = '1.6.1'
|
8
8
|
|
9
9
|
spec.name = 'armitage-rubocop'
|
10
10
|
spec.license = 'MIT'
|
@@ -22,10 +22,10 @@ Gem::Specification.new do |spec|
|
|
22
22
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
23
23
|
end
|
24
24
|
|
25
|
-
spec.add_dependency 'rubocop', '= 1.
|
26
|
-
spec.add_dependency 'rubocop-performance', '= 1.9.
|
27
|
-
spec.add_dependency 'rubocop-rails', '= 2.
|
28
|
-
spec.add_dependency 'rubocop-rspec', '= 2.0.
|
25
|
+
spec.add_dependency 'rubocop', '= 1.6.1'
|
26
|
+
spec.add_dependency 'rubocop-performance', '= 1.9.1'
|
27
|
+
spec.add_dependency 'rubocop-rails', '= 2.9.0'
|
28
|
+
spec.add_dependency 'rubocop-rspec', '= 2.0.1'
|
29
29
|
spec.add_dependency 'rubocop-rake', '= 0.5.1'
|
30
30
|
|
31
31
|
spec.add_development_dependency 'bundler'
|
data/lib/common/layout.yml
CHANGED
@@ -111,6 +111,9 @@ Layout/EmptyLineBetweenDefs:
|
|
111
111
|
Enabled: true
|
112
112
|
NumberOfEmptyLines: 1
|
113
113
|
AllowAdjacentOneLineDefs: false
|
114
|
+
EmptyLineBetweenMethodDefs: true
|
115
|
+
EmptyLineBetweenClassDefs: true
|
116
|
+
EmptyLineBetweenModuleDefs: true
|
114
117
|
|
115
118
|
Layout/EmptyLines:
|
116
119
|
Enabled: true
|
data/lib/common/lint.yml
CHANGED
@@ -176,7 +176,7 @@ Lint/MixedRegexpCaptureTypes:
|
|
176
176
|
# NOTE: if you use named captures - numbered captures will be ignored. it is bad. validate it.
|
177
177
|
|
178
178
|
Lint/MissingSuper:
|
179
|
-
Enabled:
|
179
|
+
Enabled: true
|
180
180
|
|
181
181
|
Lint/MultipleComparison:
|
182
182
|
Enabled: true
|
@@ -301,6 +301,9 @@ Lint/TopLevelReturnWithArgument:
|
|
301
301
|
Lint/TrailingCommaInAttributeDeclaration:
|
302
302
|
Enabled: true
|
303
303
|
|
304
|
+
Lint/UnexpectedBlockArity:
|
305
|
+
Enabled: false
|
306
|
+
|
304
307
|
Lint/UnderscorePrefixedVariableName:
|
305
308
|
Enabled: false
|
306
309
|
|
data/lib/common/metrics.yml
CHANGED
@@ -1,13 +1,16 @@
|
|
1
1
|
Metrics/AbcSize:
|
2
2
|
Enabled: true
|
3
3
|
Max: 19
|
4
|
+
CountRepeatedAttributes: true
|
4
5
|
IgnoredMethods: []
|
5
6
|
|
6
7
|
Metrics/BlockLength:
|
7
8
|
Enabled: true
|
8
9
|
CountComments: false
|
10
|
+
CountAsOne: []
|
9
11
|
Max: 25
|
10
|
-
|
12
|
+
IgnoredMethods:
|
13
|
+
- refine
|
11
14
|
Exclude:
|
12
15
|
- Rakefile
|
13
16
|
- spec/**/*
|
@@ -32,6 +35,8 @@ Metrics/MethodLength:
|
|
32
35
|
Enabled: true
|
33
36
|
Max: 25
|
34
37
|
CountComments: false
|
38
|
+
CountAsOne: []
|
39
|
+
IgnoredMethods: []
|
35
40
|
|
36
41
|
Metrics/ModuleLength:
|
37
42
|
Enabled: true
|
@@ -41,6 +46,7 @@ Metrics/ModuleLength:
|
|
41
46
|
Metrics/ParameterLists:
|
42
47
|
Enabled: true
|
43
48
|
Max: 5
|
49
|
+
MaxOptionalParameters: 3
|
44
50
|
CountKeywordArgs: true
|
45
51
|
|
46
52
|
Metrics/PerceivedComplexity:
|
data/lib/common/performance.yml
CHANGED
data/lib/common/rails.yml
CHANGED
@@ -33,6 +33,12 @@ Rails/ApplicationController:
|
|
33
33
|
Rails/ApplicationMailer:
|
34
34
|
Enabled: false
|
35
35
|
|
36
|
+
Rails/AttributeDefaultBlockValue:
|
37
|
+
Enabled: true
|
38
|
+
|
39
|
+
Rails/ArelStar:
|
40
|
+
Enabled: true
|
41
|
+
|
36
42
|
Rails/RakeEnvironment:
|
37
43
|
Enabled: true
|
38
44
|
AutoCorrect: true
|
@@ -271,6 +277,9 @@ Rails/UnknownEnv:
|
|
271
277
|
Rails/Validation:
|
272
278
|
Enabled: true
|
273
279
|
|
280
|
+
Rails/WhereEquals:
|
281
|
+
Enabled: true
|
282
|
+
|
274
283
|
Rails/WhereExists:
|
275
284
|
Enabled: false
|
276
285
|
EnforcedStyle: exists
|
data/lib/common/style.yml
CHANGED
@@ -466,6 +466,9 @@ Style/RaiseArgs:
|
|
466
466
|
Style/RandomWithOffset:
|
467
467
|
Enabled: true
|
468
468
|
|
469
|
+
Style/RedundantArgument:
|
470
|
+
Enabled: false
|
471
|
+
|
469
472
|
Style/RedundantAssignment:
|
470
473
|
Enabled: true
|
471
474
|
|
@@ -669,6 +672,7 @@ Style/RedundantSort:
|
|
669
672
|
|
670
673
|
Style/SoleNestedConditional:
|
671
674
|
Enabled: true
|
675
|
+
AutoCorrect: true
|
672
676
|
AllowModifier: true
|
673
677
|
|
674
678
|
Style/UnpackFirst:
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: armitage-rubocop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rustam Ibragimov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -16,56 +16,56 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: 1.6.1
|
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.6.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rubocop-performance
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.9.
|
33
|
+
version: 1.9.1
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.9.
|
40
|
+
version: 1.9.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rubocop-rails
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 2.
|
47
|
+
version: 2.9.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 2.
|
54
|
+
version: 2.9.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rubocop-rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 2.0.
|
61
|
+
version: 2.0.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: 2.0.
|
68
|
+
version: 2.0.1
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rubocop-rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -135,6 +135,7 @@ files:
|
|
135
135
|
- ".yamllint"
|
136
136
|
- CODE_OF_CONDUCT.md
|
137
137
|
- Gemfile
|
138
|
+
- Gemfile.lock
|
138
139
|
- LICENSE.txt
|
139
140
|
- README.md
|
140
141
|
- Rakefile
|
@@ -179,7 +180,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
179
180
|
- !ruby/object:Gem::Version
|
180
181
|
version: '0'
|
181
182
|
requirements: []
|
182
|
-
rubygems_version: 3.2.0
|
183
|
+
rubygems_version: 3.2.0
|
183
184
|
signing_key:
|
184
185
|
specification_version: 4
|
185
186
|
summary: A set of rubocop settings
|