armitage-rubocop 1.75.7.4 → 1.75.7.5

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: 5a8bd4312b16ff4de4b6091a159a1c70b521d507f9f08deb27916fa9c032bc13
4
- data.tar.gz: d115f41381346973d83c2f58b218c3ad01be43e4a3f3b133f19ac5dd3f95b6d4
3
+ metadata.gz: 46eff1f12525f9ed750efa161fdad9740677da03c75fdcd03349ea7c1b06eb28
4
+ data.tar.gz: 64fcf79f662e6ac99e2a7aa310c1355329f4b5fb03689fa5e5662f978eaf667e
5
5
  SHA512:
6
- metadata.gz: cac76bfa3caac3f5d012ea01a9869aea48452def59e9e87fba4a5873859720d993df01268c5e4c9f7ba56b84c102d424d74b8e6607b3a6094f8b615aeb179199
7
- data.tar.gz: f5fc901026b74d59b821caf02928eeb3879d2c07386dc4438a48dc62ddf74787a0a4cc7d06606649c0d2a36ed7db2cc1144e777e49819a2d2f66d27c7abd53b5
6
+ metadata.gz: a743c66451614c5287d19b6279210a5dd05313022a06f2a61d1ac0a6fa4c588c0b9634a345719a4b185cc3cd10f9421b8247240f584b7889ef095ff71ce9d66c
7
+ data.tar.gz: 9fccb5ae25972147b145cb27a7408c1e9492d25207911882165205b3c26fe2252bee3fe438846b1988c8a5c7903dcbdf7e50d238ae2e87464732b392a0626032
data/Gemfile.lock CHANGED
@@ -1,10 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- armitage-rubocop (1.75.7.4)
4
+ armitage-rubocop (1.75.7.5)
5
5
  rubocop (= 1.75.7)
6
6
  rubocop-capybara (= 2.22.1)
7
7
  rubocop-factory_bot (= 2.27.1)
8
+ rubocop-on-rbs (= 1.7.0)
8
9
  rubocop-performance (= 1.25.0)
9
10
  rubocop-rails (= 2.32.0)
10
11
  rubocop-rake (= 0.7.1)
@@ -55,6 +56,8 @@ GEM
55
56
  rack (3.1.15)
56
57
  rainbow (3.1.1)
57
58
  rake (13.2.1)
59
+ rbs (3.9.4)
60
+ logger
58
61
  regexp_parser (2.10.0)
59
62
  rubocop (1.75.7)
60
63
  json (~> 2.3)
@@ -76,6 +79,11 @@ GEM
76
79
  rubocop-factory_bot (2.27.1)
77
80
  lint_roller (~> 1.1)
78
81
  rubocop (~> 1.72, >= 1.72.1)
82
+ rubocop-on-rbs (1.7.0)
83
+ lint_roller (~> 1.1)
84
+ rbs (~> 3.5)
85
+ rubocop (>= 1.72.1, < 2.0)
86
+ zlib
79
87
  rubocop-performance (1.25.0)
80
88
  lint_roller (~> 1.1)
81
89
  rubocop (>= 1.75.0, < 2.0)
@@ -104,6 +112,7 @@ GEM
104
112
  unicode-emoji (~> 4.0, >= 4.0.4)
105
113
  unicode-emoji (4.0.4)
106
114
  uri (1.0.3)
115
+ zlib (3.2.1)
107
116
 
108
117
  PLATFORMS
109
118
  arm64-darwin-24
data/README.md CHANGED
@@ -27,6 +27,10 @@ Configured rules:
27
27
  - FactoryBot
28
28
  - Rails
29
29
  - RSpec
30
+ - **RBS** (`.rubocop.rbs.yml`)
31
+ - Style
32
+ - Lint
33
+ - Layout
30
34
 
31
35
  ---
32
36
 
@@ -58,13 +62,16 @@ inherit_gem:
58
62
  - lib/rubocop.general.yml
