rubocop-rubomatic 2.0.0 → 2.1.0
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/CHANGELOG.md +412 -0
- data/LICENSE +23 -17
- data/{README.adoc → README.md} +31 -32
- data/config/bundler.yml +1 -1
- data/config/layout.yml +6 -4
- data/config/lint.yml +50 -2
- data/config/metrics.yml +2 -2
- data/config/rspec.yml +13 -1
- data/config/rubocop.yml +2 -0
- data/config/style.yml +77 -8
- data/docs/cops/layout/README.md +7 -0
- data/docs/cops/layout/multiline_array_line_breaks/README.md +36 -0
- data/docs/cops/style/README.md +7 -0
- data/docs/cops/style/disallowed_methods/{README.adoc → README.md} +7 -8
- data/lib/rubocop/cop/rubomatic/generator/cop_readme_injector.rb +3 -3
- data/lib/rubocop/cop/rubomatic/generator/dept_readme_injector.rb +5 -5
- data/lib/rubocop/cop/rubomatic/generator.rb +26 -32
- data/lib/rubocop/cop/rubomatic/style/disallowed_methods.rb +4 -3
- data/lib/rubocop/rubomatic/plugin.rb +2 -2
- data/lib/rubocop/rubomatic/version.rb +4 -3
- metadata +31 -17
- data/CHANGELOG.adoc +0 -328
- data/docs/cops/layout/README.adoc +0 -7
- data/docs/cops/layout/multiline_array_line_breaks/README.adoc +0 -44
- data/docs/cops/style/README.adoc +0 -7
|
@@ -85,47 +85,41 @@ module RuboCop
|
|
|
85
85
|
RUBY
|
|
86
86
|
README_ADDED_MESSAGE = '[modify] A link for the %{dept_vs_cop} has been added into %{readme_file_path}.'
|
|
87
87
|
|
|
88
|
-
DEPT_README_TEMPLATE = <<~
|
|
89
|
-
|
|
88
|
+
DEPT_README_TEMPLATE = <<~MARKDOWN
|
|
89
|
+
# %{department}
|
|
90
90
|
|
|
91
91
|
Describe the department here
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
## Cops
|
|
94
94
|
|
|
95
|
-
|
|
96
|
-
COP_README_TEMPLATE = <<~
|
|
97
|
-
|
|
95
|
+
MARKDOWN
|
|
96
|
+
COP_README_TEMPLATE = <<~MARKDOWN
|
|
97
|
+
# `%{department}/%{cop_name}`
|
|
98
98
|
|
|
99
|
-
|
|
99
|
+
## Description
|
|
100
100
|
|
|
101
101
|
Add a description here
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
## Examples
|
|
104
104
|
|
|
105
|
-
|
|
106
|
-
----
|
|
105
|
+
```ruby
|
|
107
106
|
# Bad
|
|
108
107
|
# Add a bad example here
|
|
109
108
|
|
|
110
109
|
# Good
|
|
111
110
|
# Add a good example here
|
|
112
|
-
|
|
111
|
+
```
|
|
113
112
|
|
|
114
|
-
|
|
113
|
+
## Configurable Attributes
|
|
115
114
|
|
|
116
|
-
|
|
117
|
-
|
|
|
115
|
+
| Name | Default value | Configurable values |
|
|
116
|
+
| ---- | ------------- | ------------------- |
|
|
117
|
+
| Max | 120 | Integer |
|
|
118
118
|
|
|
119
|
-
|
|
120
|
-
|120
|
|
121
|
-
|Integer
|
|
122
|
-
|
|
123
|
-
|===
|
|
124
|
-
|
|
125
|
-
== References
|
|
119
|
+
## References
|
|
126
120
|
|
|
127
121
|
https://github.com/BrandsInsurance/expert-chainsaw/issues
|
|
128
|
-
|
|
122
|
+
MARKDOWN
|
|
129
123
|
|
|
130
124
|
# :nodoc:
|
|
131
125
|
def initialize(name, output: $stdout)
|
|
@@ -135,8 +129,8 @@ module RuboCop
|
|
|
135
129
|
raise(
|
|
136
130
|
[
|
|
137
131
|
'You must provide a single department under Rubomatic i.e. Rubomatic/Department/CopName',
|
|
138
|
-
'or Department/CopName'
|
|
139
|
-
].join(' ')
|
|
132
|
+
'or Department/CopName',
|
|
133
|
+
].join(' '),
|
|
140
134
|
)
|
|
141
135
|
end
|
|
142
136
|
|
|
@@ -182,12 +176,12 @@ module RuboCop
|
|
|
182
176
|
#
|
|
183
177
|
# @return [void]
|
|
184
178
|
#
|
|
185
|
-
def inject_dept_readme(readme_file_path: 'README.
|
|
179
|
+
def inject_dept_readme(readme_file_path: 'README.md')
|
|
186
180
|
# Add this dept to base readme if not already there
|
|
187
181
|
injector = DeptReadmeInjector.new(
|
|
188
182
|
readme_file_path: readme_file_path,
|
|
189
183
|
badge: badge,
|
|
190
|
-
department: department
|
|
184
|
+
department: department,
|
|
191
185
|
)
|
|
192
186
|
|
|
193
187
|
injector.inject_string do
|
|
@@ -205,7 +199,7 @@ module RuboCop
|
|
|
205
199
|
injector = CopReadmeInjector.new(
|
|
206
200
|
readme_file_path: readme_file_path,
|
|
207
201
|
badge: badge,
|
|
208
|
-
department: department
|
|
202
|
+
department: department,
|
|
209
203
|
)
|
|
210
204
|
|
|
211
205
|
injector.inject_string do
|
|
@@ -247,11 +241,11 @@ module RuboCop
|
|
|
247
241
|
format(template, {
|
|
248
242
|
department: department,
|
|
249
243
|
cop_name: badge.cop_name,
|
|
250
|
-
cop_folder: snake_case(badge.cop_name.to_s)
|
|
244
|
+
cop_folder: snake_case(badge.cop_name.to_s),
|
|
251
245
|
})
|
|
252
246
|
end
|
|
253
247
|
|
|
254
|
-
# Path to <department>/README.
|
|
248
|
+
# Path to <department>/README.md
|
|
255
249
|
#
|
|
256
250
|
# @return [String]
|
|
257
251
|
#
|
|
@@ -260,11 +254,11 @@ module RuboCop
|
|
|
260
254
|
'docs',
|
|
261
255
|
'cops',
|
|
262
256
|
snake_case(department),
|
|
263
|
-
'README.
|
|
257
|
+
'README.md',
|
|
264
258
|
)
|
|
265
259
|
end
|
|
266
260
|
|
|
267
|
-
# Path to <department>/<cop>/README.
|
|
261
|
+
# Path to <department>/<cop>/README.md
|
|
268
262
|
#
|
|
269
263
|
# @return [String]
|
|
270
264
|
#
|
|
@@ -274,7 +268,7 @@ module RuboCop
|
|
|
274
268
|
'cops',
|
|
275
269
|
snake_case(department),
|
|
276
270
|
snake_case(badge.cop_name.to_s),
|
|
277
|
-
'README.
|
|
271
|
+
'README.md',
|
|
278
272
|
)
|
|
279
273
|
end
|
|
280
274
|
end
|
|
@@ -11,7 +11,7 @@ module RuboCop
|
|
|
11
11
|
# For example
|
|
12
12
|
MESSAGES = {
|
|
13
13
|
abort: 'Use `#raise` instead of `#abort`.',
|
|
14
|
-
tap: 'Do not use `#tap`'
|
|
14
|
+
tap: 'Do not use `#tap`',
|
|
15
15
|
}.freeze
|
|
16
16
|
|
|
17
17
|
# `on_send` will only be called if the method name is in this list
|
|
@@ -24,7 +24,7 @@ module RuboCop
|
|
|
24
24
|
|
|
25
25
|
# @!method using_tap?(node)
|
|
26
26
|
def_node_matcher :using_tap?, <<~PATTERN
|
|
27
|
-
(
|
|
27
|
+
(call _ :tap ...)
|
|
28
28
|
PATTERN
|
|
29
29
|
|
|
30
30
|
# The main logic method of the cop
|
|
@@ -41,8 +41,9 @@ module RuboCop
|
|
|
41
41
|
|
|
42
42
|
return if message.nil?
|
|
43
43
|
|
|
44
|
-
add_offense(node, message: MESSAGES.fetch(message))
|
|
44
|
+
add_offense(node.loc.selector, message: MESSAGES.fetch(message))
|
|
45
45
|
end
|
|
46
|
+
alias on_csend on_send
|
|
46
47
|
end
|
|
47
48
|
end
|
|
48
49
|
end
|
|
@@ -12,7 +12,7 @@ module RuboCop
|
|
|
12
12
|
name: 'rubocop-rubomatic',
|
|
13
13
|
version: VERSION::STRING,
|
|
14
14
|
homepage: 'https://github.com/BrandsInsurance/rubocop-rubomatic/',
|
|
15
|
-
description: 'A collection of RuboCop cops to check for performance optimizations in Ruby code.'
|
|
15
|
+
description: 'A collection of RuboCop cops to check for performance optimizations in Ruby code.',
|
|
16
16
|
)
|
|
17
17
|
end
|
|
18
18
|
|
|
@@ -26,7 +26,7 @@ module RuboCop
|
|
|
26
26
|
LintRoller::Rules.new(
|
|
27
27
|
type: :path,
|
|
28
28
|
config_format: :rubocop,
|
|
29
|
-
value: Pathname.new(__dir__).join('../../../config/default.yml')
|
|
29
|
+
value: Pathname.new(__dir__).join('../../../config/default.yml'),
|
|
30
30
|
)
|
|
31
31
|
end
|
|
32
32
|
end
|
|
@@ -4,13 +4,14 @@ module RuboCop
|
|
|
4
4
|
module Rubomatic
|
|
5
5
|
module VERSION
|
|
6
6
|
MAJOR = 2
|
|
7
|
-
MINOR =
|
|
8
|
-
|
|
7
|
+
MINOR = 1
|
|
8
|
+
PATCH = 0
|
|
9
|
+
TINY = PATCH
|
|
9
10
|
|
|
10
11
|
# Set PRE to nil unless it's a pre-release (beta, rc, etc.)
|
|
11
12
|
PRE = nil
|
|
12
13
|
|
|
13
|
-
STRING = [MAJOR, MINOR,
|
|
14
|
+
STRING = [MAJOR, MINOR, PATCH, PRE].compact.join('.').freeze
|
|
14
15
|
|
|
15
16
|
# @return [String]
|
|
16
17
|
def self.to_s
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rubocop-rubomatic
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brands Insurance
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-10-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: lint_roller
|
|
@@ -30,14 +30,14 @@ dependencies:
|
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 1.
|
|
33
|
+
version: 1.92.0
|
|
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.
|
|
40
|
+
version: 1.92.0
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: rubocop-packaging
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -58,42 +58,56 @@ dependencies:
|
|
|
58
58
|
requirements:
|
|
59
59
|
- - "~>"
|
|
60
60
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: 1.
|
|
61
|
+
version: 1.27.0
|
|
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: 1.
|
|
68
|
+
version: 1.27.0
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: rubocop-rspec
|
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
|
72
72
|
requirements:
|
|
73
73
|
- - "~>"
|
|
74
74
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: 3.
|
|
75
|
+
version: 3.10.2
|
|
76
76
|
type: :runtime
|
|
77
77
|
prerelease: false
|
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
79
|
requirements:
|
|
80
80
|
- - "~>"
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: 3.
|
|
82
|
+
version: 3.10.2
|
|
83
83
|
- !ruby/object:Gem::Dependency
|
|
84
84
|
name: rubocop-thread_safety
|
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
|
86
86
|
requirements:
|
|
87
87
|
- - '='
|
|
88
88
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: 0.
|
|
89
|
+
version: 0.8.0
|
|
90
90
|
type: :runtime
|
|
91
91
|
prerelease: false
|
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
93
|
requirements:
|
|
94
94
|
- - '='
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: 0.
|
|
96
|
+
version: 0.8.0
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: rubydex
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - "~>"
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: 0.4.1
|
|
104
|
+
type: :runtime
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - "~>"
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: 0.4.1
|
|
97
111
|
description:
|
|
98
112
|
email:
|
|
99
113
|
- documents@brandsinsurance.com
|
|
@@ -101,9 +115,9 @@ executables: []
|
|
|
101
115
|
extensions: []
|
|
102
116
|
extra_rdoc_files: []
|
|
103
117
|
files:
|
|
104
|
-
- CHANGELOG.
|
|
118
|
+
- CHANGELOG.md
|
|
105
119
|
- LICENSE
|
|
106
|
-
- README.
|
|
120
|
+
- README.md
|
|
107
121
|
- config/bundler.yml
|
|
108
122
|
- config/default.yml
|
|
109
123
|
- config/gemspec.yml
|
|
@@ -122,10 +136,10 @@ files:
|
|
|
122
136
|
- config/security.yml
|
|
123
137
|
- config/style.yml
|
|
124
138
|
- config/thread_safety.yml
|
|
125
|
-
- docs/cops/layout/README.
|
|
126
|
-
- docs/cops/layout/multiline_array_line_breaks/README.
|
|
127
|
-
- docs/cops/style/README.
|
|
128
|
-
- docs/cops/style/disallowed_methods/README.
|
|
139
|
+
- docs/cops/layout/README.md
|
|
140
|
+
- docs/cops/layout/multiline_array_line_breaks/README.md
|
|
141
|
+
- docs/cops/style/README.md
|
|
142
|
+
- docs/cops/style/disallowed_methods/README.md
|
|
129
143
|
- lib/rubocop-rubomatic.rb
|
|
130
144
|
- lib/rubocop/cop/rubomatic/generator.rb
|
|
131
145
|
- lib/rubocop/cop/rubomatic/generator/cop_readme_injector.rb
|
|
@@ -144,7 +158,7 @@ metadata:
|
|
|
144
158
|
rubygems_mfa_required: 'true'
|
|
145
159
|
homepage_uri: https://github.com/BrandsInsurance/rubocop-rubomatic/
|
|
146
160
|
source_code_uri: https://github.com/BrandsInsurance/rubocop-rubomatic/tree/main
|
|
147
|
-
changelog_uri: https://github.com/BrandsInsurance/rubocop-rubomatic/blob/main/CHANGELOG.
|
|
161
|
+
changelog_uri: https://github.com/BrandsInsurance/rubocop-rubomatic/blob/main/CHANGELOG.md
|
|
148
162
|
post_install_message:
|
|
149
163
|
rdoc_options: []
|
|
150
164
|
require_paths:
|
data/CHANGELOG.adoc
DELETED
|
@@ -1,328 +0,0 @@
|
|
|
1
|
-
== 2.0.0 (2026-01-05)
|
|
2
|
-
|
|
3
|
-
=== BREAKING CHANGES
|
|
4
|
-
|
|
5
|
-
* Drop support for ruby < ``3.3.4``
|
|
6
|
-
|
|
7
|
-
=== Layout
|
|
8
|
-
|
|
9
|
-
* Enabled ``Layout/EmptyLinesAfterModuleInclusion``
|
|
10
|
-
* Added ``Layout/LineLength`` options:
|
|
11
|
-
** ``AllowQualifiedName: true``
|
|
12
|
-
** ``SplitStrings: true``
|
|
13
|
-
** ``AllowRBSInlineAnnotation: false``
|
|
14
|
-
|
|
15
|
-
=== Style
|
|
16
|
-
|
|
17
|
-
* Enabled ``Style/ModuleMemberExistenceCheck``
|
|
18
|
-
* Added ``IncludedMacroPatterns: [ ]`` to ``Style/MethodCallWithArgsParentheses``
|
|
19
|
-
* Enabled ``Style/ArrayIntersectWithSingleElement``
|
|
20
|
-
* Added ``0.0.0.0`` and ``127.0.0.1`` to ``Style/IpAddresses/AllowedAddresses``
|
|
21
|
-
* Added ``DefaultToNil: false`` to ``Style/FetchEnvVar``
|
|
22
|
-
* Use ``diff_comma`` for ``Style/TrailingCommaInArguments``, ``Style/TrailingCommaInArrayLiteral``, and ``Style/TrailingCommaInHashLiteral``
|
|
23
|
-
|
|
24
|
-
=== RSpec
|
|
25
|
-
|
|
26
|
-
* Enabled ``RSpec/LeakyLocalVariable``
|
|
27
|
-
* Disabled ``RSpec/MultipleExpectations``
|
|
28
|
-
* Increased ``RSpec/NestedGroups/Max`` from 3 to 5
|
|
29
|
-
* Increased ``RSpec/MultipleMemoizedHelpers/Max`` from 5 to 10
|
|
30
|
-
|
|
31
|
-
=== Gemspec
|
|
32
|
-
|
|
33
|
-
* Enabled ``Gemspec/AttributeAssignment`` (in gemspec_on.yml)
|
|
34
|
-
|
|
35
|
-
== 1.6.3 (2025-06-18)
|
|
36
|
-
|
|
37
|
-
* Missing inclusion of ``config/rspec.yml``
|
|
38
|
-
|
|
39
|
-
== 1.6.2 (2025-06-18)
|
|
40
|
-
|
|
41
|
-
* Updated to ``rubocop 1.76.2``
|
|
42
|
-
** Set defaults for ``Naming/PredicateMethod/AllowBangMethods``
|
|
43
|
-
|
|
44
|
-
== 1.6.1 (2025-06-13)
|
|
45
|
-
|
|
46
|
-
* Changed ``ENV['RUBY_MAJOR']`` to ``ENV['RUBY_VERSION']``
|
|
47
|
-
|
|
48
|
-
== 1.6.0 (2025-06-12)
|
|
49
|
-
|
|
50
|
-
* Upgrade to ``ruobcop 1.76.1``
|
|
51
|
-
** This includes the change from ``require:`` to ``plugins:``.
|
|
52
|
-
While ``require:`` will still work, there will be a deprecation warning
|
|
53
|
-
** Set
|
|
54
|
-
*** ``Layout/LeadingCommentSpace/AllowSteepAnnotation`` to ``false``
|
|
55
|
-
*** ``Lint/DuplicateBranch/IgnoreDuplicateElseBranch`` to ``true``
|
|
56
|
-
** Enabled
|
|
57
|
-
*** ``Lint/ArrayLiteralInRegexp``
|
|
58
|
-
*** ``Lint/ConstantReassignment``
|
|
59
|
-
*** ``Lint/CopDirectiveSyntax``
|
|
60
|
-
*** ``Lint/DuplicateSetElement``
|
|
61
|
-
*** ``Lint/HashNewWithKeywordArgumentsAsDefault``
|
|
62
|
-
*** ``Lint/NumericOperationWithConstantResult``
|
|
63
|
-
*** ``Lint/RedundantTypeConversion``
|
|
64
|
-
*** ``Lint/SharedMutableDefault``
|
|
65
|
-
*** ``Lint/SuppressedExceptionInNumberConversion``
|
|
66
|
-
*** ``Lint/UnescapedBracketInRegexp``
|
|
67
|
-
*** ``Lint/UselessConstantScoping``
|
|
68
|
-
*** ``Lint/UselessDefaultValueArgument``
|
|
69
|
-
*** ``Lint/UselessDefined``
|
|
70
|
-
*** ``Lint/UselessNumericOperation``
|
|
71
|
-
*** ``Lint/UselessOr``
|
|
72
|
-
*** ``Naming/PredicateMethod``
|
|
73
|
-
*** ``Style/AmbiguousEndlessMethodDefinition``
|
|
74
|
-
*** ``Style/BitwisePredicate``
|
|
75
|
-
*** ``Style/ComparableBetween``
|
|
76
|
-
*** ``Style/CombinableDefined``
|
|
77
|
-
*** ``Style/DigChain``
|
|
78
|
-
*** ``Style/EmptyStringInsideInterpolation``
|
|
79
|
-
*** ``Style/FileNull``
|
|
80
|
-
*** ``Style/FileTouch``
|
|
81
|
-
*** ``Style/HashFetchChain``
|
|
82
|
-
*** ``Style/HashSlice``
|
|
83
|
-
*** ``Style/ItAssignment``
|
|
84
|
-
*** ``Style/ItBlockParameter``
|
|
85
|
-
*** ``Style/KeywordArgumentsMergin``
|
|
86
|
-
*** ``Style/RedundantArrayFlatten``
|
|
87
|
-
*** ``Style/RedundantFormat``
|
|
88
|
-
*** ``Style/RedundantInterpolationUnfreeze``
|
|
89
|
-
** Disabled ``Style/SafeNavigationChainLength``
|
|
90
|
-
* Added ``rack_attack.rb`` to exclude list for ``Style/IpAddresses``
|
|
91
|
-
* Upgraded to ``rubocop-performance 1.25.0``
|
|
92
|
-
** Enabled
|
|
93
|
-
*** ``Performance/StringBytesize``
|
|
94
|
-
*** ``Performance/ZipWithoutBlock``
|
|
95
|
-
* Added ``rubocop-packaging 0.6.0``
|
|
96
|
-
** Enabled ``Packaging/GemspecGit``
|
|
97
|
-
* Added ``rubocop-rspec 3.6.0``
|
|
98
|
-
** Did **not** enable
|
|
99
|
-
*** ``RSpec/AlignLeftLetBrace``
|
|
100
|
-
*** ``RSpec/AlignRightLetBrace``
|
|
101
|
-
*** ``RSpec/Dialect``
|
|
102
|
-
*** ``RSpec/Pending``
|
|
103
|
-
** Enabled
|
|
104
|
-
*** ``RSpec/AnyInstance``
|
|
105
|
-
*** ``RSpec/AroundBlock``
|
|
106
|
-
*** ``RSpec/Be``
|
|
107
|
-
*** ``RSpec/BeEmpty``
|
|
108
|
-
*** ``RSpec/BeEq``
|
|
109
|
-
*** ``RSpec/BeEql``
|
|
110
|
-
*** ``RSpec/BeNil``
|
|
111
|
-
*** ``RSpec/BeforeAfterAll``
|
|
112
|
-
*** ``RSpec/ChangeByZero``
|
|
113
|
-
*** ``RSpec/ClassCheck``
|
|
114
|
-
*** ``RSpec/ContainExactly``
|
|
115
|
-
*** ``RSpec/ContextMethod``
|
|
116
|
-
*** ``RSpec/ContextWording``
|
|
117
|
-
*** ``RSpec/DescribeClass``
|
|
118
|
-
*** ``RSpec/DescribeMethod``
|
|
119
|
-
*** ``RSpec/DescribeSymbol``
|
|
120
|
-
*** ``RSpec/DescribedClass``
|
|
121
|
-
*** ``RSpec/DescribedClassModuleWrapping``
|
|
122
|
-
*** ``RSpec/DuplicatedMetadata``
|
|
123
|
-
*** ``RSpec/EmptyExampleGroup``
|
|
124
|
-
*** ``RSpec/EmptyHook``
|
|
125
|
-
*** ``RSpec/EmptyLineAfterExample``
|
|
126
|
-
*** ``RSpec/EmptyLineAfterExampleGroup``
|
|
127
|
-
*** ``RSpec/EmptyLineAfterFinalLet``
|
|
128
|
-
*** ``RSpec/EmptyLineAfterHook``
|
|
129
|
-
*** ``RSpec/EmptyLineAfterSubject``
|
|
130
|
-
*** ``RSpec/EmptyMetadata``
|
|
131
|
-
*** ``RSpec/EmptyOutput``
|
|
132
|
-
*** ``RSpec/Eq``
|
|
133
|
-
*** ``RSpec/ExampleLength``
|
|
134
|
-
*** ``RSpec/ExampleWithoutDescription``
|
|
135
|
-
*** ``RSpec/ExampleWording``
|
|
136
|
-
*** ``RSpec/ExcessiveDocstringSpacing``
|
|
137
|
-
*** ``RSpec/ExpectActual``
|
|
138
|
-
*** ``RSpec/ExpectChange``
|
|
139
|
-
*** ``RSpec/ExpectInHook``
|
|
140
|
-
*** ``RSpec/ExpectInLet``
|
|
141
|
-
*** ``RSpec/ExpectOutput``
|
|
142
|
-
*** ``RSpec/Focus``
|
|
143
|
-
*** ``RSpec/HookArgument``
|
|
144
|
-
*** ``RSpec/HooksBeforeExamples``
|
|
145
|
-
*** ``RSpec/IdenticalEqualityAssertion``
|
|
146
|
-
*** ``RSpec/ImplicitBlockExpectation``
|
|
147
|
-
*** ``RSpec/ImplicitExpect``
|
|
148
|
-
*** ``RSpec/ImplicitSubject``
|
|
149
|
-
*** ``RSpec/IncludeExamples``
|
|
150
|
-
*** ``RSpec/IndexedLet``
|
|
151
|
-
*** ``RSpec/InstanceSpy``
|
|
152
|
-
*** ``RSpec/InstanceVariable``
|
|
153
|
-
*** ``RSpec/IsExpectedSpecify``
|
|
154
|
-
*** ``RSpec/ItBehavesLike``
|
|
155
|
-
*** ``RSpec/IteratedExpectation``
|
|
156
|
-
*** ``RSpec/LeadingSubject``
|
|
157
|
-
*** ``RSpec/LeakyConstantDeclaration``
|
|
158
|
-
*** ``RSpec/LetBeforeExamples``
|
|
159
|
-
*** ``RSpec/LetSetup``
|
|
160
|
-
*** ``RSpec/MatchArray``
|
|
161
|
-
*** ``RSpec/MessageChain``
|
|
162
|
-
*** ``RSpec/MessageExpectation``
|
|
163
|
-
*** ``RSpec/MessageSpies``
|
|
164
|
-
*** ``RSpec/MetadataStyle``
|
|
165
|
-
*** ``RSpec/MissingExampleGroupArgument``
|
|
166
|
-
*** ``RSpec/MissingExpectationTargetMethod``
|
|
167
|
-
*** ``RSpec/MultipleDescribes``
|
|
168
|
-
*** ``RSpec/MultipleExpectations``
|
|
169
|
-
*** ``RSpec/MultipleMemoizedHelpers``
|
|
170
|
-
*** ``RSpec/MultipleSubjects``
|
|
171
|
-
*** ``RSpec/NamedSubject``
|
|
172
|
-
*** ``RSpec/NestedGroups``
|
|
173
|
-
*** ``RSpec/NoExpectationExample``
|
|
174
|
-
*** ``RSpec/NotToNot``
|
|
175
|
-
*** ``RSpec/OverwritingSetup``
|
|
176
|
-
*** ``RSpec/PendingWithoutReason``
|
|
177
|
-
*** ``RSpec/PredicateMatcher``
|
|
178
|
-
*** ``RSpec/ReceiveCounts``
|
|
179
|
-
*** ``RSpec/ReceiveMessages``
|
|
180
|
-
*** ``RSpec/ReceiveNever``
|
|
181
|
-
*** ``RSpec/RedundantAround``
|
|
182
|
-
*** ``RSpec/RedundantPredicateMatcher``
|
|
183
|
-
*** ``RSpec/RemoveConst``
|
|
184
|
-
*** ``RSpec/RepeatedDescription``
|
|
185
|
-
*** ``RSpec/RepeatedExample``
|
|
186
|
-
*** ``RSpec/RepeatedExampleGroupBody``
|
|
187
|
-
*** ``RSpec/RepeatedExampleGroupDescription``
|
|
188
|
-
*** ``RSpec/RepeatedIncludeExample``
|
|
189
|
-
*** ``RSpec/RepeatedSubjectCall``
|
|
190
|
-
*** ``RSpec/ReturnFromStub``
|
|
191
|
-
*** ``RSpec/ScatteredLet``
|
|
192
|
-
*** ``RSpec/ScatteredSetup``
|
|
193
|
-
*** ``RSpec/SharedContext``
|
|
194
|
-
*** ``RSpec/SharedExamples``
|
|
195
|
-
*** ``RSpec/SingleArgumentMessageChain``
|
|
196
|
-
*** ``RSpec/SkipBlockInsideExample``
|
|
197
|
-
*** ``RSpec/SortMetadata``
|
|
198
|
-
*** ``RSpec/SpecFilePathFormat``
|
|
199
|
-
*** ``RSpec/SpecFilePathSuffix``
|
|
200
|
-
*** ``RSpec/StubbedMock``
|
|
201
|
-
*** ``RSpec/SubjectDeclaration``
|
|
202
|
-
*** ``RSpec/SubjectStub``
|
|
203
|
-
*** ``RSpec/UndescriptiveLiteralsDescription``
|
|
204
|
-
*** ``RSpec/UnspecifiedException``
|
|
205
|
-
*** ``RSpec/VariableDefinition``
|
|
206
|
-
*** ``RSpec/VariableName``
|
|
207
|
-
*** ``RSpec/VerifiedDoubleReference``
|
|
208
|
-
*** ``RSpec/VerifiedDoubles``
|
|
209
|
-
*** ``RSpec/VoidExpect``
|
|
210
|
-
*** ``RSpec/Yield``
|
|
211
|
-
* Added ``rubocop-thread_safety 0.7.2``
|
|
212
|
-
** Enabled
|
|
213
|
-
*** ``ThreadSafety/ClassAndModuleAttributes``
|
|
214
|
-
*** ``ThreadSafety/ClassInstanceVariable``
|
|
215
|
-
*** ``ThreadSafety/DirChdir``
|
|
216
|
-
*** ``ThreadSafety/MutableClassInstanceVariable``
|
|
217
|
-
*** ``ThreadSafety/NewThread``
|
|
218
|
-
*** ``ThreadSafety/RackMiddlewareInstanceVariable``
|
|
219
|
-
|
|
220
|
-
== 1.5.1 (2024-10-22)
|
|
221
|
-
|
|
222
|
-
=== Misc
|
|
223
|
-
|
|
224
|
-
* Move runtime dependencies back into the gemspec
|
|
225
|
-
|
|
226
|
-
== 1.5.0 (2024-10-22)
|
|
227
|
-
|
|
228
|
-
=== Cops
|
|
229
|
-
|
|
230
|
-
* Add new ``Style/MapIntoArray`` cop
|
|
231
|
-
* Add ``class_singleton`` to ``Layout/ClassStructure`` cop
|
|
232
|
-
* Add ``Style/SendWithLiteralMethodName`` cop
|
|
233
|
-
* Add ``Style/SuperArguments`` cop
|
|
234
|
-
* Add ``Gemspec/AddRuntimeDependency`` cop
|
|
235
|
-
* Add ``Gemspec/DevelopmentDependencies`` cop
|
|
236
|
-
|
|
237
|
-
=== Options
|
|
238
|
-
|
|
239
|
-
* Update ``Style/AccessModifierDeclarations`` cop options
|
|
240
|
-
** ``AllowModifiersOnSymbols: false``
|
|
241
|
-
** ``AllowModifiersOnAttrs: false``
|
|
242
|
-
* Update ``Style/DocumentationMethod`` cop options
|
|
243
|
-
** Add ``AllowedMethods`` option with defaults of:
|
|
244
|
-
*** ``method_missing``
|
|
245
|
-
*** ``respond_to_missing?``
|
|
246
|
-
|
|
247
|
-
=== Dependencies
|
|
248
|
-
|
|
249
|
-
* ``rubocop@1.65.1``
|
|
250
|
-
* ``rubocop-performance@1.22.1``
|
|
251
|
-
* ``rake@13.0.6``
|
|
252
|
-
* ``rspec@3.13.0``
|
|
253
|
-
* ``parser@3.3.4.2``
|
|
254
|
-
|
|
255
|
-
=== Misc
|
|
256
|
-
|
|
257
|
-
* Moved all gem dependencies to ``Gemfile``
|
|
258
|
-
|
|
259
|
-
== 1.4.0
|
|
260
|
-
|
|
261
|
-
=== Cops
|
|
262
|
-
|
|
263
|
-
* Added new ``Lint/ItWithoutArgumentsInBlock`` cop
|
|
264
|
-
* Added new ``Style/ArrayFirstLast`` cop
|
|
265
|
-
* Added new ``Style/SuperWithArgsParentheses`` cop
|
|
266
|
-
* Added new ``Lint/LiteralAssignmentInCondition`` cop
|
|
267
|
-
* Added new ``Style/SingleLineDoEndBlock`` cop
|
|
268
|
-
* Added new ``Performance/MapMethodChain`` cop
|
|
269
|
-
|
|
270
|
-
=== Options
|
|
271
|
-
|
|
272
|
-
* Added ``UseAnonymousForwarding: true`` to ``Style/ArgumentsForwarding``, but only for ruby 3.2+
|
|
273
|
-
|
|
274
|
-
== 1.3.0
|
|
275
|
-
|
|
276
|
-
=== Cops
|
|
277
|
-
|
|
278
|
-
* Added new ``Bundler/DuplicatedGroup`` cop
|
|
279
|
-
* Removed ``SafeAutoCorrect`` key from all cops
|
|
280
|
-
|
|
281
|
-
=== Options
|
|
282
|
-
|
|
283
|
-
* Added ``./\**/*.json.jbuilder`` to ``Exclude`` list for ``Performance/MultilineAssignmentLayout``
|
|
284
|
-
|
|
285
|
-
=== Dependencies
|
|
286
|
-
|
|
287
|
-
* ``rubocop@1.56.0``
|
|
288
|
-
|
|
289
|
-
== 1.2.0
|
|
290
|
-
|
|
291
|
-
=== Cops
|
|
292
|
-
|
|
293
|
-
* `Metrics/BlockLength/Exclude` add route files
|
|
294
|
-
|
|
295
|
-
== 1.1.0
|
|
296
|
-
|
|
297
|
-
=== Cops
|
|
298
|
-
|
|
299
|
-
* `Lint/DuplicateMatchPattern`
|
|
300
|
-
* `Lint/MixedCaseRange`
|
|
301
|
-
* `Lint/RedundantRegexpQuantifiers`
|
|
302
|
-
* `Performance/RedundantEqualityComparisonBlock/AllowRegexpMatch` added
|
|
303
|
-
* `Style/ExactRegexpMatch`
|
|
304
|
-
* `Style/MethodCallWithArgsParentheses/Exclude` added `Gemfile`
|
|
305
|
-
* `Style/MultipleComparison/ComparisonsThreshold` added with `2`
|
|
306
|
-
* `Style/RedundantArrayConstructor`
|
|
307
|
-
* `Style/RedundantCurrentDirectoryInPath`
|
|
308
|
-
* `Style/RedundantFilterChain`
|
|
309
|
-
* `Style/RedundantRegexpArgument`
|
|
310
|
-
* `Style/RedundantRegexpConstructor`
|
|
311
|
-
* `Style/ReturnNilInPredicateMethodDefinition`
|
|
312
|
-
* `Style/YAMLFileRead`
|
|
313
|
-
|
|
314
|
-
=== Dependencies
|
|
315
|
-
|
|
316
|
-
* `rubocop@1.53.0`
|
|
317
|
-
* `rubocop-performance@1.18.0`
|
|
318
|
-
|
|
319
|
-
== 1.0.0
|
|
320
|
-
|
|
321
|
-
* Initial merging migration
|
|
322
|
-
** Replaced rubomatic
|
|
323
|
-
** Replaced rubocop-brands_insurance
|
|
324
|
-
|
|
325
|
-
=== Dependencies
|
|
326
|
-
|
|
327
|
-
* `rubocop@1.49.0`
|
|
328
|
-
* `rubocop-performance@1.16.0`
|