packwerk 3.2.1 → 3.2.3

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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/lib/packwerk/application_validator.rb +2 -1
  3. data/lib/packwerk/association_inspector.rb +17 -4
  4. data/lib/packwerk/configuration.rb +4 -0
  5. data/lib/packwerk/const_node_inspector.rb +2 -2
  6. data/lib/packwerk/constant_name_inspector.rb +2 -2
  7. data/lib/packwerk/graph.rb +15 -56
  8. data/lib/packwerk/package.rb +1 -1
  9. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +1 -2
  10. data/lib/packwerk/reference_extractor.rb +29 -1
  11. data/lib/packwerk/run_context.rb +20 -4
  12. data/lib/packwerk/validators/dependency_validator.rb +5 -4
  13. data/lib/packwerk/version.rb +1 -1
  14. data/lib/packwerk.rb +1 -0
  15. data/sorbet/config +1 -0
  16. data/sorbet/rbi/gems/{actionpack@7.0.3.1.rbi → actionpack@7.0.8.7.rbi} +1338 -1227
  17. data/sorbet/rbi/gems/{actionview@7.0.3.1.rbi → actionview@7.0.8.7.rbi} +548 -503
  18. data/sorbet/rbi/gems/{activesupport@7.0.3.1.rbi → activesupport@7.0.8.7.rbi} +714 -635
  19. data/sorbet/rbi/gems/{better_html@2.0.1.rbi → better_html@2.1.1.rbi} +21 -21
  20. data/sorbet/rbi/gems/{concurrent-ruby@1.1.10.rbi → concurrent-ruby@1.3.5.rbi} +1390 -1366
  21. data/sorbet/rbi/gems/{constant_resolver@0.2.0.rbi → constant_resolver@0.3.0.rbi} +22 -13
  22. data/sorbet/rbi/gems/{erubi@1.11.0.rbi → erubi@1.13.1.rbi} +28 -17
  23. data/sorbet/rbi/gems/{i18n@1.12.0.rbi → i18n@1.14.7.rbi} +234 -172
  24. data/sorbet/rbi/gems/{json@2.6.2.rbi → json@2.7.2.rbi} +94 -74
  25. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  26. data/sorbet/rbi/gems/{loofah@2.18.0.rbi → loofah@2.24.0.rbi} +470 -243
  27. data/sorbet/rbi/gems/{minitest@5.16.2.rbi → minitest@5.25.4.rbi} +577 -472
  28. data/sorbet/rbi/gems/{mocha@1.14.0.rbi → mocha@2.5.0.rbi} +468 -684
  29. data/sorbet/rbi/gems/{nokogiri@1.15.3.rbi → nokogiri@1.18.4.rbi} +1756 -869
  30. data/sorbet/rbi/gems/{parallel@1.24.0.rbi → parallel@1.25.1.rbi} +26 -20
  31. data/sorbet/rbi/gems/{racc@1.7.1.rbi → racc@1.8.1.rbi} +36 -36
  32. data/sorbet/rbi/gems/{rack-test@2.0.2.rbi → rack-test@2.2.0.rbi} +87 -114
  33. data/sorbet/rbi/gems/{rack@2.2.4.rbi → rack@2.2.13.rbi} +243 -195
  34. data/sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi +754 -0
  35. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +764 -0
  36. data/sorbet/rbi/gems/{railties@7.0.3.1.rbi → railties@7.0.8.7.rbi} +146 -140
  37. data/sorbet/rbi/gems/{regexp_parser@2.5.0.rbi → regexp_parser@2.9.2.rbi} +947 -542
  38. data/sorbet/rbi/gems/{rexml@3.2.5.rbi → rexml@3.3.9.rbi} +452 -312
  39. data/sorbet/rbi/gems/{rubocop-ast@1.21.0.rbi → rubocop-ast@1.31.3.rbi} +717 -588
  40. data/sorbet/rbi/gems/{rubocop@1.34.1.rbi → rubocop@1.64.1.rbi} +10916 -4406
  41. data/sorbet/rbi/gems/{ruby-progressbar@1.11.0.rbi → ruby-progressbar@1.13.0.rbi} +359 -281
  42. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +8 -0
  43. data/sorbet/rbi/gems/{tzinfo@2.0.5.rbi → tzinfo@2.0.6.rbi} +144 -141
  44. data/sorbet/rbi/gems/{unicode-display_width@2.2.0.rbi → unicode-display_width@2.5.0.rbi} +24 -7
  45. metadata +37 -56
  46. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +0 -8
  47. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +0 -8
  48. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +0 -455
  49. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +0 -542
  50. data/sorbet/rbi/gems/ruby-lsp@0.2.3.rbi +0 -11
  51. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +0 -8
  52. /data/sorbet/rbi/gems/{builder@3.2.4.rbi → builder@3.3.0.rbi} +0 -0
  53. /data/sorbet/rbi/gems/{parser@3.3.1.0.rbi → parser@3.3.3.0.rbi} +0 -0
@@ -11,29 +11,43 @@ module Unicode; end
11
11
  class Unicode::DisplayWidth
12
12
  # @return [DisplayWidth] a new instance of DisplayWidth
13
13
  #
14
- # source://unicode-display_width//lib/unicode/display_width.rb#46
14
+ # source://unicode-display_width//lib/unicode/display_width.rb#104
15
15
  def initialize(ambiguous: T.unsafe(nil), overwrite: T.unsafe(nil), emoji: T.unsafe(nil)); end
16
16
 
17
- # source://unicode-display_width//lib/unicode/display_width.rb#52
17
+ # source://unicode-display_width//lib/unicode/display_width.rb#110
18
18
  def get_config(**kwargs); end
19
19
 
20
- # source://unicode-display_width//lib/unicode/display_width.rb#60
20
+ # source://unicode-display_width//lib/unicode/display_width.rb#118
21
21
  def of(string, **kwargs); end
22
22
 
23
23
  class << self
24
- # source://unicode-display_width//lib/unicode/display_width.rb#28
24
+ # source://unicode-display_width//lib/unicode/display_width/index.rb#14
25
+ def decompress_index(index, level); end
26
+
27
+ # source://unicode-display_width//lib/unicode/display_width.rb#86
25
28
  def emoji_extra_width_of(string, ambiguous = T.unsafe(nil), overwrite = T.unsafe(nil), _ = T.unsafe(nil)); end
26
29
 
27
- # source://unicode-display_width//lib/unicode/display_width.rb#10
30
+ # source://unicode-display_width//lib/unicode/display_width.rb#12
28
31
  def of(string, ambiguous = T.unsafe(nil), overwrite = T.unsafe(nil), options = T.unsafe(nil)); end
32
+
33
+ # Same as .width_no_overwrite - but with applying overwrites for each char
34
+ #
35
+ # source://unicode-display_width//lib/unicode/display_width.rb#57
36
+ def width_all_features(string, ambiguous, overwrite, options); end
37
+
38
+ # source://unicode-display_width//lib/unicode/display_width.rb#30
39
+ def width_no_overwrite(string, ambiguous, options = T.unsafe(nil)); end
29
40
  end
30
41
  end
31
42
 
43
+ # source://unicode-display_width//lib/unicode/display_width.rb#9
44
+ Unicode::DisplayWidth::ASCII_NON_ZERO_REGEX = T.let(T.unsafe(nil), Regexp)
45
+
32
46
  # source://unicode-display_width//lib/unicode/display_width/constants.rb#7
33
47
  Unicode::DisplayWidth::DATA_DIRECTORY = T.let(T.unsafe(nil), String)
34
48
 
35
- # source://unicode-display_width//lib/unicode/display_width.rb#8
36
- Unicode::DisplayWidth::DEPTHS = T.let(T.unsafe(nil), Array)
49
+ # source://unicode-display_width//lib/unicode/display_width.rb#10
50
+ Unicode::DisplayWidth::FIRST_4096 = T.let(T.unsafe(nil), Array)
37
51
 
38
52
  # source://unicode-display_width//lib/unicode/display_width/index.rb#11
39
53
  Unicode::DisplayWidth::INDEX = T.let(T.unsafe(nil), Array)
@@ -41,6 +55,9 @@ Unicode::DisplayWidth::INDEX = T.let(T.unsafe(nil), Array)
41
55
  # source://unicode-display_width//lib/unicode/display_width/constants.rb#8
42
56
  Unicode::DisplayWidth::INDEX_FILENAME = T.let(T.unsafe(nil), String)
43
57
 
58
+ # source://unicode-display_width//lib/unicode/display_width.rb#8
59
+ Unicode::DisplayWidth::INITIAL_DEPTH = T.let(T.unsafe(nil), Integer)
60
+
44
61
  # source://unicode-display_width//lib/unicode/display_width/constants.rb#6
