packwerk 1.0.2 → 1.2.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 (120) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +14 -5
  3. data/.ruby-version +1 -1
  4. data/Gemfile +1 -1
  5. data/Gemfile.lock +129 -111
  6. data/README.md +8 -1
  7. data/USAGE.md +39 -17
  8. data/dev.yml +1 -1
  9. data/exe/packwerk +1 -1
  10. data/gemfiles/Gemfile-rails-6-0 +22 -0
  11. data/lib/packwerk.rb +73 -34
  12. data/lib/packwerk/application_load_paths.rb +3 -2
  13. data/lib/packwerk/application_validator.rb +85 -69
  14. data/lib/packwerk/association_inspector.rb +23 -11
  15. data/lib/packwerk/checker.rb +4 -7
  16. data/lib/packwerk/cli.rb +36 -93
  17. data/lib/packwerk/configuration.rb +10 -2
  18. data/lib/packwerk/const_node_inspector.rb +13 -14
  19. data/lib/packwerk/constant_discovery.rb +2 -0
  20. data/lib/packwerk/constant_name_inspector.rb +0 -1
  21. data/lib/packwerk/dependency_checker.rb +12 -17
  22. data/lib/packwerk/deprecated_references.rb +25 -8
  23. data/lib/packwerk/file_processor.rb +0 -4
  24. data/lib/packwerk/formatters/offenses_formatter.rb +43 -0
  25. data/lib/packwerk/formatters/progress_formatter.rb +9 -4
  26. data/lib/packwerk/generators/configuration_file.rb +0 -1
  27. data/lib/packwerk/inflector.rb +0 -2
  28. data/lib/packwerk/node.rb +9 -2
  29. data/lib/packwerk/node_processor.rb +15 -32
  30. data/lib/packwerk/node_processor_factory.rb +0 -5
  31. data/lib/packwerk/node_visitor.rb +1 -4
  32. data/lib/packwerk/offense.rb +2 -8
  33. data/lib/packwerk/offense_collection.rb +84 -0
  34. data/lib/packwerk/offenses_formatter.rb +15 -0
  35. data/lib/packwerk/output_style.rb +20 -0
  36. data/lib/packwerk/output_styles/coloured.rb +29 -0
  37. data/lib/packwerk/output_styles/plain.rb +26 -0
  38. data/lib/packwerk/package.rb +8 -0
  39. data/lib/packwerk/package_set.rb +8 -5
  40. data/lib/packwerk/parse_run.rb +104 -0
  41. data/lib/packwerk/parsed_constant_definitions.rb +2 -4
  42. data/lib/packwerk/parsers.rb +0 -2
  43. data/lib/packwerk/parsers/erb.rb +4 -2
  44. data/lib/packwerk/parsers/factory.rb +10 -3
  45. data/lib/packwerk/privacy_checker.rb +22 -17
  46. data/lib/packwerk/reference_extractor.rb +0 -8
  47. data/lib/packwerk/reference_offense.rb +49 -0
  48. data/lib/packwerk/result.rb +9 -0
  49. data/lib/packwerk/run_context.rb +4 -20
  50. data/lib/packwerk/sanity_checker.rb +1 -3
  51. data/lib/packwerk/spring_command.rb +1 -1
  52. data/lib/packwerk/version.rb +1 -1
  53. data/lib/packwerk/violation_type.rb +0 -2
  54. data/library.yml +1 -1
  55. data/packwerk.gemspec +1 -0
  56. data/service.yml +1 -4
  57. data/shipit.rubygems.yml +5 -1
  58. data/sorbet/rbi/gems/{actioncable@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +56 -36
  59. data/sorbet/rbi/gems/{actionmailbox@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +25 -28
  60. data/sorbet/rbi/gems/{actionmailer@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +43 -24
  61. data/sorbet/rbi/gems/{actionpack@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +382 -284
  62. data/sorbet/rbi/gems/{actiontext@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +76 -40
  63. data/sorbet/rbi/gems/{actionview@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +206 -195
  64. data/sorbet/rbi/gems/{activejob@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +64 -75
  65. data/sorbet/rbi/gems/{activemodel@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +103 -56
  66. data/sorbet/rbi/gems/{activerecord@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1250 -898
  67. data/sorbet/rbi/gems/{activestorage@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +92 -120
  68. data/sorbet/rbi/gems/{activesupport@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +292 -193
  69. data/sorbet/rbi/gems/{ast@2.4.1.rbi → ast@2.4.2.rbi} +2 -1
  70. data/sorbet/rbi/gems/{better_html@1.0.15.rbi → better_html@1.0.16.rbi} +2 -2
  71. data/sorbet/rbi/gems/{concurrent-ruby@1.1.6.rbi → concurrent-ruby@1.1.8.rbi} +12 -9
  72. data/sorbet/rbi/gems/{erubi@1.9.0.rbi → erubi@1.10.0.rbi} +3 -1
  73. data/sorbet/rbi/gems/{i18n@1.8.2.rbi → i18n@1.8.10.rbi} +19 -52
  74. data/sorbet/rbi/gems/{loofah@2.5.0.rbi → loofah@2.9.0.rbi} +3 -1
  75. data/sorbet/rbi/gems/marcel@1.0.0.rbi +70 -0
  76. data/sorbet/rbi/gems/{mini_mime@1.0.2.rbi → mini_mime@1.0.3.rbi} +6 -6
  77. data/sorbet/rbi/gems/{mini_portile2@2.4.0.rbi → minitest-focus@1.2.1.rbi} +2 -2
  78. data/sorbet/rbi/gems/{minitest@5.14.0.rbi → minitest@5.14.4.rbi} +31 -29
  79. data/sorbet/rbi/gems/{mocha@1.11.2.rbi → mocha@1.12.0.rbi} +25 -36
  80. data/sorbet/rbi/gems/{nio4r@2.5.2.rbi → nio4r@2.5.7.rbi} +21 -20
  81. data/sorbet/rbi/gems/{nokogiri@1.10.9.rbi → nokogiri@1.11.2.rbi} +193 -154
  82. data/sorbet/rbi/gems/parallel@1.20.1.rbi +117 -0
  83. data/sorbet/rbi/gems/parlour@6.0.0.rbi +1272 -0
  84. data/sorbet/rbi/gems/{parser@2.7.1.4.rbi → parser@3.0.0.0.rbi} +287 -174
  85. data/sorbet/rbi/gems/{pry@0.13.1.rbi → pry@0.14.0.rbi} +1 -1
  86. data/sorbet/rbi/gems/racc@1.5.2.rbi +57 -0
  87. data/sorbet/rbi/gems/{rack@2.2.2.rbi → rack@2.2.3.rbi} +23 -35
  88. data/sorbet/rbi/gems/{rails@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1 -1
  89. data/sorbet/rbi/gems/{railties@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +132 -121
  90. data/sorbet/rbi/gems/{rake@13.0.1.rbi → rake@13.0.3.rbi} +16 -20
  91. data/sorbet/rbi/gems/{parallel@1.19.1.rbi → regexp_parser@2.1.1.rbi} +2 -2
  92. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +8 -0
  93. data/sorbet/rbi/gems/{rubocop-performance@1.5.2.rbi → rubocop-performance@1.10.2.rbi} +1 -1
  94. data/sorbet/rbi/gems/{rubocop-shopify@1.0.2.rbi → rubocop-shopify@2.0.1.rbi} +1 -1
  95. data/sorbet/rbi/gems/{rubocop-sorbet@0.3.7.rbi → rubocop-sorbet@0.6.1.rbi} +1 -1
  96. data/sorbet/rbi/gems/{rubocop@0.82.0.rbi → rubocop@1.12.0.rbi} +1 -1
  97. data/sorbet/rbi/gems/{ruby-progressbar@1.10.1.rbi → ruby-progressbar@1.11.0.rbi} +1 -1
  98. data/sorbet/rbi/gems/spoom@1.1.0.rbi +1061 -0
  99. data/sorbet/rbi/gems/{spring@2.1.0.rbi → spring@2.1.1.rbi} +7 -7
  100. data/sorbet/rbi/gems/{sprockets-rails@3.2.1.rbi → sprockets-rails@3.2.2.rbi} +88 -68
  101. data/sorbet/rbi/gems/{sprockets@4.0.0.rbi → sprockets@4.0.2.rbi} +8 -7
  102. data/sorbet/rbi/gems/{tapioca@0.4.5.rbi → tapioca@0.4.19.rbi} +109 -24
  103. data/sorbet/rbi/gems/{thor@1.0.1.rbi → thor@1.1.0.rbi} +16 -15
  104. data/sorbet/rbi/gems/{tzinfo@2.0.2.rbi → tzinfo@2.0.4.rbi} +21 -2
  105. data/sorbet/rbi/gems/{unicode-display_width@1.7.0.rbi → unicode-display_width@2.0.0.rbi} +1 -1
  106. data/sorbet/rbi/gems/{websocket-driver@0.7.1.rbi → websocket-driver@0.7.3.rbi} +29 -29
  107. data/sorbet/rbi/gems/{websocket-extensions@0.1.4.rbi → websocket-extensions@0.1.5.rbi} +2 -2
  108. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +177 -0
  109. data/sorbet/tapioca/require.rb +1 -0
  110. metadata +78 -57
  111. data/lib/packwerk/checking_deprecated_references.rb +0 -40
  112. data/lib/packwerk/output_styles.rb +0 -41
  113. data/lib/packwerk/reference_lister.rb +0 -23
  114. data/lib/packwerk/updating_deprecated_references.rb +0 -51
  115. data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +0 -8
  116. data/sorbet/rbi/gems/marcel@0.3.3.rbi +0 -30
  117. data/sorbet/rbi/gems/mimemagic@0.3.5.rbi +0 -47
  118. data/sorbet/rbi/gems/parlour@4.0.1.rbi +0 -561
  119. data/sorbet/rbi/gems/spoom@1.0.4.rbi +0 -418
  120. data/sorbet/rbi/gems/zeitwerk@2.3.0.rbi +0 -8
@@ -1,8 +1,6 @@
1
- # typed: ignore
1
+ # typed: false
2
2
  # frozen_string_literal: true
3
3
 
4
- require "packwerk/application_validator"
5
-
6
4
  module Packwerk
7
5
  # To do: This alias and file should be removed as it is deprecated
8
6
  warn("DEPRECATION WARNING: Packwerk::SanityChecker is deprecated, use Packwerk::ApplicationValidator instead.")
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
- # typed: ignore
2
+ # typed: false
3
3
 
4
4
  require "spring/commands"
5
5
 
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Packwerk
5
- VERSION = "1.0.2"
5
+ VERSION = "1.2.0"
6
6
  end
@@ -1,8 +1,6 @@
1
1
  # typed: true
2
2
  # frozen_string_literal: true
3
3
 
4
- require "sorbet-runtime"
5
-
6
4
  module Packwerk
7
5
  class ViolationType < T::Enum
8
6
  enums do
data/library.yml CHANGED
@@ -3,4 +3,4 @@ name: Packwerk
3
3
  stewards:
4
4
  - "@Shopify/kernel-architecture-patterns"
5
5
  slack_channels:
6
- - architecture-patterns
6
+ - code-foundations
data/packwerk.gemspec CHANGED
@@ -42,6 +42,7 @@ Gem::Specification.new do |spec|
42
42
 
43
43
  spec.add_dependency("activesupport", ">= 5.2")
44
44
  spec.add_dependency("constant_resolver")
45
+ spec.add_dependency("parallel")
45
46
  spec.add_dependency("sorbet-runtime")
46
47
 
47
48
  spec.add_development_dependency("bundler")
data/service.yml CHANGED
@@ -1,6 +1,3 @@
1
- # https://services.shopify.io/services/packwerk/production
2
- org_line: Kernel
3
- owners: Shopify/kernel-architecture-patterns
4
1
  classification: library
5
2
  slack_channels:
6
- - architecture-patterns
3
+ - core-stewardship
data/shipit.rubygems.yml CHANGED
@@ -1 +1,5 @@
1
- # default configs
1
+ dependencies:
2
+ override: []
3
+ deploy:
4
+ override:
5
+ - release-gem packwerk.gemspec rake release
@@ -1,6 +1,6 @@
1
1
  # DO NOT EDIT MANUALLY
2
2
  # This is an autogenerated file for types exported from the `actioncable` gem.
3
- # Please instead update this file by running `dev typecheck update`.
3
+ # Please instead update this file by running `bin/tapioca sync`.
4
4
 
5
5
  # typed: true
6
6
 
@@ -49,12 +49,12 @@ class ActionCable::Channel::Base
49
49
  def _unsubscribe_callbacks; end
50
50
  def connection; end
51
51
  def identifier; end
52
- def logger(*args, &block); end
52
+ def logger(*_arg0, &_arg1); end
53
53
  def params; end
54
54
  def perform_action(data); end
55
- def periodic_timers=(_); end
55
+ def periodic_timers=(_arg0); end
56
56
  def rescue_handlers; end
57
- def rescue_handlers=(_); end
57
+ def rescue_handlers=(_arg0); end
58
58
  def rescue_handlers?; end
59
59
  def subscribe_to_channel; end
60
60
  def unsubscribe_from_channel; end
@@ -107,8 +107,8 @@ module ActionCable::Channel::Broadcasting
107
107
 
108
108
  mixes_in_class_methods(::ActionCable::Channel::Broadcasting::ClassMethods)
109
109
 
110
- def broadcast_to(*args, &block); end
111
- def broadcasting_for(*args, &block); end
110
+ def broadcast_to(*_arg0, &_arg1); end
111
+ def broadcasting_for(*_arg0, &_arg1); end
112
112
  end
113
113
 
114
114
  module ActionCable::Channel::Broadcasting::ClassMethods
@@ -139,7 +139,7 @@ module ActionCable::Channel::Naming
139
139
 
140
140
  mixes_in_class_methods(::ActionCable::Channel::Naming::ClassMethods)
141
141
 
142
- def channel_name(*args, &block); end
142
+ def channel_name(*_arg0, &_arg1); end
143
143
  end
144
144
 
145
145
  module ActionCable::Channel::Naming::ClassMethods
@@ -167,13 +167,13 @@ end
167
167
  module ActionCable::Channel::Streams
168
168
  extend(::ActiveSupport::Concern)
169
169
 
170
- def pubsub(*args, &block); end
170
+ def pubsub(*_arg0, &_arg1); end
171
171
  def stop_all_streams; end
172
172
  def stop_stream_for(model); end
173
173
  def stop_stream_from(broadcasting); end
174
174
  def stream_for(model, callback = T.unsafe(nil), coder: T.unsafe(nil), &block); end
175
175
  def stream_from(broadcasting, callback = T.unsafe(nil), coder: T.unsafe(nil), &block); end
176
- def stream_or_reject_for(record); end
176
+ def stream_or_reject_for(model); end
177
177
 
178
178
  private
179
179
 
@@ -194,7 +194,7 @@ class ActionCable::Channel::TestCase < ::ActiveSupport::TestCase
194
194
  extend(::ActionCable::Channel::TestCase::Behavior::ClassMethods)
195
195
 
196
196
  def _channel_class; end
197
- def _channel_class=(_); end
197
+ def _channel_class=(_arg0); end
198
198
  def _channel_class?; end
199
199
  def connection; end
200
200
  def subscription; end
@@ -264,9 +264,9 @@ class ActionCable::Connection::Base
264
264
  def close(reason: T.unsafe(nil), reconnect: T.unsafe(nil)); end
265
265
  def dispatch_websocket_message(websocket_message); end
266
266
  def env; end
267
- def event_loop(*args, &block); end
267
+ def event_loop(*_arg0, &_arg1); end
268
268
  def identifiers; end
269
- def identifiers=(_); end
269
+ def identifiers=(_arg0); end
270
270
  def identifiers?; end
271
271
  def logger; end
272
272
  def on_close(reason, code); end
@@ -275,10 +275,10 @@ class ActionCable::Connection::Base
275
275
  def on_open; end
276
276
  def process; end
277
277
  def protocol; end
278
- def pubsub(*args, &block); end
278
+ def pubsub(*_arg0, &_arg1); end
279
279
  def receive(websocket_message); end
280
280
  def rescue_handlers; end
281
- def rescue_handlers=(_); end
281
+ def rescue_handlers=(_arg0); end
282
282
  def rescue_handlers?; end
283
283
  def send_async(method, *arguments); end
284
284
  def server; end
@@ -438,7 +438,7 @@ class ActionCable::Connection::Subscriptions
438
438
  def add(data); end
439
439
  def execute_command(data); end
440
440
  def identifiers; end
441
- def logger(*args, &block); end
441
+ def logger(*_arg0, &_arg1); end
442
442
  def perform_action(data); end
443
443
  def remove(data); end
444
444
  def remove_subscription(subscription); end
@@ -477,7 +477,7 @@ class ActionCable::Connection::TestCase < ::ActiveSupport::TestCase
477
477
  extend(::ActionCable::Connection::TestCase::Behavior::ClassMethods)
478
478
 
479
479
  def _connection_class; end
480
- def _connection_class=(_); end
480
+ def _connection_class=(_arg0); end
481
481
  def _connection_class?; end
482
482
  def connection; end
483
483
 
@@ -556,7 +556,7 @@ class ActionCable::RemoteConnections::RemoteConnection
556
556
 
557
557
  def disconnect; end
558
558
  def identifiers; end
559
- def identifiers=(_); end
559
+ def identifiers=(_arg0); end
560
560
  def identifiers?; end
561
561
 
562
562
  protected
@@ -593,7 +593,7 @@ class ActionCable::Server::Base
593
593
  def connection_identifiers; end
594
594
  def disconnect(identifiers); end
595
595
  def event_loop; end
596
- def logger(*args, &block); end
596
+ def logger(*_arg0, &_arg1); end
597
597
  def mutex; end
598
598
  def pubsub; end
599
599
  def remote_connections; end
@@ -625,26 +625,26 @@ class ActionCable::Server::Configuration
625
625
  def initialize; end
626
626
 
627
627
  def allow_same_origin_as_host; end
628
- def allow_same_origin_as_host=(_); end
628
+ def allow_same_origin_as_host=(_arg0); end
629
629
  def allowed_request_origins; end
630
- def allowed_request_origins=(_); end
630
+ def allowed_request_origins=(_arg0); end
631
631
  def cable; end
632
- def cable=(_); end
632
+ def cable=(_arg0); end
633
633
  def connection_class; end
634
- def connection_class=(_); end
634
+ def connection_class=(_arg0); end
635
635
  def disable_request_forgery_protection; end
636
- def disable_request_forgery_protection=(_); end
636
+ def disable_request_forgery_protection=(_arg0); end
637
637
  def log_tags; end
638
- def log_tags=(_); end
638
+ def log_tags=(_arg0); end
639
639
  def logger; end
640
- def logger=(_); end
640
+ def logger=(_arg0); end
641
641
  def mount_path; end
642
- def mount_path=(_); end
642
+ def mount_path=(_arg0); end
643
643
  def pubsub_adapter; end
644
644
  def url; end
645
- def url=(_); end
645
+ def url=(_arg0); end
646
646
  def worker_pool_size; end
647
- def worker_pool_size=(_); end
647
+ def worker_pool_size=(_arg0); end
648
648
  end
649
649
 
650
650
  module ActionCable::Server::Connections
@@ -659,15 +659,29 @@ ActionCable::Server::Connections::BEAT_INTERVAL = T.let(T.unsafe(nil), Integer)
659
659
 
660
660
  class ActionCable::Server::Worker
661
661
  include(::ActiveSupport::Callbacks)
662
+ include(::ActionCable::Server::Worker::ActiveRecordConnectionManagement)
662
663
  extend(::ActiveSupport::Callbacks::ClassMethods)
663
664
  extend(::ActiveSupport::DescendantsTracker)
664
665
 
666
+ def initialize(max_size: T.unsafe(nil)); end
667
+
665
668
  def __callbacks; end
666
669
  def __callbacks?; end
667
670
  def _run_work_callbacks(&block); end
668
671
  def _work_callbacks; end
672
+ def async_exec(receiver, *args, connection:, &block); end
673
+ def async_invoke(receiver, method, *args, connection: T.unsafe(nil), &block); end
669
674
  def connection; end
670
675
  def connection=(obj); end
676
+ def executor; end
677
+ def halt; end
678
+ def invoke(receiver, method, *args, connection:, &block); end
679
+ def stopping?; end
680
+ def work(connection); end
681
+
682
+ private
683
+
684
+ def logger; end
671
685
 
672
686
  class << self
673
687
  def __callbacks; end
@@ -680,6 +694,12 @@ class ActionCable::Server::Worker
680
694
  end
681
695
  end
682
696
 
697
+ module ActionCable::Server::Worker::ActiveRecordConnectionManagement
698
+ extend(::ActiveSupport::Concern)
699
+
700
+ def with_database_connections; end
701
+ end
702
+
683
703
  module ActionCable::SubscriptionAdapter
684
704
  extend(::ActiveSupport::Autoload)
685
705
  end
@@ -738,8 +758,8 @@ module ActionCable::TestHelper
738
758
  def assert_broadcasts(stream, number, &block); end
739
759
  def assert_no_broadcasts(stream, &block); end
740
760
  def before_setup; end
741
- def broadcasts(*args, &block); end
742
- def clear_messages(*args, &block); end
761
+ def broadcasts(*_arg0, &_arg1); end
762
+ def clear_messages(*_arg0, &_arg1); end
743
763
  def pubsub_adapter; end
744
764
 
745
765
  private
@@ -766,7 +786,7 @@ module ActionCable::Channel::ChannelStub
766
786
  def start_periodic_timers; end
767
787
  def stop_all_streams; end
768
788
  def stop_periodic_timers; end
769
- def stream_from(broadcasting, *_); end
789
+ def stream_from(broadcasting, *_arg1); end
770
790
  def streams; end
771
791
  end
772
792
 
@@ -806,9 +826,9 @@ end
806
826
 
807
827
  class ActionCable::Connection::TestRequest < ::ActionDispatch::TestRequest
808
828
  def cookie_jar; end
809
- def cookie_jar=(_); end
829
+ def cookie_jar=(_arg0); end
810
830
  def session; end
811
- def session=(_); end
831
+ def session=(_arg0); end
812
832
  end
813
833
 
814
834
  class ActionCable::SubscriptionAdapter::Async < ::ActionCable::SubscriptionAdapter::Inline
@@ -821,12 +841,12 @@ end
821
841
  class ActionCable::SubscriptionAdapter::Async::AsyncSubscriberMap < ::ActionCable::SubscriptionAdapter::SubscriberMap
822
842
  def initialize(event_loop); end
823
843
 
824
- def add_subscriber(*_); end
825
- def invoke_callback(*_); end
844
+ def add_subscriber(*_arg0); end
845
+ def invoke_callback(*_arg0); end
826
846
  end
827
847
 
828
848
  class ActionCable::SubscriptionAdapter::Inline < ::ActionCable::SubscriptionAdapter::Base
829
- def initialize(*_); end
849
+ def initialize(*_arg0); end
830
850
 
831
851
  def broadcast(channel, payload); end
832
852
  def shutdown; end
@@ -1,6 +1,6 @@
1
1
  # DO NOT EDIT MANUALLY
2
2
  # This is an autogenerated file for types exported from the `actionmailbox` gem.
3
- # Please instead update this file by running `dev typecheck update`.
3
+ # Please instead update this file by running `bin/tapioca sync`.
4
4
 
5
5
  # typed: true
6
6
 
@@ -55,16 +55,16 @@ class ActionMailbox::Base
55
55
  def _process_callbacks; end
56
56
  def _run_process_callbacks(&block); end
57
57
  def bounce_with(message); end
58
- def bounced!(*args, &block); end
59
- def delivered!(*args, &block); end
58
+ def bounced!(*_arg0, &_arg1); end
59
+ def delivered!(*_arg0, &_arg1); end
60
60
  def finished_processing?; end
61
61
  def inbound_email; end
62
- def logger(*args, &block); end
63
- def mail(*args, &block); end
62
+ def logger(*_arg0, &_arg1); end
63
+ def mail(*_arg0, &_arg1); end
64
64
  def perform_processing; end
65
65
  def process; end
66
66
  def rescue_handlers; end
67
- def rescue_handlers=(_); end
67
+ def rescue_handlers=(_arg0); end
68
68
  def rescue_handlers?; end
69
69
  def router; end
70
70
  def router=(val); end
@@ -100,28 +100,16 @@ class ActionMailbox::BaseController < ::ActionController::Base
100
100
 
101
101
  class << self
102
102
  def __callbacks; end
103
- def _helpers; end
104
103
  def middleware_stack; end
105
104
  end
106
105
  end
107
106
 
108
- module ActionMailbox::BaseController::HelperMethods
109
- include(::ActionController::Base::HelperMethods)
110
- end
111
-
112
107
  class ActionMailbox::Engine < ::Rails::Engine
113
108
  end
114
109
 
115
- class ActionMailbox::InboundEmail < ::ActiveRecord::Base
116
- include(::ActionMailbox::InboundEmail::Routable)
117
- include(::ActionMailbox::InboundEmail::MessageId)
118
- include(::ActionMailbox::InboundEmail::Incineratable)
119
- extend(::ActionMailbox::InboundEmail::MessageId::ClassMethods)
120
-
110
+ class ActionMailbox::InboundEmail < ::ActionMailbox::Record
121
111
  class << self
122
- def __callbacks; end
123
112
  def _validators; end
124
- def attribute_type_decorations; end
125
113
  def defined_enums; end
126
114
  end
127
115
  end
@@ -155,6 +143,7 @@ module ActionMailbox::InboundEmail::MessageId::ClassMethods
155
143
 
156
144
  private
157
145
 
146
+ def create_and_upload_raw_email!(source); end
158
147
  def extract_message_id(source); end
159
148
  def generate_missing_message_id(message_checksum); end
160
149
  end
@@ -176,6 +165,13 @@ class ActionMailbox::IncinerationJob < ::ActiveJob::Base
176
165
  end
177
166
  end
178
167
 
168
+ class ActionMailbox::Record < ::ActiveRecord::Base
169
+ class << self
170
+ def _validators; end
171
+ def defined_enums; end
172
+ end
173
+ end
174
+
179
175
  class ActionMailbox::Router
180
176
  def initialize; end
181
177
 
@@ -389,7 +385,7 @@ class Mail::Message
389
385
  def deliver; end
390
386
  def deliver!; end
391
387
  def delivery_handler; end
392
- def delivery_handler=(_); end
388
+ def delivery_handler=(_arg0); end
393
389
  def delivery_method(method = T.unsafe(nil), settings = T.unsafe(nil)); end
394
390
  def delivery_status_part; end
395
391
  def delivery_status_report?; end
@@ -445,9 +441,9 @@ class Mail::Message
445
441
  def part(params = T.unsafe(nil)); end
446
442
  def parts; end
447
443
  def perform_deliveries; end
448
- def perform_deliveries=(_); end
444
+ def perform_deliveries=(_arg0); end
449
445
  def raise_delivery_errors; end
450
- def raise_delivery_errors=(_); end
446
+ def raise_delivery_errors=(_arg0); end
451
447
  def raw_envelope; end
452
448
  def raw_source; end
453
449
  def read; end
@@ -545,25 +541,26 @@ Mail::RubyVer = Mail::Ruby19
545
541
 
546
542
  module Rails
547
543
  extend(::ActiveSupport::Autoload)
544
+ extend(::ActiveSupport::Benchmarkable)
548
545
 
549
546
  class << self
550
547
  def app_class; end
551
- def app_class=(_); end
548
+ def app_class=(_arg0); end
552
549
  def application; end
553
- def application=(_); end
550
+ def application=(_arg0); end
554
551
  def autoloaders; end
555
552
  def backtrace_cleaner; end
556
553
  def cache; end
557
- def cache=(_); end
554
+ def cache=(_arg0); end
558
555
  def configuration; end
559
556
  def env; end
560
557
  def env=(environment); end
561
558
  def gem_version; end
562
559
  def groups(*groups); end
563
- def initialize!(*args, &block); end
564
- def initialized?(*args, &block); end
560
+ def initialize!(*_arg0, &_arg1); end
561
+ def initialized?(*_arg0, &_arg1); end
565
562
  def logger; end
566
- def logger=(_); end
563
+ def logger=(_arg0); end
567
564
  def public_path; end
568
565
  def root; end
569
566
  def version; end