gitlab-styles 5.3.0 → 6.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 53b2719f9b6600bdfd8b362ad363f86f35dbae708f8ebd41f1ef2e2429d4c4f0
4
- data.tar.gz: f480238835c2218118ea34ac3ebf2869e2386e500304530fd08a112701175845
3
+ metadata.gz: c3dfc98241b9f277b993b5a8e599903c804202bf1324e5770463f7f0f85dee91
4
+ data.tar.gz: 0d52074c0f1b5679c777e290094b36a2b2ecc473a3239e406134d1c014614cf4
5
5
  SHA512:
6
- metadata.gz: f5d87f035504e911546c7aaaaad23bac44035f65848d0a3c74cf284bdddd4e8f460c6da7e4766ee9465f75051d38d5e1d3c4b674bc910ce320204e356a9f3622
7
- data.tar.gz: b97be714bb886604639de5d788284b0c8af1b081ce279c8a5fdf6dafff9b2aeee83060576f0ce0322bb49168ccdc58a4abafd0de13442425d705523d9d6a6a5d
6
+ metadata.gz: 2e644dfd8ee68ec0700f5953d65fc0c6b2e535b20779e317178360b5879fa174f3c9d44077cdf0dee2bb28b79054d053ff8673b2c609dc4bd7262bd38566b428
7
+ data.tar.gz: dc9fbcf0d42ed4b8ce6e9dd05348068aa3478d987b03fc4306d6e0b55893b619de5b0e0830285f9f2f59bcc38e02be9b61046523a20b3c46b049ce52b93cf1e4
data/.gitlab-ci.yml CHANGED
@@ -14,8 +14,8 @@ workflow:
14
14
  rules:
15
15
  # For merge requests, create a pipeline.
16
16
  - if: '$CI_MERGE_REQUEST_IID'
17
- # For `master` branch, create a pipeline (this includes on schedules, pushes, merges, etc.).
18
- - if: '$CI_COMMIT_BRANCH == "master"'
17
+ # For the default branch, create a pipeline (this includes on schedules, pushes, merges, etc.).
18
+ - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
19
19
  # For tags, create a pipeline.
20
20
  - if: '$CI_COMMIT_TAG'
21
21
 
data/.rubocop.yml CHANGED
@@ -3,3 +3,8 @@ inherit_from:
3
3
 
4
4
  require:
5
5
  - rubocop/cop/internal_affairs
6
+
7
+ InternalAffairs/DeprecateCopHelper:
8
+ Enabled: true
9
+ Include:
10
+ - spec/**/*.rb
data/Gemfile CHANGED
@@ -7,7 +7,7 @@ gemspec
7
7
 
8
8
  group :test do
9
9
  # Pin these dependencies, otherwise a new rule could break the CI pipelines
10
- gem 'rubocop', '0.89.1'
10
+ gem 'rubocop', '0.91.1'
11
11
  gem 'rubocop-rspec', '1.44.1'
12
12
  gem 'rspec-parameterized', '0.4.2', require: false
13
13
  end
@@ -22,10 +22,10 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
 
25
- spec.add_dependency 'rubocop', '~> 0.89.1'
26
- spec.add_dependency 'rubocop-gitlab-security', '~> 0.1.0'
27
- spec.add_dependency 'rubocop-performance', '~> 1.8.1'
28
- spec.add_dependency 'rubocop-rails', '~> 2.8'
25
+ spec.add_dependency 'rubocop', '~> 0.91', '>= 0.91.1'
26
+ spec.add_dependency 'rubocop-gitlab-security', '~> 0.1.1'
27
+ spec.add_dependency 'rubocop-performance', '~> 1.9.2'
28
+ spec.add_dependency 'rubocop-rails', '~> 2.9'
29
29
  spec.add_dependency 'rubocop-rspec', '~> 1.44'
30
30
 
31
31
  spec.add_development_dependency 'bundler', '~> 2.1'
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Auto-require all cops under `gitlab/styles/rubocop/cop/**/*.rb`
4
4
  cops_glob = File.join(__dir__, 'rubocop', 'cop', '**', '*.rb')
5
- Dir[cops_glob].sort.each(&method(:require))
5
+ Dir[cops_glob].sort.each { |cop| require(cop) }
6
6
 
7
7
  module Gitlab