45
62
  Unicode::DisplayWidth::UNICODE_VERSION = T.let(T.unsafe(nil), String)
46
63
 
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: packwerk
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.1
4
+ version: 3.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shopify Inc.
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-05-02 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -44,14 +43,14 @@ dependencies:
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
- version: 0.2.0
46
+ version: '0.3'
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
- version: 0.2.0
53
+ version: '0.3'
55
54
  - !ruby/object:Gem::Dependency
56
55
  name: parallel
57
56
  requirement: !ruby/object:Gem::Requirement
@@ -150,20 +149,6 @@ dependencies:
150
149
  - - ">="
151
150
  - !ruby/object:Gem::Version
152
151
  version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: railties
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '0'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: '0'
167
152
  description: |
168
153
  Sets package level boundaries between a specified set of ruby
169
154
  constants to minimize cross-boundary referencing and dependency.
@@ -245,58 +230,56 @@ files:
245
230
  - lib/packwerk/validators/dependency_validator.rb
246
231
  - lib/packwerk/version.rb
247
232
  - sorbet/config
248
- - sorbet/rbi/gems/actionpack@7.0.3.1.rbi
249
- - sorbet/rbi/gems/actionview@7.0.3.1.rbi
250
- - sorbet/rbi/gems/activesupport@7.0.3.1.rbi
233
+ - sorbet/rbi/gems/actionpack@7.0.8.7.rbi
234
+ - sorbet/rbi/gems/actionview@7.0.8.7.rbi
235
+ - sorbet/rbi/gems/activesupport@7.0.8.7.rbi
251
236
  - sorbet/rbi/gems/ast@2.4.2.rbi
252
- - sorbet/rbi/gems/better_html@2.0.1.rbi
253
- - sorbet/rbi/gems/builder@3.2.4.rbi
237
+ - sorbet/rbi/gems/better_html@2.1.1.rbi
238
+ - sorbet/rbi/gems/builder@3.3.0.rbi
254
239
  - sorbet/rbi/gems/byebug@11.1.3.rbi
255
- - sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi
256
- - sorbet/rbi/gems/constant_resolver@0.2.0.rbi
240
+ - sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi
241
+ - sorbet/rbi/gems/constant_resolver@0.3.0.rbi
257
242
  - sorbet/rbi/gems/crass@1.0.6.rbi
258
- - sorbet/rbi/gems/erubi@1.11.0.rbi
259
- - sorbet/rbi/gems/i18n@1.12.0.rbi
260
- - sorbet/rbi/gems/json@2.6.2.rbi
261
- - sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi
262
- - sorbet/rbi/gems/loofah@2.18.0.rbi
243
+ - sorbet/rbi/gems/erubi@1.13.1.rbi
244
+ - sorbet/rbi/gems/i18n@1.14.7.rbi
245
+ - sorbet/rbi/gems/json@2.7.2.rbi
246
+ - sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi
247
+ - sorbet/rbi/gems/loofah@2.24.0.rbi
263
248
  - sorbet/rbi/gems/m@1.6.0.rbi
264
249
  - sorbet/rbi/gems/method_source@1.1.0.rbi
265
250
  - sorbet/rbi/gems/minitest-focus@1.3.1.rbi
266
- - sorbet/rbi/gems/minitest@5.16.2.rbi
267
- - sorbet/rbi/gems/mocha@1.14.0.rbi
251
+ - sorbet/rbi/gems/minitest@5.25.4.rbi
252
+ - sorbet/rbi/gems/mocha@2.5.0.rbi
268
253
  - sorbet/rbi/gems/netrc@0.11.0.rbi
269
- - sorbet/rbi/gems/nokogiri@1.15.3.rbi
270
- - sorbet/rbi/gems/parallel@1.24.0.rbi
271
- - sorbet/rbi/gems/parser@3.3.1.0.rbi
272
- - sorbet/rbi/gems/prettier_print@0.1.0.rbi
254
+ - sorbet/rbi/gems/nokogiri@1.18.4.rbi
255
+ - sorbet/rbi/gems/parallel@1.25.1.rbi
256
+ - sorbet/rbi/gems/parser@3.3.3.0.rbi
273
257
  - sorbet/rbi/gems/prism@0.27.0.rbi
