sorbet-rails 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (171) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +13 -1
  3. data/.travis.yml +2 -2
  4. data/Gemfile +1 -1
  5. data/README.md +79 -3
  6. data/lib/sorbet-rails.rb +5 -1
  7. data/lib/sorbet-rails/activerecord.rbi +27 -0
  8. data/lib/sorbet-rails/custom_finder_methods.rb +11 -0
  9. data/lib/sorbet-rails/helper_rbi_formatter.rb +33 -0
  10. data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +91 -0
  11. data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +111 -0
  12. data/lib/sorbet-rails/model_plugins/active_record_enum.rb +43 -0
  13. data/lib/sorbet-rails/model_plugins/active_record_finder_methods.rb +80 -0
  14. data/lib/sorbet-rails/model_plugins/active_record_named_scope.rb +28 -0
  15. data/lib/sorbet-rails/model_plugins/active_record_querying.rb +42 -0
  16. data/lib/sorbet-rails/model_plugins/active_relation_where_not.rb +28 -0
  17. data/lib/sorbet-rails/model_plugins/base.rb +33 -0
  18. data/lib/sorbet-rails/model_plugins/custom_finder_methods.rb +54 -0
  19. data/lib/sorbet-rails/model_plugins/enumerable_collections.rb +49 -0
  20. data/lib/sorbet-rails/model_plugins/plugins.rb +45 -0
  21. data/lib/sorbet-rails/model_rbi_formatter.rb +108 -362
  22. data/lib/sorbet-rails/model_utils.rb +45 -0
  23. data/lib/sorbet-rails/railtie.rb +1 -0
  24. data/lib/sorbet-rails/routes_rbi_formatter.rb +12 -3
  25. data/lib/sorbet-rails/tasks/rails_rbi.rake +36 -15
  26. data/lib/sorbet-rails/utils.rb +4 -0
  27. data/sorbet-rails.gemspec +4 -2
  28. data/spec/helper_rbi_formatter_spec.rb +13 -0
  29. data/spec/model_plugins_spec.rb +31 -0
  30. data/spec/model_rbi_formatter_spec.rb +5 -5
  31. data/spec/rake_rails_rbi_helpers_spec.rb +14 -0
  32. data/spec/routes_rbi_formatter_spec.rb +3 -3
  33. data/spec/sorbet_spec.rb +12 -16
  34. data/spec/support/rails_shared/app/controllers/application_controller.rb +1 -1
  35. data/spec/support/rails_shared/app/helpers/bar_helper.rb +2 -0
  36. data/spec/support/rails_shared/app/helpers/baz_helper.rb +2 -0
  37. data/spec/support/rails_shared/app/helpers/foo_helper.rb +2 -0
  38. data/spec/support/rails_shared/app/models/concerns/mythical.rb +10 -0
  39. data/spec/support/rails_shared/app/models/wand.rb +1 -0
  40. data/spec/support/rails_shared/config/initializers/sorbet_rails.rb +3 -0
  41. data/spec/support/rails_shared/lib/mythical_rbi_plugin.rb +16 -0
  42. data/spec/support/rails_shared/sorbet_test_cases.rb +5 -2
  43. data/spec/support/rails_shared/typed-override.yaml +2 -0
  44. data/spec/support/rails_symlinks/app/helpers +1 -0
  45. data/spec/support/rails_symlinks/config/initializers/sorbet_rails.rb +1 -0
  46. data/spec/support/rails_symlinks/lib/mythical_rbi_plugin.rb +1 -0
  47. data/spec/support/rails_symlinks/typed-override.yaml +1 -0
  48. data/spec/support/v4.2/Gemfile.lock +5 -0
  49. data/spec/support/v4.2/app/helpers +1 -0
  50. data/spec/support/v4.2/config/initializers/sorbet_rails.rb +1 -0
  51. data/spec/support/v4.2/config/routes.rb +0 -1
  52. data/spec/support/v4.2/lib/mythical_rbi_plugin.rb +1 -0
  53. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1 -1
  54. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1 -1
  55. data/spec/support/v4.2/typed-override.yaml +1 -0
  56. data/spec/support/v5.0/Gemfile.lock +5 -0
  57. data/spec/support/v5.0/app/helpers +1 -0
  58. data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -0
  59. data/spec/support/v5.0/config/routes.rb +0 -1
  60. data/spec/support/v5.0/lib/mythical_rbi_plugin.rb +1 -0
  61. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1 -1
  62. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1 -1
  63. data/spec/support/v5.0/typed-override.yaml +1 -0
  64. data/spec/support/v5.1/Gemfile.lock +5 -0
  65. data/spec/support/v5.1/app/helpers +1 -0
  66. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -0
  67. data/spec/support/v5.1/lib/mythical_rbi_plugin.rb +1 -0
  68. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1 -1
  69. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1 -1
  70. data/spec/support/v5.1/typed-override.yaml +1 -0
  71. data/spec/support/v5.2-no-sorbet/Gemfile +0 -2
  72. data/spec/support/v5.2-no-sorbet/Gemfile.lock +7 -5
  73. data/spec/support/v5.2-no-sorbet/app/helpers +1 -0
  74. data/spec/support/v5.2-no-sorbet/config/initializers/sorbet_rails.rb +1 -0
  75. data/spec/support/v5.2-no-sorbet/lib/mythical_rbi_plugin.rb +1 -0
  76. data/spec/support/v5.2-no-sorbet/sorbet_test_cases.rb +1 -0
  77. data/spec/support/v5.2-no-sorbet/typed-override.yaml +1 -0
  78. data/spec/support/v5.2/Gemfile +0 -2
  79. data/spec/support/v5.2/Gemfile.lock +7 -5
  80. data/spec/support/v5.2/app/helpers +1 -0
  81. data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -0
  82. data/spec/support/v5.2/lib/mythical_rbi_plugin.rb +1 -0
  83. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1 -1
  84. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1 -1
  85. data/spec/support/v5.2/typed-override.yaml +1 -0
  86. data/spec/support/v6.0/Gemfile +1 -3
  87. data/spec/support/v6.0/Gemfile.lock +61 -59
  88. data/spec/support/v6.0/app/helpers +1 -0
  89. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -0
  90. data/spec/support/v6.0/config/routes.rb +0 -1
  91. data/spec/support/v6.0/lib/mythical_rbi_plugin.rb +1 -0
  92. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1 -1
  93. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1 -1
  94. data/spec/support/v6.0/typed-override.yaml +1 -0
  95. data/spec/test_data/v4.2/expected_helpers.rbi +17 -0
  96. data/spec/test_data/v4.2/expected_potion.rbi +259 -28
  97. data/spec/test_data/v4.2/expected_spell_book.rbi +278 -37
  98. data/spec/test_data/v4.2/expected_srb_tc_output.txt +1 -99
  99. data/spec/test_data/v4.2/expected_wand.rbi +345 -96
  100. data/spec/test_data/v4.2/expected_wizard.rbi +322 -76
  101. data/spec/test_data/v4.2/expected_wizard_wo_spellbook.rbi +322 -76
  102. data/spec/test_data/v5.0/expected_helpers.rbi +17 -0
  103. data/spec/test_data/v5.0/expected_internal_metadata.rbi +273 -37
  104. data/spec/test_data/v5.0/expected_potion.rbi +259 -28
  105. data/spec/test_data/v5.0/expected_schema_migration.rbi +264 -28
  106. data/spec/test_data/v5.0/expected_spell_book.rbi +278 -37
  107. data/spec/test_data/v5.0/expected_srb_tc_output.txt +1 -81
  108. data/spec/test_data/v5.0/expected_wand.rbi +341 -92
  109. data/spec/test_data/v5.0/expected_wizard.rbi +318 -72
  110. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +318 -72
  111. data/spec/test_data/v5.1/expected_helpers.rbi +17 -0
  112. data/spec/test_data/v5.1/expected_internal_metadata.rbi +273 -37
  113. data/spec/test_data/v5.1/expected_potion.rbi +259 -28
  114. data/spec/test_data/v5.1/expected_schema_migration.rbi +264 -28
  115. data/spec/test_data/v5.1/expected_spell_book.rbi +278 -37
  116. data/spec/test_data/v5.1/expected_srb_tc_output.txt +1 -81
  117. data/spec/test_data/v5.1/expected_wand.rbi +341 -92
  118. data/spec/test_data/v5.1/expected_wizard.rbi +318 -72
  119. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +318 -72
  120. data/spec/test_data/v5.2-no-sorbet/expected_attachment.rbi +265 -29
  121. data/spec/test_data/v5.2-no-sorbet/expected_blob.rbi +271 -35
  122. data/spec/test_data/v5.2-no-sorbet/expected_helpers.rbi +17 -0
  123. data/spec/test_data/v5.2-no-sorbet/expected_internal_metadata.rbi +273 -37
  124. data/spec/test_data/v5.2-no-sorbet/expected_potion.rbi +259 -28
  125. data/spec/test_data/v5.2-no-sorbet/expected_schema_migration.rbi +264 -28
  126. data/spec/test_data/v5.2-no-sorbet/expected_spell_book.rbi +278 -37
  127. data/spec/test_data/v5.2-no-sorbet/expected_srb_tc_output.txt +1 -81
  128. data/spec/test_data/v5.2-no-sorbet/expected_wand.rbi +351 -102
  129. data/spec/test_data/v5.2-no-sorbet/expected_wizard.rbi +318 -72
  130. data/spec/test_data/v5.2-no-sorbet/expected_wizard_wo_spellbook.rbi +318 -72
  131. data/spec/test_data/v5.2/expected_attachment.rbi +265 -29
  132. data/spec/test_data/v5.2/expected_blob.rbi +271 -35
  133. data/spec/test_data/v5.2/expected_helpers.rbi +17 -0
  134. data/spec/test_data/v5.2/expected_internal_metadata.rbi +273 -37
  135. data/spec/test_data/v5.2/expected_potion.rbi +259 -28
  136. data/spec/test_data/v5.2/expected_schema_migration.rbi +264 -28
  137. data/spec/test_data/v5.2/expected_spell_book.rbi +278 -37
  138. data/spec/test_data/v5.2/expected_srb_tc_output.txt +1 -81
  139. data/spec/test_data/v5.2/expected_wand.rbi +351 -102
  140. data/spec/test_data/v5.2/expected_wizard.rbi +318 -72
  141. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +318 -72
  142. data/spec/test_data/v6.0/expected_attachment.rbi +265 -29
  143. data/spec/test_data/v6.0/expected_blob.rbi +271 -35
  144. data/spec/test_data/v6.0/expected_helpers.rbi +17 -0
  145. data/spec/test_data/v6.0/expected_internal_metadata.rbi +273 -37
  146. data/spec/test_data/v6.0/expected_potion.rbi +259 -28
  147. data/spec/test_data/v6.0/expected_schema_migration.rbi +264 -28
  148. data/spec/test_data/v6.0/expected_spell_book.rbi +278 -37
  149. data/spec/test_data/v6.0/expected_srb_tc_output.txt +1 -81
  150. data/spec/test_data/v6.0/expected_wand.rbi +351 -102
  151. data/spec/test_data/v6.0/expected_wizard.rbi +318 -72
  152. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +318 -72
  153. metadata +120 -37
  154. data/lib/sorbet-rails/rbi/activerecord.rbi +0 -207
  155. data/spec/support/v4.2/app/helpers/application_helper.rb +0 -3
  156. data/spec/support/v4.2/sorbet/rbi/gems/sorbet-runtime.rbi +0 -647
  157. data/spec/support/v4.2/sorbet/rbi/hidden-definitions/errors.txt +0 -11998
  158. data/spec/support/v4.2/sorbet/rbi/hidden-definitions/hidden.rbi +0 -27774
  159. data/spec/support/v5.0/sorbet/rbi/gems/sorbet-runtime.rbi +0 -647
  160. data/spec/support/v5.0/sorbet/rbi/hidden-definitions/errors.txt +0 -10523
  161. data/spec/support/v5.0/sorbet/rbi/hidden-definitions/hidden.rbi +0 -24969
  162. data/spec/support/v5.1/sorbet/rbi/gems/sorbet-runtime.rbi +0 -647
  163. data/spec/support/v5.1/sorbet/rbi/hidden-definitions/errors.txt +0 -10226
  164. data/spec/support/v5.1/sorbet/rbi/hidden-definitions/hidden.rbi +0 -24635
  165. data/spec/support/v5.2/.ruby-version +0 -1
  166. data/spec/support/v5.2/sorbet/rbi/gems/sorbet-runtime.rbi +0 -644
  167. data/spec/support/v5.2/sorbet/rbi/hidden-definitions/errors.txt +0 -10046
  168. data/spec/support/v5.2/sorbet/rbi/hidden-definitions/hidden.rbi +0 -24424
  169. data/spec/support/v6.0/sorbet/rbi/gems/sorbet-runtime.rbi +0 -647
  170. data/spec/support/v6.0/sorbet/rbi/hidden-definitions/errors.txt +0 -12074
  171. data/spec/support/v6.0/sorbet/rbi/hidden-definitions/hidden.rbi +0 -28231
