sorbet-rails 0.5.5.1 → 0.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -0
  3. data/lib/sorbet-rails/config.rb +1 -0
  4. data/lib/sorbet-rails/helper_rbi_formatter.rb +12 -0
  5. data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +51 -9
  6. data/lib/sorbet-rails/model_plugins/active_record_factory_methods.rb +28 -0
  7. data/lib/sorbet-rails/model_plugins/enumerable_collections.rb +1 -0
  8. data/lib/sorbet-rails/model_plugins/plugins.rb +3 -0
  9. data/sorbet-rails.gemspec +1 -1
  10. data/spec/generators/rails-template.rb +14 -1
  11. data/spec/generators/sorbet_test_cases.rb +17 -0
  12. data/spec/sorbet_spec.rb +4 -0
  13. data/spec/support/v4.2/Gemfile.lock +5 -5
  14. data/spec/support/v4.2/app/models/wand.rb +2 -0
  15. data/spec/support/v4.2/app/models/wizard.rb +1 -1
  16. data/spec/support/v4.2/config/initializers/sorbet_rails.rb +1 -1
  17. data/spec/support/v4.2/db/migrate/20190620000001_create_wizards.rb +1 -1
  18. data/spec/support/v4.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  19. data/spec/support/v4.2/db/schema.rb +3 -2
  20. data/spec/support/v4.2/sorbet_test_cases.rb +17 -0
  21. data/spec/support/v5.0/Gemfile.lock +5 -5
  22. data/spec/support/v5.0/app/models/wand.rb +2 -0
  23. data/spec/support/v5.0/app/models/wizard.rb +1 -1
  24. data/spec/support/v5.0/config/application.rb +1 -0
  25. data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -1
  26. data/spec/support/v5.0/db/migrate/20190620000001_create_wizards.rb +1 -1
  27. data/spec/support/v5.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  28. data/spec/support/v5.0/db/schema.rb +1 -0
  29. data/spec/support/v5.0/sorbet_test_cases.rb +17 -0
  30. data/spec/support/v5.1/Gemfile.lock +5 -5
  31. data/spec/support/v5.1/app/models/wand.rb +2 -0
  32. data/spec/support/v5.1/app/models/wizard.rb +1 -1
  33. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -1
  34. data/spec/support/v5.1/db/migrate/20190620000001_create_wizards.rb +1 -1
  35. data/spec/support/v5.1/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  36. data/spec/support/v5.1/db/schema.rb +1 -0
  37. data/spec/support/v5.1/sorbet_test_cases.rb +17 -0
  38. data/spec/support/v5.2/Gemfile.lock +5 -5
  39. data/spec/support/v5.2/app/models/wand.rb +2 -0
  40. data/spec/support/v5.2/app/models/wizard.rb +1 -1
  41. data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -1
  42. data/spec/support/v5.2/db/migrate/20190620000001_create_wizards.rb +1 -1
  43. data/spec/support/v5.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  44. data/spec/support/v5.2/db/schema.rb +1 -0
  45. data/spec/support/v5.2/sorbet_test_cases.rb +17 -0
  46. data/spec/support/v6.0/Gemfile.lock +5 -5
  47. data/spec/support/v6.0/app/models/wand.rb +2 -0
  48. data/spec/support/v6.0/app/models/wizard.rb +1 -1
  49. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
  50. data/spec/support/v6.0/config/initializers/wrap_parameters.rb +1 -1
  51. data/spec/support/v6.0/db/migrate/20190620000001_create_wizards.rb +1 -1
  52. data/spec/support/v6.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +1 -0
  53. data/spec/support/v6.0/db/schema.rb +1 -0
  54. data/spec/support/v6.0/sorbet_test_cases.rb +17 -0
  55. data/spec/test_data/v4.2/expected_potion.rbi +12 -3
  56. data/spec/test_data/v4.2/expected_spell_book.rbi +12 -3
  57. data/spec/test_data/v4.2/expected_squib.rbi +16 -7
  58. data/spec/test_data/v4.2/expected_srb_tc_output.txt +35 -27
  59. data/spec/test_data/v4.2/expected_wand.rbi +25 -7
  60. data/spec/test_data/v4.2/expected_wizard.rbi +16 -7
  61. data/spec/test_data/v4.2/expected_wizard_wo_spellbook.rbi +16 -7
  62. data/spec/test_data/v5.0/expected_helpers.rbi +5 -0
  63. data/spec/test_data/v5.0/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  64. data/spec/test_data/v5.0/expected_internal_metadata.rbi +16 -7
  65. data/spec/test_data/v5.0/expected_potion.rbi +12 -3
  66. data/spec/test_data/v5.0/expected_schema_migration.rbi +12 -3
  67. data/spec/test_data/v5.0/expected_spell_book.rbi +12 -3
  68. data/spec/test_data/v5.0/expected_squib.rbi +16 -7
  69. data/spec/test_data/v5.0/expected_wand.rbi +27 -9
  70. data/spec/test_data/v5.0/expected_wizard.rbi +16 -7
  71. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +16 -7
  72. data/spec/test_data/v5.1/expected_helpers.rbi +5 -0
  73. data/spec/test_data/v5.1/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  74. data/spec/test_data/v5.1/expected_internal_metadata.rbi +16 -7
  75. data/spec/test_data/v5.1/expected_potion.rbi +12 -3
  76. data/spec/test_data/v5.1/expected_schema_migration.rbi +12 -3
  77. data/spec/test_data/v5.1/expected_spell_book.rbi +12 -3
  78. data/spec/test_data/v5.1/expected_squib.rbi +16 -7
  79. data/spec/test_data/v5.1/expected_wand.rbi +27 -9
  80. data/spec/test_data/v5.1/expected_wizard.rbi +16 -7
  81. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +16 -7
  82. data/spec/test_data/v5.2/expected_attachment.rbi +12 -3
  83. data/spec/test_data/v5.2/expected_blob.rbi +12 -3
  84. data/spec/test_data/v5.2/expected_helpers.rbi +5 -0
  85. data/spec/test_data/v5.2/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  86. data/spec/test_data/v5.2/expected_internal_metadata.rbi +16 -7
  87. data/spec/test_data/v5.2/expected_potion.rbi +12 -3
  88. data/spec/test_data/v5.2/expected_schema_migration.rbi +12 -3
  89. data/spec/test_data/v5.2/expected_spell_book.rbi +12 -3
  90. data/spec/test_data/v5.2/expected_squib.rbi +16 -7
  91. data/spec/test_data/v5.2/expected_wand.rbi +27 -9
  92. data/spec/test_data/v5.2/expected_wizard.rbi +16 -7
  93. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +16 -7
  94. data/spec/test_data/v6.0/expected_attachment.rbi +12 -3
  95. data/spec/test_data/v6.0/expected_blob.rbi +12 -3
  96. data/spec/test_data/v6.0/expected_helpers.rbi +5 -0
  97. data/spec/test_data/v6.0/expected_helpers_with_application_and_devise_helpers.rbi +5 -0
  98. data/spec/test_data/v6.0/expected_internal_metadata.rbi +16 -7
  99. data/spec/test_data/v6.0/expected_potion.rbi +12 -3
  100. data/spec/test_data/v6.0/expected_schema_migration.rbi +12 -3
  101. data/spec/test_data/v6.0/expected_spell_book.rbi +12 -3
  102. data/spec/test_data/v6.0/expected_squib.rbi +16 -7
  103. data/spec/test_data/v6.0/expected_wand.rbi +27 -9
  104. data/spec/test_data/v6.0/expected_wizard.rbi +16 -7
  105. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +16 -7
  106. metadata +2 -1
@@ -125,10 +125,10 @@ module Wizard::GeneratedAttributeMethods
125
125
  sig { returns(T::Boolean) }
126
126
  def broom?; end
127
127
 
128
- sig { returns(DateTime) }
128
+ sig { returns(ActiveSupport::TimeWithZone) }
129
129
  def created_at; end
130
130
 
131
- sig { params(value: DateTime).void }
131
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
132
132
  def created_at=(value); end
133
133
 
134
134
  sig { returns(T::Boolean) }
@@ -224,10 +224,10 @@ module Wizard::GeneratedAttributeMethods
224
224
  sig { returns(T::Boolean) }
225
225
  def type?; end
226
226
 
227
- sig { returns(DateTime) }
227
+ sig { returns(ActiveSupport::TimeWithZone) }
228
228
  def updated_at; end
229
229
 
230
- sig { params(value: DateTime).void }
230
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
231
231
  def updated_at=(value); end
232
232
 
233
233
  sig { returns(T::Boolean) }
@@ -546,6 +546,15 @@ class Wizard < ApplicationRecord
546
546
 
547
547
  sig { params(args: T.untyped).returns(T::Boolean) }
548
548
  def self.one?(*args); end
549
+
550
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
551
+ def self.create(attributes = nil, &block); end
552
+
553
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
554
+ def self.create!(attributes = nil, &block); end
555
+
556
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
557
+ def self.new(attributes = nil, &block); end
549
558
  end
550
559
 
551
560
  class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
@@ -826,7 +835,7 @@ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
826
835
  sig { params(args: T.untyped).returns(T::Boolean) }
827
836
  def one?(*args); end
828
837
 
829
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
838
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
830
839
  def each(&block); end
831
840
 
832
841
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -1122,7 +1131,7 @@ class Wizard::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelati
1122
1131
  sig { params(args: T.untyped).returns(T::Boolean) }
1123
1132
  def one?(*args); end
1124
1133
 
1125
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
1134
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
1126
1135
  def each(&block); end
1127
1136
 
1128
1137
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -1417,7 +1426,7 @@ class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
1417
1426
  sig { params(args: T.untyped).returns(T::Boolean) }
1418
1427
  def one?(*args); end
1419
1428
 
1420
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
1429
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
1421
1430
  def each(&block); end
1422
1431
 
1423
1432
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -125,10 +125,10 @@ module Wizard::GeneratedAttributeMethods
125
125
  sig { returns(T::Boolean) }
126
126
  def broom?; end
127
127
 
128
- sig { returns(DateTime) }
128
+ sig { returns(ActiveSupport::TimeWithZone) }
129
129
  def created_at; end
130
130
 
131
- sig { params(value: DateTime).void }
131
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
132
132
  def created_at=(value); end
133
133
 
134
134
  sig { returns(T::Boolean) }
@@ -224,10 +224,10 @@ module Wizard::GeneratedAttributeMethods
224
224
  sig { returns(T::Boolean) }
225
225
  def type?; end
226
226
 
227
- sig { returns(DateTime) }
227
+ sig { returns(ActiveSupport::TimeWithZone) }
228
228
  def updated_at; end
229
229
 
230
- sig { params(value: DateTime).void }
230
+ sig { params(value: T.any(DateTime, Date, Time, ActiveSupport::TimeWithZone)).void }
231
231
  def updated_at=(value); end
232
232
 
233
233
  sig { returns(T::Boolean) }
@@ -546,6 +546,15 @@ class Wizard < ApplicationRecord
546
546
 
547
547
  sig { params(args: T.untyped).returns(T::Boolean) }
548
548
  def self.one?(*args); end
549
+
550
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
551
+ def self.create(attributes = nil, &block); end
552
+
553
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
554
+ def self.create!(attributes = nil, &block); end
555
+
556
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Wizard) }
557
+ def self.new(attributes = nil, &block); end
549
558
  end
550
559
 
551
560
  class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
@@ -826,7 +835,7 @@ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
826
835
  sig { params(args: T.untyped).returns(T::Boolean) }
827
836
  def one?(*args); end
828
837
 
829
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
838
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
830
839
  def each(&block); end
831
840
 
832
841
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -1122,7 +1131,7 @@ class Wizard::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelati
1122
1131
  sig { params(args: T.untyped).returns(T::Boolean) }
1123
1132
  def one?(*args); end
1124
1133
 
1125
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
1134
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
1126
1135
  def each(&block); end
1127
1136
 
1128
1137
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
@@ -1417,7 +1426,7 @@ class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
1417
1426
  sig { params(args: T.untyped).returns(T::Boolean) }
1418
1427
  def one?(*args); end
1419
1428
 
1420
- sig { override.params(block: T.proc.params(e: Wizard).void).void }
1429
+ sig { override.params(block: T.proc.params(e: Wizard).void).returns(T::Array[Wizard]) }
1421
1430
  def each(&block); end
1422
1431
 
1423
1432
  sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sorbet-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5.1
4
+ version: 0.5.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chan Zuckerberg Initiative
@@ -157,6 +157,7 @@ files:
157
157
  - lib/sorbet-rails/model_plugins/active_record_assoc.rb
158
158
  - lib/sorbet-rails/model_plugins/active_record_attribute.rb
159
159
  - lib/sorbet-rails/model_plugins/active_record_enum.rb
160
+ - lib/sorbet-rails/model_plugins/active_record_factory_methods.rb
160
161
  - lib/sorbet-rails/model_plugins/active_record_finder_methods.rb
161
162
  - lib/sorbet-rails/model_plugins/active_record_named_scope.rb
162
163
  - lib/sorbet-rails/model_plugins/active_record_querying.rb