59
63
  - lib/rubocop.rspec.yml
60
64
  - lib/rubocop.rake.yml
65
+ - lib/rubocop.rbs.yml # NOTE: if you use RBS
61
66
  ```
62
67
 
63
68
  ```yaml
64
69
  # --- rails ---
65
70
  inherit_gem:
66
71
  # rails-specific cops + general + rspec
67
- armitage-rubocop: lib/rubocop.rails.yml
72
+ armitage-rubocop:
73
+ - lib/rubocop.rails.yml
74
+ - lib/rubocop.rbs.yml # NOTE: if you use RBS
68
75
  ```
69
76
 
70
77
  ---
data/Rakefile CHANGED
@@ -12,6 +12,7 @@ require 'rubocop-rspec_rails'
12
12
  require 'rubocop-rake'
13
13
  require 'rubocop-capybara'
14
14
  require 'rubocop-factory_bot'
15
+ require 'rubocop-on-rbs'
15
16
 
16
17
  RuboCop::RakeTask.new(:rubocop) do |t|
17
18
  config_path = File.expand_path(File.join('.rubocop.yml'), __dir__)
@@ -23,7 +24,8 @@ RuboCop::RakeTask.new(:rubocop) do |t|
23
24
  '--plugin', 'rubocop-rspec_rails',
24
25
  '--plugin', 'rubocop-rake',
25
26
  '--plugin', 'rubocop-capybara',
26
- '--plugin', 'rubocop-factory_bot'
27
+ '--plugin', 'rubocop-factory_bot',
28
+ '--plugin', 'rubocop-on-rbs'
27
29
  ]
28
30
  end
29
31
 
@@ -6,20 +6,21 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
6
  Gem::Specification.new do |spec|
7
7
  spec.required_ruby_version = '>= 3.3'
8
8
 
9
- spec.version = '1.75.7.4'
10
- spec.name = 'armitage-rubocop'
11
- spec.license = 'MIT'
12
- spec.authors = ['Rustam Ibragimov']
13
- spec.email = ['iamdaiver@gmail.com']
14
- spec.homepage = 'https://github.com/0exp/armitage'
15
-
16
- spec.summary = 'A set of rubocop settings'
9
+ spec.version = '1.75.7.5'
10
+
11
+ spec.name = 'armitage-rubocop'
12
+ spec.license = 'MIT'
13
+ spec.authors = ['Rustam Ibragimov']
14
+ spec.email = ['iamdaiver@gmail.com']
15
+ spec.homepage = 'https://github.com/0exp/armitage'
16
+
17
+ spec.summary = 'A set of rubocop settings'
17
18
  spec.description = 'A set of rubocop settings used in my own projects.' \
18
19
  'Support for: vanilla ruby, rspec, rails.'
19
20
 
20
- spec.bindir = 'bin'
21
+ spec.bindir = 'bin'
21
22
  spec.require_paths = ['lib']
22
- spec.files = Dir.chdir(File.expand_path(__dir__)) do
23
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
23
24
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
24
25
  end
25
26
 
@@ -31,6 +32,7 @@ Gem::Specification.new do |spec|
31
32
  spec.add_dependency 'rubocop-rake', '= 0.7.1'
32
33
  spec.add_dependency 'rubocop-capybara', '= 2.22.1'
33
34
  spec.add_dependency 'rubocop-factory_bot', '= 2.27.1'
35
+ spec.add_dependency 'rubocop-on-rbs', '= 1.7.0'
34
36
 
35
37
  spec.add_development_dependency 'bundler', '~> 2.3'
36
38
  spec.add_development_dependency 'rake', '~> 13.1'
@@ -316,6 +316,12 @@ Layout/SpaceAfterColon:
316
316
 
317
317
  Layout/SpaceAfterComma:
318
318
  Enabled: true
319
+ # NOTE:
320
+ # - this cop trying to lint .rbs files too;
321
+ # - and the global exclusion in department config does not work correctly at the mmoment;
322
+ # - so we need to exclude rbs files directly from this cop;
323
+ Exclude:
324
+ - sig/**/*.rbs
319
325
 
320
326
  Layout/SpaceAfterMethodName:
321
327
  Enabled: true
data/lib/common/style.yml CHANGED
@@ -293,6 +293,12 @@ Style/FormatStringToken:
293
293
  Style/FrozenStringLiteralComment:
294
294
  Enabled: true
295
295
  EnforcedStyle: always
296
+ # NOTE:
297
+ # - this cop trying to lint .rbs files too;
298
+ # - and the global exclusion in department config does not work correctly at the mmoment;
299
+ # - so we need to exclude rbs files directly from this cop;
300
+ Exclude:
301
+ - sig/**/*.rbs
296
302
 
297
303
  Style/GlobalVars:
298
304
  Enabled: true
@@ -0,0 +1,67 @@
1
+ RBS/Layout/CommentIndentation:
2
+ Enabled: true
3
+
4
+ RBS/Layout/EmptyLineBetweenDeclarations:
5
+ Enabled: true
6
+ Class: true
7
+ Module: true
8
+ Interface: true
9
+
10
+ RBS/Layout/EmptyLines:
11
+ Enabled: true
12
+
13
+ RBS/Layout/EmptyLinesAroundAccessModifier:
14
+ Enabled: true
15
+
16
+ RBS/Layout/EmptyLinesAroundClassBody:
17
+ Enabled: true
18
+
19
+ RBS/Layout/EmptyLinesAroundInterfaceBody:
20
+ Enabled: true
21
+
22
+ RBS/Layout/EmptyLinesAroundModuleBody:
23
+ Enabled: true
24
+
25
+ RBS/Layout/EmptyLinesAroundOverloads:
26
+ Enabled: true
27
+
28
+ RBS/Layout/EndAlignment:
29
+ Enabled: true
30
+
31
+ RBS/Layout/ExtraSpacing:
32
+ Enabled: true
33
+
34
+ RBS/Layout/IndentationWidth:
35
+ Enabled: true
36
+
37
+ RBS/Layout/OverloadIndentation:
38
+ Enabled: true
39
+
40
+ RBS/Layout/SpaceAfterComma:
41
+ # NOTE:
42
+ # - (<eanabled:false> reason) hard to read complex code;
43
+ # - (what i want (but it is not realized at all in this cop)):
44
+ # - an option like `EnforcedStyle: "no_space" / "need_space"`;
45
+ Enabled: false
46
+
47
+ RBS/Layout/SpaceAroundArrow:
48
+ Enabled: true
49
+
50
+ RBS/Layout/SpaceAroundBraces:
51
+ Enabled: true
52
+
53
+ RBS/Layout/SpaceAroundOperators:
54
+ # NOTE:
55
+ # - (<eanabled:false> reason) hard to read complex code;
56
+ # - (what i want (but it is not realized at all in this cop)):
57
+ # - an option like `EnforcedStyle: "no_space" / "need_space"`;
58
+ Enabled: false
59
+
60
+ RBS/Layout/SpaceBeforeColon:
61
+ Enabled: true
62
+
63
+ RBS/Layout/SpaceBeforeOverload:
64
+ Enabled: true
65
+
66
+ RBS/Layout/TrailingWhitespace:
67
+ Enabled: true
data/lib/rbs/lint.yml ADDED
@@ -0,0 +1,40 @@
1
+ RBS/Lint/AmbiguousKeywordArgumentKey:
2
+ Enabled: true
3
+
4
+ RBS/Lint/AmbiguousOperatorPrecedence:
5
+ Enabled: true
6
+
7
+ RBS/Lint/DuplicateOverload:
8
+ Enabled: true
9
+
10
+ RBS/Lint/LiteralIntersection:
11
+ Enabled: true
12
+
13
+ RBS/Lint/NewReturnsVoid:
14
+ Enabled: true
15
+
16
+ RBS/Lint/RestKeywordHash:
17
+ Enabled: true
18
+
19
+ RBS/Lint/Syntax:
20
+ Enabled: true
21
+
22
+ RBS/Lint/TopLevelInterface:
23
+ # NOTE: i want top level interfaces and it is ok.
24
+ Enabled: false
25
+
26
+ RBS/Lint/TopLevelTypeAlias:
27
+ # NOTE: i want top level aliases and it is ok.
28
+ Enabled: false
29
+
30
+ RBS/Lint/UnusedOverloadTypeParams:
31
+ Enabled: true
32
+
33
+ RBS/Lint/UnusedTypeAliasTypeParams:
34
+ Enabled: true
35
+
36
+ RBS/Lint/UselessAccessModifier:
37
+ Enabled: true
38
+
39
+ RBS/Lint/WillSyntaxError:
40
+ Enabled: true
data/lib/rbs/style.yml ADDED
@@ -0,0 +1,31 @@
1
+ RBS/Style/BlockReturnBoolish:
2
+ # NOTE: block can return bool too. confused cop.
3
+ Enabled: false
4
+
5
+ RBS/Style/ClassWithSingleton:
6
+ Enabled: true
7
+
8
+ RBS/Style/ClassicType:
9
+ # NOTE: i want TrueClass, FalseClass, NilClass and it is ok to define.
10
+ Enabled: false
11
+
12
+ RBS/Style/DuplicatedType:
13
+ Enabled: true
14
+
15
+ RBS/Style/EmptyArgument:
16
+ Enabled: true
17
+
18
+ RBS/Style/InitializeReturnType:
19
+ Enabled: true
20
+
21
+ RBS/Style/InstanceWithInstance:
22
+ Enabled: true
23
+
24
+ RBS/Style/OptionalNil:
25
+ Enabled: true
26
+
27
+ RBS/Style/RedundantParentheses:
28
+ Enabled: true
29
+
30
+ RBS/Style/TrueFalse:
31
+ Enabled: true
@@ -0,0 +1,12 @@
1
+ plugins:
2
+ - rubocop-rbs
3
+
4
+ inherit_from:
5
+ - ./rbs/style.yml
6
+ - ./rbs/lint.yml
7
+ - ./rbs/layout.yml
8
+
9
+ RBS:
10
+ Enabled: true
11
+ Include:
12
+ - "**/*.rbs"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: armitage-rubocop
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.75.7.4
4
+ version: 1.75.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rustam Ibragimov
@@ -121,6 +121,20 @@ dependencies:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
123
  version: 2.27.1
124
+ - !ruby/object:Gem::Dependency
125
+ name: rubocop-on-rbs
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - '='
129
+ - !ruby/object:Gem::Version
130
+ version: 1.7.0
131
+ type: :runtime
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - '='
136
+ - !ruby/object:Gem::Version
137
+ version: 1.7.0
124
138
  - !ruby/object:Gem::Dependency
125
139
  name: bundler
126
140
  requirement: !ruby/object:Gem::Requirement
@@ -194,6 +208,9 @@ files:
194
208
  - lib/common/rake.yml
195
209
  - lib/common/security.yml
196
210
  - lib/common/style.yml
211
+ - lib/rbs/layout.yml
212
+ - lib/rbs/lint.yml
213
+ - lib/rbs/style.yml
197
214
  - lib/rspec/capybara.yml
198
215
  - lib/rspec/factory_bot.yml
199
216
  - lib/rspec/rails.yml
@@ -201,6 +218,7 @@ files:
201
218
  - lib/rubocop.general.yml
202
219
  - lib/rubocop.rails.yml
203
220
  - lib/rubocop.rake.yml
221
+ - lib/rubocop.rbs.yml
204
222
  - lib/rubocop.rspec.yml
205
223
  homepage: https://github.com/0exp/armitage
206
224
  licenses: