packwerk 3.2.2 → 3.3.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.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/exe/packwerk +0 -4
  3. data/lib/packwerk/application_validator.rb +13 -11
  4. data/lib/packwerk/association_inspector.rb +21 -32
  5. data/lib/packwerk/cache.rb +43 -36
  6. data/lib/packwerk/checker.rb +24 -26
  7. data/lib/packwerk/cli.rb +13 -20
  8. data/lib/packwerk/commands/base_command.rb +20 -26
  9. data/lib/packwerk/commands/check_command.rb +8 -8
  10. data/lib/packwerk/commands/help_command.rb +3 -4
  11. data/lib/packwerk/commands/init_command.rb +2 -3
  12. data/lib/packwerk/commands/lazy_loaded_entry.rb +5 -7
  13. data/lib/packwerk/commands/update_todo_command.rb +3 -3
  14. data/lib/packwerk/commands/uses_parse_run.rb +20 -26
  15. data/lib/packwerk/commands/validate_command.rb +6 -7
  16. data/lib/packwerk/commands/version_command.rb +2 -3
  17. data/lib/packwerk/commands.rb +5 -8
  18. data/lib/packwerk/configuration.rb +29 -43
  19. data/lib/packwerk/const_node_inspector.rb +5 -9
  20. data/lib/packwerk/constant_context.rb +0 -2
  21. data/lib/packwerk/constant_discovery.rb +3 -16
  22. data/lib/packwerk/constant_name_inspector.rb +4 -11
  23. data/lib/packwerk/extension_loader.rb +1 -2
  24. data/lib/packwerk/file_processor.rb +20 -25
  25. data/lib/packwerk/files_for_processing.rb +13 -29
  26. data/lib/packwerk/formatters/default_offenses_formatter.rb +14 -12
  27. data/lib/packwerk/formatters/progress_formatter.rb +10 -12
  28. data/lib/packwerk/generators/configuration_file.rb +5 -9
  29. data/lib/packwerk/generators/root_package.rb +3 -7
  30. data/lib/packwerk/graph.rb +14 -61
  31. data/lib/packwerk/node_helpers.rb +32 -38
  32. data/lib/packwerk/node_processor.rb +2 -14
  33. data/lib/packwerk/node_processor_factory.rb +13 -7
  34. data/lib/packwerk/node_visitor.rb +2 -10
  35. data/lib/packwerk/offense.rb +6 -12
  36. data/lib/packwerk/offense_collection.rb +22 -35
  37. data/lib/packwerk/offenses_formatter.rb +27 -34
  38. data/lib/packwerk/output_style.rb +10 -11
  39. data/lib/packwerk/output_styles/coloured.rb +6 -4
  40. data/lib/packwerk/output_styles/plain.rb +6 -4
  41. data/lib/packwerk/package.rb +15 -16
  42. data/lib/packwerk/package_set.rb +15 -25
  43. data/lib/packwerk/package_todo.rb +21 -30
  44. data/lib/packwerk/parse_run.rb +10 -37
  45. data/lib/packwerk/parsed_constant_definitions.rb +10 -24
  46. data/lib/packwerk/parsers/erb.rb +11 -22
  47. data/lib/packwerk/parsers/factory.rb +9 -9
  48. data/lib/packwerk/parsers/parser_interface.rb +5 -10
  49. data/lib/packwerk/parsers/ruby.rb +9 -14
  50. data/lib/packwerk/parsers.rb +2 -4
  51. data/lib/packwerk/rails_load_paths.rb +6 -11
  52. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +11 -17
  53. data/lib/packwerk/reference_checking/reference_checker.rb +2 -8
  54. data/lib/packwerk/reference_extractor.rb +22 -55
  55. data/lib/packwerk/reference_offense.rb +5 -15
  56. data/lib/packwerk/run_context.rb +32 -38
  57. data/lib/packwerk/spring_command.rb +4 -7
  58. data/lib/packwerk/validator/result.rb +12 -5
  59. data/lib/packwerk/validator.rb +23 -33
  60. data/lib/packwerk/validators/dependency_validator.rb +14 -14
  61. data/lib/packwerk/version.rb +1 -1
  62. data/lib/packwerk.rb +0 -1
  63. data/sorbet/config +2 -0
  64. data/sorbet/rbi/gems/{actionpack@7.0.3.1.rbi → actionpack@7.0.8.7.rbi} +1338 -1227
  65. data/sorbet/rbi/gems/{actionview@7.0.3.1.rbi → actionview@7.0.8.7.rbi} +548 -503
  66. data/sorbet/rbi/gems/{activesupport@7.0.3.1.rbi → activesupport@7.0.8.7.rbi} +714 -635
  67. data/sorbet/rbi/gems/{better_html@2.0.1.rbi → better_html@2.1.1.rbi} +21 -21
  68. data/sorbet/rbi/gems/{concurrent-ruby@1.1.10.rbi → concurrent-ruby@1.3.5.rbi} +1390 -1366
  69. data/sorbet/rbi/gems/{constant_resolver@0.2.0.rbi → constant_resolver@0.3.0.rbi} +22 -13
  70. data/sorbet/rbi/gems/{erubi@1.11.0.rbi → erubi@1.13.1.rbi} +28 -17
  71. data/sorbet/rbi/gems/{i18n@1.12.0.rbi → i18n@1.14.7.rbi} +234 -172
  72. data/sorbet/rbi/gems/{json@2.6.2.rbi → json@2.7.2.rbi} +94 -74
  73. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  74. data/sorbet/rbi/gems/{loofah@2.18.0.rbi → loofah@2.24.0.rbi} +470 -243
  75. data/sorbet/rbi/gems/{minitest@5.16.2.rbi → minitest@5.25.4.rbi} +577 -472
  76. data/sorbet/rbi/gems/{mocha@1.14.0.rbi → mocha@2.5.0.rbi} +468 -684
  77. data/sorbet/rbi/gems/{nokogiri@1.15.3.rbi → nokogiri@1.18.4.rbi} +1756 -869
  78. data/sorbet/rbi/gems/{parallel@1.24.0.rbi → parallel@1.25.1.rbi} +26 -20
  79. data/sorbet/rbi/gems/prism@1.9.0.rbi +43359 -0
  80. data/sorbet/rbi/gems/{racc@1.7.1.rbi → racc@1.8.1.rbi} +36 -36
  81. data/sorbet/rbi/gems/{rack-test@2.0.2.rbi → rack-test@2.2.0.rbi} +87 -114
  82. data/sorbet/rbi/gems/{rack@2.2.4.rbi → rack@2.2.13.rbi} +243 -195
  83. data/sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi +754 -0
  84. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +764 -0
  85. data/sorbet/rbi/gems/{railties@7.0.3.1.rbi → railties@7.0.8.7.rbi} +146 -140
  86. data/sorbet/rbi/gems/{regexp_parser@2.5.0.rbi → regexp_parser@2.9.2.rbi} +947 -542
  87. data/sorbet/rbi/gems/{rexml@3.2.5.rbi → rexml@3.3.9.rbi} +452 -312
  88. data/sorbet/rbi/gems/{rubocop-ast@1.21.0.rbi → rubocop-ast@1.31.3.rbi} +717 -588
  89. data/sorbet/rbi/gems/{rubocop@1.34.1.rbi → rubocop@1.64.1.rbi} +10916 -4406
  90. data/sorbet/rbi/gems/{ruby-progressbar@1.11.0.rbi → ruby-progressbar@1.13.0.rbi} +359 -281
  91. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +8 -0
  92. data/sorbet/rbi/gems/{tzinfo@2.0.5.rbi → tzinfo@2.0.6.rbi} +144 -141
  93. data/sorbet/rbi/gems/{unicode-display_width@2.2.0.rbi → unicode-display_width@2.5.0.rbi} +24 -7
  94. data/sorbet/rbi/shims/packwerk/reference.rbi +5 -12
  95. data/sorbet/rbi/shims/packwerk/unresolved_reference.rbi +5 -12
  96. data/sorbet/rbi/shims/parser.rbi +1 -1
  97. metadata +50 -56
  98. data/lib/packwerk/disable_sorbet.rb +0 -41
  99. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +0 -8
  100. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +0 -8
  101. data/sorbet/rbi/gems/prism@0.27.0.rbi +0 -36983
  102. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +0 -455
  103. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +0 -542
  104. data/sorbet/rbi/gems/ruby-lsp@0.2.3.rbi +0 -11
  105. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +0 -8
  106. /data/sorbet/rbi/gems/{builder@3.2.4.rbi → builder@3.3.0.rbi} +0 -0
  107. /data/sorbet/rbi/gems/{parser@3.3.1.0.rbi → parser@3.3.3.0.rbi} +0 -0
@@ -24,10 +24,10 @@ module Parallel
24
24
  def each_with_index(array, options = T.unsafe(nil), &block); end
25
25
 
26
26
  # source://parallel//lib/parallel.rb#307
27
- def filter_map(*args, &block); end
27
+ def filter_map(*_arg0, **_arg1, &_arg2); end
28
28
 
29
29
  # source://parallel//lib/parallel.rb#303
30
- def flat_map(*args, &block); end
30
+ def flat_map(*_arg0, **_arg1, &_arg2); end
31
31
 
32
32
  # source://parallel//lib/parallel.rb#228
33
33
  def in_processes(options = T.unsafe(nil), &block); end
@@ -48,68 +48,74 @@ module Parallel
48
48
 
49
49
  # Number of processors seen by the OS, used for process scheduling
50
50
  #
51
- # source://parallel//lib/parallel.rb#345
51
+ # source://parallel//lib/parallel.rb#341
52
52
  def processor_count; end
53
53
 
54
- # source://parallel//lib/parallel.rb#350
54
+ # source://parallel//lib/parallel.rb#346
55
55
  def worker_number; end
56
56
 
57
57
  # TODO: this does not work when doing threads in forks, so should remove and yield the number instead if needed
58
58
  #
59
- # source://parallel//lib/parallel.rb#355
59
+ # source://parallel//lib/parallel.rb#351
60
60
  def worker_number=(worker_num); end
61
61
 
62
62
  private
63
63
 
64
- # source://parallel//lib/parallel.rb#361
64
+ # source://parallel//lib/parallel.rb#384
65
65
  def add_progress_bar!(job_factory, options); end
66
66
 
67
- # source://parallel//lib/parallel.rb#624
67
+ # source://parallel//lib/parallel.rb#647
68
68
  def call_with_index(item, index, options, &block); end
69
69
 
70
- # source://parallel//lib/parallel.rb#556
70
+ # source://parallel//lib/parallel.rb#579
71
71
  def create_workers(job_factory, options, &block); end
72
72
 
73
73
  # options is either a Integer or a Hash with :count
74
74
  #
75
- # source://parallel//lib/parallel.rb#614
75
+ # source://parallel//lib/parallel.rb#637
76
76
  def extract_count_from_options(options); end
77
77
 
78
- # source://parallel//lib/parallel.rb#642
78
+ # source://parallel//lib/parallel.rb#665
79
79
  def instrument_finish(item, index, result, options); end
80
80
 
81
81
  # yield results in the order of the input items
82
82
  # needs to use `options` to store state between executions
83
83
  # needs to use `done` index since a nil result would also be valid
84
84
  #
85
- # source://parallel//lib/parallel.rb#651
85
+ # source://parallel//lib/parallel.rb#674
86
86
  def instrument_finish_in_order(item, index, result, options); end
87
87
 
88
- # source://parallel//lib/parallel.rb#671
88
+ # source://parallel//lib/parallel.rb#694
89
89
  def instrument_start(item, index, options); end
90
90
 
91
- # source://parallel//lib/parallel.rb#590
91
+ # source://parallel//lib/parallel.rb#357
92
+ def physical_processor_count_windows; end
93
+
94
+ # source://parallel//lib/parallel.rb#613
92
95
  def process_incoming_jobs(read, write, job_factory, options, &block); end
93
96
 
94
- # source://parallel//lib/parallel.rb#544
97
+ # source://parallel//lib/parallel.rb#567
95
98
  def replace_worker(job_factory, workers, index, options, blk); end
96
99
 
97
- # source://parallel//lib/parallel.rb#635
100
+ # source://parallel//lib/parallel.rb#378
101
+ def run(command); end
102
+
103
+ # source://parallel//lib/parallel.rb#658
98
104
  def with_instrumentation(item, index, options); end
99
105
 
100
- # source://parallel//lib/parallel.rb#386
106
+ # source://parallel//lib/parallel.rb#409
101
107
  def work_direct(job_factory, options, &block); end
102
108
 
103
- # source://parallel//lib/parallel.rb#496
109
+ # source://parallel//lib/parallel.rb#519
104
110
  def work_in_processes(job_factory, options, &blk); end
105
111
 
106
- # source://parallel//lib/parallel.rb#430
112
+ # source://parallel//lib/parallel.rb#453
107
113
  def work_in_ractors(job_factory, options); end
108
114
 
109
- # source://parallel//lib/parallel.rb#405
115
+ # source://parallel//lib/parallel.rb#428
110
116
  def work_in_threads(job_factory, options, &block); end
111
117
 
112
- # source://parallel//lib/parallel.rb#564
118
+ # source://parallel//lib/parallel.rb#587
113
119
  def worker(job_factory, options, &block); end
114
120
  end
115
121
  end