gitlab-styles 9.2.0 → 10.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -3
  3. data/.gitlab/merge_request_templates/Release.md +18 -5
  4. data/.gitlab-ci.yml +17 -2
  5. data/.rubocop.yml +6 -1
  6. data/.rubocop_todo.yml +36 -0
  7. data/.tests_mapping.yml +10 -0
  8. data/Gemfile +0 -11
  9. data/Gemfile.lock +227 -0
  10. data/README.md +0 -1
  11. data/gitlab-styles.gemspec +15 -8
  12. data/lefthook.yml +11 -3
  13. data/lib/gitlab/styles/rubocop/migration_helpers.rb +1 -1
  14. data/lib/gitlab/styles/version.rb +1 -1
  15. data/lib/rubocop/cop/active_record_dependent.rb +0 -5
  16. data/lib/rubocop/cop/active_record_serialize.rb +0 -6
  17. data/lib/rubocop/cop/avoid_return_from_blocks.rb +4 -4
  18. data/lib/rubocop/cop/custom_error_class.rb +1 -1
  19. data/lib/rubocop/cop/gem_fetcher.rb +1 -1
  20. data/lib/rubocop/cop/gitlab_security/deep_munge.rb +36 -0
  21. data/lib/rubocop/cop/gitlab_security/json_serialization.rb +133 -0
  22. data/lib/rubocop/cop/gitlab_security/public_send.rb +47 -0
  23. data/lib/rubocop/cop/gitlab_security/redirect_to_params_update.rb +38 -0
  24. data/lib/rubocop/cop/gitlab_security/send_file_params.rb +40 -0
  25. data/lib/rubocop/cop/gitlab_security/sql_injection.rb +41 -0
  26. data/lib/rubocop/cop/gitlab_security/system_command_injection.rb +38 -0
  27. data/lib/rubocop/cop/in_batches.rb +0 -2
  28. data/lib/rubocop/cop/internal_affairs/missing_cop_department.rb +80 -0
  29. data/lib/rubocop/cop/internal_affairs/use_restrict_on_send.rb +99 -0
  30. data/lib/rubocop/cop/line_break_after_guard_clauses.rb +4 -6
  31. data/lib/rubocop/cop/line_break_around_conditional_block.rb +1 -1
  32. data/lib/rubocop/cop/migration/update_large_table.rb +1 -0
  33. data/lib/rubocop/cop/polymorphic_associations.rb +0 -5
  34. data/lib/rubocop/cop/rails/include_url_helper.rb +0 -2
  35. data/lib/rubocop/cop/redirect_with_status.rb +44 -30
  36. data/lib/rubocop/cop/rspec/empty_line_after_shared_example.rb +9 -2
  37. data/lib/rubocop/cop/rspec/example_starting_character.rb +1 -1
  38. data/lib/rubocop/cop/rspec/factory_bot/excessive_create_list.rb +52 -0
  39. data/lib/rubocop/cop/rspec/useless_dynamic_definition.rb +67 -0
  40. data/lib/rubocop/cop/rspec/verbose_include_metadata.rb +1 -1
  41. data/rubocop-capybara.yml +8 -0
  42. data/rubocop-default.yml +2 -4
  43. data/rubocop-gemspec.yml +6 -0
  44. data/rubocop-internal-affairs.yml +11 -0
  45. data/rubocop-layout.yml +2 -2
  46. data/rubocop-lint.yml +134 -5
  47. data/rubocop-naming.yml +5 -0
  48. data/rubocop-rails.yml +33 -1
  49. data/rubocop-rspec.yml +5 -5
  50. data/rubocop-security.yml +19 -1
  51. data/rubocop-style.yml +18 -3
  52. metadata +142 -29
  53. data/lib/gitlab/styles/rubocop/model_helpers.rb +0 -19
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: 9.2.0
4
+ version: 10.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitLab
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-21 00:00:00.000000000 Z
11
+ date: 2023-06-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -16,126 +16,140 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.38.0
19
+ version: 1.50.2
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.38.0
26
+ version: 1.50.2
27
27
  - !ruby/object:Gem::Dependency
28
- name: rubocop-gitlab-security
28
+ name: rubocop-graphql
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.1.1
33
+ version: '0.18'
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: 0.1.1
40
+ version: '0.18'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rubocop-graphql
42
+ name: rubocop-performance
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.14'
47
+ version: '1.15'
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: '0.14'
54
+ version: '1.15'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rubocop-performance
56
+ name: rubocop-rails
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.14'
61
+ version: '2.17'
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.14'
68
+ version: '2.17'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rubocop-rails
70
+ name: rubocop-rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '2.15'
75
+ version: '2.22'
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: '2.15'
82
+ version: '2.22'
83
83
  - !ruby/object:Gem::Dependency
84
- name: rubocop-rspec
84
+ name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '2.15'
90
- type: :runtime
89
+ version: '2.1'
90
+ type: :development
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: '2.15'
96
+ version: '2.1'
97
97
  - !ruby/object:Gem::Dependency
98
- name: bundler
98
+ name: gitlab-dangerfiles
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '2.1'
103
+ version: 3.6.7
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '2.1'
110
+ version: 3.6.7
111
111
  - !ruby/object:Gem::Dependency
112
- name: gitlab-dangerfiles
112
+ name: lefthook
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 1.3.13
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 1.3.13
125
+ - !ruby/object:Gem::Dependency
126
+ name: pry-byebug
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: 2.11.0
131
+ version: '3.10'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: 2.11.0
138
+ version: '3.10'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: rake
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '10.0'
145
+ version: '13.0'
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '10.0'
152
+ version: '13.0'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: rspec
141
155
  requirement: !ruby/object:Gem::Requirement