@@ -1,4 +1,4 @@
1
- # typed: true
1
+ # typed: false
2
2
  require 'sorbet-runtime'
3
3
 
4
4
  wizard = Wizard.first!
@@ -113,8 +113,11 @@ end
113
113
  T.assert_type!(wizard.id, Integer)
114
114
  T.assert_type!(wizard.id?, T::Boolean)
115
115
  T.assert_type!(wizard.notes, T.nilable(String))
116
- T.assert_type!(wizard.house, String)
116
+ T.assert_type!(wizard.house, T.nilable(String))
117
117
 
118
118
  # Model enum
119
119
  T.assert_type!(wizard.Gryffindor?, T::Boolean)
120
120
  T.assert_type!(Wizard.houses, T::Hash[T.any(String, Symbol), Integer])
121
+
122
+ # Mythical plugin
123
+ T.assert_type!(Wand.mythicals, T::Array[Wand])
@@ -0,0 +1,2 @@
1
+ true:
2
+ - ./sorbet_test_cases.rb
@@ -0,0 +1 @@
1
+ spec/support/rails_symlinks/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/rails_symlinks/config/initializers/../../../rails_shared/config/initializers/sorbet_rai
@@ -0,0 +1 @@
1
+ spec/support/rails_symlinks/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -0,0 +1 @@
1
+ spec/support/rails_symlinks/../rails_shared/typed-override.yaml
@@ -2,6 +2,7 @@ PATH
2
2
  remote: ../../..
3
3
  specs:
4
4
  sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -66,6 +67,9 @@ GEM
66
67
  minitest (5.11.3)
67
68
  nokogiri (1.10.3)
68
69
  mini_portile2 (~> 2.4.0)
70
+ parlour (0.6.1)
71
+ rainbow (~> 3.0.0)
72
+ sorbet-runtime
69
73
  rack (1.6.11)
70
74
  rack-test (0.6.3)
71
75
  rack (>= 1.0)
@@ -93,6 +97,7 @@ GEM
93
97
  activesupport (= 4.2.11)
94
98
  rake (>= 0.8.7)
95
99
  thor (>= 0.18.1, < 2.0)
100
+ rainbow (3.0.0)
96
101
  rake (12.3.2)
97
102
  rdoc (4.3.0)
98
103
  sdoc (0.4.2)
@@ -0,0 +1 @@
1
+ spec/support/v4.2/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/v4.2/config/initializers/../../../rails_shared/config/initializers/sorbet_rails.rb
@@ -1,4 +1,3 @@
1
- # typed: strict
2
1
  Rails.application.routes.draw do
3
2
  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
4
3
 
@@ -0,0 +1 @@
1
+ spec/support/v4.2/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -41,7 +41,7 @@ class ActiveRecord::Base
41
41
  end