8
8
  module Styles
@@ -44,7 +44,6 @@ module Gitlab
44
44
  ids: false,
45
45
  includes: true,
46
46
  joins: true,
47
- limit: true,
48
47
  lock: false,
49
48
  many?: false,
50
49
  offset: true,
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Gitlab
4
+ module Styles
5
+ module Rubocop
6
+ module Cop
7
+ module InternalAffairs
8
+ # Cop that denies the use of CopHelper.
9
+ class DeprecateCopHelper < RuboCop::Cop::Cop
10
+ MSG = 'Do not use `CopHelper` or methods from it, use improved patterns described in https://www.rubydoc.info/gems/rubocop/RuboCop/RSpec/ExpectOffense'
11
+
12
+ def_node_matcher :cop_helper, <<~PATTERN
13
+ (send nil? ${:include :extend :prepend}
14
+ (const _ {:CopHelper}))
15
+ PATTERN
16
+
17
+ def_node_search :cop_helper_method, <<~PATTERN
18
+ (send nil? {:inspect_source :inspect_source_file :parse_source :autocorrect_source_file :autocorrect_source :_investigate} ...)
19
+ PATTERN
20
+
21
+ def_node_search :cop_helper_method_on_instance, <<~PATTERN
22
+ (send (send nil? _) {:messages :highlights :offenses} ...)
23
+ PATTERN
24
+
25
+ def on_send(node)
26
+ cop_helper(node) do
27
+ add_offense(node)
28
+ end
29
+
30
+ cop_helper_method(node) do
31
+ add_offense(node)
32
+ end
33
+
34
+ cop_helper_method_on_instance(node) do
35
+ add_offense(node)
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rubocop-rspec'
4
+ require_relative 'base'
5
+
6
+ module Gitlab
7
+ module Styles
8
+ module Rubocop
9
+ module Cop
10
+ module RSpec
11
+ # Checks if there is an empty line after the last `let_it_be` block.
12
+ #
13
+ # @example
14
+ # # bad
15
+ # let_it_be(:foo) { bar }
16
+ # let_it_be(:something) { other }
17
+ # it { does_something }
18
+ #
19
+ # # good
20
+ # let_it_be(:foo) { bar }
21
+ # let_it_be(:something) { other }
22
+ #
23
+ # it { does_something }
24
+ class EmptyLineAfterFinalLetItBe < Base
25
+ extend RuboCop::Cop::AutoCorrector
26
+ include RuboCop::RSpec::EmptyLineSeparation
27
+
28
+ MSG = 'Add an empty line after the last `let_it_be`.'
29
+
30
+ def_node_matcher :let_it_be?, <<-PATTERN
31
+ {
32
+ (block (send #rspec? {:let_it_be :let_it_be_with_refind :let_it_be_with_reload} ...) ...)
33
+ (send #rspec? {:let_it_be :let_it_be_with_refind :let_it_be_with_reload} _ block_pass)
34
+ }
35
+ PATTERN
36
+
37
+ def on_block(node)
38
+ return unless example_group_with_body?(node)
39
+
40
+ final_let_it_be = node.body.child_nodes.reverse.find { |child| let_it_be?(child) }
41
+
42
+ return if final_let_it_be.nil?
43
+
44
+ missing_separating_line_offense(final_let_it_be) { MSG }
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -52,7 +52,7 @@ module Gitlab
52
52
 
53
53
  def invalid_metadata_matches(node, &block)
54
54
  include_metadata(node) do |matches|
55
- matches.select(&method(:invalid_metadata?)).each(&block)
55
+ matches.select { |match| invalid_metadata?(match) }.each(&block)
56
56
  end
57
57
  end
58
58
 
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Gitlab
4
+ module Styles
5
+ module Rubocop
6
+ module Cop
7
+ module Style
8
+ # This cop identifies places where `map { ... }.to_h` or
9
+ # `Hash[map { ... }]` can be replaced with `to_h { ... }`,
10
+ # saving an intermediate array allocation.
11
+ #
12
+ # @example
13
+ # # bad
14
+ # hash.map { |k, v| [v.upcase, k.downcase] }.to_h
15
+ # hash.collect { |k, v| [v.upcase, k.downcase] }.to_h
16
+ # Hash[hash.map { |k, v| [v.upcase, k.downcase] }]
17
+ # Hash[hash.collect { |k, v| [v.upcase, k.downcase] }]
18
+ # array.map { |x| [x, x + 1] }.to_h
19
+ #
20
+ # # good
21
+ # hash.to_h { |k, v| [v.upcase, k.downcase] }
22
+ # array.to_h { |x| [x, x + 1] }
23
+ #
24
+ # Full credit: https://github.com/eugeneius/rubocop-performance/blob/hash_transformation/lib/rubocop/cop/performance/hash_transformation.rb
25
+ class HashTransformation < RuboCop::Cop::Cop
26
+ include RuboCop::Cop::RangeHelp
27
+
28
+ MSG = 'Use `to_h { ... }` instead of `%<current>s`.'
29
+
30
+ def_node_matcher :to_h_candidate?, <<~PATTERN
31
+ {
32
+ [(send
33
+ $(block $(send _ {:map :collect}) ...) :to_h) !block_literal?]
34
+ (send (const nil? :Hash) :[]
35
+ $(block $(send _ {:map :collect}) ...))
36
+ }
37
+ PATTERN
38
+
39
+ def on_send(node)
40
+ to_h_candidate?(node) do |_block, call|
41
+ range = offense_range(node, call)
42
+ message = message(node, call)
43
+ add_offense(node, location: range, message: message)
44
+ end
45
+ end
46
+
47
+ def autocorrect(node)
48
+ block, call = to_h_candidate?(node)
49
+
50
+ lambda do |corrector|
51
+ corrector.remove(after_block(node, block))
52
+ corrector.replace(call.loc.selector, 'to_h')
53
+ corrector.remove(before_block(node, block))
54
+ end
55
+ end
56
+
57
+ private
58
+
59
+ def offense_range(node, call)
60
+ return node.source_range if node.children.first.const_type?
61
+
62
+ range_between(call.loc.selector.begin_pos, node.loc.selector.end_pos)
63
+ end
64
+
65
+ def message(node, call)
66
+ current = if node.children.first.const_type?
67
+ "Hash[#{call.method_name} { ... }]"
68
+ else
69
+ "#{call.method_name} { ... }.to_h"
70
+ end
71
+
72
+ format(MSG, current: current)
73
+ end
74
+
75
+ def after_block(node, block)
76
+ block.source_range.end.join(node.source_range.end)
77
+ end
78
+
79
+ def before_block(node, block)
80
+ node.source_range.begin.join(block.source_range.begin)
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
@@ -9,7 +9,8 @@ module Gitlab
9
9
  module Helpers
10
10
  include RuboCop::RSpec::Language
11
11
 
12
- LET = SelectorSet.new(%i[let_it_be]) + RuboCop::RSpec::Language::Helpers::ALL
12
+ LET_IT_BE_HELPERS = SelectorSet.new(%i[let_it_be let_it_be_with_refind let_it_be_with_reload])
13
+ LET = LET_IT_BE_HELPERS + RuboCop::RSpec::Language::Helpers::ALL
13
14
  end
14
15
  end
15
16
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Gitlab
4
4
  module Styles
5
- VERSION = '5.3.0'
5
+ VERSION = '6.2.1'
6
6
  end
7
7
  end
@@ -1,3 +1,7 @@
1
+ ---
2
+ require:
3
+ - ./lib/gitlab/styles/rubocop
4
+
1
5
  # Denies the use of ActiveRecord methods outside of configured
2
6
  # excluded directories
3
7
  # Directories that allow the use of the denied methods.
data/rubocop-default.yml CHANGED
@@ -20,3 +20,6 @@ inherit_from:
20
20
  - rubocop-rspec.yml
21
21
  - rubocop-security.yml
22
22
  - rubocop-style.yml
23
+
24
+ InternalAffairs/DeprecateCopHelper:
25
+ Enabled: false
data/rubocop-layout.yml CHANGED
@@ -12,6 +12,9 @@ Layout/ArrayAlignment:
12
12
  Layout/AssignmentIndentation:
13
13
  Enabled: true
14
14
 
15
+ Layout/BeginEndAlignment: # (new in 0.91)
16
+ Enabled: true
17
+
15
18
  # Align block ends correctly.
16
19
  Layout/BlockAlignment:
17
20
  Enabled: true
data/rubocop-lint.yml CHANGED
@@ -28,6 +28,9 @@ Lint/BinaryOperatorWithIdenticalOperands:
28
28
  Lint/CircularArgumentReference:
29
29
  Enabled: true
30
30
 
31
+ Lint/ConstantDefinitionInBlock: # (new in 0.91)
32
+ Enabled: true
33
+
31
34
  # Check for debugger calls.
32
35
  Lint/Debugger:
33
36
  Enabled: true
@@ -47,6 +50,9 @@ Lint/DeprecatedOpenSSLConstant:
47
50
  Lint/DuplicateElsifCondition:
48
51
  Enabled: true
49
52
 
53
+ Lint/DuplicateRequire: # (new in 0.90)
54
+ Enabled: true
55
+
50
56
  # Checks that there are no repeated exceptions used in 'rescue' expressions.
51
57
  # https://docs.rubocop.org/rubocop/0.89/cops_lint.html#lintduplicaterescueexception
52
58
  Lint/DuplicateRescueException:
@@ -69,6 +75,9 @@ Lint/EmptyConditionalBody:
69
75
  Lint/EmptyEnsure:
70
76
  Enabled: true
71
77
 
78
+ Lint/EmptyFile: # (new in 0.90)
79
+ Enabled: true
80
+
72
81
  # Checks for the presence of `when` branches without a body.
73
82
  Lint/EmptyWhen:
74
83
  Enabled: true
@@ -94,6 +103,9 @@ Lint/FloatOutOfRange:
94
103
  Lint/FormatParameterMismatch:
95
104
  Enabled: true
96
105
 
106
+ Lint/IdentityComparison: # (new in 0.91)
107
+ Enabled: true
108
+
97
109
  # Checks for adjacent string literals on the same line, which could better be
98
110
  # represented as a single string literal.
99
111
  Lint/ImplicitStringConcatenation:
@@ -200,6 +212,9 @@ Lint/SuppressedException:
200
212
  Lint/TopLevelReturnWithArgument:
201
213
  Enabled: true
202
214
 
215
+ Lint/TrailingCommaInAttributeDeclaration: # (new in 0.90)
216
+ Enabled: true
217
+
203
218
  # Do not use prefix `_` for a variable that is used.
204
219
  Lint/UnderscorePrefixedVariableName:
205
220
  Enabled: true
@@ -238,10 +253,16 @@ Lint/UselessAssignment:
238
253
  Lint/UselessElseWithoutRescue:
239
254
  Enabled: true
240
255
 
256
+ Lint/UselessMethodDefinition: # (new in 0.90)
257
+ Enabled: true
258
+
241
259
  # Checks for useless setter call to a local variable.
242
260
  Lint/UselessSetterCall:
243
261
  Enabled: true
244
262
 
263
+ Lint/UselessTimes: # (new in 0.91)
264
+ Enabled: true
265
+
245
266
  # Possible use of operator/literal/variable in void context.
246
267
  Lint/Void:
247
268
  Enabled: true
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - ./lib/gitlab/styles/rubocop
4
+
2
5
  # Checks for methods that may lead to batch type issues on a table that's been
3
6
  # explicitly denied because of its size.
4
7
  #
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - rubocop-performance
4
+
2
5
  # Used to identify usages of ancestors.include? and change them to use ⇐ instead.
3
6
  # https://docs.rubocop.org/rubocop-performance/1.8/cops_performance.html#performanceancestorsinclude
4
7
  Performance/AncestorsInclude:
@@ -10,6 +13,9 @@ Performance/AncestorsInclude:
10
13
  Performance/BigDecimalWithNumericArgument:
11
14
  Enabled: true
12
15
 
16
+ Performance/BlockGivenWithExplicitBlock: # (new in 1.9)
17
+ Enabled: true
18
+
13
19
  # Use `caller(n..n)` instead of `caller`.
14
20
  Performance/Caller:
15
21
  Enabled: false
@@ -18,11 +24,26 @@ Performance/Caller:
18
24
  Performance/Casecmp:
19
25
  Enabled: true
20
26
 
27
+ Performance/CollectionLiteralInLoop: # (new in 1.8)
28
+ Enabled: true
29
+
30
+ Performance/ConstantRegexp: # (new in 1.9)
31
+ Enabled: true
32
+
21
33
  # Use `str.{start,end}_with?(x, ..., y, ...)` instead of
22
34
  # `str.{start,end}_with?(x, ...) || str.{start,end}_with?(y, ...)`.
23
35
  Performance/DoubleStartEndWith:
24
36
  Enabled: true
25
37
 
38
+ Performance/MethodObjectAsBlock: # (new in 1.9)
39
+ Enabled: true
40
+
41
+ # Use `Struct.new(..., keyword_init: true)` instead of `OpenStruct.new(...)`.
42
+ Performance/OpenStruct:
43
+ Enabled: true
44
+ Exclude:
45
+ - 'spec/**/*'
46
+
26
47
  # Use `Range#cover?` instead of `Range#include?`.
27
48
  Performance/RangeInclude:
28
49
  Enabled: true
data/rubocop-rails.yml CHANGED
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - rubocop-rails
4
+
2
5
  # Enables Rails cops.
3
6
  Rails:
4
7
  Enabled: true
@@ -24,6 +27,9 @@ Rails/AfterCommitOverride:
24
27
  Rails/ApplicationRecord:
25
28
  Enabled: false
26
29
 
30
+ Rails/AttributeDefaultBlockValue: # (new in 2.9)
31
+ Enabled: true
32
+
27
33
  # Enforce using `blank?` and `present?`.
28
34
  Rails/Blank:
29
35
  Enabled: false
@@ -168,6 +174,9 @@ Rails/TimeZone:
168
174
  Rails/Validation:
169
175
  Enabled: true
170
176
 
177
+ Rails/WhereEquals: # (new in 2.9)
178
+ Enabled: true
179
+
171
180
  # Enforces consistent style when using exists?.
172
181
  # https://docs.rubocop.org/rubocop-rails/2.8/cops_rails.html#railswhereexists
173
182
  Rails/WhereExists:
data/rubocop-rspec.yml CHANGED
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - ./lib/gitlab/styles/rubocop
4
+
2
5
  # Check that instances are not being stubbed globally.
3
6
  RSpec/AnyInstance:
4
7
  Enabled: false
data/rubocop-security.yml CHANGED
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - rubocop-gitlab-security
4
+
2
5
  # This cop checks for the use of JSON class methods which have potential
3
6
  # security issues.
4
7
  Security/JSONLoad:
data/rubocop-style.yml CHANGED
@@ -1,4 +1,7 @@
1
1
  ---
2
+ require:
3
+ - ./lib/gitlab/styles/rubocop
4
+
2
5
  # Checks for grouping of accessors in class and module bodies.
3
6
  # https://docs.rubocop.org/rubocop/0.89/cops_style.html#styleaccessorgrouping
4
7
  Style/AccessorGrouping:
@@ -84,6 +87,9 @@ Style/ClassVars:
84
87
  Style/ColonMethodCall:
85
88
  Enabled: true
86
89
 
90
+ Style/CombinableLoops: # (new in 0.90)
91
+ Enabled: true
92
+
87
93
  # This cop checks that comment annotation keywords are written according
88
94
  # to guidelines.
89
95
  Style/CommentAnnotation:
@@ -184,6 +190,13 @@ Style/HashTransformKeys:
184
190
  Style/HashTransformValues:
185
191
  Enabled: true
186
192
 
193
+
194
+ # This cop identifies places where `map { ... }.to_h` or
195
+ # `Hash[map { ... }]` can be replaced with `to_h { ... }`,
196
+ # saving an intermediate array allocation.
197
+ Style/HashTransformation:
198
+ Enabled: true
199
+
187
200
  # Checks that conditional statements do not have an identical line at the
188
201
  # end of each branch, which can validly be moved out of the conditional.
189
202
  Style/IdenticalConditionalBranches:
@@ -202,6 +215,9 @@ Style/InfiniteLoop:
202
215
  Style/InverseMethods:
203
216
  Enabled: false
204
217
 
218
+ Style/KeywordParametersOrder: # (new in 0.90)
219
+ Enabled: true
220
+
205
221
  # Use lambda.call(...) instead of lambda.(...).
206
222
  Style/LambdaCall:
207
223
  Enabled: true
@@ -335,6 +351,9 @@ Style/RedundantRegexpCharacterClass:
335
351
  Style/RedundantRegexpEscape:
336
352
  Enabled: true
337
353
 
354
+ Style/RedundantSelfAssignment: # (new in 0.90)
355
+ Enabled: true
356
+
338
357
  # Use `sort` instead of `sort_by { |x| x }`.
339
358
  Style/RedundantSortBy:
340
359
  Enabled: true
@@ -358,6 +377,9 @@ Style/SignalException:
358
377
  Style/SlicingWithRange:
359
378
  Enabled: true
360
379
 
380
+ Style/SoleNestedConditional: # (new in 0.89)
381
+ Enabled: true
382
+
361
383
  # Check for the usage of parentheses around stabby lambda arguments.
362
384
  Style/StabbyLambdaParentheses:
363
385
  EnforcedStyle: require_parentheses
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab-styles
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.3.0
4
+ version: 6.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitLab
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-11 00:00:00.000000000 Z
11
+ date: 2021-07-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -16,56 +16,62 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.89.1
19
+ version: '0.91'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 0.91.1
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: 0.89.1
29
+ version: '0.91'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 0.91.1
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: rubocop-gitlab-security
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: 0.1.0
39
+ version: 0.1.1
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: 0.1.0
46
+ version: 0.1.1
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: rubocop-performance
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: 1.8.1
53
+ version: 1.9.2
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
58
  - - "~>"
53
59
  - !ruby/object:Gem::Version
54
- version: 1.8.1
60
+ version: 1.9.2
55
61
  - !ruby/object:Gem::Dependency
56
62
  name: rubocop-rails
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
65
  - - "~>"
60
66
  - !ruby/object:Gem::Version
61
- version: '2.8'
67
+ version: '2.9'
62
68
  type: :runtime
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
72
  - - "~>"
67
73
  - !ruby/object:Gem::Version
68
- version: '2.8'
74
+ version: '2.9'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: rubocop-rspec
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -153,18 +159,21 @@ files:
153
159
  - lib/gitlab/styles/rubocop/cop/custom_error_class.rb
154
160
  - lib/gitlab/styles/rubocop/cop/gem_fetcher.rb
155
161
  - lib/gitlab/styles/rubocop/cop/in_batches.rb
162
+ - lib/gitlab/styles/rubocop/cop/internal_affairs/deprecate_cop_helper.rb
156
163
  - lib/gitlab/styles/rubocop/cop/line_break_after_guard_clauses.rb
157
164
  - lib/gitlab/styles/rubocop/cop/line_break_around_conditional_block.rb
158
165
  - lib/gitlab/styles/rubocop/cop/migration/update_large_table.rb
159
166
  - lib/gitlab/styles/rubocop/cop/polymorphic_associations.rb
160
167
  - lib/gitlab/styles/rubocop/cop/redirect_with_status.rb
161
168
  - lib/gitlab/styles/rubocop/cop/rspec/base.rb
169
+ - lib/gitlab/styles/rubocop/cop/rspec/empty_line_after_final_let_it_be.rb
162
170
  - lib/gitlab/styles/rubocop/cop/rspec/empty_line_after_let_block.rb
163
171
  - lib/gitlab/styles/rubocop/cop/rspec/empty_line_after_shared_example.rb
164
172
  - lib/gitlab/styles/rubocop/cop/rspec/example_starting_character.rb
165
173
  - lib/gitlab/styles/rubocop/cop/rspec/have_link_parameters.rb
166
174
  - lib/gitlab/styles/rubocop/cop/rspec/single_line_hook.rb
167
175
  - lib/gitlab/styles/rubocop/cop/rspec/verbose_include_metadata.rb
176
+ - lib/gitlab/styles/rubocop/cop/style/hash_transformation.rb
168
177
  - lib/gitlab/styles/rubocop/cop/without_reactive_cache.rb
169
178
  - lib/gitlab/styles/rubocop/migration_helpers.rb
170
179
  - lib/gitlab/styles/rubocop/model_helpers.rb
@@ -204,7 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
204
213
  - !ruby/object:Gem::Version
205
214
  version: '0'
206
215
  requirements: []
207
- rubygems_version: 3.1.4
216
+ rubygems_version: 3.1.6
208
217
  signing_key:
209
218
  specification_version: 4
210
219
  summary: GitLab style guides and shared style configs.