@@ -150,6 +164,90 @@ dependencies:
150
164
  - - "~>"
151
165
  - !ruby/object:Gem::Version
152
166
  version: '3.0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rspec-parameterized-table_syntax
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: 1.0.0
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: 1.0.0
181
+ - !ruby/object:Gem::Dependency
182
+ name: rubocop-rake
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '0.6'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '0.6'
195
+ - !ruby/object:Gem::Dependency
196
+ name: simplecov
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: 0.22.0
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: 0.22.0
209
+ - !ruby/object:Gem::Dependency
210
+ name: simplecov-cobertura
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: 2.1.0
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: 2.1.0
223
+ - !ruby/object:Gem::Dependency
224
+ name: simplecov-html
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - "~>"
228
+ - !ruby/object:Gem::Version
229
+ version: 0.12.3
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - "~>"
235
+ - !ruby/object:Gem::Version
236
+ version: 0.12.3
237
+ - !ruby/object:Gem::Dependency
238
+ name: test_file_finder
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: 0.1.4
244
+ type: :development
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: 0.1.4
153
251
  description:
154
252
  email:
155
253
  - gitlab_rubygems@gitlab.com
@@ -165,10 +263,13 @@ files:
165
263
  - ".gitlab/merge_request_templates/Release.md"
166
264
  - ".rspec"
167
265
  - ".rubocop.yml"
266
+ - ".rubocop_todo.yml"
267
+ - ".tests_mapping.yml"
168
268
  - CODE_OF_CONDUCT.md
169
269
  - CONTRIBUTING.md
170
270
  - Dangerfile
171
271
  - Gemfile
272
+ - Gemfile.lock
172
273
  - LICENSE.md
173
274
  - README.md
174
275
  - Rakefile
@@ -180,7 +281,6 @@ files:
180
281
  - lib/gitlab/styles/common/banned_constants.rb
181
282
  - lib/gitlab/styles/rubocop.rb
182
283
  - lib/gitlab/styles/rubocop/migration_helpers.rb
183
- - lib/gitlab/styles/rubocop/model_helpers.rb
184
284
  - lib/gitlab/styles/version.rb
185
285
  - lib/rubocop/cop/active_record_dependent.rb
186
286
  - lib/rubocop/cop/active_record_serialize.rb
@@ -191,8 +291,17 @@ files:
191
291
  - lib/rubocop/cop/fips/open_ssl.rb
192
292
  - lib/rubocop/cop/fips/sha1.rb
193
293
  - lib/rubocop/cop/gem_fetcher.rb
294
+ - lib/rubocop/cop/gitlab_security/deep_munge.rb
295
+ - lib/rubocop/cop/gitlab_security/json_serialization.rb
296
+ - lib/rubocop/cop/gitlab_security/public_send.rb
297
+ - lib/rubocop/cop/gitlab_security/redirect_to_params_update.rb
298
+ - lib/rubocop/cop/gitlab_security/send_file_params.rb
299
+ - lib/rubocop/cop/gitlab_security/sql_injection.rb
300
+ - lib/rubocop/cop/gitlab_security/system_command_injection.rb
194
301
  - lib/rubocop/cop/in_batches.rb
195
302
  - lib/rubocop/cop/internal_affairs/deprecate_cop_helper.rb
303
+ - lib/rubocop/cop/internal_affairs/missing_cop_department.rb
304
+ - lib/rubocop/cop/internal_affairs/use_restrict_on_send.rb
196
305
  - lib/rubocop/cop/line_break_after_guard_clauses.rb
197
306
  - lib/rubocop/cop/line_break_around_conditional_block.rb
198
307
  - lib/rubocop/cop/migration/update_large_table.rb
@@ -204,19 +313,23 @@ files:
204
313
  - lib/rubocop/cop/rspec/empty_line_after_let_block.rb
205
314
  - lib/rubocop/cop/rspec/empty_line_after_shared_example.rb
206
315
  - lib/rubocop/cop/rspec/example_starting_character.rb
316
+ - lib/rubocop/cop/rspec/factory_bot/excessive_create_list.rb
207
317
  - lib/rubocop/cop/rspec/have_link_parameters.rb
208
318
  - lib/rubocop/cop/rspec/single_line_hook.rb
319
+ - lib/rubocop/cop/rspec/useless_dynamic_definition.rb
209
320
  - lib/rubocop/cop/rspec/verbose_include_metadata.rb
210
321
  - lib/rubocop/cop/style/hash_transformation.rb
211
322
  - lib/rubocop/cop/style/open_struct_use.rb
212
323
  - lib/rubocop/cop/without_reactive_cache.rb
213
324
  - rubocop-all.yml
214
325
  - rubocop-bundler.yml
326
+ - rubocop-capybara.yml
215
327
  - rubocop-code_reuse.yml
216
328
  - rubocop-default.yml
217
329
  - rubocop-fips.yml
218
330
  - rubocop-gemspec.yml
219
331
  - rubocop-graphql.yml
332
+ - rubocop-internal-affairs.yml
220
333
  - rubocop-layout.yml
221
334
  - rubocop-lint.yml
222
335
  - rubocop-metrics.yml
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Gitlab
4
- module Styles
5
- module Rubocop
6
- module Gitlab::Styles::Rubocop::ModelHelpers
7
- # Returns true if the given node originated from the models directory.
8
- def in_model?(node)
9
- path = node.location.expression.source_buffer.name
10
- pwd = Dir.pwd
11
- models_path = File.join(pwd, 'app', 'models')
12
- ee_models_path = File.join(pwd, 'ee', 'app', 'models')
13
-
14
- path.start_with?(models_path, ee_models_path)
15
- end
16
- end
17
- end
18
- end
19
- end