42
42
 
43
43
  class ActiveRecord::Schema
44
- sig {params(info: Hash, blk: T.proc.bind(ActiveRecord::Schema).void).void}
44
+ sig {params(info: T::Hash[T.untyped, T.untyped], blk: T.proc.bind(ActiveRecord::Schema).void).void}
45
45
  def self.define(info = nil, &blk); end
46
46
  end
47
47
 
@@ -66,7 +66,7 @@ class Object
66
66
 
67
67
  sig do
68
68
  params(
69
- options: Hash,
69
+ options: T::Hash[T.untyped, T.untyped],
70
70
  block: T.nilable(T.proc.returns(T.untyped))
71
71
  ).returns(T.untyped)
72
72
  end
@@ -0,0 +1 @@
1
+ spec/support/v4.2/../rails_shared/typed-override.yaml
@@ -2,6 +2,7 @@ PATH
2
2
  remote: ../../..
3
3
  specs:
4
4
  sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -65,6 +66,9 @@ GEM
65
66
  nio4r (2.3.1)
66
67
  nokogiri (1.10.3)
67
68
  mini_portile2 (~> 2.4.0)
69
+ parlour (0.6.1)
70
+ rainbow (~> 3.0.0)
71
+ sorbet-runtime
68
72
  puma (3.12.1)
69
73
  rack (2.0.7)
70
74
  rack-test (0.6.3)
@@ -92,6 +96,7 @@ GEM
92
96
  method_source
93
97
  rake (>= 0.8.7)
94
98
  thor (>= 0.18.1, < 2.0)
99
+ rainbow (3.0.0)
95
100
  rake (12.3.2)
96
101
  sorbet (0.4.4386)
97
102
  sorbet-static (= 0.4.4386)
