lunchmoney 1.4.0 → 1.4.1

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/build_and_publish_yard_docs.yml +2 -2
  4. data/.github/workflows/ci.yml +1 -1
  5. data/.ruby-version +1 -1
  6. data/.simplecov +1 -0
  7. data/Gemfile +2 -2
  8. data/Gemfile.lock +65 -57
  9. data/lib/lunchmoney/api.rb +1 -0
  10. data/lib/lunchmoney/calls/categories.rb +0 -2
  11. data/lib/lunchmoney/calls/transactions.rb +0 -1
  12. data/lib/lunchmoney/deprecate.rb +35 -0
  13. data/lib/lunchmoney/objects/asset.rb +6 -1
  14. data/lib/lunchmoney/objects/plaid_account.rb +6 -1
  15. data/lib/lunchmoney/version.rb +1 -1
  16. data/sorbet/rbi/annotations/activesupport.rbi +5 -0
  17. data/sorbet/rbi/gems/{activesupport@7.2.1.rbi → activesupport@7.2.2.1.rbi} +109 -86
  18. data/sorbet/rbi/gems/benchmark@0.4.0.rbi +618 -0
  19. data/sorbet/rbi/gems/{concurrent-ruby@1.3.4.rbi → concurrent-ruby@1.3.5.rbi} +44 -32
  20. data/sorbet/rbi/gems/{connection_pool@2.4.1.rbi → connection_pool@2.5.0.rbi} +1 -0
  21. data/sorbet/rbi/gems/{dotenv@3.1.2.rbi → dotenv@3.1.7.rbi} +21 -29
  22. data/sorbet/rbi/gems/{erubi@1.13.0.rbi → erubi@1.13.1.rbi} +14 -9
  23. data/sorbet/rbi/gems/{faraday-net_http@3.1.1.rbi → faraday-net_http@3.4.0.rbi} +34 -34
  24. data/sorbet/rbi/gems/{faraday@2.10.1.rbi → faraday@2.12.2.rbi} +43 -34
  25. data/sorbet/rbi/gems/{i18n@1.14.5.rbi → i18n@1.14.7.rbi} +80 -80
  26. data/sorbet/rbi/gems/{json@2.7.2.rbi → json@2.10.2.rbi} +697 -146
  27. data/sorbet/rbi/gems/language_server-protocol@3.17.0.4.rbi +9 -0
  28. data/sorbet/rbi/gems/{logger@1.6.0.rbi → logger@1.6.6.rbi} +109 -72
  29. data/sorbet/rbi/gems/{minitest@5.25.1.rbi → minitest@5.25.5.rbi} +227 -220
  30. data/sorbet/rbi/gems/{mocha@2.4.5.rbi → mocha@2.7.1.rbi} +154 -118
  31. data/sorbet/rbi/gems/{net-http@0.4.1.rbi → net-http@0.6.0.rbi} +360 -181
  32. data/sorbet/rbi/gems/{parser@3.3.4.2.rbi → parser@3.3.7.1.rbi} +23 -17
  33. data/sorbet/rbi/gems/{prism@0.30.0.rbi → prism@1.4.0.rbi} +12440 -9920
  34. data/sorbet/rbi/gems/{rack@3.1.7.rbi → rack@3.1.9.rbi} +91 -83
  35. data/sorbet/rbi/gems/rbi@0.3.1.rbi +6599 -0
  36. data/sorbet/rbi/gems/rbs@3.9.0.rbi +6978 -0
  37. data/sorbet/rbi/gems/{regexp_parser@2.9.2.rbi → regexp_parser@2.10.0.rbi} +193 -170
  38. data/sorbet/rbi/gems/{rexml@3.3.6.rbi → rexml@3.4.1.rbi} +541 -114
  39. data/sorbet/rbi/gems/{rubocop-ast@1.32.1.rbi → rubocop-ast@1.38.0.rbi} +1224 -622
  40. data/sorbet/rbi/gems/{rubocop-minitest@0.35.1.rbi → rubocop-minitest@0.36.0.rbi} +5 -5
  41. data/sorbet/rbi/gems/{rubocop-rails@2.26.0.rbi → rubocop-rails@2.29.1.rbi} +9412 -6480
  42. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.5.rbi → rubocop-sorbet@0.8.7.rbi} +44 -1
  43. data/sorbet/rbi/gems/{rubocop@1.65.1.rbi → rubocop@1.71.2.rbi} +5606 -3467
  44. data/sorbet/rbi/gems/{securerandom@0.3.1.rbi → securerandom@0.4.1.rbi} +7 -5
  45. data/sorbet/rbi/gems/{spoom@1.4.2.rbi → spoom@1.6.1.rbi} +3315 -973
  46. data/sorbet/rbi/gems/{tapioca@0.16.1.rbi → tapioca@0.16.11.rbi} +300 -234
  47. data/sorbet/rbi/gems/{thor@1.3.1.rbi → thor@1.3.2.rbi} +58 -31
  48. data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +132 -0
  49. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +251 -0
  50. data/sorbet/rbi/gems/{uri@0.13.0.rbi → uri@1.0.3.rbi} +278 -256
  51. data/sorbet/rbi/gems/{webmock@3.23.1.rbi → webmock@3.25.1.rbi} +101 -78
  52. data/sorbet/rbi/gems/{yard@0.9.36.rbi → yard@0.9.37.rbi} +394 -235
  53. metadata +42 -44
  54. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  55. data/sorbet/rbi/gems/rbi@0.1.14.rbi +0 -3305
  56. data/sorbet/rbi/gems/strscan@3.1.0.rbi +0 -9
  57. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  58. /data/sorbet/rbi/gems/{bigdecimal@3.1.8.rbi → bigdecimal@3.1.9.rbi} +0 -0
  59. /data/sorbet/rbi/gems/{hashdiff@1.1.1.rbi → hashdiff@1.1.2.rbi} +0 -0
@@ -1,4 +1,4 @@
1
- # typed: true
1
+ # typed: false
2
2
 
3
3
  # DO NOT EDIT MANUALLY
4
4
  # This is an autogenerated file for types exported from the `tapioca` gem.
@@ -55,26 +55,16 @@ module RBI; end
55
55
 
56
56
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#5
57
57
  class RBI::Tree < ::RBI::NodeWithComments
58
- # source://rbi/0.1.14/lib/rbi/model.rb#121
59
- sig do
60
- params(
61
- loc: T.nilable(::RBI::Loc),
62
- comments: T::Array[::RBI::Comment],
63
- block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
64
- ).void
65
- end
58
+ # source://rbi/0.3.1/lib/rbi/model.rb#117
66
59
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
67
60
 
68
- # source://rbi/0.1.14/lib/rbi/model.rb#128
69
- sig { params(node: ::RBI::Node).void }
61
+ # source://rbi/0.3.1/lib/rbi/model.rb#124
70
62
  def <<(node); end
71
63
 
72
- # source://rbi/0.1.14/lib/rbi/rewriters/add_sig_templates.rb#66
73
- sig { params(with_todo_comment: T::Boolean).void }
64
+ # source://rbi/0.3.1/lib/rbi/rewriters/add_sig_templates.rb#63
74
65
  def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
75
66
 
76
- # source://rbi/0.1.14/lib/rbi/rewriters/annotate.rb#49
77
- sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
67
+ # source://rbi/0.3.1/lib/rbi/rewriters/annotate.rb#46
78
68
  def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
79
69
 
80
70
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#38
@@ -138,57 +128,51 @@ class RBI::Tree < ::RBI::NodeWithComments
138
128
  end
139
129
  def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
140
130
 
141
- # source://rbi/0.1.14/lib/rbi/rewriters/deannotate.rb#41
142
- sig { params(annotation: ::String).void }
131
+ # source://rbi/0.3.1/lib/rbi/rewriters/deannotate.rb#38
143
132
  def deannotate!(annotation); end
144
133
 
145
- # source://rbi/0.1.14/lib/rbi/model.rb#134
146
- sig { returns(T::Boolean) }
134
+ # source://rbi/0.3.1/lib/rbi/model.rb#130
147
135
  def empty?; end
148
136
 
149
- # source://rbi/0.1.14/lib/rbi/rewriters/filter_versions.rb#118
150
- sig { params(version: ::Gem::Version).void }
137
+ # source://rbi/0.3.1/lib/rbi/rewriters/filter_versions.rb#113
151
138
  def filter_versions!(version); end
152
139
 
153
- # source://rbi/0.1.14/lib/rbi/rewriters/group_nodes.rb#81
154
- sig { void }
140
+ # source://rbi/0.3.1/lib/rbi/rewriters/flatten_singleton_methods.rb#57
141
+ def flatten_singleton_methods!; end
142
+
143
+ # source://rbi/0.3.1/lib/rbi/rewriters/flatten_visibilities.rb#57
144
+ def flatten_visibilities!; end
145
+
146
+ # source://rbi/0.3.1/lib/rbi/rewriters/group_nodes.rb#78
155
147
  def group_nodes!; end
156
148
 
157
- # source://rbi/0.1.14/lib/rbi/index.rb#68
158
- sig { returns(::RBI::Index) }
149
+ # source://rbi/0.3.1/lib/rbi/index.rb#64
159
150
  def index; end
160
151
 
161
- # source://rbi/0.1.14/lib/rbi/rewriters/merge_trees.rb#324
162
- sig do
163
- params(
164
- other: ::RBI::Tree,
165
- left_name: ::String,
166
- right_name: ::String,
167
- keep: ::RBI::Rewriters::Merge::Keep
168
- ).returns(::RBI::MergeTree)
169
- end
152
+ # source://rbi/0.3.1/lib/rbi/rewriters/merge_trees.rb#314
170
153
  def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
171
154
 
172
- # source://rbi/0.1.14/lib/rbi/rewriters/nest_non_public_methods.rb#46
173
- sig { void }
174
- def nest_non_public_methods!; end
155
+ # source://rbi/0.3.1/lib/rbi/rewriters/nest_non_public_members.rb#43
156
+ def nest_non_public_members!; end
175
157
 
176
- # source://rbi/0.1.14/lib/rbi/rewriters/nest_singleton_methods.rb#36
177
- sig { void }
158
+ # source://rbi/0.3.1/lib/rbi/rewriters/nest_singleton_methods.rb#33
178
159
  def nest_singleton_methods!; end
179
160
 
180
- # source://rbi/0.1.14/lib/rbi/model.rb#112
181
- sig { returns(T::Array[::RBI::Node]) }
161
+ # source://rbi/0.3.1/lib/rbi/rewriters/nest_top_level_members.rb#60
162
+ def nest_top_level_members!; end
163
+
164
+ # source://rbi/0.3.1/lib/rbi/model.rb#114
182
165
  def nodes; end
183
166
 
184
- # source://rbi/0.1.14/lib/rbi/rewriters/attr_to_methods.rb#53
185
- sig { void }
167
+ # source://rbi/0.3.1/lib/rbi/rewriters/attr_to_methods.rb#50
186
168
  def replace_attributes_with_methods!; end
187
169
 
188
- # source://rbi/0.1.14/lib/rbi/rewriters/sort_nodes.rb#119
189
- sig { void }
170
+ # source://rbi/0.3.1/lib/rbi/rewriters/sort_nodes.rb#116
190
171
  def sort_nodes!; end
191
172
 
173
+ # source://rbi/0.3.1/lib/rbi/rewriters/translate_rbs_sigs.rb#82
174
+ def translate_rbs_sigs!; end
175
+
192
176
  private
193
177
 
194
178
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#123
@@ -206,7 +190,7 @@ class RBI::TypedParam < ::T::Struct
206
190
  const :type, ::String
207
191
 
208
192
  class << self
209
- # source://sorbet-runtime/0.5.11545/lib/types/struct.rb#13
193
+ # source://sorbet-runtime/0.5.11953/lib/types/struct.rb#13
210
194
  def inherited(s); end
211
195
  end
212
196
  end
@@ -250,6 +234,25 @@ module T::Generic::TypeStoragePatch
250
234
  def type_template(variance = T.unsafe(nil), &bounds_proc); end
251
235
  end
252
236
 
237
+ # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#54
238
+ module T::Helpers
239
+ # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#56
240
+ def requires_ancestor(&block); end
241
+ end
242
+
243
+ class T::InexactStruct
244
+ include ::T::Props
245
+ include ::T::Props::Plugin
246
+ include ::T::Props::Optional
247
+ include ::T::Props::PrettyPrintable
248
+ include ::T::Props::Serializable
249
+ include ::T::Props::WeakConstructor
250
+ include ::T::Props::Constructor
251
+ extend ::T::Props::ClassMethods
252
+ extend ::T::Props::Plugin::ClassMethods
253
+ extend ::T::Props::Serializable::ClassMethods
254
+ end
255
+
253
256
  # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#28
254
257
  module T::Private::Methods
255
258
  class << self
@@ -318,7 +321,16 @@ module T::Private::Methods::ProcBindPatch
318
321
  def finalize_proc(decl); end
319
322
  end
320
323
 
321
- class T::Types::Proc < ::T::Types::Base; end
324
+ module T::Private::Retry; end
325
+ module T::Private::Retry::RETRY; end
326
+
327
+ class T::Types::Proc < ::T::Types::Base
328
+ # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#7
329
+ def initialize(arg_types, returns, bind = T.unsafe(nil)); end
330
+
331
+ # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#15
332
+ def name; end
333
+ end
322
334
 
323
335
  # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#6
324
336
  module T::Types::ProcBindPatch
@@ -441,24 +453,24 @@ class Tapioca::Cli < ::Thor
441
453
  include ::Tapioca::ConfigHelper
442
454
  include ::Tapioca::EnvHelper
443
455
 
444
- # source://tapioca//lib/tapioca/cli.rb#366
456
+ # source://tapioca//lib/tapioca/cli.rb#372
445
457
  def __print_version; end
446
458
 
447
- # source://tapioca//lib/tapioca/cli.rb#348
459
+ # source://tapioca//lib/tapioca/cli.rb#354
448
460
  def annotations; end
449
461
 
450
- # source://tapioca//lib/tapioca/cli.rb#320
462
+ # source://tapioca//lib/tapioca/cli.rb#326
451
463
  def check_shims; end
452
464
 
453
465
  # source://tapioca//lib/tapioca/cli.rb#46
454
466
  def configure; end
455
467
 
456
- # source://tapioca//lib/tapioca/cli.rb#147
468
+ # source://tapioca//lib/tapioca/cli.rb#146
457
469
  def dsl(*constant_or_paths); end
458
470
 
459
471
  # @raise [MalformattedArgumentError]
460
472
  #
461
- # source://tapioca//lib/tapioca/cli.rb#264
473
+ # source://tapioca//lib/tapioca/cli.rb#269
462
474
  def gem(*gems); end
463
475
 
464
476
  # source://tapioca//lib/tapioca/cli.rb#27
@@ -472,11 +484,19 @@ class Tapioca::Cli < ::Thor
472
484
 
473
485
  private
474
486
 
475
- # source://tapioca//lib/tapioca/cli.rb#380
487
+ # source://tapioca//lib/tapioca/cli.rb#399
476
488
  def print_init_next_steps; end
477
489
 
478
490
  class << self
479
- # source://tapioca//lib/tapioca/cli.rb#372
491
+ # source://tapioca//lib/tapioca/cli.rb#383
492
+ def addon_mode; end
493
+
494
+ # source://tapioca//lib/tapioca/cli.rb#386
495
+ sig { void }
496
+ def addon_mode!; end
497
+
498
+ # source://tapioca//lib/tapioca/cli.rb#391
499
+ sig { returns(T::Boolean) }
480
500
  def exit_on_failure?; end
481
501
  end
482
502
  end
@@ -513,7 +533,7 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
513
533
 
514
534
  abstract!
515
535
 
516
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#33
536
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#34
517
537
  sig do
518
538
  params(
519
539
  requested_constants: T::Array[::String],
@@ -532,22 +552,23 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
532
552
  rbi_formatter: ::Tapioca::RBIFormatter,
533
553
  app_root: ::String,
534
554
  halt_upon_load_error: T::Boolean,
535
- compiler_options: T::Hash[::String, T.untyped]
555
+ compiler_options: T::Hash[::String, T.untyped],
556
+ lsp_addon: T::Boolean
536
557
  ).void
537
558
  end
538
- def initialize(requested_constants:, requested_paths:, outpath:, only:, exclude:, file_header:, tapioca_path:, skip_constant: T.unsafe(nil), quiet: T.unsafe(nil), verbose: T.unsafe(nil), number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), gem_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil), compiler_options: T.unsafe(nil)); end
559
+ def initialize(requested_constants:, requested_paths:, outpath:, only:, exclude:, file_header:, tapioca_path:, skip_constant: T.unsafe(nil), quiet: T.unsafe(nil), verbose: T.unsafe(nil), number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), gem_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil), compiler_options: T.unsafe(nil), lsp_addon: T.unsafe(nil)); end
539
560
 
540
561
  private
541
562
 
542
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#100
563
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#107
543
564
  sig { returns(T::Array[::String]) }
544
565
  def all_requested_constants; end
545
566
 
546
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#293
567
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#313
547
568
  sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
548
569
  def build_error_for_files(cause, files); end
549
570
 
550
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#217
571
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#237
551
572
  sig do
552
573
  params(
553
574
  constant_name: ::String,
@@ -558,75 +579,75 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
558
579
  end
559
580
  def compile_dsl_rbi(constant_name, rbi, outpath: T.unsafe(nil), quiet: T.unsafe(nil)); end
560
581
 
561
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#154
582
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#172
562
583
  sig { params(constant_names: T::Array[::String], ignore_missing: T::Boolean).returns(T::Array[::Module]) }
563
584
  def constantize(constant_names, ignore_missing: T.unsafe(nil)); end
564
585
 
565
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#177
586
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#197
566
587
  sig { params(compiler_names: T::Array[::String]).returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
567
588
  def constantize_compilers(compiler_names); end
568
589
 
569
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#353
590
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#373
570
591
  sig { returns(T::Array[::String]) }
571
592
  def constants_from_requested_paths; end
572
593
 
573
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#123
594
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#133
574
595
  sig { returns(::Tapioca::Dsl::Pipeline) }
575
596
  def create_pipeline; end
576
597
 
577
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#256
598
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#276
578
599
  sig { params(constant_name: ::String).returns(::Pathname) }
579
600
  def dsl_rbi_filename(constant_name); end
580
601
 
581
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#140
602
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#158
582
603
  sig { params(requested_constants: T::Array[::String], path: ::Pathname).returns(T::Set[::Pathname]) }
583
604
  def existing_rbi_filenames(requested_constants, path: T.unsafe(nil)); end
584
605
 
585
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#348
606
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#368
586
607
  sig { params(constant: ::String).returns(::String) }
587
608
  def generate_command_for(constant); end
588
609
 
589
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#76
610
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#79
590
611
  sig { params(outpath: ::Pathname, quiet: T::Boolean).returns(T::Set[::Pathname]) }
591
612
  def generate_dsl_rbi_files(outpath, quiet:); end
592
613
 
593
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#113
614
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#120
594
615
  sig { void }
595
616
  def load_application; end
596
617
 
597
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#235
618
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#255
598
619
  sig { params(dir: ::Pathname).void }
599
620
  def perform_dsl_verification(dir); end
600
621
 
601
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#108
622
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#115
602
623
  sig { returns(::Tapioca::Dsl::Pipeline) }
603
624
  def pipeline; end
604
625
 
605
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#244
626
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#264
606
627
  sig { params(files: T::Set[::Pathname]).void }
607
628
  def purge_stale_dsl_rbi_files(files); end
608
629
 
609
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#343
630
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#363
610
631
  sig { params(constant: ::String).returns(::String) }
611
632
  def rbi_filename_for(constant); end
612
633
 
613
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#324
634
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#344
614
635
  sig { params(path: ::Pathname).returns(T::Array[::Pathname]) }
615
636
  def rbi_files_in(path); end
616
637
 
617
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#302
638
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#322
618
639
  sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
619
640
  def report_diff_and_exit_if_out_of_date(diff, command); end
620
641
 
621
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#197
642
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#217
622
643
  sig { params(name: ::String).returns(T.nilable(T.class_of(Tapioca::Dsl::Compiler))) }
623
644
  def resolve(name); end
624
645
 
625
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#331
646
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#351
626
647
  sig { params(class_name: ::String).returns(::String) }
627
648
  def underscore(class_name); end
628
649
 
629
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#261
650
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#281
630
651
  sig { params(tmp_dir: ::Pathname).returns(T::Hash[::String, ::Symbol]) }
631
652
  def verify_dsl_rbi(tmp_dir:); end
632
653
  end
@@ -640,7 +661,7 @@ class Tapioca::Commands::AbstractGem < ::Tapioca::Commands::Command
640
661
 
641
662
  abstract!
642
663
 
643
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#32
664
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#33
644
665
  sig do
645
666
  params(
646
667
  gem_names: T::Array[::String],
@@ -658,83 +679,71 @@ class Tapioca::Commands::AbstractGem < ::Tapioca::Commands::Command
658
679
  auto_strictness: T::Boolean,
659
680
  dsl_dir: ::String,
660
681
  rbi_formatter: ::Tapioca::RBIFormatter,
661
- halt_upon_load_error: T::Boolean
682
+ halt_upon_load_error: T::Boolean,
683
+ lsp_addon: T.nilable(T::Boolean)
662
684
  ).void
663
685
  end
664
- def initialize(gem_names:, exclude:, include_dependencies:, prerequire:, postrequire:, typed_overrides:, outpath:, file_header:, include_doc:, include_loc:, include_exported_rbis:, number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), dsl_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
686
+ def initialize(gem_names:, exclude:, include_dependencies:, prerequire:, postrequire:, typed_overrides:, outpath:, file_header:, include_doc:, include_loc:, include_exported_rbis:, number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), dsl_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil), lsp_addon: T.unsafe(nil)); end
665
687
 
