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,6 +1,6 @@
1
1
  # DO NOT EDIT MANUALLY
2
2
  # This is an autogenerated file for types exported from the `actionmailer` 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
 
@@ -54,15 +54,12 @@ class ActionMailer::Base < ::AbstractController::Base
54
54
  def __callbacks; end
55
55
  def __callbacks?; end
56
56
  def _helper_methods; end
57
- def _helper_methods=(_); end
57
+ def _helper_methods=(_arg0); end
58
58
  def _helper_methods?; end
59
- def _helpers; end
60
- def _helpers=(_); end
61
- def _helpers?; end
62
59
  def _process_action_callbacks; end
63
60
  def _run_process_action_callbacks(&block); end
64
61
  def _view_cache_dependencies; end
65
- def _view_cache_dependencies=(_); end
62
+ def _view_cache_dependencies=(_arg0); end
66
63
  def _view_cache_dependencies?; end
67
64
  def asset_host; end
68
65
  def asset_host=(value); end
@@ -72,29 +69,29 @@ class ActionMailer::Base < ::AbstractController::Base
72
69
  def default_asset_host_protocol; end
73
70
  def default_asset_host_protocol=(value); end
74
71
  def default_params; end
75
- def default_params=(_); end
72
+ def default_params=(_arg0); end
76
73
  def default_params?; end
77
74
  def default_static_extension; end
78
75
  def default_static_extension=(value); end
79
76
  def deliver_later_queue_name; end
80
77
  def deliver_later_queue_name=(val); end
81
78
  def delivery_job; end
82
- def delivery_job=(_); end
79
+ def delivery_job=(_arg0); end
83
80
  def delivery_job?; end
84
81
  def delivery_method; end
85
- def delivery_method=(_); end
82
+ def delivery_method=(_arg0); end
86
83
  def delivery_method?; end
87
84
  def delivery_methods; end
88
- def delivery_methods=(_); end
85
+ def delivery_methods=(_arg0); end
89
86
  def delivery_methods?; end
90
87
  def email_address_with_name(address, name); end
91
88
  def enable_fragment_cache_logging; end
92
89
  def enable_fragment_cache_logging=(value); end
93
90
  def file_settings; end
94
- def file_settings=(_); end
91
+ def file_settings=(_arg0); end
95
92
  def file_settings?; end
96
93
  def fragment_cache_keys; end
97
- def fragment_cache_keys=(_); end
94
+ def fragment_cache_keys=(_arg0); end
98
95
  def fragment_cache_keys?; end
99
96
  def headers(args = T.unsafe(nil)); end
100
97
  def javascripts_dir; end
@@ -104,9 +101,9 @@ class ActionMailer::Base < ::AbstractController::Base
104
101
  def mail(headers = T.unsafe(nil), &block); end
105
102
  def mailer_name; end
106
103
  def message; end
107
- def message=(_); end
104
+ def message=(_arg0); end
108
105
  def params; end
109
- def params=(_); end
106
+ def params=(_arg0); end
110
107
  def perform_caching; end
111
108
  def perform_caching=(value); end
112
109
  def perform_deliveries; end
@@ -119,19 +116,19 @@ class ActionMailer::Base < ::AbstractController::Base
119
116
  def relative_url_root; end
120
117
  def relative_url_root=(value); end
121
118
  def rescue_handlers; end
122
- def rescue_handlers=(_); end
119
+ def rescue_handlers=(_arg0); end
123
120
  def rescue_handlers?; end
124
121
  def sendmail_settings; end
125
- def sendmail_settings=(_); end
122
+ def sendmail_settings=(_arg0); end
126
123
  def sendmail_settings?; end
127
124
  def show_previews; end
128
125
  def smtp_settings; end
129
- def smtp_settings=(_); end
126
+ def smtp_settings=(_arg0); end
130
127
  def smtp_settings?; end
131
128
  def stylesheets_dir; end
132
129
  def stylesheets_dir=(value); end
133
130
  def test_settings; end
134
- def test_settings=(_); end
131
+ def test_settings=(_arg0); end
135
132
  def test_settings?; end
136
133
 
137
134
  private
@@ -152,6 +149,7 @@ class ActionMailer::Base < ::AbstractController::Base
152
149
  def instrument_name; end
153
150
  def instrument_payload(key); end
154
151
  def set_content_type(m, user_content_type, class_default); end
152
+ def wrap_inline_attachments(message); end
155
153
 
156
154
  class << self
157
155
  def __callbacks; end
@@ -161,8 +159,6 @@ class ActionMailer::Base < ::AbstractController::Base
161
159
  def _helper_methods=(value); end
162
160
  def _helper_methods?; end
163
161
  def _helpers; end
164
- def _helpers=(value); end
165
- def _helpers?; end
166
162
  def _layout; end
167
163
  def _layout=(value); end
168
164
  def _layout?; end
@@ -214,7 +210,7 @@ class ActionMailer::Base < ::AbstractController::Base
214
210
  def logger; end
215
211
  def logger=(value); end
216
212
  def mailer_name; end
217
- def mailer_name=(_); end
213
+ def mailer_name=(_arg0); end
218
214
  def perform_caching; end
219
215
  def perform_caching=(value); end
220
216
  def perform_deliveries; end
@@ -298,6 +294,21 @@ class ActionMailer::Collector
298
294
  def responses; end
299
295
  end
300
296
 
297
+ class ActionMailer::DeliveryJob < ::ActiveJob::Base
298
+ def perform(mailer, mail_method, delivery_method, *args); end
299
+
300
+ private
301
+
302
+ def handle_exception_with_mailer_class(exception); end
303
+ def mailer_class; end
304
+
305
+ class << self
306
+ def __callbacks; end
307
+ def queue_name; end
308
+ def rescue_handlers; end
309
+ end
310
+ end
311
+
301
312
  module ActionMailer::DeliveryMethods
302
313
  extend(::ActiveSupport::Concern)
303
314
 
@@ -308,7 +319,7 @@ end
308
319
 
309
320
  module ActionMailer::DeliveryMethods::ClassMethods
310
321
  def add_delivery_method(symbol, klass, default_options = T.unsafe(nil)); end
311
- def deliveries(*args, &block); end
322
+ def deliveries(*_arg0, &_arg1); end
312
323
  def deliveries=(arg); end
313
324
  def wrap_delivery_behavior(mail, method = T.unsafe(nil), options = T.unsafe(nil)); end
314
325
  end
@@ -372,6 +383,7 @@ class ActionMailer::MessageDelivery
372
383
 
373
384
  def enqueue_delivery(delivery_method, options = T.unsafe(nil)); end
374
385
  def processed_mailer; end
386
+ def use_new_args?(job); end
375
387
  end
376
388
 
377
389
  module ActionMailer::Parameterized
@@ -384,6 +396,10 @@ module ActionMailer::Parameterized::ClassMethods
384
396
  def with(params); end
385
397
  end
386
398
 
399
+ class ActionMailer::Parameterized::DeliveryJob < ::ActionMailer::DeliveryJob
400
+ def perform(mailer, mail_method, delivery_method, params, *args); end
401
+ end
402
+
387
403
  class ActionMailer::Parameterized::Mailer
388
404
  def initialize(mailer, params); end
389
405
 
@@ -400,6 +416,7 @@ class ActionMailer::Parameterized::MessageDelivery < ::ActionMailer::MessageDeli
400
416
 
401
417
  private
402
418
 
419
+ def delivery_job_class; end
403
420
  def enqueue_delivery(delivery_method, options = T.unsafe(nil)); end
404
421
  def processed_mailer; end
405
422
  end
@@ -461,7 +478,7 @@ class ActionMailer::TestCase < ::ActiveSupport::TestCase
461
478
  extend(::ActionMailer::TestCase::Behavior::ClassMethods)
462
479
 
463
480
  def _mailer_class; end
464
- def _mailer_class=(_); end
481
+ def _mailer_class=(_arg0); end
465
482
  def _mailer_class?; end
466
483
 
467
484
  class << self
@@ -473,6 +490,7 @@ class ActionMailer::TestCase < ::ActiveSupport::TestCase
473
490
  end
474
491
 
475
492
  module ActionMailer::TestCase::Behavior
493
+ include(::ActiveSupport::Testing::Assertions)
476
494
  include(::ActiveJob::TestHelper)
477
495
  include(::ActionMailer::TestHelper)
478
496
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
@@ -513,6 +531,7 @@ module ActionMailer::TestCase::ClearTestDeliveries
513
531
  end
514
532
 
515
533
  module ActionMailer::TestHelper
534
+ include(::ActiveSupport::Testing::Assertions)
516
535
  include(::ActiveJob::TestHelper)
517
536
 
518
537
  def assert_emails(number, &block); end
@@ -560,7 +579,7 @@ module ActionMailer::Rescuable
560
579
 
561
580
  private
562
581
 
563
- def process(*_); end
582
+ def process(*_arg0); end
564
583
  end
565
584
 
566
585
  module ActionMailer::Rescuable::ClassMethods
@@ -1,6 +1,6 @@
1
1
  # DO NOT EDIT MANUALLY
2
2
  # This is an autogenerated file for types exported from the `actionpack` 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
 
@@ -13,6 +13,18 @@ module AbstractController
13
13
  end
14
14
 
15
15
  class AbstractController::ActionNotFound < ::StandardError
16
+ include(::DidYouMean::Correctable)
17
+
18
+ def initialize(message = T.unsafe(nil), controller = T.unsafe(nil), action = T.unsafe(nil)); end
19
+
20
+ def action; end
21
+ def controller; end
22
+ end
23
+
24
+ class AbstractController::ActionNotFound::Correction
25
+ def initialize(error); end
26
+
27
+ def corrections; end
16
28
  end
17
29
 
18
30
  module AbstractController::AssetPaths
@@ -26,16 +38,17 @@ class AbstractController::Base
26
38
 
27
39
  def action_methods; end
28
40
  def action_name; end
29
- def action_name=(_); end
41
+ def action_name=(_arg0); end
30
42
  def available_action?(action_name); end
31
43
  def controller_path; end
32
44
  def formats; end
33
- def formats=(_); end
45
+ def formats=(_arg0); end
46
+ def inspect; end
34
47
  def performed?; end
35
48
  def process(action, *args); end
36
49
  def response_body; end
37
- def response_body=(_); end
38
- def send_action(*_); end
50
+ def response_body=(_arg0); end
51
+ def send_action(*_arg0); end
39
52
 
40
53
  private
41
54
 
@@ -113,7 +126,7 @@ module AbstractController::Callbacks
113
126
 
114
127
  mixes_in_class_methods(::AbstractController::Callbacks::ClassMethods)
115
128
 
116
- def process_action(*_); end
129
+ def process_action(*_arg0); end
117
130
  end
118
131
 
119
132
  module AbstractController::Callbacks::ClassMethods
@@ -192,9 +205,13 @@ module AbstractController::Helpers
192
205
  extend(::ActiveSupport::Concern)
193
206
 
194
207
  mixes_in_class_methods(::AbstractController::Helpers::ClassMethods)
208
+
209
+ def _helpers; end
195
210
  end
196
211
 
197
212
  module AbstractController::Helpers::ClassMethods
213
+ def _helpers=(_arg0); end
214
+ def _helpers_for_modification; end
198
215
  def clear_helpers; end
199
216
  def helper(*args, &block); end
200
217
  def helper_method(*methods); end
@@ -256,8 +273,15 @@ AbstractController::Rendering::DEFAULT_PROTECTED_INSTANCE_VARIABLES = T.let(T.un
256
273
  module AbstractController::Translation
257
274
  def l(object, **options); end
258
275
  def localize(object, **options); end
276
+ def raise_on_missing_translations; end
277
+ def raise_on_missing_translations=(val); end
259
278
  def t(key, **options); end
260
279
  def translate(key, **options); end
280
+
281
+ class << self
282
+ def raise_on_missing_translations; end
283
+ def raise_on_missing_translations=(val); end
284
+ end
261
285
  end
262
286
 
263
287
  module AbstractController::UrlFor
@@ -328,22 +352,22 @@ class ActionController::API < ::ActionController::Metal
328
352
  def __callbacks?; end
329
353
  def _process_action_callbacks; end
330
354
  def _renderers; end
331
- def _renderers=(_); end
355
+ def _renderers=(_arg0); end
332
356
  def _renderers?; end
333
357
  def _run_process_action_callbacks(&block); end
334
358
  def _wrapper_options; end
335
- def _wrapper_options=(_); end
359
+ def _wrapper_options=(_arg0); end
336
360
  def _wrapper_options?; end
337
361
  def default_url_options; end
338
- def default_url_options=(_); end
362
+ def default_url_options=(_arg0); end
339
363
  def default_url_options?; end
340
364
  def etaggers; end
341
- def etaggers=(_); end
365
+ def etaggers=(_arg0); end
342
366
  def etaggers?; end
343
367
  def logger; end
344
368
  def logger=(value); end
345
369
  def rescue_handlers; end
346
- def rescue_handlers=(_); end
370
+ def rescue_handlers=(_arg0); end
347
371
  def rescue_handlers?; end
348
372
 
349
373
  class << self
@@ -430,7 +454,7 @@ class ActionController::Base < ::ActionController::Metal
430
454
  include(::AbstractController::Callbacks)
431
455
  include(::ActionController::RequestForgeryProtection)
432
456
  include(::ActionController::ContentSecurityPolicy)
433
- include(::ActionController::FeaturePolicy)
457
+ include(::ActionController::PermissionsPolicy)
434
458
  include(::ActionController::Streaming)
435
459
  include(::ActionController::DataStreaming)
436
460
  include(::ActionController::HttpAuthentication::Basic::ControllerMethods)
@@ -461,7 +485,7 @@ class ActionController::Base < ::ActionController::Metal
461
485
  extend(::AbstractController::Callbacks::ClassMethods)
462
486
  extend(::ActionController::RequestForgeryProtection::ClassMethods)
463
487
  extend(::ActionController::ContentSecurityPolicy::ClassMethods)
464
- extend(::ActionController::FeaturePolicy::ClassMethods)
488
+ extend(::ActionController::PermissionsPolicy::ClassMethods)
465
489
  extend(::ActionController::HttpAuthentication::Basic::ControllerMethods::ClassMethods)
466
490
  extend(::ActionController::DefaultHeaders::ClassMethods)
467
491
  extend(::ActionController::Logging::ClassMethods)
@@ -472,21 +496,18 @@ class ActionController::Base < ::ActionController::Metal
472
496
  def __callbacks; end
473
497
  def __callbacks?; end
474
498
  def _helper_methods; end
475
- def _helper_methods=(_); end
499
+ def _helper_methods=(_arg0); end
476
500
  def _helper_methods?; end
477
- def _helpers; end
478
- def _helpers=(_); end
479
- def _helpers?; end
480
501
  def _process_action_callbacks; end
481
502
  def _renderers; end
482
- def _renderers=(_); end
503
+ def _renderers=(_arg0); end
483
504
  def _renderers?; end
484
505
  def _run_process_action_callbacks(&block); end
485
506
  def _view_cache_dependencies; end
486
- def _view_cache_dependencies=(_); end
507
+ def _view_cache_dependencies=(_arg0); end
487
508
  def _view_cache_dependencies?; end
488
509
  def _wrapper_options; end
489
- def _wrapper_options=(_); end
510
+ def _wrapper_options=(_arg0); end
490
511
  def _wrapper_options?; end
491
512
  def alert; end
492
513
  def allow_forgery_protection; end
@@ -502,29 +523,29 @@ class ActionController::Base < ::ActionController::Metal
502
523
  def default_static_extension; end
503
524
  def default_static_extension=(value); end
504
525
  def default_url_options; end
505
- def default_url_options=(_); end
526
+ def default_url_options=(_arg0); end
506
527
  def default_url_options?; end
507
528
  def enable_fragment_cache_logging; end
508
529
  def enable_fragment_cache_logging=(value); end
509
530
  def etag_with_template_digest; end
510
- def etag_with_template_digest=(_); end
531
+ def etag_with_template_digest=(_arg0); end
511
532
  def etag_with_template_digest?; end
512
533
  def etaggers; end
513
- def etaggers=(_); end
534
+ def etaggers=(_arg0); end
514
535
  def etaggers?; end
515
- def flash(*args, &block); end
536
+ def flash(*_arg0, &_arg1); end
516
537
  def forgery_protection_origin_check; end
517
538
  def forgery_protection_origin_check=(value); end
518
539
  def forgery_protection_strategy; end
519
540
  def forgery_protection_strategy=(value); end
520
541
  def fragment_cache_keys; end
521
- def fragment_cache_keys=(_); end
542
+ def fragment_cache_keys=(_arg0); end
522
543
  def fragment_cache_keys?; end
523
544
  def helpers_path; end
524
- def helpers_path=(_); end
545
+ def helpers_path=(_arg0); end
525
546
  def helpers_path?; end
526
547
  def include_all_helpers; end
527
- def include_all_helpers=(_); end
548
+ def include_all_helpers=(_arg0); end
528
549
  def include_all_helpers?; end
529
550
  def javascripts_dir; end
530
551
  def javascripts_dir=(value); end
@@ -542,10 +563,11 @@ class ActionController::Base < ::ActionController::Metal
542
563
  def request_forgery_protection_token; end
543
564
  def request_forgery_protection_token=(value); end
544
565
  def rescue_handlers; end
545
- def rescue_handlers=(_); end
566
+ def rescue_handlers=(_arg0); end
546
567
  def rescue_handlers?; end
547
568
  def stylesheets_dir; end
548
569
  def stylesheets_dir=(value); end
570
+ def urlsafe_csrf_tokens; end
549
571
 
550
572
  private
551
573
 
@@ -566,8 +588,6 @@ class ActionController::Base < ::ActionController::Metal
566
588
  def _helper_methods=(value); end
567
589
  def _helper_methods?; end
568
590
  def _helpers; end
569
- def _helpers=(value); end
570
- def _helpers?; end
571
591
  def _layout; end
572
592
  def _layout=(value); end
573
593
  def _layout?; end
@@ -641,6 +661,8 @@ class ActionController::Base < ::ActionController::Metal
641
661
  def rescue_handlers?; end
642
662
  def stylesheets_dir; end
643
663
  def stylesheets_dir=(value); end
664
+ def urlsafe_csrf_tokens; end
665
+ def urlsafe_csrf_tokens=(value); end
644
666
  def without_modules(*modules); end
645
667
  end
646
668
  end
@@ -667,7 +689,6 @@ module ActionController::BasicImplicitRender
667
689
  end
668
690
 
669
691
  module ActionController::Caching
670
- extend(::ActiveSupport::Autoload)
671
692
  extend(::ActiveSupport::Concern)
672
693
 
673
694
  include(::AbstractController::Caching::Fragments)
@@ -778,16 +799,6 @@ module ActionController::EtagWithTemplateDigest
778
799
  def pick_template_for_etag(options); end
779
800
  end
780
801
 
781
- module ActionController::FeaturePolicy
782
- extend(::ActiveSupport::Concern)
783
-
784
- mixes_in_class_methods(::ActionController::FeaturePolicy::ClassMethods)
785
- end
786
-
787
- module ActionController::FeaturePolicy::ClassMethods
788
- def feature_policy(**options, &block); end
789
- end
790
-
791
802
  module ActionController::Flash
792
803
  extend(::ActiveSupport::Concern)
793
804
 
@@ -834,7 +845,7 @@ module ActionController::Helpers
834
845
 
835
846
  class << self
836
847
  def helpers_path; end
837
- def helpers_path=(_); end
848
+ def helpers_path=(_arg0); end
838
849
  end
839
850
  end
840
851
 
@@ -948,13 +959,13 @@ module ActionController::Instrumentation
948
959
 
949
960
  mixes_in_class_methods(::ActionController::Instrumentation::ClassMethods)
950
961
 
951
- def process_action(*_); end
952
- def redirect_to(*_); end
953
- def render(*_); end
962
+ def process_action(*_arg0); end
963
+ def redirect_to(*_arg0); end
964
+ def render(*_arg0); end
954
965
  def send_data(data, options = T.unsafe(nil)); end
955
966
  def send_file(path, options = T.unsafe(nil)); end
956
967
  def view_runtime; end
957
- def view_runtime=(_); end
968
+ def view_runtime=(_arg0); end
958
969
 
959
970
  private
960
971
 
@@ -980,6 +991,7 @@ module ActionController::Live
980
991
 
981
992
  def process(name); end
982
993
  def response_body=(body); end
994
+ def send_stream(filename:, disposition: T.unsafe(nil), type: T.unsafe(nil)); end
983
995
 
984
996
  private
985
997
 
@@ -997,9 +1009,10 @@ class ActionController::Live::Buffer < ::ActionDispatch::Response::Buffer
997
1009
  def close; end
998
1010
  def connected?; end
999
1011
  def ignore_disconnect; end
1000
- def ignore_disconnect=(_); end
1012
+ def ignore_disconnect=(_arg0); end
1001
1013
  def on_error(&block); end
1002
1014
  def write(string); end
1015
+ def writeln(string); end
1003
1016
 
1004
1017
  private
1005
1018
 
@@ -1066,38 +1079,38 @@ end
1066
1079
  class ActionController::Metal < ::AbstractController::Base
1067
1080
  def initialize; end
1068
1081
 
1069
- def content_type(*args, &block); end
1082
+ def content_type(*_arg0, &_arg1); end
1070
1083
  def content_type=(arg); end
1071
1084
  def controller_name; end
1072
1085
  def dispatch(name, request, response); end
1073
- def headers(*args, &block); end
1074
- def location(*args, &block); end
1086
+ def headers(*_arg0, &_arg1); end
1087
+ def location(*_arg0, &_arg1); end
1075
1088
  def location=(arg); end
1076
- def media_type(*args, &block); end
1089
+ def media_type(*_arg0, &_arg1); end
1077
1090
  def middleware_stack; end
1078
- def middleware_stack=(_); end
1091
+ def middleware_stack=(_arg0); end
1079
1092
  def middleware_stack?; end
1080
1093
  def params; end
1081
1094
  def params=(val); end
1082
1095
  def performed?; end
1083
1096
  def request; end
1084
- def request=(_); end
1097
+ def request=(_arg0); end
1085
1098
  def reset_session; end
1086
1099
  def response; end
1087
- def response=(_); end
1100
+ def response=(_arg0); end
1088
1101
  def response_body=(body); end
1089
- def response_code(*args, &block); end
1090
- def session(*args, &block); end
1102
+ def response_code(*_arg0, &_arg1); end
1103
+ def session(*_arg0, &_arg1); end
1091
1104
  def set_request!(request); end
1092
1105
  def set_response!(response); end
1093
- def status(*args, &block); end
1106
+ def status(*_arg0, &_arg1); end
1094
1107
  def status=(arg); end
1095
1108
  def to_a; end
1096
1109
  def url_for(string); end
1097
1110
 
1098
1111
  class << self
1099
1112
  def action(name); end
1100
- def binary_params_for?(action); end
1113
+ def action_encoding_template(action); end
1101
1114
  def controller_name; end
1102
1115
  def dispatch(name, req, res); end
1103
1116
  def inherited(base); end
@@ -1106,7 +1119,7 @@ class ActionController::Metal < ::AbstractController::Base
1106
1119
  def middleware_stack; end
1107
1120
  def middleware_stack=(value); end
1108
1121
  def middleware_stack?; end
1109
- def use(*args, &block); end
1122
+ def use(*_arg0, &_arg1); end
1110
1123
  end
1111
1124
  end
1112
1125
 
@@ -1148,7 +1161,7 @@ class ActionController::MimeResponds::Collector
1148
1161
  def any_response?; end
1149
1162
  def custom(mime_type, &block); end
1150
1163
  def format; end
1151
- def format=(_); end
1164
+ def format=(_arg0); end
1152
1165
  def negotiate_format(request); end
1153
1166
  def response; end
1154
1167
  end
@@ -1186,18 +1199,26 @@ module ActionController::ParameterEncoding
1186
1199
  end
1187
1200
 
1188
1201
  module ActionController::ParameterEncoding::ClassMethods
1189
- def binary_params_for?(action); end
1202
+ def action_encoding_template(action); end
1190
1203
  def inherited(klass); end
1204
+ def param_encoding(action, param, encoding); end
1191
1205
  def setup_param_encode; end
1192
1206
  def skip_parameter_encoding(action); end
1193
1207
  end
1194
1208
 
1195
1209
  class ActionController::ParameterMissing < ::KeyError
1196
- def initialize(param); end
1210
+ def initialize(param, keys = T.unsafe(nil)); end
1197
1211
 
1212
+ def keys; end
1198
1213
  def param; end
1199
1214
  end
1200
1215
 
1216
+ class ActionController::ParameterMissing::Correction
1217
+ def initialize(error); end
1218
+
1219
+ def corrections; end
1220
+ end
1221
+
1201
1222
  class ActionController::Parameters
1202
1223
  def initialize(parameters = T.unsafe(nil)); end
1203
1224
 
@@ -1206,7 +1227,9 @@ class ActionController::Parameters
1206
1227
  def []=(key, value); end
1207
1228
  def always_permitted_parameters; end
1208
1229
  def always_permitted_parameters=(val); end
1209
- def as_json(*args, &block); end
1230
+ def as_json(*_arg0, &_arg1); end
1231
+ def compact; end
1232
+ def compact!; end
1210
1233
  def compact_blank; end
1211
1234
  def compact_blank!; end
1212
1235
  def converted_arrays; end
@@ -1217,24 +1240,24 @@ class ActionController::Parameters
1217
1240
  def delete_if(&block); end
1218
1241
  def dig(*keys); end
1219
1242
  def each(&block); end
1220
- def each_key(*args, &block); end
1243
+ def each_key(*_arg0, &_arg1); end
1221
1244
  def each_pair(&block); end
1222
1245
  def each_value(&block); end
1223
- def empty?(*args, &block); end
1246
+ def empty?(*_arg0, &_arg1); end
1224
1247
  def eql?(other); end
1225
1248
  def except(*keys); end
1226
1249
  def extract!(*keys); end
1227
1250
  def fetch(key, *args); end
1228
- def has_key?(*args, &block); end
1229
- def has_value?(*args, &block); end
1251
+ def has_key?(*_arg0, &_arg1); end
1252
+ def has_value?(*_arg0, &_arg1); end
1230
1253
  def hash; end
1231
- def include?(*args, &block); end
1254
+ def include?(*_arg0, &_arg1); end
1232
1255
  def init_with(coder); end
1233
1256
  def inspect; end
1234
1257
  def keep_if(&block); end
1235
- def key?(*args, &block); end
1236
- def keys(*args, &block); end
1237
- def member?(*args, &block); end
1258
+ def key?(*_arg0, &_arg1); end
1259
+ def keys(*_arg0, &_arg1); end
1260
+ def member?(*_arg0, &_arg1); end
1238
1261
  def merge(other_hash); end
1239
1262
  def merge!(other_hash); end
1240
1263
  def permit(*filters); end
@@ -1255,15 +1278,15 @@ class ActionController::Parameters
1255
1278
  def to_hash; end
1256
1279
  def to_param(*args); end
1257
1280
  def to_query(*args); end
1258
- def to_s(*args, &block); end
1281
+ def to_s(*_arg0, &_arg1); end
1259
1282
  def to_unsafe_h; end
1260
1283
  def to_unsafe_hash; end
1261
1284
  def transform_keys(&block); end
1262
1285
  def transform_keys!(&block); end
1263
1286
  def transform_values; end
1264
1287
  def transform_values!; end
1265
- def value?(*args, &block); end
1266
- def values(*args, &block); end
1288
+ def value?(*_arg0, &_arg1); end
1289
+ def values(*_arg0, &_arg1); end
1267
1290
  def values_at(*keys); end
1268
1291
  def with_defaults(other_hash); end
1269
1292
  def with_defaults!(other_hash); end
@@ -1273,7 +1296,7 @@ class ActionController::Parameters
1273
1296
  def each_nested_attribute; end
1274
1297
  def nested_attributes?; end
1275
1298
  def parameters; end
1276
- def permitted=(_); end
1299
+ def permitted=(_arg0); end
1277
1300
 
1278
1301
  private
1279
1302
 
@@ -1316,7 +1339,7 @@ module ActionController::ParamsWrapper
1316
1339
 
1317
1340
  mixes_in_class_methods(::ActionController::ParamsWrapper::ClassMethods)
1318
1341
 
1319
- def process_action(*_); end
1342
+ def process_action(*_arg0); end
1320
1343
 
1321
1344
  private
1322
1345
 
@@ -1359,6 +1382,16 @@ class ActionController::ParamsWrapper::Options < ::Struct
1359
1382
  end
1360
1383
  end
1361
1384
 
1385
+ module ActionController::PermissionsPolicy
1386
+ extend(::ActiveSupport::Concern)
1387
+
1388
+ mixes_in_class_methods(::ActionController::PermissionsPolicy::ClassMethods)
1389
+ end
1390
+
1391
+ module ActionController::PermissionsPolicy::ClassMethods
1392
+ def permissions_policy(**options, &block); end
1393
+ end
1394
+
1362
1395
  class ActionController::Railtie < ::Rails::Railtie
1363
1396
  end
1364
1397
 
@@ -1380,6 +1413,7 @@ module ActionController::Redirecting
1380
1413
 
1381
1414
  def _compute_redirect_to_location(request, options); end
1382
1415
  def redirect_back(fallback_location:, allow_other_host: T.unsafe(nil), **args); end
1416
+ def redirect_back_or_to(fallback_location, allow_other_host: T.unsafe(nil), **args); end
1383
1417
  def redirect_to(options = T.unsafe(nil), response_options = T.unsafe(nil)); end
1384
1418
 
1385
1419
  private
@@ -1402,6 +1436,7 @@ class ActionController::Renderer
1402
1436
  def defaults; end
1403
1437
  def new(env = T.unsafe(nil)); end
1404
1438
  def render(*args); end
1439
+ def render_to_string(*args); end
1405
1440
  def with_defaults(defaults); end
1406
1441
 
1407
1442
  private
@@ -1455,10 +1490,10 @@ module ActionController::Rendering
1455
1490
 
1456
1491
  mixes_in_class_methods(::ActionController::Rendering::ClassMethods)
1457
1492
 
1458
- def process_action(*_); end
1493
+ def process_action(*_arg0); end
1459
1494
  def render(*args); end
1460
1495
  def render_to_body(options = T.unsafe(nil)); end
1461
- def render_to_string(*_); end
1496
+ def render_to_string(*_arg0); end
1462
1497
 
1463
1498
  private
1464
1499
 
@@ -1475,7 +1510,7 @@ end
1475
1510
 
1476
1511
  module ActionController::Rendering::ClassMethods
1477
1512
  def inherited(klass); end
1478
- def render(*args, &block); end
1513
+ def render(*_arg0, &_arg1); end
1479
1514
  def renderer; end
1480
1515
  def setup_renderer!; end
1481
1516
  end
@@ -1495,12 +1530,19 @@ module ActionController::RequestForgeryProtection
1495
1530
  private
1496
1531
 
1497
1532
  def any_authenticity_token_valid?; end
1533
+ def compare_with_global_token(token, session); end
1498
1534
  def compare_with_real_token(token, session); end
1535
+ def csrf_token_hmac(session, identifier); end
1536
+ def decode_csrf_token(encoded_csrf_token); end
1537
+ def encode_csrf_token(csrf_token); end
1499
1538
  def form_authenticity_param; end
1500
1539
  def form_authenticity_token(form_options: T.unsafe(nil)); end
1540
+ def generate_csrf_token; end
1541
+ def global_csrf_token(session); end
1501
1542
  def handle_unverified_request; end
1502
1543
  def mark_for_same_origin_verification!; end
1503
1544
  def marked_for_same_origin_verification?; end
1545
+ def mask_token(raw_token); end
1504
1546
  def masked_authenticity_token(session, form_options: T.unsafe(nil)); end
1505
1547
  def non_xhr_javascript_response?; end
1506
1548
  def normalize_action_path(action_path); end
@@ -1547,7 +1589,7 @@ class ActionController::RequestForgeryProtection::ProtectionMethods::NullSession
1547
1589
  end
1548
1590
 
1549
1591
  class ActionController::RequestForgeryProtection::ProtectionMethods::NullSession::NullCookieJar < ::ActionDispatch::Cookies::CookieJar
1550
- def write(*_); end
1592
+ def write(*_arg0); end
1551
1593
  end
1552
1594
 
1553
1595
  class ActionController::RequestForgeryProtection::ProtectionMethods::NullSession::NullSessionHash < ::Rack::Session::Abstract::SessionHash
@@ -1572,7 +1614,7 @@ module ActionController::Rescue
1572
1614
 
1573
1615
  private
1574
1616
 
1575
- def process_action(*_); end
1617
+ def process_action(*_arg0); end
1576
1618
  end
1577
1619
 
1578
1620
  class ActionController::RespondToMismatchError < ::ActionController::ActionControllerError
@@ -1594,8 +1636,6 @@ end
1594
1636
  ActionController::SessionOverflowError::DEFAULT_MESSAGE = T.let(T.unsafe(nil), String)
1595
1637
 
1596
1638
  module ActionController::Streaming
1597
- extend(::ActiveSupport::Concern)
1598
-
1599
1639
 
1600
1640
  private
1601
1641
 
@@ -1614,6 +1654,8 @@ end
1614
1654
 
1615
1655
  class ActionController::TestCase < ::ActiveSupport::TestCase
1616
1656
  include(::ActiveSupport::Testing::ConstantLookup)
1657
+ include(::ActionDispatch::Assertions::ResponseAssertions)
1658
+ include(::ActionDispatch::Assertions::RoutingAssertions)
1617
1659
  include(::Rails::Dom::Testing::Assertions::DomAssertions)
1618
1660
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
1619
1661
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
@@ -1622,14 +1664,12 @@ class ActionController::TestCase < ::ActiveSupport::TestCase
1622
1664
  include(::ActionDispatch::TestProcess)
1623
1665
  include(::ActionController::TestCase::Behavior)
1624
1666
  include(::ActionController::TemplateAssertions)
1625
- include(::ActionDispatch::Assertions::ResponseAssertions)
1626
- include(::ActionDispatch::Assertions::RoutingAssertions)
1627
1667
  include(::ActionDispatch::Assertions)
1628
1668
  extend(::ActiveSupport::Testing::ConstantLookup::ClassMethods)
1629
1669
  extend(::ActionController::TestCase::Behavior::ClassMethods)
1630
1670
 
1631
1671
  def _controller_class; end
1632
- def _controller_class=(_); end
1672
+ def _controller_class=(_arg0); end
1633
1673
  def _controller_class?; end
1634
1674
 
1635
1675
  class << self
@@ -1671,7 +1711,9 @@ module ActionController::TestCase::Behavior
1671
1711
 
1672
1712
  def check_required_ivars; end
1673
1713
  def document_root_element; end
1714
+ def process_controller_response(action, cookies, xhr); end
1674
1715
  def scrub_env!(env); end
1716
+ def setup_request(controller_class_name, action, parameters, session, flash, xhr); end
1675
1717
  end
1676
1718
 
1677
1719
  module ActionController::TestCase::Behavior::ClassMethods
@@ -1682,7 +1724,6 @@ module ActionController::TestCase::Behavior::ClassMethods
1682
1724
  end
1683
1725
 
1684
1726
  module ActionController::Testing
1685
- extend(::ActiveSupport::Concern)
1686
1727
  end
1687
1728
 
1688
1729
  module ActionController::Testing::Functional
@@ -1715,6 +1756,19 @@ module ActionController::UrlFor
1715
1756
  end
1716
1757
 
1717
1758
  class ActionController::UrlGenerationError < ::ActionController::ActionControllerError
1759
+ include(::DidYouMean::Correctable)
1760
+
1761
+ def initialize(message, routes = T.unsafe(nil), route_name = T.unsafe(nil), method_name = T.unsafe(nil)); end
1762
+
1763
+ def method_name; end
1764
+ def route_name; end
1765
+ def routes; end
1766
+ end
1767
+
1768
+ class ActionController::UrlGenerationError::Correction
1769
+ def initialize(error); end
1770
+
1771
+ def corrections; end
1718
1772
  end
1719
1773
 
1720
1774
  class ActionController::LiveTestResponse < ::ActionController::Live::Response
@@ -1814,8 +1868,9 @@ ActionDispatch::AssertionResponse::GENERIC_RESPONSE_CODES = T.let(T.unsafe(nil),
1814
1868
  module ActionDispatch::Assertions
1815
1869
  include(::ActionDispatch::Assertions::ResponseAssertions)
1816
1870
  include(::ActionDispatch::Assertions::RoutingAssertions)
1817
- extend(::ActiveSupport::Concern)
1818
-
1871
+ include(::Rails::Dom::Testing::Assertions::DomAssertions)
1872
+ include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
1873
+ include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
1819
1874
  include(::Rails::Dom::Testing::Assertions)
1820
1875
 
1821
1876
  def html_document; end
@@ -2032,7 +2087,7 @@ class ActionDispatch::Cookies::CookieJar
2032
2087
  def has_key?(name); end
2033
2088
  def key?(name); end
2034
2089
  def request; end
2035
- def to_hash(*_); end
2090
+ def to_hash(*_arg0); end
2036
2091
  def to_header; end
2037
2092
  def update(other_hash); end
2038
2093
  def update_cookies_from_jar; end
@@ -2185,7 +2240,7 @@ class ActionDispatch::DebugView < ::ActionView::Base
2185
2240
  def debug_params(params); end
2186
2241
  def params_valid?; end
2187
2242
  def protect_against_forgery?; end
2188
- def render(*_); end
2243
+ def render(*_arg0); end
2189
2244
  end
2190
2245
 
2191
2246
  ActionDispatch::DebugView::RESCUES_TEMPLATE_PATH = T.let(T.unsafe(nil), String)
@@ -2247,62 +2302,6 @@ class ActionDispatch::Executor
2247
2302
  def call(env); end
2248
2303
  end
2249
2304
 
2250
- class ActionDispatch::FeaturePolicy
2251
- def initialize; end
2252
-
2253
- def accelerometer(*sources); end
2254
- def ambient_light_sensor(*sources); end
2255
- def autoplay(*sources); end
2256
- def build(context = T.unsafe(nil)); end
2257
- def camera(*sources); end
2258
- def directives; end
2259
- def encrypted_media(*sources); end
2260
- def fullscreen(*sources); end
2261
- def geolocation(*sources); end
2262
- def gyroscope(*sources); end
2263
- def magnetometer(*sources); end
2264
- def microphone(*sources); end
2265
- def midi(*sources); end
2266
- def payment(*sources); end
2267
- def picture_in_picture(*sources); end
2268
- def speaker(*sources); end
2269
- def usb(*sources); end
2270
- def vibrate(*sources); end
2271
- def vr(*sources); end
2272
-
2273
- private
2274
-
2275
- def apply_mapping(source); end
2276
- def apply_mappings(sources); end
2277
- def build_directive(sources, context); end
2278
- def build_directives(context); end
2279
- def initialize_copy(other); end
2280
- def resolve_source(source, context); end
2281
- end
2282
-
2283
- class ActionDispatch::FeaturePolicy::Middleware
2284
- def initialize(app); end
2285
-
2286
- def call(env); end
2287
-
2288
- private
2289
-
2290
- def html_response?(headers); end
2291
- def policy_empty?(policy); end
2292
- def policy_present?(headers); end
2293
- end
2294
-
2295
- ActionDispatch::FeaturePolicy::Middleware::CONTENT_TYPE = T.let(T.unsafe(nil), String)
2296
-
2297
- ActionDispatch::FeaturePolicy::Middleware::POLICY = T.let(T.unsafe(nil), String)
2298
-
2299
- module ActionDispatch::FeaturePolicy::Request
2300
- def feature_policy; end
2301
- def feature_policy=(policy); end
2302
- end
2303
-
2304
- ActionDispatch::FeaturePolicy::Request::POLICY = T.let(T.unsafe(nil), String)
2305
-
2306
2305
  class ActionDispatch::Flash
2307
2306
  class << self
2308
2307
  def new(app); end
@@ -2357,7 +2356,7 @@ class ActionDispatch::Flash::FlashNow
2357
2356
  def []=(k, v); end
2358
2357
  def alert=(message); end
2359
2358
  def flash; end
2360
- def flash=(_); end
2359
+ def flash=(_arg0); end
2361
2360
  def notice=(message); end
2362
2361
  end
2363
2362
 
@@ -2372,18 +2371,21 @@ module ActionDispatch::Flash::RequestMethods
2372
2371
  end
2373
2372
 
2374
2373
  class ActionDispatch::HostAuthorization
2375
- def initialize(app, hosts, response_app = T.unsafe(nil)); end
2374
+ def initialize(app, hosts, deprecated_response_app = T.unsafe(nil), exclude: T.unsafe(nil), response_app: T.unsafe(nil)); end
2376
2375
 
2377
2376
  def call(env); end
2378
2377
 
2379
2378
  private
2380
2379
 
2381
2380
  def authorized?(request); end
2381
+ def excluded?(request); end
2382
2382
  def mark_as_authorized(request); end
2383
2383
  end
2384
2384
 
2385
2385
  ActionDispatch::HostAuthorization::DEFAULT_RESPONSE_APP = T.let(T.unsafe(nil), Proc)
2386
2386
 
2387
+ ActionDispatch::HostAuthorization::HOSTNAME = T.let(T.unsafe(nil), Regexp)
2388
+
2387
2389
  class ActionDispatch::HostAuthorization::Permissions
2388
2390
  def initialize(hosts); end
2389
2391
 
@@ -2397,6 +2399,10 @@ class ActionDispatch::HostAuthorization::Permissions
2397
2399
  def sanitize_string(host); end
2398
2400
  end
2399
2401
 
2402
+ ActionDispatch::HostAuthorization::VALID_FORWARDED_HOST = T.let(T.unsafe(nil), Regexp)
2403
+
2404
+ ActionDispatch::HostAuthorization::VALID_ORIGIN_HOST = T.let(T.unsafe(nil), Regexp)
2405
+
2400
2406
  module ActionDispatch::Http
2401
2407
  extend(::ActiveSupport::Autoload)
2402
2408
  end
@@ -2453,6 +2459,8 @@ ActionDispatch::Http::Cache::Response::MUST_REVALIDATE = T.let(T.unsafe(nil), St
2453
2459
 
2454
2460
  ActionDispatch::Http::Cache::Response::NO_CACHE = T.let(T.unsafe(nil), String)
2455
2461
 
2462
+ ActionDispatch::Http::Cache::Response::NO_STORE = T.let(T.unsafe(nil), String)
2463
+
2456
2464
  ActionDispatch::Http::Cache::Response::PRIVATE = T.let(T.unsafe(nil), String)
2457
2465
 
2458
2466
  ActionDispatch::Http::Cache::Response::PUBLIC = T.let(T.unsafe(nil), String)
@@ -2574,9 +2582,10 @@ end
2574
2582
 
2575
2583
  ActionDispatch::Http::MimeNegotiation::BROWSER_LIKE_ACCEPTS = T.let(T.unsafe(nil), Regexp)
2576
2584
 
2577
- ActionDispatch::Http::MimeNegotiation::RESCUABLE_MIME_FORMAT_ERRORS = T.let(T.unsafe(nil), Array)
2585
+ class ActionDispatch::Http::MimeNegotiation::InvalidType < ::Mime::Type::InvalidMimeType
2586
+ end
2578
2587
 
2579
- ActionDispatch::Http::ParameterFilter = ActiveSupport::ParameterFilter
2588
+ ActionDispatch::Http::MimeNegotiation::RESCUABLE_MIME_FORMAT_ERRORS = T.let(T.unsafe(nil), Array)
2580
2589
 
2581
2590
  module ActionDispatch::Http::Parameters
2582
2591
  extend(::ActiveSupport::Concern)
@@ -2590,11 +2599,9 @@ module ActionDispatch::Http::Parameters
2590
2599
 
2591
2600
  private
2592
2601
 
2593
- def binary_params_for?(controller, action); end
2594
2602
  def log_parse_error_once; end
2595
2603
  def params_parsers; end
2596
2604
  def parse_formatted_parameters(parsers); end
2597
- def set_binary_encoding(params, controller, action); end
2598
2605
  end
2599
2606
 
2600
2607
  module ActionDispatch::Http::Parameters::ClassMethods
@@ -2669,19 +2676,19 @@ class ActionDispatch::Http::UploadedFile
2669
2676
 
2670
2677
  def close(unlink_now = T.unsafe(nil)); end
2671
2678
  def content_type; end
2672
- def content_type=(_); end
2679
+ def content_type=(_arg0); end
2673
2680
  def eof?; end
2674
2681
  def headers; end
2675
- def headers=(_); end
2682
+ def headers=(_arg0); end
2676
2683
  def open; end
2677
2684
  def original_filename; end
2678
- def original_filename=(_); end
2685
+ def original_filename=(_arg0); end
2679
2686
  def path; end
2680
2687
  def read(length = T.unsafe(nil), buffer = T.unsafe(nil)); end
2681
2688
  def rewind; end
2682
2689
  def size; end
2683
2690
  def tempfile; end
2684
- def tempfile=(_); end
2691
+ def tempfile=(_arg0); end
2685
2692
  def to_io; end
2686
2693
  def to_path; end
2687
2694
  end
@@ -2704,12 +2711,12 @@ module ActionDispatch::Integration::RequestHelpers
2704
2711
  end
2705
2712
 
2706
2713
  module ActionDispatch::Integration::Runner
2714
+ include(::ActionDispatch::Assertions::ResponseAssertions)
2715
+ include(::ActionDispatch::Assertions::RoutingAssertions)
2707
2716
  include(::Rails::Dom::Testing::Assertions::DomAssertions)
2708
2717
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
2709
2718
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
2710
2719
  include(::Rails::Dom::Testing::Assertions)
2711
- include(::ActionDispatch::Assertions::ResponseAssertions)
2712
- include(::ActionDispatch::Assertions::RoutingAssertions)
2713
2720
  include(::ActionDispatch::Assertions)
2714
2721
 
2715
2722
  def initialize(*args, &blk); end
@@ -2717,26 +2724,26 @@ module ActionDispatch::Integration::Runner
2717
2724
  def app; end
2718
2725
  def assertions; end
2719
2726
  def assertions=(assertions); end
2720
- def assigns(*args); end
2727
+ def assigns(*_arg0, &_arg1); end
2721
2728
  def before_setup; end
2722
- def cookies(*args); end
2729
+ def cookies(*_arg0, &_arg1); end
2723
2730
  def copy_session_variables!; end
2724
2731
  def create_session(app); end
2725
2732
  def default_url_options; end
2726
2733
  def default_url_options=(options); end
2727
- def delete(*args); end
2728
- def follow_redirect!(*args); end
2729
- def get(*args); end
2730
- def head(*args); end
2734
+ def delete(*_arg0, &_arg1); end
2735
+ def follow_redirect!(*_arg0, &_arg1); end
2736
+ def get(*_arg0, &_arg1); end
2737
+ def head(*_arg0, &_arg1); end
2731
2738
  def integration_session; end
2732
2739
  def open_session; end
2733
- def patch(*args); end
2734
- def post(*args); end
2735
- def put(*args); end
2740
+ def patch(*_arg0, &_arg1); end
2741
+ def post(*_arg0, &_arg1); end
2742
+ def put(*_arg0, &_arg1); end
2736
2743
  def remove!; end
2737
2744
  def reset!; end
2738
2745
  def root_session; end
2739
- def root_session=(_); end
2746
+ def root_session=(_arg0); end
2740
2747
 
2741
2748
  private
2742
2749
 
@@ -2748,12 +2755,12 @@ ActionDispatch::Integration::Runner::APP_SESSIONS = T.let(T.unsafe(nil), Hash)
2748
2755
 
2749
2756
  class ActionDispatch::Integration::Session
2750
2757
  include(::Minitest::Assertions)
2758
+ include(::ActionDispatch::Assertions::ResponseAssertions)
2759
+ include(::ActionDispatch::Assertions::RoutingAssertions)
2751
2760
  include(::Rails::Dom::Testing::Assertions::DomAssertions)
2752
2761
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
2753
2762
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
2754
2763
  include(::Rails::Dom::Testing::Assertions)
2755
- include(::ActionDispatch::Assertions::ResponseAssertions)
2756
- include(::ActionDispatch::Assertions::RoutingAssertions)
2757
2764
  include(::ActionDispatch::Assertions)
2758
2765
  include(::ActionDispatch::Integration::RequestHelpers)
2759
2766
  include(::ActionDispatch::TestProcess::FixtureFile)
@@ -2764,31 +2771,31 @@ class ActionDispatch::Integration::Session
2764
2771
  def initialize(app); end
2765
2772
 
2766
2773
  def accept; end
2767
- def accept=(_); end
2768
- def body(*args, &block); end
2774
+ def accept=(_arg0); end
2775
+ def body(*_arg0, &_arg1); end
2769
2776
  def controller; end
2770
2777
  def cookies; end
2771
2778
  def default_url_options; end
2772
- def default_url_options=(_); end
2779
+ def default_url_options=(_arg0); end
2773
2780
  def default_url_options?; end
2774
- def headers(*args, &block); end
2781
+ def headers(*_arg0, &_arg1); end
2775
2782
  def host; end
2776
- def host!(_); end
2777
- def host=(_); end
2783
+ def host!(_arg0); end
2784
+ def host=(_arg0); end
2778
2785
  def https!(flag = T.unsafe(nil)); end
2779
2786
  def https?; end
2780
- def path(*args, &block); end
2787
+ def path(*_arg0, &_arg1); end
2781
2788
  def process(method, path, params: T.unsafe(nil), headers: T.unsafe(nil), env: T.unsafe(nil), xhr: T.unsafe(nil), as: T.unsafe(nil)); end
2782
- def redirect?(*args, &block); end
2789
+ def redirect?(*_arg0, &_arg1); end
2783
2790
  def remote_addr; end
2784
- def remote_addr=(_); end
2791
+ def remote_addr=(_arg0); end
2785
2792
  def request; end
2786
2793
  def request_count; end
2787
- def request_count=(_); end
2794
+ def request_count=(_arg0); end
2788
2795
  def reset!; end
2789
2796
  def response; end
2790
- def status(*args, &block); end
2791
- def status_message(*args, &block); end
2797
+ def status(*_arg0, &_arg1); end
2798
+ def status_message(*_arg0, &_arg1); end
2792
2799
  def url_options; end
2793
2800
 
2794
2801
  private
@@ -2808,12 +2815,12 @@ ActionDispatch::Integration::Session::DEFAULT_HOST = T.let(T.unsafe(nil), String
2808
2815
 
2809
2816
  class ActionDispatch::IntegrationTest < ::ActiveSupport::TestCase
2810
2817
  include(::ActionDispatch::TestProcess::FixtureFile)
2818
+ include(::ActionDispatch::Assertions::ResponseAssertions)
2819
+ include(::ActionDispatch::Assertions::RoutingAssertions)
2811
2820
  include(::Rails::Dom::Testing::Assertions::DomAssertions)
2812
2821
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
2813
2822
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
2814
2823
  include(::Rails::Dom::Testing::Assertions)
2815
- include(::ActionDispatch::Assertions::ResponseAssertions)
2816
- include(::ActionDispatch::Assertions::RoutingAssertions)
2817
2824
  include(::ActionDispatch::Assertions)
2818
2825
  include(::ActionDispatch::Integration::Runner)
2819
2826
  include(::ActionController::TemplateAssertions)
@@ -2825,12 +2832,12 @@ class ActionDispatch::IntegrationTest < ::ActiveSupport::TestCase
2825
2832
  end
2826
2833
 
2827
2834
  module ActionDispatch::IntegrationTest::Behavior
2835
+ include(::ActionDispatch::Assertions::ResponseAssertions)
2836
+ include(::ActionDispatch::Assertions::RoutingAssertions)
2828
2837
  include(::Rails::Dom::Testing::Assertions::DomAssertions)
2829
2838
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable)
2830
2839
  include(::Rails::Dom::Testing::Assertions::SelectorAssertions)
2831
2840
  include(::Rails::Dom::Testing::Assertions)
2832
- include(::ActionDispatch::Assertions::ResponseAssertions)
2833
- include(::ActionDispatch::Assertions::RoutingAssertions)
2834
2841
  include(::ActionDispatch::Assertions)
2835
2842
  include(::ActionDispatch::Integration::Runner)
2836
2843
  include(::ActionController::TemplateAssertions)
@@ -2883,10 +2890,10 @@ class ActionDispatch::Journey::Format::Parameter < ::Struct
2883
2890
  def name=(_); end
2884
2891
 
2885
2892
  class << self
2886
- def [](*_); end
2893
+ def [](*_arg0); end
2887
2894
  def inspect; end
2888
2895
  def members; end
2889
- def new(*_); end
2896
+ def new(*_arg0); end
2890
2897
  end
2891
2898
  end
2892
2899
 
@@ -2894,14 +2901,14 @@ class ActionDispatch::Journey::Formatter
2894
2901
  def initialize(routes); end
2895
2902
 
2896
2903
  def clear; end
2897
- def generate(name, options, path_parameters, parameterize = T.unsafe(nil)); end
2904
+ def generate(name, options, path_parameters); end
2898
2905
  def routes; end
2899
2906
 
2900
2907
  private
2901
2908
 
2902
2909
  def build_cache; end
2903
2910
  def cache; end
2904
- def extract_parameterized_parts(route, options, recall, parameterize = T.unsafe(nil)); end
2911
+ def extract_parameterized_parts(route, options, recall); end
2905
2912
  def match_route(name, options); end
2906
2913
  def missing_keys(route, parts); end
2907
2914
  def named_routes; end
@@ -2909,6 +2916,26 @@ class ActionDispatch::Journey::Formatter
2909
2916
  def possibles(cache, options, depth = T.unsafe(nil)); end
2910
2917
  end
2911
2918
 
2919
+ class ActionDispatch::Journey::Formatter::MissingRoute
2920
+ def initialize(constraints, missing_keys, unmatched_keys, routes, name); end
2921
+
2922
+ def constraints; end
2923
+ def message; end
2924
+ def missing_keys; end
2925
+ def name; end
2926
+ def params; end
2927
+ def path(method_name); end
2928
+ def routes; end
2929
+ def unmatched_keys; end
2930
+ end
2931
+
2932
+ class ActionDispatch::Journey::Formatter::RouteWithParams
2933
+ def initialize(route, parameterized_parts, params); end
2934
+
2935
+ def params; end
2936
+ def path(_); end
2937
+ end
2938
+
2912
2939
  module ActionDispatch::Journey::GTG
2913
2940
  end
2914
2941
 
@@ -2918,7 +2945,6 @@ class ActionDispatch::Journey::GTG::Builder
2918
2945
  def ast; end
2919
2946
  def endpoints; end
2920
2947
  def firstpos(node); end
2921
- def followpos(node); end
2922
2948
  def lastpos(node); end
2923
2949
  def nullable?(node); end
2924
2950
  def root; end
@@ -2927,11 +2953,10 @@ class ActionDispatch::Journey::GTG::Builder
2927
2953
  private
2928
2954
 
2929
2955
  def build_followpos; end
2930
- def followpos_table; end
2931
2956
  def symbol(edge); end
2932
2957
  end
2933
2958
 
2934
- ActionDispatch::Journey::GTG::Builder::DUMMY = T.let(T.unsafe(nil), ActionDispatch::Journey::Nodes::Dummy)
2959
+ ActionDispatch::Journey::GTG::Builder::DUMMY_END_NODE = T.let(T.unsafe(nil), ActionDispatch::Journey::Nodes::Dummy)
2935
2960
 
2936
2961
  class ActionDispatch::Journey::GTG::MatchData
2937
2962
  def initialize(memos); end
@@ -2962,7 +2987,7 @@ class ActionDispatch::Journey::GTG::TransitionTable
2962
2987
  def eclosure(t); end
2963
2988
  def memo(idx); end
2964
2989
  def memos; end
2965
- def move(t, a); end
2990
+ def move(t, full_string, start_index, end_index); end
2966
2991
  def states; end
2967
2992
  def to_svg; end
2968
2993
  def transitions; end
@@ -2973,6 +2998,10 @@ class ActionDispatch::Journey::GTG::TransitionTable
2973
2998
  def states_hash_for(sym); end
2974
2999
  end
2975
3000
 
3001
+ ActionDispatch::Journey::GTG::TransitionTable::DEFAULT_EXP = T.let(T.unsafe(nil), Regexp)
3002
+
3003
+ ActionDispatch::Journey::GTG::TransitionTable::DEFAULT_EXP_ANCHORED = T.let(T.unsafe(nil), Regexp)
3004
+
2976
3005
  module ActionDispatch::Journey::NFA
2977
3006
  end
2978
3007
 
@@ -2988,7 +3017,7 @@ class ActionDispatch::Journey::Nodes::Binary < ::ActionDispatch::Journey::Nodes:
2988
3017
 
2989
3018
  def children; end
2990
3019
  def right; end
2991
- def right=(_); end
3020
+ def right=(_arg0); end
2992
3021
  end
2993
3022
 
2994
3023
  class ActionDispatch::Journey::Nodes::Cat < ::ActionDispatch::Journey::Nodes::Binary
@@ -3025,10 +3054,10 @@ class ActionDispatch::Journey::Nodes::Node
3025
3054
  def each(&block); end
3026
3055
  def group?; end
3027
3056
  def left; end
3028
- def left=(_); end
3057
+ def left=(_arg0); end
3029
3058
  def literal?; end
3030
3059
  def memo; end
3031
- def memo=(_); end
3060
+ def memo=(_arg0); end
3032
3061
  def name; end
3033
3062
  def star?; end
3034
3063
  def symbol?; end
@@ -3051,18 +3080,22 @@ class ActionDispatch::Journey::Nodes::Slash < ::ActionDispatch::Journey::Nodes::
3051
3080
  end
3052
3081
 
3053
3082
  class ActionDispatch::Journey::Nodes::Star < ::ActionDispatch::Journey::Nodes::Unary
3083
+ def initialize(left); end
3084
+
3054
3085
  def name; end
3086
+ def regexp; end
3087
+ def regexp=(_arg0); end
3055
3088
  def star?; end
3056
3089
  def type; end
3057
3090
  end
3058
3091
 
3059
3092
  class ActionDispatch::Journey::Nodes::Symbol < ::ActionDispatch::Journey::Nodes::Terminal
3060
- def initialize(left); end
3093
+ def initialize(left, regexp = T.unsafe(nil)); end
3061
3094
 
3062
3095
  def default_regexp?; end
3063
3096
  def name; end
3064
3097
  def regexp; end
3065
- def regexp=(_); end
3098
+ def regexp=(_arg0); end
3066
3099
  def symbol; end
3067
3100
  def symbol?; end
3068
3101
  def type; end
@@ -3070,6 +3103,8 @@ end
3070
3103
 
3071
3104
  ActionDispatch::Journey::Nodes::Symbol::DEFAULT_EXP = T.let(T.unsafe(nil), Regexp)
3072
3105
 
3106
+ ActionDispatch::Journey::Nodes::Symbol::GREEDY_EXP = T.let(T.unsafe(nil), Regexp)
3107
+
3073
3108
  class ActionDispatch::Journey::Nodes::Terminal < ::ActionDispatch::Journey::Nodes::Node
3074
3109
  def symbol; end
3075
3110
  def terminal?; end
@@ -3124,6 +3159,7 @@ class ActionDispatch::Journey::Path::Pattern
3124
3159
  def optional_names; end
3125
3160
  def required_names; end
3126
3161
  def requirements; end
3162
+ def requirements_anchored?; end
3127
3163
  def requirements_for_missing_keys_check; end
3128
3164
  def source; end
3129
3165
  def spec; end
@@ -3133,11 +3169,6 @@ class ActionDispatch::Journey::Path::Pattern
3133
3169
 
3134
3170
  def offsets; end
3135
3171
  def regexp_visitor; end
3136
-
3137
- class << self
3138
- def build(path, requirements, separators, anchored); end
3139
- def from_string(string); end
3140
- end
3141
3172
  end
3142
3173
 
3143
3174
  class ActionDispatch::Journey::Path::Pattern::AnchoredRegexp < ::ActionDispatch::Journey::Visitors::Visitor
@@ -3308,7 +3339,7 @@ class ActionDispatch::Journey::Router
3308
3339
  def eager_load!; end
3309
3340
  def recognize(rails_req); end
3310
3341
  def routes; end
3311
- def routes=(_); end
3342
+ def routes=(_arg0); end
3312
3343
  def serve(req); end
3313
3344
  def visualizer; end
3314
3345
 
@@ -3516,7 +3547,7 @@ class ActionDispatch::MiddlewareStack
3516
3547
  def insert_before(index, klass, *args, &block); end
3517
3548
  def last; end
3518
3549
  def middlewares; end
3519
- def middlewares=(_); end
3550
+ def middlewares=(_arg0); end
3520
3551
  def move(target, source); end
3521
3552
  def move_after(target, source); end
3522
3553
  def move_before(target, source); end
@@ -3556,12 +3587,68 @@ end
3556
3587
  class ActionDispatch::MissingController < ::NameError
3557
3588
  end
3558
3589
 
3590
+ class ActionDispatch::PermissionsPolicy
3591
+ def initialize; end
3592
+
3593
+ def accelerometer(*sources); end
3594
+ def ambient_light_sensor(*sources); end
3595
+ def autoplay(*sources); end
3596
+ def build(context = T.unsafe(nil)); end
3597
+ def camera(*sources); end
3598
+ def directives; end
3599
+ def encrypted_media(*sources); end
3600
+ def fullscreen(*sources); end
3601
+ def geolocation(*sources); end
3602
+ def gyroscope(*sources); end
3603
+ def magnetometer(*sources); end
3604
+ def microphone(*sources); end
3605
+ def midi(*sources); end
3606
+ def payment(*sources); end
3607
+ def picture_in_picture(*sources); end
3608
+ def speaker(*sources); end
3609
+ def usb(*sources); end
3610
+ def vibrate(*sources); end
3611
+ def vr(*sources); end
3612
+
3613
+ private
3614
+
3615
+ def apply_mapping(source); end
3616
+ def apply_mappings(sources); end
3617
+ def build_directive(sources, context); end
3618
+ def build_directives(context); end
3619
+ def initialize_copy(other); end
3620
+ def resolve_source(source, context); end
3621
+ end
3622
+
3623
+ class ActionDispatch::PermissionsPolicy::Middleware
3624
+ def initialize(app); end
3625
+
3626
+ def call(env); end
3627
+
3628
+ private
3629
+
3630
+ def html_response?(headers); end
3631
+ def policy_empty?(policy); end
3632
+ def policy_present?(headers); end
3633
+ end
3634
+
3635
+ ActionDispatch::PermissionsPolicy::Middleware::CONTENT_TYPE = T.let(T.unsafe(nil), String)
3636
+
3637
+ ActionDispatch::PermissionsPolicy::Middleware::POLICY = T.let(T.unsafe(nil), String)
3638
+
3639
+ module ActionDispatch::PermissionsPolicy::Request
3640
+ def permissions_policy; end
3641
+ def permissions_policy=(policy); end
3642
+ end
3643
+
3644
+ ActionDispatch::PermissionsPolicy::Request::POLICY = T.let(T.unsafe(nil), String)
3645
+
3559
3646
  class ActionDispatch::PublicExceptions
3560
3647
  def initialize(public_path); end
3561
3648
 
3562
3649
  def call(env); end
3563
3650
  def public_path; end
3564
- def public_path=(_); end
3651
+ def public_path=(_arg0); end
3565
3652
 
3566
3653
  private
3567
3654
 
@@ -3610,8 +3697,9 @@ class ActionDispatch::Request
3610
3697
  include(::ActionDispatch::Http::FilterParameters)
3611
3698
  include(::ActionDispatch::Http::URL)
3612
3699
  include(::ActionDispatch::ContentSecurityPolicy::Request)
3613
- include(::ActionDispatch::FeaturePolicy::Request)
3700
+ include(::ActionDispatch::PermissionsPolicy::Request)
3614
3701
  include(::Rack::Request::Env)
3702
+ include(::ActionDispatch::RequestCookieMethods)
3615
3703
  extend(::ActionDispatch::Http::Parameters::ClassMethods)
3616
3704
 
3617
3705
  def initialize(env); end
@@ -3623,40 +3711,30 @@ class ActionDispatch::Request
3623
3711
  def accept_encoding; end
3624
3712
  def accept_language; end
3625
3713
  def auth_type; end
3626
- def authenticated_encrypted_cookie_salt; end
3627
3714
  def authorization; end
3628
3715
  def body; end
3629
3716
  def body_stream; end
3630
3717
  def cache_control; end
3631
3718
  def client_ip; end
3719
+ def commit_cookie_jar!; end
3632
3720
  def content_length; end
3633
3721
  def controller_class; end
3634
3722
  def controller_class_for(name); end
3635
3723
  def controller_instance; end
3636
3724
  def controller_instance=(controller); end
3637
- def cookie_jar; end
3638
- def cookie_jar=(jar); end
3639
- def cookies_digest; end
3640
- def cookies_rotations; end
3641
- def cookies_same_site_protection; end
3642
- def cookies_serializer; end
3643
- def encrypted_cookie_cipher; end
3644
- def encrypted_cookie_salt; end
3645
- def encrypted_signed_cookie_salt; end
3646
3725
  def engine_script_name(_routes); end
3647
3726
  def engine_script_name=(name); end
3648
3727
  def form_data?; end
3649
3728
  def from; end
3650
3729
  def fullpath; end
3651
3730
  def gateway_interface; end
3652
- def have_cookie_jar?; end
3653
3731
  def headers; end
3654
3732
  def http_auth_salt; end
3655
3733
  def ignore_accept_header; end
3656
3734
  def ignore_accept_header=(val); end
3735
+ def inspect; end
3657
3736
  def ip; end
3658
3737
  def key?(key); end
3659
- def key_generator; end
3660
3738
  def local?; end
3661
3739
  def logger; end
3662
3740
  def media_type; end
@@ -3671,6 +3749,7 @@ class ActionDispatch::Request
3671
3749
  def pragma; end
3672
3750
  def query_parameters; end
3673
3751
  def raw_post; end
3752
+ def raw_request_method; end
3674
3753
  def remote_addr; end
3675
3754
  def remote_host; end
3676
3755
  def remote_ident; end
@@ -3684,9 +3763,10 @@ class ActionDispatch::Request
3684
3763
  def request_method_symbol; end
3685
3764
  def request_parameters; end
3686
3765
  def request_parameters=(params); end
3766
+ def return_only_media_type_on_content_type; end
3767
+ def return_only_media_type_on_content_type=(val); end
3687
3768
  def routes; end
3688
3769
  def routes=(routes); end
3689
- def secret_key_base; end
3690
3770
  def send_early_hints(links); end
3691
3771
  def server_addr; end
3692
3772
  def server_name; end
@@ -3695,11 +3775,7 @@ class ActionDispatch::Request
3695
3775
  def session=(session); end
3696
3776
  def session_options=(options); end
3697
3777
  def show_exceptions?; end
3698
- def signed_cookie_digest; end
3699
- def signed_cookie_salt; end
3700
3778
  def ssl?; end
3701
- def use_authenticated_cookie_encryption; end
3702
- def use_cookies_with_metadata; end
3703
3779
  def uuid; end
3704
3780
  def version; end
3705
3781
  def x_csrf_token; end
@@ -3718,6 +3794,8 @@ class ActionDispatch::Request
3718
3794
  def ignore_accept_header; end
3719
3795
  def ignore_accept_header=(val); end
3720
3796
  def parameter_parsers; end
3797
+ def return_only_media_type_on_content_type; end
3798
+ def return_only_media_type_on_content_type=(val); end
3721
3799
  end
3722
3800
  end
3723
3801
 
@@ -3734,7 +3812,7 @@ ActionDispatch::Request::LOCALHOST = T.let(T.unsafe(nil), Regexp)
3734
3812
  class ActionDispatch::Request::PASS_NOT_FOUND
3735
3813
  class << self
3736
3814
  def action(_); end
3737
- def binary_params_for?(action); end
3815
+ def action_encoding_template(action); end
3738
3816
  def call(_); end
3739
3817
  end
3740
3818
  end
@@ -3826,6 +3904,14 @@ class ActionDispatch::Request::Utils
3826
3904
  def normalize_encode_params(params); end
3827
3905
  def perform_deep_munge; end
3828
3906
  def perform_deep_munge=(val); end
3907
+ def set_binary_encoding(request, params, controller, action); end
3908
+ end
3909
+ end
3910
+
3911
+ class ActionDispatch::Request::Utils::CustomParamEncoder
3912
+ class << self
3913
+ def action_encoding_template(request, controller, action); end
3914
+ def encode(request, params, controller, action); end
3829
3915
  end
3830
3916
  end
3831
3917
 
@@ -3842,8 +3928,28 @@ class ActionDispatch::Request::Utils::ParamEncoder
3842
3928
  end
3843
3929
  end
3844
3930
 
3931
+ module ActionDispatch::RequestCookieMethods
3932
+ def authenticated_encrypted_cookie_salt; end
3933
+ def cookie_jar; end
3934
+ def cookie_jar=(jar); end
3935
+ def cookies_digest; end
3936
+ def cookies_rotations; end
3937
+ def cookies_same_site_protection; end
3938
+ def cookies_serializer; end
3939
+ def encrypted_cookie_cipher; end
3940
+ def encrypted_cookie_salt; end
3941
+ def encrypted_signed_cookie_salt; end
3942
+ def have_cookie_jar?; end
3943
+ def key_generator; end
3944
+ def secret_key_base; end
3945
+ def signed_cookie_digest; end
3946
+ def signed_cookie_salt; end
3947
+ def use_authenticated_cookie_encryption; end
3948
+ def use_cookies_with_metadata; end
3949
+ end
3950
+
3845
3951
  class ActionDispatch::RequestId
3846
- def initialize(app); end
3952
+ def initialize(app, header:); end
3847
3953
 
3848
3954
  def call(env); end
3849
3955
 
@@ -3853,8 +3959,6 @@ class ActionDispatch::RequestId
3853
3959
  def make_request_id(request_id); end
3854
3960
  end
3855
3961
 
3856
- ActionDispatch::RequestId::X_REQUEST_ID = T.let(T.unsafe(nil), String)
3857
-
3858
3962
  class ActionDispatch::Response
3859
3963
  include(::Rack::Response::Helpers)
3860
3964
  include(::ActionDispatch::Http::FilterRedirect)
@@ -3863,8 +3967,8 @@ class ActionDispatch::Response
3863
3967
 
3864
3968
  def initialize(status = T.unsafe(nil), header = T.unsafe(nil), body = T.unsafe(nil)); end
3865
3969
 
3866
- def [](*args, &block); end
3867
- def []=(*args, &block); end
3970
+ def [](*_arg0, &_arg1); end
3971
+ def []=(*_arg0, &_arg1); end
3868
3972
  def _cache_control; end
3869
3973
  def _cache_control=(v); end
3870
3974
  def abort; end
@@ -3897,11 +4001,9 @@ class ActionDispatch::Response
3897
4001
  def prepare!; end
3898
4002
  def redirect_url; end
3899
4003
  def request; end
3900
- def request=(_); end
4004
+ def request=(_arg0); end
3901
4005
  def reset_body!; end
3902
4006
  def response_code; end
3903
- def return_only_media_type_on_content_type; end
3904
- def return_only_media_type_on_content_type=(val); end
3905
4007
  def send_file(path); end
3906
4008
  def sending!; end
3907
4009
  def sending?; end
@@ -3937,7 +4039,7 @@ class ActionDispatch::Response
3937
4039
  def default_headers=(val); end
3938
4040
  def merge_default_headers(original, default); end
3939
4041
  def return_only_media_type_on_content_type; end
3940
- def return_only_media_type_on_content_type=(val); end
4042
+ def return_only_media_type_on_content_type=(*_arg0); end
3941
4043
  end
3942
4044
  end
3943
4045
 
@@ -3967,10 +4069,10 @@ class ActionDispatch::Response::ContentTypeHeader < ::Struct
3967
4069
  def mime_type=(_); end
3968
4070
 
3969
4071
  class << self
3970
- def [](*_); end
4072
+ def [](*_arg0); end
3971
4073
  def inspect; end
3972
4074
  def members; end
3973
- def new(*_); end
4075
+ def new(*_arg0); end
3974
4076
  end
3975
4077
  end
3976
4078
 
@@ -4065,7 +4167,7 @@ class ActionDispatch::Routing::HtmlTableFormatter
4065
4167
  def initialize(view); end
4066
4168
 
4067
4169
  def header(routes); end
4068
- def no_routes(*_); end
4170
+ def no_routes(*_arg0); end
4069
4171
  def result; end
4070
4172
  def section(routes); end
4071
4173
  def section_title(title); end
@@ -4163,11 +4265,10 @@ class ActionDispatch::Routing::Mapper::Mapping
4163
4265
  private
4164
4266
 
4165
4267
  def add_controller_module(controller, modyoule); end
4166
- def add_wildcard_options(options, formatted, path_ast); end
4268
+ def alter_regex_for_custom_routes(node); end
4167
4269
  def app(blocks); end
4168
4270
  def blocks(callable_constraint); end
4169
4271
  def build_conditions(current_conditions, request_class); end
4170
- def build_path(ast, requirements, anchor); end
4171
4272
  def check_controller_and_action(path_params, controller, action); end
4172
4273
  def check_part(name, part, path_params, hash); end
4173
4274
  def constraints(options, path_params); end
@@ -4407,15 +4508,15 @@ class ActionDispatch::Routing::RouteSet
4407
4508
  def call(env); end
4408
4509
  def clear!; end
4409
4510
  def default_scope; end
4410
- def default_scope=(_); end
4511
+ def default_scope=(_arg0); end
4411
4512
  def default_url_options; end
4412
- def default_url_options=(_); end
4513
+ def default_url_options=(_arg0); end
4413
4514
  def define_mounted_helper(name, script_namer = T.unsafe(nil)); end
4414
4515
  def disable_clear_and_finalize; end
4415
- def disable_clear_and_finalize=(_); end
4516
+ def disable_clear_and_finalize=(_arg0); end
4416
4517
  def draw(&block); end
4417
4518
  def draw_paths; end
4418
- def draw_paths=(_); end
4519
+ def draw_paths=(_arg0); end
4419
4520
  def eager_load!; end
4420
4521
  def empty?; end
4421
4522
  def env_key; end
@@ -4424,15 +4525,15 @@ class ActionDispatch::Routing::RouteSet
4424
4525
  def find_relative_url_root(options); end
4425
4526
  def find_script_name(options); end
4426
4527
  def formatter; end
4427
- def formatter=(_); end
4528
+ def formatter=(_arg0); end
4428
4529
  def generate_extras(options, recall = T.unsafe(nil)); end
4429
4530
  def generate_url_helpers(supports_path); end
4430
4531
  def inspect; end
4431
4532
  def mounted_helpers; end
4432
4533
  def named_routes; end
4433
- def named_routes=(_); end
4534
+ def named_routes=(_arg0); end
4434
4535
  def optimize_routes_generation?; end
4435
- def path_for(options, route_name = T.unsafe(nil)); end
4536
+ def path_for(options, route_name = T.unsafe(nil), reserved = T.unsafe(nil)); end
4436
4537
  def polymorphic_mappings; end
4437
4538
  def prepend(&block); end
4438
4539
  def recognize_path(path, environment = T.unsafe(nil)); end
@@ -4440,19 +4541,19 @@ class ActionDispatch::Routing::RouteSet
4440
4541
  def relative_url_root; end
4441
4542
  def request_class; end
4442
4543
  def resources_path_names; end
4443
- def resources_path_names=(_); end
4544
+ def resources_path_names=(_arg0); end
4444
4545
  def router; end
4445
- def router=(_); end
4546
+ def router=(_arg0); end
4446
4547
  def routes; end
4447
4548
  def set; end
4448
- def set=(_); end
4449
- def url_for(options, route_name = T.unsafe(nil), url_strategy = T.unsafe(nil)); end
4549
+ def set=(_arg0); end
4550
+ def url_for(options, route_name = T.unsafe(nil), url_strategy = T.unsafe(nil), method_name = T.unsafe(nil), reserved = T.unsafe(nil)); end
4450
4551
  def url_helpers(supports_path = T.unsafe(nil)); end
4451
4552
 
4452
4553
  private
4453
4554
 
4454
4555
  def eval_block(block); end
4455
- def generate(route_key, options, recall = T.unsafe(nil)); end
4556
+ def generate(route_name, options, recall = T.unsafe(nil), method_name = T.unsafe(nil)); end
4456
4557
  def make_request(env); end
4457
4558
 
4458
4559
  class << self
@@ -4468,10 +4569,10 @@ class ActionDispatch::Routing::RouteSet::Config < ::Struct
4468
4569
  def relative_url_root=(_); end
4469
4570
 
4470
4571
  class << self
4471
- def [](*_); end
4572
+ def [](*_arg0); end
4472
4573
  def inspect; end
4473
4574
  def members; end
4474
- def new(*_); end
4575
+ def new(*_arg0); end
4475
4576
  end
4476
4577
  end
4477
4578
 
@@ -4526,8 +4627,6 @@ class ActionDispatch::Routing::RouteSet::Generator
4526
4627
  def segment_keys; end
4527
4628
  end
4528
4629
 
4529
- ActionDispatch::Routing::RouteSet::Generator::PARAMETERIZE = T.let(T.unsafe(nil), Proc)
4530
-
4531
4630
  module ActionDispatch::Routing::RouteSet::MountedHelpers
4532
4631
  extend(::ActiveSupport::Concern)
4533
4632
 
@@ -4564,7 +4663,7 @@ end
4564
4663
  class ActionDispatch::Routing::RouteSet::NamedRouteCollection::UrlHelper
4565
4664
  def initialize(route, options, route_name); end
4566
4665
 
4567
- def call(t, args, inner_options, url_strategy); end
4666
+ def call(t, method_name, args, inner_options, url_strategy); end
4568
4667
  def handle_positional_args(controller_options, inner_options, args, result, path_params); end
4569
4668
  def route_name; end
4570
4669
 
@@ -4578,7 +4677,7 @@ class ActionDispatch::Routing::RouteSet::NamedRouteCollection::UrlHelper::Optimi
4578
4677
  def initialize(route, options, route_name); end
4579
4678
 
4580
4679
  def arg_size; end
4581
- def call(t, args, inner_options, url_strategy); end
4680
+ def call(t, method_name, args, inner_options, url_strategy); end
4582
4681
 
4583
4682
  private
4584
4683
 
@@ -4637,12 +4736,12 @@ class ActionDispatch::Routing::RoutesProxy
4637
4736
 
4638
4737
  def _routes; end
4639
4738
  def default_url_options; end
4640
- def default_url_options=(_); end
4739
+ def default_url_options=(_arg0); end
4641
4740
  def default_url_options?; end
4642
4741
  def routes; end
4643
- def routes=(_); end
4742
+ def routes=(_arg0); end
4644
4743
  def scope; end
4645
- def scope=(_); end
4744
+ def scope=(_arg0); end
4646
4745
  def url_options; end
4647
4746
 
4648
4747
  private
@@ -4664,7 +4763,7 @@ module ActionDispatch::Routing::UrlFor
4664
4763
  include(::ActionDispatch::Routing::PolymorphicRoutes)
4665
4764
  extend(::ActiveSupport::Concern)
4666
4765
 
4667
- def initialize(*_); end
4766
+ def initialize(*_arg0, &_arg1); end
4668
4767
 
4669
4768
  def full_url_for(options = T.unsafe(nil)); end
4670
4769
  def route_for(name, *args); end
@@ -4682,7 +4781,7 @@ module ActionDispatch::Routing::UrlFor
4682
4781
  end
4683
4782
 
4684
4783
  class ActionDispatch::SSL
4685
- def initialize(app, redirect: T.unsafe(nil), hsts: T.unsafe(nil), secure_cookies: T.unsafe(nil)); end
4784
+ def initialize(app, redirect: T.unsafe(nil), hsts: T.unsafe(nil), secure_cookies: T.unsafe(nil), ssl_default_redirect_status: T.unsafe(nil)); end
4686
4785
 
4687
4786
  def call(env); end
4688
4787
 
@@ -4703,6 +4802,8 @@ end
4703
4802
 
4704
4803
  ActionDispatch::SSL::HSTS_EXPIRES_IN = T.let(T.unsafe(nil), Integer)
4705
4804
 
4805
+ ActionDispatch::SSL::PERMANENT_REDIRECT_REQUEST_METHODS = T.let(T.unsafe(nil), Array)
4806
+
4706
4807
  module ActionDispatch::Session
4707
4808
  end
4708
4809
 
@@ -4715,7 +4816,7 @@ class ActionDispatch::Session::AbstractSecureStore < ::Rack::Session::Abstract::
4715
4816
 
4716
4817
  private
4717
4818
 
4718
- def set_cookie(request, session_id, cookie); end
4819
+ def set_cookie(request, response, cookie); end
4719
4820
  end
4720
4821
 
4721
4822
  class ActionDispatch::Session::AbstractStore < ::Rack::Session::Abstract::Persisted
@@ -4726,7 +4827,7 @@ class ActionDispatch::Session::AbstractStore < ::Rack::Session::Abstract::Persis
4726
4827
 
4727
4828
  private
4728
4829
 
4729
- def set_cookie(request, session_id, cookie); end
4830
+ def set_cookie(request, response, cookie); end
4730
4831
  end
4731
4832
 
4732
4833
  class ActionDispatch::Session::CacheStore < ::ActionDispatch::Session::AbstractSecureStore
@@ -4832,21 +4933,26 @@ class ActionDispatch::TestResponse < ::ActionDispatch::Response
4832
4933
  end
4833
4934
 
4834
4935
  class ActionDispatch::FileHandler
4835
- def initialize(root, index: T.unsafe(nil), headers: T.unsafe(nil)); end
4936
+ def initialize(root, index: T.unsafe(nil), headers: T.unsafe(nil), precompressed: T.unsafe(nil), compressible_content_types: T.unsafe(nil)); end
4836
4937
 
4938
+ def attempt(env); end
4837
4939
  def call(env); end
4838
- def match?(path); end
4839
- def serve(request); end
4840
4940
 
4841
4941
  private
4842
4942
 
4843
- def content_type(path); end
4844
- def ext; end
4943
+ def clean_path(path_info); end
4944
+ def compressible?(content_type); end
4945
+ def each_candidate_filepath(path_info); end
4946
+ def each_precompressed_filepath(filepath); end
4845
4947
  def file_readable?(path); end
4846
- def gzip_encoding_accepted?(request); end
4847
- def gzip_file_path(path); end
4948
+ def find_file(path_info, accept_encoding:); end
4949
+ def serve(request, filepath, content_headers); end
4950
+ def try_files(filepath, content_type, accept_encoding:); end
4951
+ def try_precompressed_files(filepath, headers, accept_encoding:); end
4848
4952
  end
4849
4953
 
4954
+ ActionDispatch::FileHandler::PRECOMPRESSED = T.let(T.unsafe(nil), Hash)
4955
+
4850
4956
  class ActionDispatch::RequestEncoder
4851
4957
  def initialize(mime_name, param_encoder, response_parser); end
4852
4958
 
@@ -4972,10 +5078,6 @@ class Mime::AllType < ::Mime::Type
4972
5078
 
4973
5079
  def all?; end
4974
5080
  def html?; end
4975
-
4976
- class << self
4977
- def instance; end
4978
- end
4979
5081
  end
4980
5082
 
4981
5083
  Mime::EXTENSION_LOOKUP = T.let(T.unsafe(nil), Hash)
@@ -5005,10 +5107,6 @@ class Mime::NullType
5005
5107
 
5006
5108
  def method_missing(method, *args); end
5007
5109
  def respond_to_missing?(method, _); end
5008
-
5009
- class << self
5010
- def instance; end
5011
- end
5012
5110
  end
5013
5111
 
5014
5112
  Mime::SET = T.let(T.unsafe(nil), Mime::Mimes)
@@ -5060,11 +5158,11 @@ class Mime::Type::AcceptItem
5060
5158
 
5061
5159
  def <=>(item); end
5062
5160
  def index; end
5063
- def index=(_); end
5161
+ def index=(_arg0); end
5064
5162
  def name; end
5065
- def name=(_); end
5163
+ def name=(_arg0); end
5066
5164
  def q; end
5067
- def q=(_); end
5165
+ def q=(_arg0); end
5068
5166
  def to_s; end
5069
5167
  end
5070
5168