@@ -0,0 +1 @@
1
+ spec/support/v5.0/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/v5.0/config/initializers/../../../rails_shared/config/initializers/sorbet_rails.rb
@@ -1,4 +1,3 @@
1
- # typed: strict
2
1
  Rails.application.routes.draw do
3
2
  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
4
3
 
@@ -0,0 +1 @@
1
+ spec/support/v5.0/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -41,7 +41,7 @@ class ActiveRecord::Base
41
41
  end
42
42
 
43
43
  class ActiveRecord::Schema
44
- sig {params(info: Hash, blk: T.proc.bind(ActiveRecord::Schema).void).void}
44
+ sig {params(info: T::Hash[T.untyped, T.untyped], blk: T.proc.bind(ActiveRecord::Schema).void).void}
45
45
  def self.define(info = nil, &blk); end
46
46
  end
47
47
 
@@ -66,7 +66,7 @@ class Object
66
66
 
67
67
  sig do
68
68
  params(
69
- options: Hash,
69
+ options: T::Hash[T.untyped, T.untyped],
70
70
  block: T.nilable(T.proc.returns(T.untyped))
71
71
  ).returns(T.untyped)
72
72
  end
@@ -0,0 +1 @@
1
+ spec/support/v5.0/../rails_shared/typed-override.yaml
@@ -2,6 +2,7 @@ PATH
2
2
  remote: ../../..
3
3
  specs:
4
4
  sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -65,6 +66,9 @@ GEM
65
66
  nio4r (2.3.1)
66
67
  nokogiri (1.10.3)
67
68
  mini_portile2 (~> 2.4.0)
69
+ parlour (0.6.1)
70
+ rainbow (~> 3.0.0)
71
+ sorbet-runtime
68
72
  puma (3.12.1)
69
73
  rack (2.0.7)
70
74
  rack-test (1.1.0)
@@ -92,6 +96,7 @@ GEM
92
96
  method_source
93
97
  rake (>= 0.8.7)
94
98
  thor (>= 0.18.1, < 2.0)
99
+ rainbow (3.0.0)
95
100
  rake (12.3.2)
96
101
  sorbet (0.4.4378)
97
102
  sorbet-static (= 0.4.4378)
@@ -0,0 +1 @@
1
+ spec/support/v5.1/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/v5.1/config/initializers/../../../rails_shared/config/initializers/sorbet_rails.rb
@@ -0,0 +1 @@
1
+ spec/support/v5.1/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -41,7 +41,7 @@ class ActiveRecord::Base
41
41
  end
42
42
 
43
43
  class ActiveRecord::Schema
44
- sig {params(info: Hash, blk: T.proc.bind(ActiveRecord::Schema).void).void}
44
+ sig {params(info: T::Hash[T.untyped, T.untyped], blk: T.proc.bind(ActiveRecord::Schema).void).void}
45
45
  def self.define(info = nil, &blk); end
46
46
  end
47
47
 
@@ -66,7 +66,7 @@ class Object
66
66
 
67
67
  sig do
68
68
  params(
69
- options: Hash,
69
+ options: T::Hash[T.untyped, T.untyped],
70
70
  block: T.nilable(T.proc.returns(T.untyped))
71
71
  ).returns(T.untyped)
72
72
  end
@@ -0,0 +1 @@
1
+ spec/support/v5.1/../rails_shared/typed-override.yaml
@@ -1,8 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
  git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
3
 
4
- ruby '2.4.3'
5
-
6
4
  gem 'rails', '~> 5.2.3'
7
5
 
8
6
  # Use sqlite3 as the database for Active Record
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: ../../..
3
3
  specs:
4
- sorbet-rails (0.3.0)
4
+ sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -72,6 +73,9 @@ GEM
72
73
  nio4r (2.3.1)
73
74
  nokogiri (1.10.3)
74
75
  mini_portile2 (~> 2.4.0)
76
+ parlour (0.6.1)
77
+ rainbow (~> 3.0.0)
78
+ sorbet-runtime
75
79
  puma (3.12.1)
76
80
  rack (2.0.7)
77
81
  rack-test (1.1.0)
@@ -100,6 +104,7 @@ GEM
100
104
  method_source
101
105
  rake (>= 0.8.7)
102
106
  thor (>= 0.19.0, < 2.0)
107
+ rainbow (3.0.0)
103
108
  rake (12.3.2)
104
109
  sorbet (0.4.4386)
105
110
  sorbet-static (= 0.4.4386)
@@ -133,8 +138,5 @@ DEPENDENCIES
133
138
  sorbet-runtime
134
139
  sqlite3 (~> 1.4.1)
135
140
 
136
- RUBY VERSION
137
- ruby 2.4.3p205
138
-
139
141
  BUNDLED WITH
140
- 2.0.1
142
+ 2.0.2
@@ -0,0 +1 @@
1
+ spec/support/v5.2-no-sorbet/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/v5.2-no-sorbet/config/initializers/../../../rails_shared/config/initializers/sorbet_rai
@@ -0,0 +1 @@
1
+ spec/support/v5.2-no-sorbet/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -0,0 +1 @@
1
+ spec/support/v5.2-no-sorbet/../rails_shared/sorbet_test_cases.rb
@@ -0,0 +1 @@
1
+ spec/support/v5.2-no-sorbet/../rails_shared/typed-override.yaml
@@ -1,8 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
  git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
3
 
4
- ruby '2.4.3'
5
-
6
4
  gem 'rails', '~> 5.2.3'
7
5
 
8
6
  # Use sqlite3 as the database for Active Record
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: ../../..
3
3
  specs:
4
- sorbet-rails (0.3.0)
4
+ sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -72,6 +73,9 @@ GEM
72
73
  nio4r (2.3.1)
73
74
  nokogiri (1.10.3)
74
75
  mini_portile2 (~> 2.4.0)
76
+ parlour (0.6.1)
77
+ rainbow (~> 3.0.0)
78
+ sorbet-runtime
75
79
  puma (3.12.1)
76
80
  rack (2.0.7)
77
81
  rack-test (1.1.0)
@@ -100,6 +104,7 @@ GEM
100
104
  method_source
101
105
  rake (>= 0.8.7)
102
106
  thor (>= 0.19.0, < 2.0)
107
+ rainbow (3.0.0)
103
108
  rake (12.3.2)
104
109
  sorbet (0.4.4386)
105
110
  sorbet-static (= 0.4.4386)
@@ -133,8 +138,5 @@ DEPENDENCIES
133
138
  sorbet-runtime
134
139
  sqlite3 (~> 1.4.1)
135
140
 
136
- RUBY VERSION
137
- ruby 2.4.3p205
138
-
139
141
  BUNDLED WITH
140
- 2.0.1
142
+ 2.0.2
@@ -0,0 +1 @@
1
+ spec/support/v5.2/app/../../rails_shared/app/helpers
@@ -0,0 +1 @@
1
+ spec/support/v5.2/config/initializers/../../../rails_shared/config/initializers/sorbet_rails.rb
@@ -0,0 +1 @@
1
+ spec/support/v5.2/lib/../../rails_shared/lib/mythical_rbi_plugin.rb
@@ -41,7 +41,7 @@ class ActiveRecord::Base
41
41
  end
42
42
 
43
43
  class ActiveRecord::Schema
44
- sig {params(info: Hash, blk: T.proc.bind(ActiveRecord::Schema).void).void}
44
+ sig {params(info: T::Hash[T.untyped, T.untyped], blk: T.proc.bind(ActiveRecord::Schema).void).void}
45
45
  def self.define(info = nil, &blk); end
46
46
  end
47
47
 
@@ -66,7 +66,7 @@ class Object
66
66
 
67
67
  sig do
68
68
  params(
69
- options: Hash,
69
+ options: T::Hash[T.untyped, T.untyped],
70
70
  block: T.nilable(T.proc.returns(T.untyped))
71
71
  ).returns(T.untyped)
72
72
  end
@@ -0,0 +1 @@
1
+ spec/support/v5.2/../rails_shared/typed-override.yaml
@@ -1,10 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
  git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
3
 
4
- ruby '2.5.5'
5
-
6
4
  # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
7
- gem 'rails', '~> 6.0.0.rc1'
5
+ gem 'rails', '~> 6.0.0.rc2'
8
6
  # Use sqlite3 as the database for Active Record
9
7
  gem 'sqlite3', '~> 1.4'
10
8
  # Use Puma as the app server
@@ -2,65 +2,66 @@ PATH
2
2
  remote: ../../..
3
3
  specs:
4
4
  sorbet-rails (0.4.0)
5
+ parlour (~> 0.6.0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
8
9
  specs:
9
- actioncable (6.0.0.rc1)
10
- actionpack (= 6.0.0.rc1)
10
+ actioncable (6.0.0.rc2)
11
+ actionpack (= 6.0.0.rc2)
11
12
  nio4r (~> 2.0)
12
13
  websocket-driver (>= 0.6.1)
13
- actionmailbox (6.0.0.rc1)
14
- actionpack (= 6.0.0.rc1)
15
- activejob (= 6.0.0.rc1)
16
- activerecord (= 6.0.0.rc1)
17
- activestorage (= 6.0.0.rc1)
18
- activesupport (= 6.0.0.rc1)
14
+ actionmailbox (6.0.0.rc2)
15
+ actionpack (= 6.0.0.rc2)
16
+ activejob (= 6.0.0.rc2)
17
+ activerecord (= 6.0.0.rc2)
18
+ activestorage (= 6.0.0.rc2)
19
+ activesupport (= 6.0.0.rc2)
19
20
  mail (>= 2.7.1)
20
- actionmailer (6.0.0.rc1)
21
- actionpack (= 6.0.0.rc1)
22
- actionview (= 6.0.0.rc1)
23
- activejob (= 6.0.0.rc1)
21
+ actionmailer (6.0.0.rc2)
22
+ actionpack (= 6.0.0.rc2)
23
+ actionview (= 6.0.0.rc2)
24
+ activejob (= 6.0.0.rc2)
24
25
  mail (~> 2.5, >= 2.5.4)
25
26
  rails-dom-testing (~> 2.0)
26
- actionpack (6.0.0.rc1)
27
- actionview (= 6.0.0.rc1)
28
- activesupport (= 6.0.0.rc1)
27
+ actionpack (6.0.0.rc2)
28
+ actionview (= 6.0.0.rc2)
29
+ activesupport (= 6.0.0.rc2)
29
30
  rack (~> 2.0)
30
31
  rack-test (>= 0.6.3)
31
32
  rails-dom-testing (~> 2.0)
32
33
  rails-html-sanitizer (~> 1.0, >= 1.0.2)
33
- actiontext (6.0.0.rc1)
34
- actionpack (= 6.0.0.rc1)
35
- activerecord (= 6.0.0.rc1)
36
- activestorage (= 6.0.0.rc1)
37
- activesupport (= 6.0.0.rc1)
34
+ actiontext (6.0.0.rc2)
35
+ actionpack (= 6.0.0.rc2)
36
+ activerecord (= 6.0.0.rc2)
37
+ activestorage (= 6.0.0.rc2)
38
+ activesupport (= 6.0.0.rc2)
38
39
  nokogiri (>= 1.8.5)
39
- actionview (6.0.0.rc1)
40
- activesupport (= 6.0.0.rc1)
40
+ actionview (6.0.0.rc2)
41
+ activesupport (= 6.0.0.rc2)
41
42
  builder (~> 3.1)
42
43
  erubi (~> 1.4)
43
44
  rails-dom-testing (~> 2.0)
44
45
  rails-html-sanitizer (~> 1.0, >= 1.0.3)
45
- activejob (6.0.0.rc1)
46
- activesupport (= 6.0.0.rc1)
46
+ activejob (6.0.0.rc2)
47
+ activesupport (= 6.0.0.rc2)
47
48
  globalid (>= 0.3.6)
48
- activemodel (6.0.0.rc1)
49
- activesupport (= 6.0.0.rc1)
50
- activerecord (6.0.0.rc1)
51
- activemodel (= 6.0.0.rc1)
52
- activesupport (= 6.0.0.rc1)
53
- activestorage (6.0.0.rc1)
54
- actionpack (= 6.0.0.rc1)
55
- activejob (= 6.0.0.rc1)
56
- activerecord (= 6.0.0.rc1)
49
+ activemodel (6.0.0.rc2)
50
+ activesupport (= 6.0.0.rc2)
51
+ activerecord (6.0.0.rc2)
52
+ activemodel (= 6.0.0.rc2)
53
+ activesupport (= 6.0.0.rc2)
54
+ activestorage (6.0.0.rc2)
55
+ actionpack (= 6.0.0.rc2)
56
+ activejob (= 6.0.0.rc2)
57
+ activerecord (= 6.0.0.rc2)
57
58
  marcel (~> 0.3.1)
58
- activesupport (6.0.0.rc1)
59
+ activesupport (6.0.0.rc2)
59
60
  concurrent-ruby (~> 1.0, >= 1.0.2)
60
61
  i18n (>= 0.7, < 2)
61
62
  minitest (~> 5.1)
62
63
  tzinfo (~> 1.1)
63
- zeitwerk (~> 2.1, >= 2.1.4)
64
+ zeitwerk (~> 2.1, >= 2.1.8)
64
65
  builder (3.2.3)
65
66
  byebug (11.0.1)
66
67
  concurrent-ruby (1.1.5)
@@ -79,43 +80,47 @@ GEM
79
80
  mimemagic (~> 0.3.2)
80
81
  method_source (0.9.2)
81
82
  mimemagic (0.3.3)
82
- mini_mime (1.0.1)
83
+ mini_mime (1.0.2)
83
84
  mini_portile2 (2.4.0)
84
85
  minitest (5.11.3)
85
- nio4r (2.3.1)
86
+ nio4r (2.4.0)
86
87
  nokogiri (1.10.3)
87
88
  mini_portile2 (~> 2.4.0)
89
+ parlour (0.6.1)
90
+ rainbow (~> 3.0.0)
91
+ sorbet-runtime
88
92
  puma (3.12.1)
89
93
  rack (2.0.7)
90
94
  rack-test (1.1.0)
91
95
  rack (>= 1.0, < 3)
92
- rails (6.0.0.rc1)
93
- actioncable (= 6.0.0.rc1)
94
- actionmailbox (= 6.0.0.rc1)
95
- actionmailer (= 6.0.0.rc1)
96
- actionpack (= 6.0.0.rc1)
97
- actiontext (= 6.0.0.rc1)
98
- actionview (= 6.0.0.rc1)
99
- activejob (= 6.0.0.rc1)
100
- activemodel (= 6.0.0.rc1)
101
- activerecord (= 6.0.0.rc1)
102
- activestorage (= 6.0.0.rc1)
103
- activesupport (= 6.0.0.rc1)
96
+ rails (6.0.0.rc2)
97
+ actioncable (= 6.0.0.rc2)
98
+ actionmailbox (= 6.0.0.rc2)
99
+ actionmailer (= 6.0.0.rc2)
100
+ actionpack (= 6.0.0.rc2)
101
+ actiontext (= 6.0.0.rc2)
102
+ actionview (= 6.0.0.rc2)
103
+ activejob (= 6.0.0.rc2)
104
+ activemodel (= 6.0.0.rc2)
105
+ activerecord (= 6.0.0.rc2)
106
+ activestorage (= 6.0.0.rc2)
107
+ activesupport (= 6.0.0.rc2)
104
108
  bundler (>= 1.3.0)
105
- railties (= 6.0.0.rc1)
109
+ railties (= 6.0.0.rc2)
106
110
  sprockets-rails (>= 2.0.0)
107
111
  rails-dom-testing (2.0.3)
108
112
  activesupport (>= 4.2.0)
109
113
  nokogiri (>= 1.6)
110
114
  rails-html-sanitizer (1.0.4)
111
115
  loofah (~> 2.2, >= 2.2.2)
112
- railties (6.0.0.rc1)
113
- actionpack (= 6.0.0.rc1)
114
- activesupport (= 6.0.0.rc1)
116
+ railties (6.0.0.rc2)
117
+ actionpack (= 6.0.0.rc2)
118
+ activesupport (= 6.0.0.rc2)
115
119
  method_source
116
120
  rake (>= 0.8.7)
117
121
  thor (>= 0.20.3, < 2.0)
118
- rake (12.3.2)
122
+ rainbow (3.0.0)
123
+ rake (12.3.3)
119
124
  sorbet (0.4.4386)
120
125
  sorbet-static (= 0.4.4386)
121
126
  sorbet-runtime (0.4.4386)
@@ -135,7 +140,7 @@ GEM
135
140
  websocket-driver (0.7.1)
136
141
  websocket-extensions (>= 0.1.0)
137
142
  websocket-extensions (0.1.4)
138
- zeitwerk (2.1.8)
143
+ zeitwerk (2.1.9)
139
144
 
140
145
  PLATFORMS
141
146
  ruby
@@ -143,15 +148,12 @@ PLATFORMS
143
148
  DEPENDENCIES
144
149
  byebug
145
150
  puma (~> 3.11)
146
- rails (~> 6.0.0.rc1)
151
+ rails (~> 6.0.0.rc2)
147
152
  sorbet
148
153
  sorbet-rails!
149
154
  sorbet-runtime
150
155
  sqlite3 (~> 1.4)
151
156
  tzinfo-data
152
157
 
153
- RUBY VERSION
154
- ruby 2.5.5p157
155
-
156
158
  BUNDLED WITH
157
159
  2.0.2