666
688
  private
667
689
 
668
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#230
690
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#200
669
691
  sig { returns(T::Array[::String]) }
670
692
  def added_rbis; end
671
693
 
672
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#291
694
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#261
673
695
  sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
674
696
  def build_error_for_files(cause, files); end
675
697
 
676
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#110
698
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#80
677
699
  sig { params(gem: ::Tapioca::Gemfile::GemSpec).void }
678
700
  def compile_gem_rbi(gem); end
679
701
 
680
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#225
702
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#195
681
703
  sig { params(gem_name: ::String).returns(::Pathname) }
682
704
  def existing_rbi(gem_name); end
683
705
 
684
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#273
706
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#243
685
707
  sig { returns(T::Hash[::String, ::String]) }
686
708
  def existing_rbis; end
687
709
 
688
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#237
710
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#207
689
711
  sig { params(gem_name: ::String).returns(::Pathname) }
690
712
  def expected_rbi(gem_name); end
691
713
 
692
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#279
714
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#249
693
715
  sig { returns(T::Hash[::String, ::String]) }
694
716
  def expected_rbis; end
695
717
 
696
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#98
697
- sig do
698
- params(
699
- gem: ::Tapioca::Gemfile::GemSpec,
700
- dependencies: T::Array[::Tapioca::Gemfile::GemSpec]
701
- ).returns(T::Array[::Tapioca::Gemfile::GemSpec])
702
- end
703
- def gem_dependencies(gem, dependencies = T.unsafe(nil)); end
704
-
705
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#242
718
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#212
706
719
  sig { params(gem_name: ::String).returns(T::Boolean) }
707
720
  def gem_rbi_exists?(gem_name); end
708
721
 
709
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#286
722
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#256
710
723
  sig { params(gem_name: ::String, version: ::String).returns(::Pathname) }
711
724
  def gem_rbi_filename(gem_name, version); end
712
725
 
713
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#77
714
- sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
715
- def gems_to_generate(gem_names); end
716
-
717
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#296
726
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#266
718
727
  sig { params(gem: ::Tapioca::Gemfile::GemSpec, file: ::RBI::File).void }
719
728
  def merge_with_exported_rbi(gem, file); end
720
729
 
721
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#267
730
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#237
722
731
  sig { params(old_filename: ::Pathname, new_filename: ::Pathname).void }
723
732
  def move(old_filename, new_filename); end
724
733
 
725
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#177
734
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#147
726
735
  sig { void }
727
736
  def perform_additions; end
728
737
 
729
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#150
738
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#120
730
739
  sig { void }
731
740
  def perform_removals; end
732
741
 
733
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#220
742
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#190
734
743
  sig { returns(T::Array[::String]) }
735
744
  def removed_rbis; end
736
745
 
737
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#247
746
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#217
738
747
  sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
739
748
  def report_diff_and_exit_if_out_of_date(diff, command); end
740
749
  end
@@ -867,7 +876,7 @@ class Tapioca::Commands::Command
867
876
  sig { void }
868
877
  def initialize; end
869
878
 
870
- # source://thor/1.3.1/lib/thor/base.rb#155
879
+ # source://thor/1.3.2/lib/thor/base.rb#155
871
880
  sig { returns(::Thor::Actions) }
872
881
  def file_writer; end
873
882
 
@@ -992,6 +1001,19 @@ class Tapioca::Commands::GemGenerate < ::Tapioca::Commands::AbstractGem
992
1001
  # source://tapioca//lib/tapioca/commands/gem_generate.rb#10
993
1002
  sig { override.void }
994
1003
  def execute; end
1004
+
1005
+ # source://tapioca//lib/tapioca/commands/gem_generate.rb#74
1006
+ sig do
1007
+ params(
1008
+ gem: ::Tapioca::Gemfile::GemSpec,
1009
+ dependencies: T::Array[::Tapioca::Gemfile::GemSpec]
1010
+ ).returns(T::Array[::Tapioca::Gemfile::GemSpec])
1011
+ end
1012
+ def gem_dependencies(gem, dependencies = T.unsafe(nil)); end
1013
+
1014
+ # source://tapioca//lib/tapioca/commands/gem_generate.rb#51
1015
+ sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
1016
+ def gems_to_generate(gem_names); end
995
1017
  end
996
1018
 
997
1019
  # source://tapioca//lib/tapioca/commands/gem_sync.rb#6
@@ -1129,7 +1151,7 @@ class Tapioca::ConfigHelper::ConfigError < ::T::Struct
1129
1151
  const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart]
1130
1152
 
1131
1153
  class << self
1132
- # source://sorbet-runtime/0.5.11545/lib/types/struct.rb#13
1154
+ # source://sorbet-runtime/0.5.11953/lib/types/struct.rb#13
1133
1155
  def inherited(s); end
1134
1156
  end
1135
1157
  end
@@ -1140,7 +1162,7 @@ class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct
1140
1162
  const :colors, T::Array[::Symbol]
1141
1163
 
1142
1164
  class << self
1143
- # source://sorbet-runtime/0.5.11545/lib/types/struct.rb#13
1165
+ # source://sorbet-runtime/0.5.11953/lib/types/struct.rb#13
1144
1166
  def inherited(s); end
1145
1167
  end
1146
1168
  end
@@ -1197,7 +1219,7 @@ class Tapioca::Dsl::Compiler
1197
1219
 
1198
1220
  ConstantType = type_member { { upper: Module } }
1199
1221
 
1200
- # source://tapioca//lib/tapioca/dsl/compiler.rb#74
1222
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#110
1201
1223
  sig do
1202
1224
  params(
1203
1225
  pipeline: ::Tapioca::Dsl::Pipeline,
@@ -1210,11 +1232,11 @@ class Tapioca::Dsl::Compiler
1210
1232
 
1211
1233
  # NOTE: This should eventually accept an `Error` object or `Exception` rather than simply a `String`.
1212
1234
  #
1213
- # source://tapioca//lib/tapioca/dsl/compiler.rb#92
1235
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#128
1214
1236
  sig { params(error: ::String).void }
1215
1237
  def add_error(error); end
1216
1238
 
1217
- # source://tapioca//lib/tapioca/dsl/compiler.rb#83
1239
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#119
1218
1240
  sig { params(compiler_name: ::String).returns(T::Boolean) }
1219
1241
  def compiler_enabled?(compiler_name); end
1220
1242
 
@@ -1224,7 +1246,7 @@ class Tapioca::Dsl::Compiler
1224
1246
 
1225
1247
  # @abstract
1226
1248
  #
1227
- # source://tapioca//lib/tapioca/dsl/compiler.rb#88
1249
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#124
1228
1250
  sig { abstract.void }
1229
1251
  def decorate; end
1230
1252
 
@@ -1238,48 +1260,65 @@ class Tapioca::Dsl::Compiler
1238
1260
 
1239
1261
  private
1240
1262
 
1241
- # source://tapioca//lib/tapioca/dsl/compiler.rb#141
1263
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#177
1242
1264
  sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(T::Array[::RBI::TypedParam]) }
1243
1265
  def compile_method_parameters_to_rbi(method_def); end
1244
1266
 
1245
- # source://tapioca//lib/tapioca/dsl/compiler.rb#177
1267
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#213
1246
1268
  sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(::String) }
1247
1269
  def compile_method_return_type_to_rbi(method_def); end
1248
1270
 
1249
- # source://tapioca//lib/tapioca/dsl/compiler.rb#131
1271
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#167
1250
1272
  sig { params(scope: ::RBI::Scope, method_def: T.any(::Method, ::UnboundMethod), class_method: T::Boolean).void }
1251
1273
  def create_method_from_def(scope, method_def, class_method: T.unsafe(nil)); end
1252
1274
 
1253
1275
  # Get the types of each parameter from a method signature
1254
1276
  #
1255
- # source://tapioca//lib/tapioca/dsl/compiler.rb#105
1277
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#141
1256
1278
  sig { params(method_def: T.any(::Method, ::UnboundMethod), signature: T.untyped).returns(T::Array[::String]) }
1257
1279
  def parameters_types_from_signature(method_def, signature); end
1258
1280
 
1259
1281
  class << self
1260
1282
  # @abstract
1261
1283
  #
1262
- # source://tapioca//lib/tapioca/dsl/compiler.rb#37
1284
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#39
1263
1285
  sig { abstract.returns(T::Enumerable[::Module]) }
1264
1286
  def gather_constants; end
1265
1287
 
1266
- # source://tapioca//lib/tapioca/dsl/compiler.rb#32
1288
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#34
1267
1289
  sig { params(constant: ::Module).returns(T::Boolean) }
1268
1290
  def handles?(constant); end
1269
1291
 
1270
- # source://tapioca//lib/tapioca/dsl/compiler.rb#40
1292
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#42
1271
1293
  sig { returns(T::Set[::Module]) }
1272
1294
  def processable_constants; end
1273
1295
 
1296
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#50
1297
+ sig { params(constants: T::Array[::Module]).void }
1298
+ def requested_constants=(constants); end
1299
+
1300
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#55
1301
+ sig { void }
1302
+ def reset_state; end
1303
+
1274
1304
  private
1275
1305
 
1276
- # source://tapioca//lib/tapioca/dsl/compiler.rb#50
1306
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#82
1277
1307
  sig { returns(T::Enumerable[T::Class[T.anything]]) }
1278
1308
  def all_classes; end
1279
1309
 
1280
- # source://tapioca//lib/tapioca/dsl/compiler.rb#58
1310
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#90
1281
1311
  sig { returns(T::Enumerable[::Module]) }
1282
1312
  def all_modules; end
1313
+
1314
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#68
1315
+ sig do
1316
+ type_parameters(:U)
1317
+ .params(
1318
+ klass: T.all(T.type_parameter(:U), T::Class[T.anything])
1319
+ ).returns(T::Array[T.type_parameter(:U)])
1320
+ end
1321
+ def descendants_of(klass); end
1283
1322
  end
1284
1323
  end
1285
1324
 
@@ -1298,7 +1337,7 @@ Tapioca::Dsl::Compilers::NAMESPACES = T.let(T.unsafe(nil), Array)
1298
1337
 
1299
1338
  # source://tapioca//lib/tapioca/dsl/pipeline.rb#6
1300
1339
  class Tapioca::Dsl::Pipeline
1301
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#39
1340
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#40
1302
1341
  sig do
1303
1342
  params(
1304
1343
  requested_constants: T::Array[::Module],
@@ -1308,24 +1347,25 @@ class Tapioca::Dsl::Pipeline
1308
1347
  error_handler: T.proc.params(error: ::String).void,
1309
1348
  skipped_constants: T::Array[::Module],
1310
1349
  number_of_workers: T.nilable(::Integer),
1311
- compiler_options: T::Hash[::String, T.untyped]
1350
+ compiler_options: T::Hash[::String, T.untyped],
1351
+ lsp_addon: T::Boolean
1312
1352
  ).void
1313
1353
  end
1314
- def initialize(requested_constants:, requested_paths: T.unsafe(nil), requested_compilers: T.unsafe(nil), excluded_compilers: T.unsafe(nil), error_handler: T.unsafe(nil), skipped_constants: T.unsafe(nil), number_of_workers: T.unsafe(nil), compiler_options: T.unsafe(nil)); end
1354
+ def initialize(requested_constants:, requested_paths: T.unsafe(nil), requested_compilers: T.unsafe(nil), excluded_compilers: T.unsafe(nil), error_handler: T.unsafe(nil), skipped_constants: T.unsafe(nil), number_of_workers: T.unsafe(nil), compiler_options: T.unsafe(nil), lsp_addon: T.unsafe(nil)); end
1315
1355
 
1316
1356
  # source://tapioca//lib/tapioca/dsl/pipeline.rb#10
1317
1357
  sig { returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)]) }
1318
1358
  def active_compilers; end
1319
1359
 
1320
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#102
1360
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#110
1321
1361
  sig { params(error: ::String).void }
1322
1362
  def add_error(error); end
1323
1363
 
1324
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#107
1364
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#115
1325
1365
  sig { params(compiler_name: ::String).returns(T::Boolean) }
1326
1366
  def compiler_enabled?(compiler_name); end
1327
1367
 
1328
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#116
1368
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#124
1329
1369
  sig { returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
1330
1370
  def compilers; end
1331
1371
 
@@ -1345,7 +1385,7 @@ class Tapioca::Dsl::Pipeline
1345
1385
  sig { returns(T::Array[::Pathname]) }
1346
1386
  def requested_paths; end
1347
1387
 
1348
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#67
1388
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#70
1349
1389
  sig do
1350
1390
  type_parameters(:T)
1351
1391
  .params(
@@ -1360,15 +1400,15 @@ class Tapioca::Dsl::Pipeline
1360
1400
 
1361
1401
  private
1362
1402
 
1363
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#223
1403
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#231
1364
1404
  sig { void }
1365
1405
  def abort_if_pending_migrations!; end
1366
1406
 
1367
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#168
1407
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#177
1368
1408
  sig { params(constants: T::Set[::Module]).returns(T::Set[::Module]) }
1369
1409
  def filter_anonymous_and_reloaded_constants(constants); end
1370
1410
 
1371
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#133
1411
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#141
1372
1412
  sig do
1373
1413
  params(
1374
1414
  requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
@@ -1377,7 +1417,7 @@ class Tapioca::Dsl::Pipeline
1377
1417
  end
1378
1418
  def gather_active_compilers(requested_compilers, excluded_compilers); end
1379
1419
 
1380
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#147
1420
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#155
1381
1421
  sig do
1382
1422
  params(
1383
1423
  requested_constants: T::Array[::Module],
@@ -1387,12 +1427,12 @@ class Tapioca::Dsl::Pipeline
1387
1427
  end
1388
1428
  def gather_constants(requested_constants, requested_paths, skipped_constants); end
1389
1429
 
1390
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#197
1430
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#206
1391
1431
  sig { params(constant: ::Module).returns(T.nilable(::RBI::File)) }
1392
1432
  def rbi_for_constant(constant); end
1393
1433
 
1394
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#216
1395
- sig { params(error: ::String).returns(T.noreturn) }
1434
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#225
1435
+ sig { params(error: ::String).void }
1396
1436
  def report_error(error); end
1397
1437
  end
1398
1438
 
@@ -1691,7 +1731,7 @@ end
1691
1731
  class Tapioca::Gem::Listeners::SorbetEnums < ::Tapioca::Gem::Listeners::Base
1692
1732
  private
1693
1733
 
1694
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_enums.rb#25
1734
+ # source://tapioca//lib/tapioca/gem/listeners/sorbet_enums.rb#28
1695
1735
  sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1696
1736
  def ignore?(event); end
1697
1737
 
@@ -1826,7 +1866,7 @@ class Tapioca::Gem::Listeners::Subconstants < ::Tapioca::Gem::Listeners::Base
1826
1866
 
1827
1867
  private
1828
1868
 
1829
- # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#36
1869
+ # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#35
1830
1870
  sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1831
1871
  def ignore?(event); end
1832
1872
 
@@ -2196,7 +2236,7 @@ class Tapioca::GemInfo < ::T::Struct
2196
2236
  sig { params(spec: ::Bundler::LazySpecification).returns(::Tapioca::GemInfo) }
2197
2237
  def from_spec(spec); end
2198
2238
 
2199
- # source://sorbet-runtime/0.5.11545/lib/types/struct.rb#13
2239
+ # source://sorbet-runtime/0.5.11953/lib/types/struct.rb#13
2200
2240
  def inherited(s); end
2201
2241
  end
2202
2242
  end
@@ -2229,7 +2269,7 @@ class Tapioca::Gemfile
2229
2269
 
2230
2270
  private
2231
2271
 
2232
- # source://tapioca//lib/tapioca/gemfile.rb#92
2272
+ # source://tapioca//lib/tapioca/gemfile.rb#101
2233
2273
  sig { returns(::String) }
2234
2274
  def dir; end
2235
2275
 
@@ -2237,7 +2277,7 @@ class Tapioca::Gemfile
2237
2277
  sig { returns(::File) }
2238
2278
  def gemfile; end
2239
2279
 
2240
- # source://tapioca//lib/tapioca/gemfile.rb#87
2280
+ # source://tapioca//lib/tapioca/gemfile.rb#96
2241
2281
  sig { returns(T::Array[::Symbol]) }
2242
2282
  def groups; end
2243
2283
 
@@ -2254,114 +2294,114 @@ class Tapioca::Gemfile
2254
2294
  sig { returns([T::Enumerable[T.any(::Bundler::StubSpecification, ::Gem::Specification)], T::Array[::String]]) }
2255
2295
  def materialize_deps; end
2256
2296
 
2257
- # source://tapioca//lib/tapioca/gemfile.rb#82
2297
+ # source://tapioca//lib/tapioca/gemfile.rb#91
2258
2298
  sig { returns(::Bundler::Runtime) }
2259
2299
  def runtime; end
2260
2300
  end
2261
2301
 
2262
- # source://tapioca//lib/tapioca/gemfile.rb#96
2302
+ # source://tapioca//lib/tapioca/gemfile.rb#105
2263
2303
  class Tapioca::Gemfile::GemSpec
2264
2304
  include ::Tapioca::GemHelper
2265
2305
 
2266
- # source://tapioca//lib/tapioca/gemfile.rb#136
2306
+ # source://tapioca//lib/tapioca/gemfile.rb#145
2267
2307
  sig { params(spec: T.any(::Bundler::StubSpecification, ::Gem::Specification)).void }
2268
2308
  def initialize(spec); end
2269
2309
 
2270
- # source://tapioca//lib/tapioca/gemfile.rb#146
2310
+ # source://tapioca//lib/tapioca/gemfile.rb#155
2271
2311
  sig { params(other: ::BasicObject).returns(T::Boolean) }
2272
2312
  def ==(other); end
2273
2313
 
2274
- # source://tapioca//lib/tapioca/gemfile.rb#171
2314
+ # source://tapioca//lib/tapioca/gemfile.rb#180
2275
2315
  sig { params(path: ::String).returns(T::Boolean) }
2276
2316
  def contains_path?(path); end
2277
2317
 
2278
- # source://tapioca//lib/tapioca/gemfile.rb#161
2318
+ # source://tapioca//lib/tapioca/gemfile.rb#170
2279
2319
  sig { returns(T::Array[::Gem::Dependency]) }
2280
2320
  def dependencies; end
2281
2321
 
2282
- # source://tapioca//lib/tapioca/gemfile.rb#201
2322
+ # source://tapioca//lib/tapioca/gemfile.rb#210
2283
2323
  sig { returns(T::Boolean) }
2284
2324
  def export_rbi_files?; end
2285
2325
 
2286
- # source://tapioca//lib/tapioca/gemfile.rb#196
2326
+ # source://tapioca//lib/tapioca/gemfile.rb#205
2287
2327
  sig { returns(T::Array[::String]) }
2288
2328
  def exported_rbi_files; end
2289
2329
 
2290
- # source://tapioca//lib/tapioca/gemfile.rb#206
2330
+ # source://tapioca//lib/tapioca/gemfile.rb#215
2291
2331
  sig { returns(::RBI::MergeTree) }
2292
2332
  def exported_rbi_tree; end
2293
2333
 
2294
- # source://tapioca//lib/tapioca/gemfile.rb#133
2334
+ # source://tapioca//lib/tapioca/gemfile.rb#142
2295
2335
  sig { returns(T::Array[::Pathname]) }
2296
2336
  def files; end
2297
2337
 
2298
- # source://tapioca//lib/tapioca/gemfile.rb#130
2338
+ # source://tapioca//lib/tapioca/gemfile.rb#139
2299
2339
  sig { returns(::String) }
2300
2340
  def full_gem_path; end
2301
2341
 
2302
- # source://tapioca//lib/tapioca/gemfile.rb#151
2342
+ # source://tapioca//lib/tapioca/gemfile.rb#160
2303
2343
  sig { params(gemfile_dir: ::String).returns(T::Boolean) }
2304
2344
  def ignore?(gemfile_dir); end
2305
2345
 
2306
- # source://tapioca//lib/tapioca/gemfile.rb#156
2346
+ # source://tapioca//lib/tapioca/gemfile.rb#165
2307
2347
  sig { returns(::String) }
2308
2348
  def name; end
2309
2349
 
2310
- # source://tapioca//lib/tapioca/gemfile.rb#180
2350
+ # source://tapioca//lib/tapioca/gemfile.rb#189
2311
2351
  sig { void }
2312
2352
  def parse_yard_docs; end
2313
2353
 
2314
- # source://tapioca//lib/tapioca/gemfile.rb#166
2354
+ # source://tapioca//lib/tapioca/gemfile.rb#175
2315
2355
  sig { returns(::String) }
2316
2356
  def rbi_file_name; end
2317
2357
 
2318
- # source://tapioca//lib/tapioca/gemfile.rb#218
2358
+ # source://tapioca//lib/tapioca/gemfile.rb#227
2319
2359
  sig { params(file: ::Pathname).returns(::Pathname) }
2320
2360
  def relative_path_for(file); end
2321
2361
 
2322
2362
  # @return [String]
2323
2363
  #
2324
- # source://tapioca//lib/tapioca/gemfile.rb#130
2364
+ # source://tapioca//lib/tapioca/gemfile.rb#139
2325
2365
  def version; end
2326
2366
 
2327
2367
  private
2328
2368
 
2329
- # source://tapioca//lib/tapioca/gemfile.rb#229
2369
+ # source://tapioca//lib/tapioca/gemfile.rb#238
2330
2370
  sig { returns(T::Array[::Pathname]) }
2331
2371
  def collect_files; end
2332
2372
 
2333
- # source://tapioca//lib/tapioca/gemfile.rb#244
2373
+ # source://tapioca//lib/tapioca/gemfile.rb#253
2334
2374
  sig { returns(T.nilable(T::Boolean)) }
2335
2375
  def default_gem?; end
2336
2376
 
2337
- # source://tapioca//lib/tapioca/gemfile.rb#303
2377
+ # source://tapioca//lib/tapioca/gemfile.rb#312
2338
2378
  sig { returns(T::Boolean) }
2339
2379
  def gem_ignored?; end
2340
2380
 
2341
- # source://tapioca//lib/tapioca/gemfile.rb#282
2381
+ # source://tapioca//lib/tapioca/gemfile.rb#291
2342
2382
  sig { params(path: ::String).returns(T::Boolean) }
2343
2383
  def has_parent_gemspec?(path); end
2344
2384
 
2345
- # source://tapioca//lib/tapioca/gemfile.rb#249
2385
+ # source://tapioca//lib/tapioca/gemfile.rb#258
2346
2386
  sig { returns(::Regexp) }
2347
2387
  def require_paths_prefix_matcher; end
2348
2388
 
2349
- # source://tapioca//lib/tapioca/gemfile.rb#261
2389
+ # source://tapioca//lib/tapioca/gemfile.rb#270
2350
2390
  sig { params(file: ::String).returns(::Pathname) }
2351
2391
  def resolve_to_ruby_lib_dir(file); end
2352
2392
 
2353
- # source://tapioca//lib/tapioca/gemfile.rb#275
2393
+ # source://tapioca//lib/tapioca/gemfile.rb#284
2354
2394
  sig { returns(::String) }
2355
2395
  def version_string; end
2356
2396
 
2357
2397
  class << self
2358
- # source://tapioca//lib/tapioca/gemfile.rb#104
2398
+ # source://tapioca//lib/tapioca/gemfile.rb#113
2359
2399
  sig { returns(T::Hash[::String, ::Tapioca::Gemfile::GemSpec]) }
2360
2400
  def spec_lookup_by_file_path; end
2361
2401
  end
2362
2402
  end
2363
2403
 
2364
- # source://tapioca//lib/tapioca/gemfile.rb#116
2404
+ # source://tapioca//lib/tapioca/gemfile.rb#125
2365
2405
  Tapioca::Gemfile::GemSpec::IGNORED_GEMS = T.let(T.unsafe(nil), Array)
2366
2406
 
2367
2407
  # source://tapioca//lib/tapioca/gemfile.rb#10
@@ -2375,7 +2415,7 @@ module Tapioca::Loaders; end
2375
2415
 
2376
2416
  # source://tapioca//lib/tapioca/loaders/dsl.rb#6
2377
2417
  class Tapioca::Loaders::Dsl < ::Tapioca::Loaders::Loader
2378
- # source://tapioca//lib/tapioca/loaders/dsl.rb#38
2418
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#74
2379
2419
  sig do
2380
2420
  params(
2381
2421
  tapioca_path: ::String,
@@ -2386,26 +2426,40 @@ class Tapioca::Loaders::Dsl < ::Tapioca::Loaders::Loader
2386
2426
  end
2387
2427
  def initialize(tapioca_path:, eager_load: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
2388
2428
 
2389
- # source://tapioca//lib/tapioca/loaders/dsl.rb#27
2429
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#36
2390
2430
  sig { override.void }
2391
2431
  def load; end
2392
2432
 
2433
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#43
2434
+ sig { void }
2435
+ def load_dsl_extensions_and_compilers; end
2436
+
2437
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#49
2438
+ sig { void }
2439
+ def reload_custom_compilers; end
2440
+
2393
2441
  protected
2394
2442
 
2395
- # source://tapioca//lib/tapioca/loaders/dsl.rb#88
2443
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#120
2396
2444
  sig { void }
2397
2445
  def load_application; end
2398
2446
 
2399
- # source://tapioca//lib/tapioca/loaders/dsl.rb#63
2447
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#100
2400
2448
  sig { void }
2401
2449
  def load_dsl_compilers; end
2402
2450
 
2403
- # source://tapioca//lib/tapioca/loaders/dsl.rb#48
2451
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#85
2404
2452
  sig { void }
2405
2453
  def load_dsl_extensions; end
2406
2454
 
2455
+ private
2456
+
2457
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#136
2458
+ sig { void }
2459
+ def load_custom_dsl_compilers; end
2460
+
2407
2461
  class << self
2408
- # source://tapioca//lib/tapioca/loaders/dsl.rb#15
2462
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#20
2409
2463
  sig do
2410
2464
  params(
2411
2465
  tapioca_path: ::String,
@@ -2711,7 +2765,7 @@ module Tapioca::RBIHelper
2711
2765
  sig { params(name: ::String).returns(T::Boolean) }
2712
2766
  def valid_method_name?(name); end
2713
2767
 
2714
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#123
2768
+ # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#114
2715
2769
  sig { params(name: ::String).returns(T::Boolean) }
2716
2770
  def valid_parameter_name?(name); end
2717
2771
 
@@ -2930,7 +2984,7 @@ module Tapioca::Runtime::Reflection
2930
2984
  extend ::Tapioca::Runtime::AttachedClassOf
2931
2985
  extend ::Tapioca::Runtime::Reflection
2932
2986
 
2933
- # source://tapioca//lib/tapioca/runtime/reflection.rb#201
2987
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#207
2934
2988
  sig { params(constant: ::Module).returns(T.untyped) }
2935
2989
  def abstract_type_of(constant); end
2936
2990
 
@@ -2983,11 +3037,11 @@ module Tapioca::Runtime::Reflection
2983
3037
  end
2984
3038
  def descendants_of(klass); end
2985
3039
 
2986
- # source://tapioca//lib/tapioca/runtime/reflection.rb#194
3040
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#200
2987
3041
  sig { params(constant: ::Module).returns(T::Set[::String]) }
2988
3042
  def file_candidates_for(constant); end
2989
3043
 
2990
- # source://tapioca//lib/tapioca/runtime/reflection.rb#207
3044
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#213
2991
3045
  sig { params(constant: ::Module).returns(T::Boolean) }
2992
3046
  def final_module?(constant); end
2993
3047
 
@@ -3028,14 +3082,15 @@ module Tapioca::Runtime::Reflection
3028
3082
  def qualified_name_of(constant); end
3029
3083
 
3030
3084
  # Examines the call stack to identify the closest location where a "require" is performed
3031
- # by searching for the label "<top (required)>". If none is found, it returns the location
3085
+ # by searching for the label "<top (required)>" or "block in <class:...>" in the
3086
+ # case of an ActiveSupport.on_load hook. If none is found, it returns the location
3032
3087
  # labeled "<main>", which is the original call site.
3033
3088
  #
3034
- # source://tapioca//lib/tapioca/runtime/reflection.rb#184
3089
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#185
3035
3090
  sig { params(locations: T.nilable(T::Array[::Thread::Backtrace::Location])).returns(::String) }
3036
3091
  def resolve_loc(locations); end
3037
3092
 
3038
- # source://tapioca//lib/tapioca/runtime/reflection.rb#212
3093
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#218
3039
3094
  sig { params(constant: ::Module).returns(T::Boolean) }
3040
3095
  def sealed_module?(constant); end
3041
3096
 
@@ -3057,23 +3112,23 @@ module Tapioca::Runtime::Reflection
3057
3112
 
3058
3113
  private
3059
3114
 
3060
- # source://tapioca//lib/tapioca/runtime/reflection.rb#249
3115
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#255
3061
3116
  sig { params(parent: ::Module, name: ::String).returns(T.nilable(::Module)) }
3062
3117
  def child_module_for_parent_with_name(parent, name); end
3063
3118
 
3064
- # source://tapioca//lib/tapioca/runtime/reflection.rb#265
3119
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#271
3065
3120
  sig { params(name: ::String).returns(T::Boolean) }
3066
3121
  def has_aliased_namespace?(name); end
3067
3122
 
3068
- # source://tapioca//lib/tapioca/runtime/reflection.rb#260
3123
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#266
3069
3124
  sig { params(method: ::UnboundMethod).returns(T::Boolean) }
3070
3125
  def method_defined_by_forwardable_module?(method); end
3071
3126
 
3072
- # source://tapioca//lib/tapioca/runtime/reflection.rb#235
3127
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#241
3073
3128
  sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3074
3129
  def methods_for(constant); end
3075
3130
 
3076
- # source://tapioca//lib/tapioca/runtime/reflection.rb#219
3131
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#225
3077
3132
  sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3078
3133
  def relevant_methods_for(constant); end
3079
3134
  end
@@ -3257,9 +3312,9 @@ end
3257
3312
 
3258
3313
  class Tapioca::Runtime::Trackers::Mixin::Type < ::T::Enum
3259
3314
  enums do
3260
- Prepend = new
3261
- Include = new
3262
3315
  Extend = new
3316
+ Include = new
3317
+ Prepend = new
3263
3318
  end
3264
3319
  end
3265
3320
 
@@ -3344,6 +3399,58 @@ Tapioca::SorbetHelper::SORBET_PAYLOAD_URL = T.let(T.unsafe(nil), String)
3344
3399
  # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#22
3345
3400
  Tapioca::SorbetHelper::SPOOM_CONTEXT = T.let(T.unsafe(nil), Spoom::Context)
3346
3401
 
3402
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#7
3403
+ class Tapioca::SourceURI < ::URI::File
3404
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#72
3405
+ sig { params(v: T.nilable(::String)).returns(T::Boolean) }
3406
+ def check_host(v); end
3407
+
3408
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#55
3409
+ sig { returns(T.nilable(::String)) }
3410
+ def gem_name; end
3411
+
3412
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#29
3413
+ sig { returns(T.nilable(::String)) }
3414
+ def gem_version; end
3415
+
3416
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#60
3417
+ sig { returns(T.nilable(::String)) }
3418
+ def line_number; end
3419
+
3420
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#65
3421
+ sig { params(v: T.nilable(::String)).void }
3422
+ def set_path(v); end
3423
+
3424
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#84
3425
+ sig { returns(::String) }
3426
+ def to_s; end
3427
+
3428
+ class << self
3429
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#42
3430
+ sig do
3431
+ params(
3432
+ gem_name: ::String,
3433
+ gem_version: T.nilable(::String),
3434
+ path: ::String,
3435
+ line_number: T.nilable(::String)
3436
+ ).returns(T.attached_class)
3437
+ end
3438
+ def build(gem_name:, gem_version:, path:, line_number:); end
3439
+ end
3440
+ end
3441
+
3442
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#10
3443
+ Tapioca::SourceURI::COMPONENT = T.let(T.unsafe(nil), Array)
3444
+
3445
+ # `uri` for Ruby 3.4 switched the default parser from RFC2396 to RFC3986. The new parser emits a deprecation
3446
+ # warning on a few methods and delegates them to RFC2396, namely `extract`/`make_regexp`/`escape`/`unescape`.
3447
+ # On earlier versions of the uri gem, the RFC2396_PARSER constant doesn't exist, so it needs some special
3448
+ # handling to select a parser that doesn't emit deprecations. While it was backported to Ruby 3.1, users may
3449
+ # have the uri gem in their own bundle and thus not use a compatible version.
3450
+ #
3451
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#26
3452
+ Tapioca::SourceURI::PARSER = T.let(T.unsafe(nil), URI::RFC2396_Parser)
3453
+
3347
3454
  # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#5
3348
3455
  module Tapioca::Static; end
3349
3456
 
@@ -3403,10 +3510,10 @@ module Tapioca::Static::SymbolLoader
3403
3510
 
3404
3511
  # @return [Array<T.class_of(Rails::Engine)>]
3405
3512
  #
3406
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#69
3513
+ # source://tapioca//lib/tapioca/static/symbol_loader.rb#71
3407
3514
  def engines; end
3408
3515
 
3409
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#82
3516
+ # source://tapioca//lib/tapioca/static/symbol_loader.rb#84
3410
3517
  sig { params(input: ::String, table_type: ::String).returns(::String) }
3411
3518
  def symbol_table_json_from(input, table_type: T.unsafe(nil)); end
3412
3519
  end
@@ -3511,52 +3618,11 @@ Tapioca::TypeVariableModule::DEFAULT_BOUNDS_PROC = T.let(T.unsafe(nil), Proc)
3511
3618
  # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#125
3512
3619
  class Tapioca::TypeVariableModule::Type < ::T::Enum
3513
3620
  enums do
3621
+ HasAttachedClass = new
3514
3622
  Member = new
3515
3623
  Template = new
3516
- HasAttachedClass = new
3517
3624
  end
3518
3625
  end
3519
3626
 
3520
3627
  # source://tapioca//lib/tapioca/version.rb#5
3521
3628
  Tapioca::VERSION = T.let(T.unsafe(nil), String)
3522
-
3523
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#7
3524
- class URI::Source < ::URI::File
3525
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#58
3526
- sig { params(v: T.nilable(::String)).returns(T::Boolean) }
3527
- def check_host(v); end
3528
-
3529
- # source://uri/0.13.0/uri/generic.rb#243
3530
- def gem_name; end
3531
-
3532
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#25
3533
- sig { returns(T.nilable(::String)) }
3534
- def gem_version; end
3535
-
3536
- # source://uri/0.13.0/uri/generic.rb#283
3537
- def line_number; end
3538
-
3539
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#51
3540
- sig { params(v: T.nilable(::String)).void }
3541
- def set_path(v); end
3542
-
3543
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#70
3544
- sig { returns(::String) }
3545
- def to_s; end
3546
-
3547
- class << self
3548
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#38
3549
- sig do
3550
- params(
3551
- gem_name: ::String,
3552
- gem_version: T.nilable(::String),
3553
- path: ::String,
3554
- line_number: T.nilable(::String)
3555
- ).returns(::URI::Source)
3556
- end
3557
- def build(gem_name:, gem_version:, path:, line_number:); end
3558
- end
3559
- end
3560
-
3561
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#10
3562
- URI::Source::COMPONENT = T.let(T.unsafe(nil), Array)