packwerk 1.1.2 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +17 -8
  3. data/.ruby-version +1 -1
  4. data/Gemfile +1 -1
  5. data/Gemfile.lock +129 -111
  6. data/README.md +9 -2
  7. data/TROUBLESHOOT.md +2 -2
  8. data/USAGE.md +30 -30
  9. data/bin/m +29 -0
  10. data/bin/rake +29 -0
  11. data/bin/rubocop +29 -0
  12. data/bin/srb +29 -0
  13. data/bin/tapioca +29 -0
  14. data/dev.yml +7 -7
  15. data/gemfiles/Gemfile-rails-6-0 +22 -0
  16. data/lib/packwerk.rb +72 -36
  17. data/lib/packwerk/application_load_paths.rb +18 -8
  18. data/lib/packwerk/application_validator.rb +26 -27
  19. data/lib/packwerk/association_inspector.rb +0 -3
  20. data/lib/packwerk/checker.rb +2 -8
  21. data/lib/packwerk/cli.rb +29 -109
  22. data/lib/packwerk/configuration.rb +5 -0
  23. data/lib/packwerk/const_node_inspector.rb +0 -2
  24. data/lib/packwerk/constant_discovery.rb +2 -0
  25. data/lib/packwerk/constant_name_inspector.rb +0 -1
  26. data/lib/packwerk/dependency_checker.rb +2 -15
  27. data/lib/packwerk/deprecated_references.rb +5 -11
  28. data/lib/packwerk/file_processor.rb +0 -4
  29. data/lib/packwerk/formatters/offenses_formatter.rb +13 -9
  30. data/lib/packwerk/formatters/progress_formatter.rb +5 -4
  31. data/lib/packwerk/generators/configuration_file.rb +0 -1
  32. data/lib/packwerk/inflector.rb +0 -2
  33. data/lib/packwerk/node.rb +1 -0
  34. data/lib/packwerk/node_processor.rb +15 -32
  35. data/lib/packwerk/node_processor_factory.rb +0 -5
  36. data/lib/packwerk/node_visitor.rb +1 -4
  37. data/lib/packwerk/offense.rb +0 -4
  38. data/lib/packwerk/offense_collection.rb +84 -0
  39. data/lib/packwerk/offenses_formatter.rb +19 -0
  40. data/lib/packwerk/package.rb +17 -1
  41. data/lib/packwerk/package_set.rb +0 -2
  42. data/lib/packwerk/parse_run.rb +106 -0
  43. data/lib/packwerk/parsed_constant_definitions.rb +0 -2
  44. data/lib/packwerk/parsers.rb +0 -2
  45. data/lib/packwerk/parsers/erb.rb +0 -2
  46. data/lib/packwerk/parsers/factory.rb +0 -2
  47. data/lib/packwerk/privacy_checker.rb +2 -15
  48. data/lib/packwerk/reference_extractor.rb +0 -8
  49. data/lib/packwerk/reference_offense.rb +49 -0
  50. data/lib/packwerk/result.rb +9 -0
  51. data/lib/packwerk/run_context.rb +4 -21
  52. data/lib/packwerk/sanity_checker.rb +0 -2
  53. data/lib/packwerk/version.rb +1 -1
  54. data/lib/packwerk/violation_type.rb +0 -2
  55. data/library.yml +1 -1
  56. data/packwerk.gemspec +1 -0
  57. data/service.yml +1 -4
  58. data/shipit.rubygems.yml +5 -1
  59. data/sorbet/rbi/gems/{actioncable@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +56 -36
  60. data/sorbet/rbi/gems/{actionmailbox@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +25 -28
  61. data/sorbet/rbi/gems/{actionmailer@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +43 -24
  62. data/sorbet/rbi/gems/{actionpack@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +382 -284
  63. data/sorbet/rbi/gems/{actiontext@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +76 -40
  64. data/sorbet/rbi/gems/{actionview@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +206 -195
  65. data/sorbet/rbi/gems/{activejob@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +64 -75
  66. data/sorbet/rbi/gems/{activemodel@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +103 -56
  67. data/sorbet/rbi/gems/{activerecord@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1250 -898
  68. data/sorbet/rbi/gems/{activestorage@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +92 -120
  69. data/sorbet/rbi/gems/{activesupport@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +292 -193
  70. data/sorbet/rbi/gems/{ast@2.4.1.rbi → ast@2.4.2.rbi} +2 -1
  71. data/sorbet/rbi/gems/{better_html@1.0.15.rbi → better_html@1.0.16.rbi} +2 -2
  72. data/sorbet/rbi/gems/{concurrent-ruby@1.1.6.rbi → concurrent-ruby@1.1.8.rbi} +12 -9
  73. data/sorbet/rbi/gems/{erubi@1.9.0.rbi → erubi@1.10.0.rbi} +3 -1
  74. data/sorbet/rbi/gems/{i18n@1.8.2.rbi → i18n@1.8.10.rbi} +19 -52
  75. data/sorbet/rbi/gems/{loofah@2.5.0.rbi → loofah@2.9.0.rbi} +3 -1
  76. data/sorbet/rbi/gems/marcel@1.0.0.rbi +70 -0
  77. data/sorbet/rbi/gems/{mini_mime@1.0.2.rbi → mini_mime@1.0.3.rbi} +6 -6
  78. data/sorbet/rbi/gems/{mini_portile2@2.4.0.rbi → minitest-focus@1.2.1.rbi} +2 -2
  79. data/sorbet/rbi/gems/{minitest@5.14.0.rbi → minitest@5.14.4.rbi} +31 -29
  80. data/sorbet/rbi/gems/{mocha@1.11.2.rbi → mocha@1.12.0.rbi} +25 -36
  81. data/sorbet/rbi/gems/{nio4r@2.5.2.rbi → nio4r@2.5.7.rbi} +21 -20
  82. data/sorbet/rbi/gems/{nokogiri@1.10.9.rbi → nokogiri@1.11.2.rbi} +193 -154
  83. data/sorbet/rbi/gems/parallel@1.20.1.rbi +117 -0
  84. data/sorbet/rbi/gems/parlour@6.0.0.rbi +1272 -0
  85. data/sorbet/rbi/gems/{parser@2.7.1.4.rbi → parser@3.0.0.0.rbi} +287 -174
  86. data/sorbet/rbi/gems/{pry@0.13.1.rbi → pry@0.14.0.rbi} +1 -1
  87. data/sorbet/rbi/gems/racc@1.5.2.rbi +57 -0
  88. data/sorbet/rbi/gems/{rack@2.2.2.rbi → rack@2.2.3.rbi} +23 -35
  89. data/sorbet/rbi/gems/{rails@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1 -1
  90. data/sorbet/rbi/gems/{railties@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +132 -121
  91. data/sorbet/rbi/gems/{rake@13.0.1.rbi → rake@13.0.3.rbi} +16 -20
  92. data/sorbet/rbi/gems/{parallel@1.19.1.rbi → regexp_parser@2.1.1.rbi} +2 -2
  93. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +8 -0
  94. data/sorbet/rbi/gems/{rubocop-performance@1.5.2.rbi → rubocop-performance@1.10.2.rbi} +1 -1
  95. data/sorbet/rbi/gems/{rubocop-shopify@1.0.2.rbi → rubocop-shopify@2.0.1.rbi} +1 -1
  96. data/sorbet/rbi/gems/{rubocop-sorbet@0.3.7.rbi → rubocop-sorbet@0.6.1.rbi} +1 -1
  97. data/sorbet/rbi/gems/{rubocop@0.82.0.rbi → rubocop@1.12.0.rbi} +1 -1
  98. data/sorbet/rbi/gems/{ruby-progressbar@1.10.1.rbi → ruby-progressbar@1.11.0.rbi} +1 -1
  99. data/sorbet/rbi/gems/spoom@1.1.0.rbi +1061 -0
  100. data/sorbet/rbi/gems/{spring@2.1.0.rbi → spring@2.1.1.rbi} +7 -7
  101. data/sorbet/rbi/gems/{sprockets-rails@3.2.1.rbi → sprockets-rails@3.2.2.rbi} +88 -68
  102. data/sorbet/rbi/gems/{sprockets@4.0.0.rbi → sprockets@4.0.2.rbi} +8 -7
  103. data/sorbet/rbi/gems/{tapioca@0.4.5.rbi → tapioca@0.4.19.rbi} +109 -24
  104. data/sorbet/rbi/gems/{thor@1.0.1.rbi → thor@1.1.0.rbi} +16 -15
  105. data/sorbet/rbi/gems/{tzinfo@2.0.2.rbi → tzinfo@2.0.4.rbi} +21 -2
  106. data/sorbet/rbi/gems/{unicode-display_width@1.7.0.rbi → unicode-display_width@2.0.0.rbi} +1 -1
  107. data/sorbet/rbi/gems/{websocket-driver@0.7.1.rbi → websocket-driver@0.7.3.rbi} +29 -29
  108. data/sorbet/rbi/gems/{websocket-extensions@0.1.4.rbi → websocket-extensions@0.1.5.rbi} +2 -2
  109. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +177 -0
  110. data/sorbet/tapioca/require.rb +1 -0
  111. metadata +79 -66
  112. data/lib/packwerk/cache_deprecated_references.rb +0 -55
  113. data/lib/packwerk/checking_deprecated_references.rb +0 -43
  114. data/lib/packwerk/commands/detect_stale_violations_command.rb +0 -60
  115. data/lib/packwerk/commands/offense_progress_marker.rb +0 -24
  116. data/lib/packwerk/commands/result.rb +0 -13
  117. data/lib/packwerk/commands/update_deprecations_command.rb +0 -81
  118. data/lib/packwerk/detect_stale_deprecated_references.rb +0 -14
  119. data/lib/packwerk/generators/application_validation.rb +0 -62
  120. data/lib/packwerk/generators/templates/packwerk +0 -23
  121. data/lib/packwerk/generators/templates/packwerk_validator_test.rb +0 -11
  122. data/lib/packwerk/reference_lister.rb +0 -23
  123. data/lib/packwerk/spring_command.rb +0 -28
  124. data/lib/packwerk/updating_deprecated_references.rb +0 -14
  125. data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +0 -8
  126. data/sorbet/rbi/gems/marcel@0.3.3.rbi +0 -30
  127. data/sorbet/rbi/gems/mimemagic@0.3.5.rbi +0 -47
  128. data/sorbet/rbi/gems/parlour@4.0.1.rbi +0 -561
  129. data/sorbet/rbi/gems/spoom@1.0.4.rbi +0 -418
  130. 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 `activejob` 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
 
@@ -47,8 +47,8 @@ class ActiveJob::Base
47
47
  include(::ActiveSupport::Callbacks)
48
48
  include(::ActiveJob::Callbacks)
49
49
  include(::ActiveJob::Exceptions)
50
- include(::ActiveJob::Logging)
51
50
  include(::ActiveJob::Instrumentation)
51
+ include(::ActiveJob::Logging)
52
52
  include(::ActiveJob::Timezones)
53
53
  include(::ActiveJob::Translation)
54
54
  include(::ActiveJob::TestHelper::TestQueueAdapter)
@@ -73,12 +73,12 @@ class ActiveJob::Base
73
73
  def _run_perform_callbacks(&block); end
74
74
  def logger; end
75
75
  def logger=(val); end
76
- def queue_adapter(*args, &block); end
76
+ def queue_adapter(*_arg0, &_arg1); end
77
77
  def queue_name_prefix; end
78
- def queue_name_prefix=(_); end
78
+ def queue_name_prefix=(_arg0); end
79
79
  def queue_name_prefix?; end
80
80
  def rescue_handlers; end
81
- def rescue_handlers=(_); end
81
+ def rescue_handlers=(_arg0); end
82
82
  def rescue_handlers?; end
83
83
 
84
84
  class << self
@@ -117,8 +117,8 @@ class ActiveJob::Base
117
117
  def rescue_handlers?; end
118
118
  def retry_jitter; end
119
119
  def retry_jitter=(value); end
120
- def return_false_on_aborted_enqueue; end
121
- def return_false_on_aborted_enqueue=(value); end
120
+ def return_false_on_aborted_enqueue(*args, &block); end
121
+ def return_false_on_aborted_enqueue=(*args, &block); end
122
122
  def skip_after_callbacks_if_terminated; end
123
123
  def skip_after_callbacks_if_terminated=(val); end
124
124
  end
@@ -158,8 +158,8 @@ end
158
158
  class ActiveJob::ConfiguredJob
159
159
  def initialize(job_class, options = T.unsafe(nil)); end
160
160
 
161
- def perform_later(*args); end
162
- def perform_now(*args); end
161
+ def perform_later(*_arg0, &_arg1); end
162
+ def perform_now(*_arg0, &_arg1); end
163
163
  end
164
164
 
165
165
  module ActiveJob::Core
@@ -170,28 +170,32 @@ module ActiveJob::Core
170
170
  def initialize(*arguments); end
171
171
 
172
172
  def arguments; end
173
- def arguments=(_); end
173
+ def arguments=(_arg0); end
174
174
  def deserialize(job_data); end
175
+ def enqueue_error; end
176
+ def enqueue_error=(_arg0); end
175
177
  def enqueued_at; end
176
- def enqueued_at=(_); end
178
+ def enqueued_at=(_arg0); end
177
179
  def exception_executions; end
178
- def exception_executions=(_); end
180
+ def exception_executions=(_arg0); end
179
181
  def executions; end
180
- def executions=(_); end
182
+ def executions=(_arg0); end
181
183
  def job_id; end
182
- def job_id=(_); end
184
+ def job_id=(_arg0); end
183
185
  def locale; end
184
- def locale=(_); end
185
- def priority=(_); end
186
+ def locale=(_arg0); end
187
+ def priority=(_arg0); end
186
188
  def provider_job_id; end
187
- def provider_job_id=(_); end
188
- def queue_name=(_); end
189
+ def provider_job_id=(_arg0); end
190
+ def queue_name=(_arg0); end
189
191
  def scheduled_at; end
190
- def scheduled_at=(_); end
192
+ def scheduled_at=(_arg0); end
191
193
  def serialize; end
192
- def serialized_arguments=(_); end
194
+ def serialized_arguments=(_arg0); end
195
+ def successfully_enqueued=(_arg0); end
196
+ def successfully_enqueued?; end
193
197
  def timezone; end
194
- def timezone=(_); end
198
+ def timezone=(_arg0); end
195
199
 
196
200
  private
197
201
 
@@ -211,6 +215,9 @@ class ActiveJob::DeserializationError < ::StandardError
211
215
  def initialize; end
212
216
  end
213
217
 
218
+ class ActiveJob::EnqueueError < ::StandardError
219
+ end
220
+
214
221
  module ActiveJob::Enqueuing
215
222
  extend(::ActiveSupport::Concern)
216
223
 
@@ -220,7 +227,7 @@ module ActiveJob::Enqueuing
220
227
  end
221
228
 
222
229
  module ActiveJob::Enqueuing::ClassMethods
223
- def perform_later(*args); end
230
+ def perform_later(*_arg0, &_arg1); end
224
231
 
225
232
  private
226
233
 
@@ -253,22 +260,28 @@ module ActiveJob::Execution
253
260
 
254
261
  mixes_in_class_methods(::ActiveJob::Execution::ClassMethods)
255
262
 
256
- def perform(*_); end
263
+ def perform(*_arg0); end
257
264
  def perform_now; end
265
+
266
+ private
267
+
268
+ def _perform_job; end
258
269
  end
259
270
 
260
271
  module ActiveJob::Execution::ClassMethods
261
272
  def execute(job_data); end
262
- def perform_now(*args); end
273
+ def perform_now(*_arg0, &_arg1); end
263
274
  end
264
275
 
265
276
  module ActiveJob::Instrumentation
266
277
  extend(::ActiveSupport::Concern)
267
278
 
279
+ def perform_now; end
268
280
 
269
281
  private
270
282
 
271
- def halted_callback_hook(*_); end
283
+ def _perform_job; end
284
+ def halted_callback_hook(*_arg0); end
272
285
  def instrument(operation, payload = T.unsafe(nil), &block); end
273
286
  end
274
287
 
@@ -293,6 +306,7 @@ end
293
306
  module ActiveJob::Logging
294
307
  extend(::ActiveSupport::Concern)
295
308
 
309
+ def perform_now; end
296
310
 
297
311
  private
298
312
 
@@ -349,7 +363,7 @@ class ActiveJob::QueueAdapters::AsyncAdapter::Scheduler
349
363
  def enqueue_at(job, timestamp, queue_name:); end
350
364
  def executor; end
351
365
  def immediate; end
352
- def immediate=(_); end
366
+ def immediate=(_arg0); end
353
367
  def shutdown(wait: T.unsafe(nil)); end
354
368
  end
355
369
 
@@ -357,28 +371,28 @@ ActiveJob::QueueAdapters::AsyncAdapter::Scheduler::DEFAULT_EXECUTOR_OPTIONS = T.
357
371
 
358
372
  class ActiveJob::QueueAdapters::InlineAdapter
359
373
  def enqueue(job); end
360
- def enqueue_at(*_); end
374
+ def enqueue_at(*_arg0); end
361
375
  end
362
376
 
363
377
  class ActiveJob::QueueAdapters::TestAdapter
364
378
  def at; end
365
- def at=(_); end
379
+ def at=(_arg0); end
366
380
  def enqueue(job); end
367
381
  def enqueue_at(job, timestamp); end
368
382
  def enqueued_jobs; end
369
- def enqueued_jobs=(_); end
383
+ def enqueued_jobs=(_arg0); end
370
384
  def filter; end
371
- def filter=(_); end
385
+ def filter=(_arg0); end
372
386
  def perform_enqueued_at_jobs; end
373
- def perform_enqueued_at_jobs=(_); end
387
+ def perform_enqueued_at_jobs=(_arg0); end
374
388
  def perform_enqueued_jobs; end
375
- def perform_enqueued_jobs=(_); end
389
+ def perform_enqueued_jobs=(_arg0); end
376
390
  def performed_jobs; end
377
- def performed_jobs=(_); end
391
+ def performed_jobs=(_arg0); end
378
392
  def queue; end
379
- def queue=(_); end
393
+ def queue=(_arg0); end
380
394
  def reject; end
381
- def reject=(_); end
395
+ def reject=(_arg0); end
382
396
 
383
397
  private
384
398
 
@@ -459,23 +473,14 @@ class ActiveJob::Serializers::DateSerializer < ::ActiveJob::Serializers::ObjectS
459
473
  private
460
474
 
461
475
  def klass; end
462
-
463
- class << self
464
- def instance; end
465
- end
466
476
  end
467
477
 
468
- class ActiveJob::Serializers::DateTimeSerializer < ::ActiveJob::Serializers::ObjectSerializer
478
+ class ActiveJob::Serializers::DateTimeSerializer < ::ActiveJob::Serializers::TimeObjectSerializer
469
479
  def deserialize(hash); end
470
- def serialize(time); end
471
480
 
472
481
  private
473
482
 
474
483
  def klass; end
475
-
476
- class << self
477
- def instance; end
478
- end
479
484
  end
480
485
 
481
486
  class ActiveJob::Serializers::DurationSerializer < ::ActiveJob::Serializers::ObjectSerializer
@@ -485,10 +490,6 @@ class ActiveJob::Serializers::DurationSerializer < ::ActiveJob::Serializers::Obj
485
490
  private
486
491
 
487
492
  def klass; end
488
-
489
- class << self
490
- def instance; end
491
- end
492
493
  end
493
494
 
494
495
  class ActiveJob::Serializers::ModuleSerializer < ::ActiveJob::Serializers::ObjectSerializer
@@ -498,10 +499,6 @@ class ActiveJob::Serializers::ModuleSerializer < ::ActiveJob::Serializers::Objec
498
499
  private
499
500
 
500
501
  def klass; end
501
-
502
- class << self
503
- def instance; end
504
- end
505
502
  end
506
503
 
507
504
  class ActiveJob::Serializers::ObjectSerializer
@@ -517,10 +514,9 @@ class ActiveJob::Serializers::ObjectSerializer
517
514
  def klass; end
518
515
 
519
516
  class << self
520
- def deserialize(*args, &block); end
521
- def instance; end
522
- def serialize(*args, &block); end
523
- def serialize?(*args, &block); end
517
+ def deserialize(*_arg0, &_arg1); end
518
+ def serialize(*_arg0, &_arg1); end
519
+ def serialize?(*_arg0, &_arg1); end
524
520
  end
525
521
  end
526
522
 
@@ -531,36 +527,28 @@ class ActiveJob::Serializers::SymbolSerializer < ::ActiveJob::Serializers::Objec
531
527
  private
532
528
 
533
529
  def klass; end
530
+ end
534
531
 
535
- class << self
536
- def instance; end
537
- end
532
+ class ActiveJob::Serializers::TimeObjectSerializer < ::ActiveJob::Serializers::ObjectSerializer
533
+ def serialize(time); end
538
534
  end
539
535
 
540
- class ActiveJob::Serializers::TimeSerializer < ::ActiveJob::Serializers::ObjectSerializer
536
+ ActiveJob::Serializers::TimeObjectSerializer::NANO_PRECISION = T.let(T.unsafe(nil), Integer)
537
+
538
+ class ActiveJob::Serializers::TimeSerializer < ::ActiveJob::Serializers::TimeObjectSerializer
541
539
  def deserialize(hash); end
542
- def serialize(time); end
543
540
 
544
541
  private
545
542
 
546
543
  def klass; end
547
-
548
- class << self
549
- def instance; end
550
- end
551
544
  end
552
545
 
553
- class ActiveJob::Serializers::TimeWithZoneSerializer < ::ActiveJob::Serializers::ObjectSerializer
546
+ class ActiveJob::Serializers::TimeWithZoneSerializer < ::ActiveJob::Serializers::TimeObjectSerializer
554
547
  def deserialize(hash); end
555
- def serialize(time); end
556
548
 
557
549
  private
558
550
 
559
551
  def klass; end
560
-
561
- class << self
562
- def instance; end
563
- end
564
552
  end
565
553
 
566
554
  class ActiveJob::TestCase < ::ActiveSupport::TestCase
@@ -568,6 +556,8 @@ class ActiveJob::TestCase < ::ActiveSupport::TestCase
568
556
  end
569
557
 
570
558
  module ActiveJob::TestHelper
559
+ include(::ActiveSupport::Testing::Assertions)
560
+
571
561
  def after_teardown; end
572
562
  def assert_enqueued_jobs(number, only: T.unsafe(nil), except: T.unsafe(nil), queue: T.unsafe(nil), &block); end
573
563
  def assert_enqueued_with(job: T.unsafe(nil), args: T.unsafe(nil), at: T.unsafe(nil), queue: T.unsafe(nil), &block); end
@@ -576,10 +566,10 @@ module ActiveJob::TestHelper
576
566
  def assert_performed_jobs(number, only: T.unsafe(nil), except: T.unsafe(nil), queue: T.unsafe(nil), &block); end
577
567
  def assert_performed_with(job: T.unsafe(nil), args: T.unsafe(nil), at: T.unsafe(nil), queue: T.unsafe(nil), &block); end
578
568
  def before_setup; end
579
- def enqueued_jobs(*args, &block); end
569
+ def enqueued_jobs(*_arg0, &_arg1); end
580
570
  def enqueued_jobs=(arg); end
581
571
  def perform_enqueued_jobs(only: T.unsafe(nil), except: T.unsafe(nil), queue: T.unsafe(nil), at: T.unsafe(nil), &block); end
582
- def performed_jobs(*args, &block); end
572
+ def performed_jobs(*_arg0, &_arg1); end
583
573
  def performed_jobs=(arg); end
584
574
  def queue_adapter; end
585
575
  def queue_adapter_for_test; end
@@ -597,7 +587,6 @@ module ActiveJob::TestHelper
597
587
  def performed_jobs_with(only: T.unsafe(nil), except: T.unsafe(nil), queue: T.unsafe(nil), &block); end
598
588
  def prepare_args_for_assertion(args); end
599
589
  def queue_adapter_changed_jobs; end
600
- def round_time_arguments(argument); end
601
590
  def validate_option(only: T.unsafe(nil), except: T.unsafe(nil)); end
602
591
  end
603
592
 
@@ -1,6 +1,6 @@
1
1
  # DO NOT EDIT MANUALLY
2
2
  # This is an autogenerated file for types exported from the `activemodel` 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
 
@@ -15,7 +15,7 @@ module ActiveModel
15
15
  end
16
16
 
17
17
  class ActiveModel::Attribute
18
- def initialize(name, value_before_type_cast, type, original_attribute = T.unsafe(nil)); end
18
+ def initialize(name, value_before_type_cast, type, original_attribute = T.unsafe(nil), value = T.unsafe(nil)); end
19
19
 
20
20
  def ==(other); end
21
21
  def came_from_user?; end
@@ -30,8 +30,10 @@ class ActiveModel::Attribute
30
30
  def initialized?; end
31
31
  def name; end
32
32
  def original_value; end
33
+ def original_value_for_database; end
34
+ def serializable?(&block); end
33
35
  def type; end
34
- def type_cast(*_); end
36
+ def type_cast(*_arg0); end
35
37
  def value; end
36
38
  def value_before_type_cast; end
37
39
  def value_for_database; end
@@ -40,10 +42,6 @@ class ActiveModel::Attribute
40
42
  def with_value_from_database(value); end
41
43
  def with_value_from_user(value); end
42
44
 
43
- protected
44
-
45
- def original_value_for_database; end
46
-
47
45
  private
48
46
 
49
47
  def _original_value_for_database; end
@@ -53,11 +51,11 @@ class ActiveModel::Attribute
53
51
  def original_attribute; end
54
52
 
55
53
  class << self
56
- def from_database(name, value, type); end
57
- def from_user(name, value, type, original_attribute = T.unsafe(nil)); end
54
+ def from_database(name, value_before_type_cast, type, value = T.unsafe(nil)); end
55
+ def from_user(name, value_before_type_cast, type, original_attribute = T.unsafe(nil)); end
58
56
  def null(name); end
59
57
  def uninitialized(name, type); end
60
- def with_cast_value(name, value, type); end
58
+ def with_cast_value(name, value_before_type_cast, type); end
61
59
  end
62
60
  end
63
61
 
@@ -94,7 +92,7 @@ module ActiveModel::AttributeMethods
94
92
  def attribute_missing(match, *args, &block); end
95
93
  def method_missing(method, *args, &block); end
96
94
  def respond_to?(method, include_private_methods = T.unsafe(nil)); end
97
- def respond_to_without_attributes?(*_); end
95
+ def respond_to_without_attributes?(*_arg0); end
98
96
 
99
97
  private
100
98
 
@@ -129,7 +127,7 @@ module ActiveModel::AttributeMethods::ClassMethods
129
127
 
130
128
  def attribute_method_matchers_cache; end
131
129
  def attribute_method_matchers_matching(method_name); end
132
- def define_proxy_call(include_private, code_generator, name, target, *extra); end
130
+ def define_proxy_call(code_generator, name, target, *extra); end
133
131
  def generated_attribute_methods; end
134
132
  def instance_method_already_implemented?(method_name); end
135
133
  end
@@ -151,17 +149,17 @@ class ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher::Attri
151
149
  def target=(_); end
152
150
 
153
151
  class << self
154
- def [](*_); end
152
+ def [](*_arg0); end
155
153
  def inspect; end
156
154
  def members; end
157
- def new(*_); end
155
+ def new(*_arg0); end
158
156
  end
159
157
  end
160
158
 
161
159
  ActiveModel::AttributeMethods::NAME_COMPILABLE_REGEXP = T.let(T.unsafe(nil), Regexp)
162
160
 
163
161
  class ActiveModel::AttributeMutationTracker
164
- def initialize(attributes, forced_changes = T.unsafe(nil)); end
162
+ def initialize(attributes); end
165
163
 
166
164
  def any_changes?; end
167
165
  def change_to_attribute(attr_name); end
@@ -193,9 +191,9 @@ class ActiveModel::AttributeSet
193
191
  def []=(name, value); end
194
192
  def accessed; end
195
193
  def deep_dup; end
196
- def each_value(*args, &block); end
197
- def except(*args, &block); end
198
- def fetch(*args, &block); end
194
+ def each_value(*_arg0, &_arg1); end
195
+ def except(*_arg0, &_arg1); end
196
+ def fetch(*_arg0, &_arg1); end
199
197
  def fetch_value(name, &block); end
200
198
  def freeze; end
201
199
  def key?(name); end
@@ -215,9 +213,9 @@ class ActiveModel::AttributeSet
215
213
 
216
214
  private
217
215
 
216
+ def default_attribute(name); end
218
217
  def initialize_clone(_); end
219
218
  def initialize_dup(_); end
220
- def initialized_attributes; end
221
219
  end
222
220
 
223
221
  class ActiveModel::AttributeSet::Builder
@@ -246,7 +244,7 @@ module ActiveModel::Attributes
246
244
 
247
245
  mixes_in_class_methods(::ActiveModel::Attributes::ClassMethods)
248
246
 
249
- def initialize(*_); end
247
+ def initialize(*_arg0); end
250
248
 
251
249
  def attribute_names; end
252
250
  def attributes; end
@@ -254,14 +252,14 @@ module ActiveModel::Attributes
254
252
 
255
253
  private
256
254
 
255
+ def _write_attribute(attr_name, value); end
257
256
  def attribute(attr_name); end
258
- def attribute=(attribute_name, value); end
257
+ def attribute=(attr_name, value); end
259
258
  def initialize_dup(other); end
260
- def write_attribute(attr_name, value); end
261
259
  end
262
260
 
263
261
  module ActiveModel::Attributes::ClassMethods
264
- def attribute(name, type = T.unsafe(nil), **options); end
262
+ def attribute(name, cast_type = T.unsafe(nil), default: T.unsafe(nil), **options); end
265
263
  def attribute_names; end
266
264
 
267
265
  private
@@ -370,6 +368,10 @@ class ActiveModel::EachValidator < ::ActiveModel::Validator
370
368
  def check_validity!; end
371
369
  def validate(record); end
372
370
  def validate_each(record, attribute, value); end
371
+
372
+ private
373
+
374
+ def prepare_value_for_validation(value, record, attr_name); end
373
375
  end
374
376
 
375
377
  class ActiveModel::Error
@@ -379,11 +381,12 @@ class ActiveModel::Error
379
381
  def attribute; end
380
382
  def base; end
381
383
  def detail; end
384
+ def details; end
382
385
  def eql?(other); end
383
386
  def full_message; end
384
387
  def hash; end
385
388
  def i18n_customize_full_message; end
386
- def i18n_customize_full_message=(_); end
389
+ def i18n_customize_full_message=(_arg0); end
387
390
  def i18n_customize_full_message?; end
388
391
  def inspect; end
389
392
  def match?(attribute, type = T.unsafe(nil), **options); end
@@ -402,7 +405,7 @@ class ActiveModel::Error
402
405
  def initialize_dup(other); end
403
406
 
404
407
  class << self
405
- def full_message(attribute, message, base_class); end
408
+ def full_message(attribute, message, base); end
406
409
  def generate_message(attribute, type, base, options); end
407
410
  def i18n_customize_full_message; end
408
411
  def i18n_customize_full_message=(value); end
@@ -483,7 +486,7 @@ module ActiveModel::ForbiddenAttributesProtection
483
486
  end
484
487
 
485
488
  class ActiveModel::ForcedMutationTracker < ::ActiveModel::AttributeMutationTracker
486
- def initialize(attributes, forced_changes = T.unsafe(nil)); end
489
+ def initialize(attributes); end
487
490
 
488
491
  def change_to_attribute(attr_name); end
489
492
  def changed_in_place?(attr_name); end
@@ -508,15 +511,14 @@ class ActiveModel::LazyAttributeHash
508
511
  def [](key); end
509
512
  def []=(key, value); end
510
513
  def deep_dup; end
511
- def each_key(*args, &block); end
512
- def each_value(*args, &block); end
513
- def except(*args, &block); end
514
- def fetch(*args, &block); end
514
+ def each_key(&block); end
515
+ def each_value(*_arg0, &_arg1); end
516
+ def except(*_arg0, &_arg1); end
517
+ def fetch(*_arg0, &_arg1); end
515
518
  def key?(key); end
516
519
  def marshal_dump; end
517
520
  def marshal_load(values); end
518
- def select; end
519
- def transform_values(*args, &block); end
521
+ def transform_values(*_arg0, &_arg1); end
520
522
 
521
523
  protected
522
524
 
@@ -533,6 +535,26 @@ class ActiveModel::LazyAttributeHash
533
535
  def values; end
534
536
  end
535
537
 
538
+ class ActiveModel::LazyAttributeSet < ::ActiveModel::AttributeSet
539
+ def initialize(values, types, additional_types, default_attributes, attributes = T.unsafe(nil)); end
540
+
541
+ def fetch_value(name, &block); end
542
+ def key?(name); end
543
+ def keys; end
544
+
545
+ protected
546
+
547
+ def attributes; end
548
+
549
+ private
550
+
551
+ def additional_types; end
552
+ def default_attribute(name, value_present = T.unsafe(nil), value = T.unsafe(nil)); end
553
+ def default_attributes; end
554
+ def types; end
555
+ def values; end
556
+ end
557
+
536
558
  module ActiveModel::Lint
537
559
  end
538
560
 
@@ -571,29 +593,39 @@ end
571
593
  class ActiveModel::Name
572
594
  include(::Comparable)
573
595
 
574
- def initialize(klass, namespace = T.unsafe(nil), name = T.unsafe(nil)); end
596
+ def initialize(klass, namespace = T.unsafe(nil), name = T.unsafe(nil), locale = T.unsafe(nil)); end
575
597
 
576
- def !~(*args, &block); end
577
- def <=>(*args, &block); end
598
+ def !~(*_arg0, &_arg1); end
599
+ def <=>(*_arg0, &_arg1); end
578
600
  def ==(arg); end
579
601
  def ===(arg); end
580
- def =~(*args, &block); end
581
- def as_json(*args, &block); end
602
+ def =~(*_arg0, &_arg1); end
603
+ def as_json(*_arg0, &_arg1); end
582
604
  def cache_key; end
583
605
  def collection; end
606
+ def collection=(_arg0); end
584
607
  def element; end
585
- def eql?(*args, &block); end
608
+ def element=(_arg0); end
609
+ def eql?(*_arg0, &_arg1); end
586
610
  def human(options = T.unsafe(nil)); end
587
611
  def i18n_key; end
588
- def match?(*args, &block); end
612
+ def i18n_key=(_arg0); end
613
+ def match?(*_arg0, &_arg1); end
589
614
  def name; end
615
+ def name=(_arg0); end
590
616
  def param_key; end
617
+ def param_key=(_arg0); end
591
618
  def plural; end
619
+ def plural=(_arg0); end
592
620
  def route_key; end
621
+ def route_key=(_arg0); end
593
622
  def singular; end
623
+ def singular=(_arg0); end
594
624
  def singular_route_key; end
595
- def to_s(*args, &block); end
596
- def to_str(*args, &block); end
625
+ def singular_route_key=(_arg0); end
626
+ def to_s(*_arg0, &_arg1); end
627
+ def to_str(*_arg0, &_arg1); end
628
+ def uncountable?; end
597
629
 
598
630
  private
599
631
 
@@ -633,16 +665,12 @@ class ActiveModel::NullMutationTracker
633
665
 
634
666
  def any_changes?; end
635
667
  def change_to_attribute(attr_name); end
636
- def changed?(attr_name, **_); end
668
+ def changed?(attr_name, **_arg1); end
637
669
  def changed_attribute_names; end
638
670
  def changed_in_place?(attr_name); end
639
671
  def changed_values; end
640
672
  def changes; end
641
673
  def original_value(attr_name); end
642
-
643
- class << self
644
- def instance; end
645
- end
646
674
  end
647
675
 
648
676
  class ActiveModel::Railtie < ::Rails::Railtie
@@ -658,7 +686,7 @@ module ActiveModel::SecurePassword
658
686
 
659
687
  class << self
660
688
  def min_cost; end
661
- def min_cost=(_); end
689
+ def min_cost=(_arg0); end
662
690
  end
663
691
  end
664
692
 
@@ -673,12 +701,13 @@ end
673
701
  ActiveModel::SecurePassword::MAX_PASSWORD_LENGTH_ALLOWED = T.let(T.unsafe(nil), Integer)
674
702
 
675
703
  module ActiveModel::Serialization
676
- def read_attribute_for_serialization(*_); end
704
+ def read_attribute_for_serialization(*_arg0); end
677
705
  def serializable_hash(options = T.unsafe(nil)); end
678
706
 
679
707
  private
680
708
 
681
709
  def serializable_add_includes(options = T.unsafe(nil)); end
710
+ def serializable_attributes(attribute_names); end
682
711
  end
683
712
 
684
713
  module ActiveModel::Serializers
@@ -712,7 +741,7 @@ module ActiveModel::Type
712
741
  def lookup(*args, **kwargs); end
713
742
  def register(type_name, klass = T.unsafe(nil), **options, &block); end
714
743
  def registry; end
715
- def registry=(_); end
744
+ def registry=(_arg0); end
716
745
  end
717
746
  end
718
747
 
@@ -753,6 +782,7 @@ ActiveModel::Type::Boolean::FALSE_VALUES = T.let(T.unsafe(nil), Set)
753
782
 
754
783
  class ActiveModel::Type::Date < ::ActiveModel::Type::Value
755
784
  include(::ActiveModel::Type::Helpers::Timezone)
785
+ include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
756
786
 
757
787
  def type; end
758
788
  def type_cast_for_schema(value); end
@@ -763,7 +793,7 @@ class ActiveModel::Type::Date < ::ActiveModel::Type::Value
763
793
  def fallback_string_to_date(string); end
764
794
  def fast_string_to_date(string); end
765
795
  def new_date(year, mon, mday); end
766
- def value_from_multiparameter_assignment(*_); end
796
+ def value_from_multiparameter_assignment(*_arg0); end
767
797
  end
768
798
 
769
799
  ActiveModel::Type::Date::ISO_DATE = T.let(T.unsafe(nil), Regexp)
@@ -771,6 +801,7 @@ ActiveModel::Type::Date::ISO_DATE = T.let(T.unsafe(nil), Regexp)
771
801
  class ActiveModel::Type::DateTime < ::ActiveModel::Type::Value
772
802
  include(::ActiveModel::Type::Helpers::Timezone)
773
803
  include(::ActiveModel::Type::Helpers::TimeValue)
804
+ include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
774
805
 
775
806
  def type; end
776
807
 
@@ -816,6 +847,13 @@ class ActiveModel::Type::Helpers::AcceptsMultiparameterTime < ::Module
816
847
  def initialize(defaults: T.unsafe(nil)); end
817
848
  end
818
849
 
850
+ module ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods
851
+ def assert_valid_value(value); end
852
+ def cast(value); end
853
+ def serialize(value); end
854
+ def value_constructed_by_mass_assignment?(value); end
855
+ end
856
+
819
857
  module ActiveModel::Type::Helpers::Mutable
820
858
  def cast(value); end
821
859
  def changed_in_place?(raw_old_value, new_value); end
@@ -825,7 +863,6 @@ module ActiveModel::Type::Helpers::Numeric
825
863
  def cast(value); end
826
864
  def changed?(old_value, _new_value, new_value_before_type_cast); end
827
865
  def serialize(value); end
828
- def unchecked_serialize(value); end
829
866
 
830
867
  private
831
868
 
@@ -853,6 +890,8 @@ module ActiveModel::Type::Helpers::Timezone
853
890
  end
854
891
 
855
892
  class ActiveModel::Type::ImmutableString < ::ActiveModel::Type::Value
893
+ def initialize(**args); end
894
+
856
895
  def serialize(value); end
857
896
  def type; end
858
897
 
@@ -864,7 +903,7 @@ end
864
903
  class ActiveModel::Type::Integer < ::ActiveModel::Type::Value
865
904
  include(::ActiveModel::Type::Helpers::Numeric)
866
905
 
867
- def initialize(**_); end
906
+ def initialize(**_arg0); end
868
907
 
869
908
  def deserialize(value); end
870
909
  def serializable?(value); end
@@ -885,7 +924,7 @@ end
885
924
  ActiveModel::Type::Integer::DEFAULT_LIMIT = T.let(T.unsafe(nil), Integer)
886
925
 
887
926
  class ActiveModel::Type::Registration
888
- def initialize(name, block, **_); end
927
+ def initialize(name, block, **_arg2); end
889
928
 
890
929
  def call(_registry, *args, **kwargs); end
891
930
  def matches?(type_name, *args, **kwargs); end
@@ -905,12 +944,14 @@ class ActiveModel::Type::Registry
905
944
  private
906
945
 
907
946
  def find_registration(symbol, *args, **kwargs); end
947
+ def initialize_dup(other); end
908
948
  def registration_klass; end
909
949
  def registrations; end
910
950
  end
911
951
 
912
952
  class ActiveModel::Type::String < ::ActiveModel::Type::ImmutableString
913
953
  def changed_in_place?(raw_old_value, new_value); end
954
+ def to_immutable_string; end
914
955
 
915
956
  private
916
957
 
@@ -920,6 +961,7 @@ end
920
961
  class ActiveModel::Type::Time < ::ActiveModel::Type::Value
921
962
  include(::ActiveModel::Type::Helpers::Timezone)
922
963
  include(::ActiveModel::Type::Helpers::TimeValue)
964
+ include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
923
965
 
924
966
  def type; end
925
967
  def user_input_in_time_zone(value); end
@@ -950,7 +992,6 @@ class ActiveModel::Type::Value
950
992
  def serialize(value); end
951
993
  def type; end
952
994
  def type_cast_for_schema(value); end
953
- def unchecked_serialize(value); end
954
995
  def value_constructed_by_mass_assignment?(_value); end
955
996
 
956
997
  private
@@ -994,7 +1035,7 @@ module ActiveModel::Validations
994
1035
 
995
1036
  def errors; end
996
1037
  def invalid?(context = T.unsafe(nil)); end
997
- def read_attribute_for_validation(*_); end
1038
+ def read_attribute_for_validation(*_arg0); end
998
1039
  def valid?(context = T.unsafe(nil)); end
999
1040
  def validate(context = T.unsafe(nil)); end
1000
1041
  def validate!(context = T.unsafe(nil)); end
@@ -1051,6 +1092,10 @@ end
1051
1092
  module ActiveModel::Validations::Callbacks::ClassMethods
1052
1093
  def after_validation(*args, &block); end
1053
1094
  def before_validation(*args, &block); end
1095
+
1096
+ private
1097
+
1098
+ def set_options_for_callback(options); end
1054
1099
  end
1055
1100
 
1056
1101
  module ActiveModel::Validations::ClassMethods
@@ -1165,9 +1210,11 @@ class ActiveModel::Validations::NumericalityValidator < ::ActiveModel::EachValid
1165
1210
  def is_hexadecimal_literal?(raw_value); end
1166
1211
  def is_integer?(raw_value); end
1167
1212
  def is_number?(raw_value, precision, scale); end
1168
- def parse_as_number(raw_value, precision, scale); end
1213
+ def parse_as_number(raw_value, precision, scale, option = T.unsafe(nil)); end
1169
1214
  def parse_float(raw_value, precision, scale); end
1215
+ def prepare_value_for_validation(value, record, attr_name); end
1170
1216
  def record_attribute_changed_in_place?(record, attr_name); end
1217
+ def round(raw_value, scale); end
1171
1218
  end
1172
1219
 
1173
1220
  ActiveModel::Validations::NumericalityValidator::CHECKS = T.let(T.unsafe(nil), Hash)