274
- - sorbet/rbi/gems/racc@1.7.1.rbi
275
- - sorbet/rbi/gems/rack-test@2.0.2.rbi
276
- - sorbet/rbi/gems/rack@2.2.4.rbi
277
- - sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi
278
- - sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi
279
- - sorbet/rbi/gems/railties@7.0.3.1.rbi
258
+ - sorbet/rbi/gems/racc@1.8.1.rbi
259
+ - sorbet/rbi/gems/rack-test@2.2.0.rbi
260
+ - sorbet/rbi/gems/rack@2.2.13.rbi
261
+ - sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi
262
+ - sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi
263
+ - sorbet/rbi/gems/railties@7.0.8.7.rbi
280
264
  - sorbet/rbi/gems/rainbow@3.1.1.rbi
281
265
  - sorbet/rbi/gems/rake@13.0.6.rbi
282
266
  - sorbet/rbi/gems/rbi@0.1.12.rbi
283
- - sorbet/rbi/gems/regexp_parser@2.5.0.rbi
284
- - sorbet/rbi/gems/rexml@3.2.5.rbi
285
- - sorbet/rbi/gems/rubocop-ast@1.21.0.rbi
267
+ - sorbet/rbi/gems/regexp_parser@2.9.2.rbi
268
+ - sorbet/rbi/gems/rexml@3.3.9.rbi
269
+ - sorbet/rbi/gems/rubocop-ast@1.31.3.rbi
286
270
  - sorbet/rbi/gems/rubocop-performance@1.14.3.rbi
287
271
  - sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi
288
272
  - sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi
289
- - sorbet/rbi/gems/rubocop@1.34.1.rbi
290
- - sorbet/rbi/gems/ruby-lsp@0.2.3.rbi
291
- - sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi
273
+ - sorbet/rbi/gems/rubocop@1.64.1.rbi
274
+ - sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi
275
+ - sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi
292
276
  - sorbet/rbi/gems/smart_properties@1.17.0.rbi
293
277
  - sorbet/rbi/gems/spoom@1.3.2.rbi
294
278
  - sorbet/rbi/gems/spring@4.0.0.rbi
295
- - sorbet/rbi/gems/syntax_tree@3.3.0.rbi
296
279
  - sorbet/rbi/gems/tapioca@0.13.3.rbi
297
280
  - sorbet/rbi/gems/thor@1.3.1.rbi
298
- - sorbet/rbi/gems/tzinfo@2.0.5.rbi
299
- - sorbet/rbi/gems/unicode-display_width@2.2.0.rbi
281
+ - sorbet/rbi/gems/tzinfo@2.0.6.rbi
282
+ - sorbet/rbi/gems/unicode-display_width@2.5.0.rbi
300
283
  - sorbet/rbi/gems/yard-sorbet@0.8.1.rbi
301
284
  - sorbet/rbi/gems/yard@0.9.36.rbi
302
285
  - sorbet/rbi/gems/zeitwerk@2.6.4.rbi
@@ -314,7 +297,6 @@ metadata:
314
297
  source_code_uri: https://github.com/Shopify/packwerk
315
298
  changelog_uri: https://github.com/Shopify/packwerk/releases
316
299
  allowed_push_host: https://rubygems.org
317
- post_install_message:
318
300
  rdoc_options: []
319
301
  require_paths:
320
302
  - lib
@@ -322,15 +304,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
322
304
  requirements:
323
305
  - - ">="
324
306
  - !ruby/object:Gem::Version
325
- version: '2.7'
307
+ version: '3.1'
326
308
  required_rubygems_version: !ruby/object:Gem::Requirement
327
309
  requirements:
328
310
  - - ">="
329
311
  - !ruby/object:Gem::Version
330
312
  version: '0'
331
313
  requirements: []
332
- rubygems_version: 3.5.9
333
- signing_key:
314
+ rubygems_version: 3.6.9
334
315
  specification_version: 4
335
316
  summary: Packages for applications based on the zeitwerk autoloader
336
317
  test_files: []
@@ -1,8 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `language_server-protocol` gem.
5
- # Please instead update this file by running `bin/tapioca gem language_server-protocol`.
6
-
7
- # THIS IS AN EMPTY RBI FILE.
8
- # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
@@ -1,8 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `prettier_print` gem.
5
- # Please instead update this file by running `bin/tapioca gem prettier_print`.
6
-
7
- # THIS IS AN EMPTY RBI FILE.
8
- # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem