sorbet-rails 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (431) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +5 -2
  3. data/.travis.yml +7 -1
  4. data/CONTRIBUTING.md +3 -1
  5. data/Gemfile +11 -0
  6. data/README.md +0 -2
  7. data/{rbi → lib/sorbet-rails/rbi}/activerecord.rbi +118 -86
  8. data/lib/sorbet-rails/tasks/rails_rbi.rake +15 -6
  9. data/lib/sorbet-rails/utils.rb +11 -0
  10. data/sorbet-rails.gemspec +1 -1
  11. data/spec/bin/run_all_specs.sh +3 -2
  12. data/spec/bin/run_spec.sh +33 -26
  13. data/spec/model_rbi_formatter_spec.rb +0 -15
  14. data/spec/rails_helper.rb +12 -7
  15. data/spec/rake_rails_rbi_models_spec.rb +22 -5
  16. data/spec/rake_rails_rbi_routes_spec.rb +0 -1
  17. data/spec/sorbet_spec.rb +80 -0
  18. data/spec/support/rails_shared/config/routes.rb +1 -0
  19. data/spec/support/rails_shared/sorbet_test_cases.rb +120 -0
  20. data/spec/support/rails_symlinks/sorbet_test_cases.rb +1 -0
  21. data/spec/support/v4.2/Gemfile +13 -0
  22. data/spec/support/v4.2/Gemfile.lock +138 -0
  23. data/spec/support/v4.2/app/controllers/application_controller.rb +1 -0
  24. data/spec/support/v4.2/app/helpers/application_helper.rb +1 -0
  25. data/spec/support/v4.2/config/application.rb +1 -0
  26. data/spec/support/v4.2/config/boot.rb +1 -0
  27. data/spec/support/v4.2/config/environment.rb +1 -0
  28. data/spec/support/v4.2/config/environments/development.rb +1 -0
  29. data/spec/support/v4.2/config/environments/production.rb +1 -0
  30. data/spec/support/v4.2/config/environments/test.rb +1 -0
  31. data/spec/support/v4.2/config/initializers/backtrace_silencers.rb +1 -0
  32. data/spec/support/v4.2/config/initializers/cookies_serializer.rb +1 -0
  33. data/spec/support/v4.2/config/initializers/filter_parameter_logging.rb +1 -0
  34. data/spec/support/v4.2/config/initializers/inflections.rb +1 -0
  35. data/spec/support/v4.2/config/initializers/mime_types.rb +1 -0
  36. data/spec/support/v4.2/config/initializers/session_store.rb +1 -0
  37. data/spec/support/v4.2/config/initializers/to_time_preserves_timezone.rb +1 -0
  38. data/spec/support/v4.2/config/initializers/wrap_parameters.rb +1 -0
  39. data/spec/support/v4.2/config/routes.rb +1 -0
  40. data/spec/support/v4.2/db/migrate/20190620001234_create_wizards.rb +1 -0
  41. data/spec/support/v4.2/db/migrate/20190620003037_create_wands.rb +1 -0
  42. data/spec/support/v4.2/db/migrate/20190620003739_create_spell_books.rb +1 -0
  43. data/spec/support/v4.2/db/migrate/20190622000000_add_more_column_types_to_wands.rb +1 -0
  44. data/spec/support/v4.2/db/schema.rb +1 -0
  45. data/spec/support/v4.2/db/seeds.rb +1 -0
  46. data/spec/support/v4.2/sorbet/config +2 -0
  47. data/spec/support/v4.2/sorbet/rbi/gems/actionmailer.rbi +267 -0
  48. data/spec/support/v4.2/sorbet/rbi/gems/actionpack.rbi +2885 -0
  49. data/spec/support/v4.2/sorbet/rbi/gems/actionview.rbi +978 -0
  50. data/spec/support/v4.2/sorbet/rbi/gems/activejob.rbi +19 -0
  51. data/spec/support/v4.2/sorbet/rbi/gems/activemodel.rbi +335 -0
  52. data/spec/support/v4.2/sorbet/rbi/gems/activerecord.rbi +3382 -0
  53. data/spec/support/v4.2/sorbet/rbi/gems/activesupport.rbi +1892 -0
  54. data/spec/support/v4.2/sorbet/rbi/gems/arel.rbi +1109 -0
  55. data/spec/support/v4.2/sorbet/rbi/gems/binding_of_caller.rbi +22 -0
  56. data/spec/support/v4.2/sorbet/rbi/gems/byebug.rbi +1039 -0
  57. data/spec/support/v4.2/sorbet/rbi/gems/concurrent-ruby.rbi +218 -0
  58. data/spec/support/v4.2/sorbet/rbi/gems/crass.rbi +92 -0
  59. data/spec/support/v4.2/sorbet/rbi/gems/debug_inspector.rbi +18 -0
  60. data/spec/support/v4.2/sorbet/rbi/gems/erubis.rbi +265 -0
  61. data/spec/support/v4.2/sorbet/rbi/gems/globalid.rbi +98 -0
  62. data/spec/support/v4.2/sorbet/rbi/gems/i18n.rbi +186 -0
  63. data/spec/support/v4.2/sorbet/rbi/gems/jbuilder.rbi +99 -0
  64. data/spec/support/v4.2/sorbet/rbi/gems/loofah.rbi +129 -0
  65. data/spec/support/v4.2/sorbet/rbi/gems/mail.rbi +1091 -0
  66. data/spec/support/v4.2/sorbet/rbi/gems/mini_mime.rbi +45 -0
  67. data/spec/support/v4.2/sorbet/rbi/gems/minitest.rbi +276 -0
  68. data/spec/support/v4.2/sorbet/rbi/gems/nokogiri.rbi +1010 -0
  69. data/spec/support/v4.2/sorbet/rbi/gems/rack-test.rbi +145 -0
  70. data/spec/support/v4.2/sorbet/rbi/gems/rack.rbi +490 -0
  71. data/spec/support/v4.2/sorbet/rbi/gems/rails-deprecated_sanitizer.rbi +13 -0
  72. data/spec/support/v4.2/sorbet/rbi/gems/rails-dom-testing.rbi +76 -0
  73. data/spec/support/v4.2/sorbet/rbi/gems/rails-html-sanitizer.rbi +90 -0
  74. data/spec/support/v4.2/sorbet/rbi/gems/railties.rbi +623 -0
  75. data/spec/support/v4.2/sorbet/rbi/gems/rdoc.rbi +1053 -0
  76. data/spec/support/v4.2/sorbet/rbi/gems/sdoc.rbi +73 -0
  77. data/spec/support/v4.2/sorbet/rbi/gems/sorbet-runtime.rbi +647 -0
  78. data/spec/support/v4.2/sorbet/rbi/gems/sqlite3.rbi +345 -0
  79. data/spec/support/v4.2/sorbet/rbi/gems/thor.rbi +401 -0
  80. data/spec/support/v4.2/sorbet/rbi/gems/thread_safe.rbi +81 -0
  81. data/spec/support/v4.2/sorbet/rbi/gems/tzinfo.rbi +407 -0
  82. data/spec/support/v4.2/sorbet/rbi/gems/web-console.rbi +136 -0
  83. data/spec/support/v4.2/sorbet/rbi/hidden-definitions/errors.txt +11998 -0
  84. data/spec/support/v4.2/sorbet/rbi/hidden-definitions/hidden.rbi +27774 -0
  85. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +13 -0
  86. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +13 -0
  87. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +51 -0
  88. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +107 -0
  89. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8547 -0
  90. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +22 -0
  91. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  92. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  93. data/spec/support/v4.2/sorbet/rbi/todo.rbi +8 -0
  94. data/spec/support/v4.2/sorbet_test_cases.rb +1 -0
  95. data/spec/support/v4.2/test/test_helper.rb +1 -0
  96. data/spec/support/v5.0/Gemfile +13 -0
  97. data/spec/support/v5.0/Gemfile.lock +130 -0
  98. data/spec/support/v5.0/app/channels/application_cable/channel.rb +1 -0
  99. data/spec/support/v5.0/app/channels/application_cable/connection.rb +1 -0
  100. data/spec/support/v5.0/app/jobs/application_job.rb +1 -0
  101. data/spec/support/v5.0/app/mailers/application_mailer.rb +1 -0
  102. data/spec/support/v5.0/config/application.rb +1 -0
  103. data/spec/support/v5.0/config/boot.rb +1 -0
  104. data/spec/support/v5.0/config/environment.rb +1 -0
  105. data/spec/support/v5.0/config/environments/development.rb +1 -0
  106. data/spec/support/v5.0/config/environments/production.rb +1 -0
  107. data/spec/support/v5.0/config/environments/test.rb +1 -0
  108. data/spec/support/v5.0/config/initializers/application_controller_renderer.rb +1 -0
  109. data/spec/support/v5.0/config/initializers/backtrace_silencers.rb +1 -0
  110. data/spec/support/v5.0/config/initializers/cors.rb +1 -0
  111. data/spec/support/v5.0/config/initializers/filter_parameter_logging.rb +1 -0
  112. data/spec/support/v5.0/config/initializers/inflections.rb +1 -0
  113. data/spec/support/v5.0/config/initializers/mime_types.rb +1 -0
  114. data/spec/support/v5.0/config/initializers/new_framework_defaults.rb +1 -0
  115. data/spec/support/v5.0/config/initializers/wrap_parameters.rb +1 -0
  116. data/spec/support/v5.0/config/puma.rb +1 -0
  117. data/spec/support/v5.0/config/routes.rb +1 -0
  118. data/spec/support/v5.0/db/schema.rb +1 -0
  119. data/spec/support/v5.0/db/seeds.rb +1 -0
  120. data/spec/support/v5.0/rails_symlinks/config/routes.rb +1 -0
  121. data/spec/support/v5.0/sorbet/config +2 -0
  122. data/spec/support/v5.0/sorbet/rbi/gems/actioncable.rbi +309 -0
  123. data/spec/support/v5.0/sorbet/rbi/gems/actionmailer.rbi +379 -0
  124. data/spec/support/v5.0/sorbet/rbi/gems/actionpack.rbi +3150 -0
  125. data/spec/support/v5.0/sorbet/rbi/gems/actionview.rbi +1093 -0
  126. data/spec/support/v5.0/sorbet/rbi/gems/activejob.rbi +252 -0
  127. data/spec/support/v5.0/sorbet/rbi/gems/activemodel.rbi +562 -0
  128. data/spec/support/v5.0/sorbet/rbi/gems/activerecord.rbi +4060 -0
  129. data/spec/support/v5.0/sorbet/rbi/gems/activesupport.rbi +2078 -0
  130. data/spec/support/v5.0/sorbet/rbi/gems/arel.rbi +1222 -0
  131. data/spec/support/v5.0/sorbet/rbi/gems/byebug.rbi +1039 -0
  132. data/spec/support/v5.0/sorbet/rbi/gems/concurrent-ruby.rbi +1587 -0
  133. data/spec/support/v5.0/sorbet/rbi/gems/crass.rbi +92 -0
  134. data/spec/support/v5.0/sorbet/rbi/gems/erubis.rbi +265 -0
  135. data/spec/support/v5.0/sorbet/rbi/gems/globalid.rbi +98 -0
  136. data/spec/support/v5.0/sorbet/rbi/gems/i18n.rbi +191 -0
  137. data/spec/support/v5.0/sorbet/rbi/gems/loofah.rbi +129 -0
  138. data/spec/support/v5.0/sorbet/rbi/gems/mail.rbi +1091 -0
  139. data/spec/support/v5.0/sorbet/rbi/gems/method_source.rbi +63 -0
  140. data/spec/support/v5.0/sorbet/rbi/gems/mini_mime.rbi +45 -0
  141. data/spec/support/v5.0/sorbet/rbi/gems/minitest.rbi +276 -0
  142. data/spec/support/v5.0/sorbet/rbi/gems/nokogiri.rbi +1010 -0
  143. data/spec/support/v5.0/sorbet/rbi/gems/puma.rbi +570 -0
  144. data/spec/support/v5.0/sorbet/rbi/gems/rack-test.rbi +145 -0
  145. data/spec/support/v5.0/sorbet/rbi/gems/rack.rbi +534 -0
  146. data/spec/support/v5.0/sorbet/rbi/gems/rails-dom-testing.rbi +67 -0
  147. data/spec/support/v5.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +90 -0
  148. data/spec/support/v5.0/sorbet/rbi/gems/railties.rbi +682 -0
  149. data/spec/support/v5.0/sorbet/rbi/gems/rake.rbi +255 -0
  150. data/spec/support/v5.0/sorbet/rbi/gems/sorbet-runtime.rbi +647 -0
  151. data/spec/support/v5.0/sorbet/rbi/gems/sqlite3.rbi +345 -0
  152. data/spec/support/v5.0/sorbet/rbi/gems/thor.rbi +401 -0
  153. data/spec/support/v5.0/sorbet/rbi/gems/thread_safe.rbi +81 -0
  154. data/spec/support/v5.0/sorbet/rbi/gems/tzinfo.rbi +407 -0
  155. data/spec/support/v5.0/sorbet/rbi/hidden-definitions/errors.txt +10523 -0
  156. data/spec/support/v5.0/sorbet/rbi/hidden-definitions/hidden.rbi +24969 -0
  157. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +13 -0
  158. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +13 -0
  159. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +51 -0
  160. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +107 -0
  161. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8547 -0
  162. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +22 -0
  163. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  164. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  165. data/spec/support/v5.0/sorbet/rbi/todo.rbi +10 -0
  166. data/spec/support/v5.0/sorbet_test_cases.rb +1 -0
  167. data/spec/support/v5.0/test/test_helper.rb +1 -0
  168. data/spec/support/v5.1/Gemfile +13 -0
  169. data/spec/support/v5.1/Gemfile.lock +15 -20
  170. data/spec/support/v5.1/app/channels/application_cable/channel.rb +1 -0
  171. data/spec/support/v5.1/app/channels/application_cable/connection.rb +1 -0
  172. data/spec/support/v5.1/app/jobs/application_job.rb +1 -0
  173. data/spec/support/v5.1/app/mailers/application_mailer.rb +1 -0
  174. data/spec/support/v5.1/bin/rails +0 -5
  175. data/spec/support/v5.1/bin/rake +0 -5
  176. data/spec/support/v5.1/config/application.rb +1 -0
  177. data/spec/support/v5.1/config/boot.rb +1 -0
  178. data/spec/support/v5.1/config/environment.rb +1 -0
  179. data/spec/support/v5.1/config/environments/development.rb +2 -1
  180. data/spec/support/v5.1/config/environments/production.rb +1 -0
  181. data/spec/support/v5.1/config/environments/test.rb +1 -0
  182. data/spec/support/v5.1/config/initializers/application_controller_renderer.rb +1 -0
  183. data/spec/support/v5.1/config/initializers/backtrace_silencers.rb +1 -0
  184. data/spec/support/v5.1/config/initializers/cors.rb +1 -0
  185. data/spec/support/v5.1/config/initializers/filter_parameter_logging.rb +1 -0
  186. data/spec/support/v5.1/config/initializers/inflections.rb +1 -0
  187. data/spec/support/v5.1/config/initializers/mime_types.rb +1 -0
  188. data/spec/support/v5.1/config/initializers/wrap_parameters.rb +1 -0
  189. data/spec/support/v5.1/config/puma.rb +1 -0
  190. data/spec/support/v5.1/config/spring.rb +1 -0
  191. data/spec/support/v5.1/db/schema.rb +1 -0
  192. data/spec/support/v5.1/db/seeds.rb +1 -0
  193. data/spec/support/v5.1/sorbet/config +2 -0
  194. data/spec/support/v5.1/sorbet/rbi/gems/actioncable.rbi +309 -0
  195. data/spec/support/v5.1/sorbet/rbi/gems/actionmailer.rbi +429 -0
  196. data/spec/support/v5.1/sorbet/rbi/gems/actionpack.rbi +3171 -0
  197. data/spec/support/v5.1/sorbet/rbi/gems/actionview.rbi +1115 -0
  198. data/spec/support/v5.1/sorbet/rbi/gems/activejob.rbi +273 -0
  199. data/spec/support/v5.1/sorbet/rbi/gems/activemodel.rbi +547 -0
  200. data/spec/support/v5.1/sorbet/rbi/gems/activerecord.rbi +4093 -0
  201. data/spec/support/v5.1/sorbet/rbi/gems/activesupport.rbi +2180 -0
  202. data/spec/support/v5.1/sorbet/rbi/gems/arel.rbi +1220 -0
  203. data/spec/support/v5.1/sorbet/rbi/gems/byebug.rbi +1039 -0
  204. data/spec/support/v5.1/sorbet/rbi/gems/concurrent-ruby.rbi +1587 -0
  205. data/spec/support/v5.1/sorbet/rbi/gems/crass.rbi +92 -0
  206. data/spec/support/v5.1/sorbet/rbi/gems/erubi.rbi +26 -0
  207. data/spec/support/v5.1/sorbet/rbi/gems/globalid.rbi +98 -0
  208. data/spec/support/v5.1/sorbet/rbi/gems/i18n.rbi +191 -0
  209. data/spec/support/v5.1/sorbet/rbi/gems/loofah.rbi +129 -0
  210. data/spec/support/v5.1/sorbet/rbi/gems/mail.rbi +1091 -0
  211. data/spec/support/v5.1/sorbet/rbi/gems/method_source.rbi +63 -0
  212. data/spec/support/v5.1/sorbet/rbi/gems/mini_mime.rbi +45 -0
  213. data/spec/support/v5.1/sorbet/rbi/gems/minitest.rbi +276 -0
  214. data/spec/support/v5.1/sorbet/rbi/gems/nokogiri.rbi +1010 -0
  215. data/spec/support/v5.1/sorbet/rbi/gems/puma.rbi +570 -0
  216. data/spec/support/v5.1/sorbet/rbi/gems/rack-test.rbi +161 -0
  217. data/spec/support/v5.1/sorbet/rbi/gems/rack.rbi +534 -0
  218. data/spec/support/v5.1/sorbet/rbi/gems/rails-dom-testing.rbi +67 -0
  219. data/spec/support/v5.1/sorbet/rbi/gems/rails-html-sanitizer.rbi +90 -0
  220. data/spec/support/v5.1/sorbet/rbi/gems/railties.rbi +707 -0
  221. data/spec/support/v5.1/sorbet/rbi/gems/rake.rbi +255 -0
  222. data/spec/support/v5.1/sorbet/rbi/gems/sorbet-runtime.rbi +647 -0
  223. data/spec/support/v5.1/sorbet/rbi/gems/sqlite3.rbi +345 -0
  224. data/spec/support/v5.1/sorbet/rbi/gems/thor.rbi +450 -0
  225. data/spec/support/v5.1/sorbet/rbi/gems/thread_safe.rbi +81 -0
  226. data/spec/support/v5.1/sorbet/rbi/gems/tzinfo.rbi +407 -0
  227. data/spec/support/v5.1/sorbet/rbi/hidden-definitions/errors.txt +10226 -0
  228. data/spec/support/v5.1/sorbet/rbi/hidden-definitions/hidden.rbi +24635 -0
  229. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +13 -0
  230. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +13 -0
  231. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +51 -0
  232. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +107 -0
  233. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8547 -0
  234. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +22 -0
  235. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  236. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  237. data/spec/support/v5.1/sorbet/rbi/todo.rbi +11 -0
  238. data/spec/support/v5.1/sorbet_test_cases.rb +1 -0
  239. data/spec/support/v5.1/test/test_helper.rb +1 -0
  240. data/spec/support/v5.2/Gemfile +12 -0
  241. data/spec/support/v5.2/Gemfile.lock +12 -0
  242. data/spec/support/v5.2/app/channels/application_cable/channel.rb +1 -0
  243. data/spec/support/v5.2/app/channels/application_cable/connection.rb +1 -0
  244. data/spec/support/v5.2/app/jobs/application_job.rb +1 -0
  245. data/spec/support/v5.2/app/mailers/application_mailer.rb +1 -0
  246. data/spec/support/v5.2/bin/rails +0 -5
  247. data/spec/support/v5.2/bin/rake +0 -5
  248. data/spec/support/v5.2/config/application.rb +1 -0
  249. data/spec/support/v5.2/config/boot.rb +1 -0
  250. data/spec/support/v5.2/config/environment.rb +1 -0
  251. data/spec/support/v5.2/config/environments/development.rb +1 -0
  252. data/spec/support/v5.2/config/environments/production.rb +1 -0
  253. data/spec/support/v5.2/config/environments/test.rb +1 -0
  254. data/spec/support/v5.2/config/initializers/application_controller_renderer.rb +1 -0
  255. data/spec/support/v5.2/config/initializers/backtrace_silencers.rb +1 -0
  256. data/spec/support/v5.2/config/initializers/cors.rb +1 -0
  257. data/spec/support/v5.2/config/initializers/filter_parameter_logging.rb +1 -0
  258. data/spec/support/v5.2/config/initializers/inflections.rb +1 -0
  259. data/spec/support/v5.2/config/initializers/mime_types.rb +1 -0
  260. data/spec/support/v5.2/config/initializers/wrap_parameters.rb +1 -0
  261. data/spec/support/v5.2/config/puma.rb +1 -0
  262. data/spec/support/v5.2/config/spring.rb +1 -0
  263. data/spec/support/v5.2/db/schema.rb +1 -0
  264. data/spec/support/v5.2/db/seeds.rb +1 -0
  265. data/spec/support/v5.2/sorbet/rbi/gems/sorbet-runtime.rbi +644 -0
  266. data/spec/support/v5.2/sorbet/rbi/hidden-definitions/errors.txt +12 -6
  267. data/spec/support/v5.2/sorbet/rbi/hidden-definitions/hidden.rbi +57 -19
  268. data/spec/support/v5.2/sorbet_test_cases.rb +1 -0
  269. data/spec/support/v5.2/test/test_helper.rb +1 -0
  270. data/spec/support/v5.2-no-sorbet/Gemfile +57 -0
  271. data/spec/support/v5.2-no-sorbet/Gemfile.lock +140 -0
  272. data/spec/support/v5.2-no-sorbet/README.md +24 -0
  273. data/spec/support/v5.2-no-sorbet/Rakefile +6 -0
  274. data/spec/support/v5.2-no-sorbet/app/channels/application_cable/channel.rb +5 -0
  275. data/spec/support/v5.2-no-sorbet/app/channels/application_cable/connection.rb +5 -0
  276. data/spec/support/v5.2-no-sorbet/app/controllers +1 -0
  277. data/spec/support/v5.2-no-sorbet/app/jobs/application_job.rb +3 -0
  278. data/spec/support/v5.2-no-sorbet/app/mailers/application_mailer.rb +5 -0
  279. data/spec/support/v5.2-no-sorbet/app/models +1 -0
  280. data/spec/support/v5.2-no-sorbet/app/views/layouts/mailer.html.erb +13 -0
  281. data/spec/support/v5.2-no-sorbet/app/views/layouts/mailer.text.erb +1 -0
  282. data/spec/support/v5.2-no-sorbet/bin/bundle +3 -0
  283. data/spec/support/v5.2-no-sorbet/bin/rails +4 -0
  284. data/spec/support/v5.2-no-sorbet/bin/rake +4 -0
  285. data/spec/support/v5.2-no-sorbet/bin/setup +33 -0
  286. data/spec/support/v5.2-no-sorbet/bin/spring +17 -0
  287. data/spec/support/v5.2-no-sorbet/bin/update +28 -0
  288. data/spec/support/v5.2-no-sorbet/config/application.rb +36 -0
  289. data/spec/support/v5.2-no-sorbet/config/boot.rb +4 -0
  290. data/spec/support/v5.2-no-sorbet/config/cable.yml +10 -0
  291. data/spec/support/v5.2-no-sorbet/config/credentials.yml.enc +1 -0
  292. data/spec/support/v5.2-no-sorbet/config/database.yml +25 -0
  293. data/spec/support/v5.2-no-sorbet/config/environment.rb +6 -0
  294. data/spec/support/v5.2-no-sorbet/config/environments/development.rb +55 -0
  295. data/spec/support/v5.2-no-sorbet/config/environments/production.rb +86 -0
  296. data/spec/support/v5.2-no-sorbet/config/environments/test.rb +47 -0
  297. data/spec/support/v5.2-no-sorbet/config/initializers/application_controller_renderer.rb +9 -0
  298. data/spec/support/v5.2-no-sorbet/config/initializers/backtrace_silencers.rb +8 -0
  299. data/spec/support/v5.2-no-sorbet/config/initializers/cors.rb +17 -0
  300. data/spec/support/v5.2-no-sorbet/config/initializers/filter_parameter_logging.rb +5 -0
  301. data/spec/support/v5.2-no-sorbet/config/initializers/inflections.rb +17 -0
  302. data/spec/support/v5.2-no-sorbet/config/initializers/mime_types.rb +5 -0
  303. data/spec/support/v5.2-no-sorbet/config/initializers/wrap_parameters.rb +15 -0
  304. data/spec/support/v5.2-no-sorbet/config/locales/en.yml +33 -0
  305. data/spec/support/v5.2-no-sorbet/config/puma.rb +35 -0
  306. data/spec/support/v5.2-no-sorbet/config/routes.rb +1 -0
  307. data/spec/support/v5.2-no-sorbet/config/spring.rb +7 -0
  308. data/spec/support/v5.2-no-sorbet/config/storage.yml +34 -0
  309. data/spec/support/v5.2-no-sorbet/config.ru +5 -0
  310. data/spec/support/v5.2-no-sorbet/db/migrate +1 -0
  311. data/spec/support/v5.2-no-sorbet/db/schema.rb +48 -0
  312. data/spec/support/v5.2-no-sorbet/db/seeds.rb +8 -0
  313. data/spec/support/v5.2-no-sorbet/lib/tasks/.keep +0 -0
  314. data/spec/support/v5.2-no-sorbet/log/.keep +0 -0
  315. data/spec/support/v5.2-no-sorbet/public/robots.txt +1 -0
  316. data/spec/support/v5.2-no-sorbet/storage/.keep +0 -0
  317. data/spec/support/v5.2-no-sorbet/test/controllers/.keep +0 -0
  318. data/spec/support/v5.2-no-sorbet/test/fixtures/.keep +0 -0
  319. data/spec/support/v5.2-no-sorbet/test/fixtures/files/.keep +0 -0
  320. data/spec/support/v5.2-no-sorbet/test/integration/.keep +0 -0
  321. data/spec/support/v5.2-no-sorbet/test/mailers/.keep +0 -0
  322. data/spec/support/v5.2-no-sorbet/test/models/.keep +0 -0
  323. data/spec/support/v5.2-no-sorbet/test/test_helper.rb +11 -0
  324. data/spec/support/v5.2-no-sorbet/tmp/.keep +0 -0
  325. data/spec/support/v5.2-no-sorbet/vendor/.keep +0 -0
  326. data/spec/support/v6.0/Gemfile +12 -0
  327. data/spec/support/v6.0/Gemfile.lock +157 -0
  328. data/spec/support/v6.0/app/channels/application_cable/channel.rb +1 -0
  329. data/spec/support/v6.0/app/channels/application_cable/connection.rb +1 -0
  330. data/spec/support/v6.0/app/jobs/application_job.rb +1 -0
  331. data/spec/support/v6.0/app/mailers/application_mailer.rb +1 -0
  332. data/spec/support/v6.0/config/application.rb +1 -0
  333. data/spec/support/v6.0/config/boot.rb +1 -0
  334. data/spec/support/v6.0/config/environment.rb +1 -0
  335. data/spec/support/v6.0/config/environments/development.rb +1 -0
  336. data/spec/support/v6.0/config/environments/production.rb +1 -0
  337. data/spec/support/v6.0/config/environments/test.rb +1 -0
  338. data/spec/support/v6.0/config/initializers/application_controller_renderer.rb +1 -0
  339. data/spec/support/v6.0/config/initializers/backtrace_silencers.rb +1 -0
  340. data/spec/support/v6.0/config/initializers/cors.rb +1 -0
  341. data/spec/support/v6.0/config/initializers/filter_parameter_logging.rb +1 -0
  342. data/spec/support/v6.0/config/initializers/inflections.rb +1 -0
  343. data/spec/support/v6.0/config/initializers/mime_types.rb +1 -0
  344. data/spec/support/v6.0/config/initializers/wrap_parameters.rb +1 -0
  345. data/spec/support/v6.0/config/puma.rb +1 -0
  346. data/spec/support/v6.0/config/routes.rb +1 -0
  347. data/spec/support/v6.0/db/schema.rb +1 -0
  348. data/spec/support/v6.0/db/seeds.rb +1 -0
  349. data/spec/support/v6.0/sorbet/config +2 -0
  350. data/spec/support/v6.0/sorbet/rbi/gems/actioncable.rbi +245 -0
  351. data/spec/support/v6.0/sorbet/rbi/gems/actionmailbox.rbi +56 -0
  352. data/spec/support/v6.0/sorbet/rbi/gems/actionmailer.rbi +69 -0
  353. data/spec/support/v6.0/sorbet/rbi/gems/actionpack.rbi +2401 -0
  354. data/spec/support/v6.0/sorbet/rbi/gems/actiontext.rbi +32 -0
  355. data/spec/support/v6.0/sorbet/rbi/gems/actionview.rbi +1033 -0
  356. data/spec/support/v6.0/sorbet/rbi/gems/activejob.rbi +362 -0
  357. data/spec/support/v6.0/sorbet/rbi/gems/activemodel.rbi +750 -0
  358. data/spec/support/v6.0/sorbet/rbi/gems/activerecord.rbi +5552 -0
  359. data/spec/support/v6.0/sorbet/rbi/gems/activestorage.rbi +217 -0
  360. data/spec/support/v6.0/sorbet/rbi/gems/activesupport.rbi +2430 -0
  361. data/spec/support/v6.0/sorbet/rbi/gems/byebug.rbi +1039 -0
  362. data/spec/support/v6.0/sorbet/rbi/gems/concurrent-ruby.rbi +1587 -0
  363. data/spec/support/v6.0/sorbet/rbi/gems/crass.rbi +92 -0
  364. data/spec/support/v6.0/sorbet/rbi/gems/erubi.rbi +26 -0
  365. data/spec/support/v6.0/sorbet/rbi/gems/globalid.rbi +98 -0
  366. data/spec/support/v6.0/sorbet/rbi/gems/i18n.rbi +191 -0
  367. data/spec/support/v6.0/sorbet/rbi/gems/loofah.rbi +129 -0
  368. data/spec/support/v6.0/sorbet/rbi/gems/mail.rbi +1542 -0
  369. data/spec/support/v6.0/sorbet/rbi/gems/marcel.rbi +12 -0
  370. data/spec/support/v6.0/sorbet/rbi/gems/method_source.rbi +63 -0
  371. data/spec/support/v6.0/sorbet/rbi/gems/mini_mime.rbi +45 -0
  372. data/spec/support/v6.0/sorbet/rbi/gems/minitest.rbi +276 -0
  373. data/spec/support/v6.0/sorbet/rbi/gems/nokogiri.rbi +1010 -0
  374. data/spec/support/v6.0/sorbet/rbi/gems/puma.rbi +570 -0
  375. data/spec/support/v6.0/sorbet/rbi/gems/rack-test.rbi +161 -0
  376. data/spec/support/v6.0/sorbet/rbi/gems/rack.rbi +522 -0
  377. data/spec/support/v6.0/sorbet/rbi/gems/rails-dom-testing.rbi +67 -0
  378. data/spec/support/v6.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +90 -0
  379. data/spec/support/v6.0/sorbet/rbi/gems/railties.rbi +760 -0
  380. data/spec/support/v6.0/sorbet/rbi/gems/rake.rbi +254 -0
  381. data/spec/support/v6.0/sorbet/rbi/gems/sorbet-runtime.rbi +647 -0
  382. data/spec/support/v6.0/sorbet/rbi/gems/sqlite3.rbi +353 -0
  383. data/spec/support/v6.0/sorbet/rbi/gems/thor.rbi +450 -0
  384. data/spec/support/v6.0/sorbet/rbi/gems/thread_safe.rbi +81 -0
  385. data/spec/support/v6.0/sorbet/rbi/gems/tzinfo.rbi +407 -0
  386. data/spec/support/v6.0/sorbet/rbi/gems/zeitwerk.rbi +119 -0
  387. data/spec/support/v6.0/sorbet/rbi/hidden-definitions/errors.txt +12074 -0
  388. data/spec/support/v6.0/sorbet/rbi/hidden-definitions/hidden.rbi +28231 -0
  389. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +13 -0
  390. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +13 -0
  391. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +51 -0
  392. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +107 -0
  393. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8547 -0
  394. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +22 -0
  395. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  396. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  397. data/spec/support/v6.0/sorbet/rbi/todo.rbi +11 -0
  398. data/spec/support/v6.0/sorbet_test_cases.rb +1 -0
  399. data/spec/support/v6.0/test/channels/application_cable/connection_test.rb +1 -0
  400. data/spec/support/v6.0/test/test_helper.rb +1 -0
  401. data/spec/test_data/v4.2/expected_srb_tc_output.txt +178 -0
  402. data/spec/test_data/v5.0/expected_internal_metadata.rbi +155 -0
  403. data/spec/test_data/v5.0/expected_schema_migration.rbi +128 -0
  404. data/spec/test_data/v5.0/expected_srb_tc_output.txt +178 -0
  405. data/spec/test_data/v5.1/expected_internal_metadata.rbi +161 -0
  406. data/spec/test_data/v5.1/expected_schema_migration.rbi +134 -0
  407. data/spec/test_data/v5.1/expected_srb_tc_output.txt +160 -0
  408. data/spec/test_data/v5.2/expected_attachment.rbi +137 -0
  409. data/spec/test_data/v5.2/expected_blob.rbi +149 -0
  410. data/spec/test_data/v5.2/expected_internal_metadata.rbi +161 -0
  411. data/spec/test_data/v5.2/expected_schema_migration.rbi +134 -0
  412. data/spec/test_data/v5.2/expected_srb_tc_output.txt +160 -0
  413. data/spec/test_data/v5.2-no-sorbet/expected_attachment.rbi +137 -0
  414. data/spec/test_data/v5.2-no-sorbet/expected_blob.rbi +149 -0
  415. data/spec/test_data/v5.2-no-sorbet/expected_internal_metadata.rbi +161 -0
  416. data/spec/test_data/v5.2-no-sorbet/expected_no_routes.rbi +11 -0
  417. data/spec/test_data/v5.2-no-sorbet/expected_potion.rbi +128 -0
  418. data/spec/test_data/v5.2-no-sorbet/expected_routes.rbi +43 -0
  419. data/spec/test_data/v5.2-no-sorbet/expected_schema_migration.rbi +134 -0
  420. data/spec/test_data/v5.2-no-sorbet/expected_spell_book.rbi +161 -0
  421. data/spec/test_data/v5.2-no-sorbet/expected_srb_tc_output.txt +160 -0
  422. data/spec/test_data/v5.2-no-sorbet/expected_wand.rbi +311 -0
  423. data/spec/test_data/v5.2-no-sorbet/expected_wizard.rbi +254 -0
  424. data/spec/test_data/v5.2-no-sorbet/expected_wizard_wo_spellbook.rbi +254 -0
  425. data/spec/test_data/v6.0/expected_attachment.rbi +149 -0
  426. data/spec/test_data/v6.0/expected_blob.rbi +161 -0
  427. data/spec/test_data/v6.0/expected_internal_metadata.rbi +173 -0
  428. data/spec/test_data/v6.0/expected_schema_migration.rbi +146 -0
  429. data/spec/test_data/v6.0/expected_srb_tc_output.txt +160 -0
  430. data/spec/utils_spec.rb +24 -0
  431. metadata +573 -2
@@ -0,0 +1,750 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: true
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/activemodel/all/activemodel.rbi
9
+ #
10
+ # activemodel-6.0.0.rc1
11
+ module ActiveModel
12
+ def self.eager_load!; end
13
+ def self.gem_version; end
14
+ def self.version; end
15
+ extend ActiveSupport::Autoload
16
+ end
17
+ module ActiveModel::VERSION
18
+ end
19
+ module ActiveModel::Serializers
20
+ extend ActiveSupport::Autoload
21
+ end
22
+ class ActiveModel::Railtie < Rails::Railtie
23
+ end
24
+ class ActiveModel::Attribute
25
+ def ==(other); end
26
+ def _original_value_for_database; end
27
+ def assigned?; end
28
+ def came_from_user?; end
29
+ def changed?; end
30
+ def changed_from_assignment?; end
31
+ def changed_in_place?; end
32
+ def encode_with(coder); end
33
+ def eql?(other); end
34
+ def forgetting_assignment; end
35
+ def has_been_read?; end
36
+ def hash; end
37
+ def init_with(coder); end
38
+ def initialize(name, value_before_type_cast, type, original_attribute = nil); end
39
+ def initialize_dup(other); end
40
+ def initialized?; end
41
+ def name; end
42
+ def original_attribute; end
43
+ def original_value; end
44
+ def original_value_for_database; end
45
+ def self.from_database(name, value, type); end
46
+ def self.from_user(name, value, type, original_attribute = nil); end
47
+ def self.null(name); end
48
+ def self.uninitialized(name, type); end
49
+ def self.with_cast_value(name, value, type); end
50
+ def type; end
51
+ def type_cast(*arg0); end
52
+ def value; end
53
+ def value_before_type_cast; end
54
+ def value_for_database; end
55
+ def with_cast_value(value); end
56
+ def with_type(type); end
57
+ def with_value_from_database(value); end
58
+ def with_value_from_user(value); end
59
+ end
60
+ class ActiveModel::Attribute::FromDatabase < ActiveModel::Attribute
61
+ def _original_value_for_database; end
62
+ def type_cast(value); end
63
+ end
64
+ class ActiveModel::Attribute::FromUser < ActiveModel::Attribute
65
+ def came_from_user?; end
66
+ def type_cast(value); end
67
+ end
68
+ class ActiveModel::Attribute::WithCastValue < ActiveModel::Attribute
69
+ def changed_in_place?; end
70
+ def type_cast(value); end
71
+ end
72
+ class ActiveModel::Attribute::Null < ActiveModel::Attribute
73
+ def initialize(name); end
74
+ def type_cast(*arg0); end
75
+ def with_cast_value(value); end
76
+ def with_type(type); end
77
+ def with_value_from_database(value); end
78
+ def with_value_from_user(value); end
79
+ end
80
+ class ActiveModel::Attribute::Uninitialized < ActiveModel::Attribute
81
+ def forgetting_assignment; end
82
+ def initialize(name, type); end
83
+ def initialized?; end
84
+ def original_value; end
85
+ def value; end
86
+ def value_for_database; end
87
+ def with_type(type); end
88
+ end
89
+ class ActiveModel::AttributeSet
90
+ def ==(other); end
91
+ def [](name); end
92
+ def []=(name, value); end
93
+ def accessed; end
94
+ def attributes; end
95
+ def deep_dup; end
96
+ def each_value(*args, &block); end
97
+ def except(*args, &block); end
98
+ def fetch(*args, &block); end
99
+ def fetch_value(name, &block); end
100
+ def freeze; end
101
+ def initialize(attributes); end
102
+ def initialize_clone(_); end
103
+ def initialize_dup(_); end
104
+ def initialized_attributes; end
105
+ def key?(name); end
106
+ def keys; end
107
+ def map(&block); end
108
+ def reset(key); end
109
+ def to_h; end
110
+ def to_hash; end
111
+ def values_before_type_cast; end
112
+ def write_cast_value(name, value); end
113
+ def write_from_database(name, value); end
114
+ def write_from_user(name, value); end
115
+ end
116
+ class ActiveModel::AttributeSet::Builder
117
+ def build_from_database(values = nil, additional_types = nil); end
118
+ def default_attributes; end
119
+ def initialize(types, default_attributes = nil); end
120
+ def types; end
121
+ end
122
+ class ActiveModel::LazyAttributeHash
123
+ def ==(other); end
124
+ def [](key); end
125
+ def []=(key, value); end
126
+ def additional_types; end
127
+ def assign_default_value(name); end
128
+ def deep_dup; end
129
+ def default_attributes; end
130
+ def delegate_hash; end
131
+ def each_key(*args, &block); end
132
+ def each_value(*args, &block); end
133
+ def except(*args, &block); end
134
+ def fetch(*args, &block); end
135
+ def initialize(types, values, additional_types, default_attributes, delegate_hash = nil); end
136
+ def initialize_dup(_); end
137
+ def key?(key); end
138
+ def marshal_dump; end
139
+ def marshal_load(values); end
140
+ def materialize; end
141
+ def select; end
142
+ def transform_values(*args, &block); end
143
+ def types; end
144
+ def values; end
145
+ end
146
+ class ActiveModel::AttributeSet::YAMLEncoder
147
+ def decode(coder); end
148
+ def default_types; end
149
+ def encode(attribute_set, coder); end
150
+ def initialize(default_types); end
151
+ end
152
+ class ActiveModel::MissingAttributeError < NoMethodError
153
+ end
154
+ module ActiveModel::AttributeMethods
155
+ def _read_attribute(attr); end
156
+ def attribute_method?(attr_name); end
157
+ def attribute_missing(match, *args, &block); end
158
+ def matched_attribute_method(method_name); end
159
+ def method_missing(method, *args, &block); end
160
+ def missing_attribute(attr_name, stack); end
161
+ def respond_to?(method, include_private_methods = nil); end
162
+ def respond_to_without_attributes?(*arg0); end
163
+ extend ActiveSupport::Concern
164
+ end
165
+ module ActiveModel::AttributeMethods::ClassMethods
166
+ def alias_attribute(new_name, old_name); end
167
+ def attribute_alias(name); end
168
+ def attribute_alias?(new_name); end
169
+ def attribute_method_affix(*affixes); end
170
+ def attribute_method_matchers_cache; end
171
+ def attribute_method_matchers_matching(method_name); end
172
+ def attribute_method_prefix(*prefixes); end
173
+ def attribute_method_suffix(*suffixes); end
174
+ def define_attribute_method(attr_name); end
175
+ def define_attribute_methods(*attr_names); end
176
+ def define_proxy_call(include_private, mod, name, target, *extra); end
177
+ def generated_attribute_methods; end
178
+ def instance_method_already_implemented?(method_name); end
179
+ def undefine_attribute_methods; end
180
+ end
181
+ class ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher
182
+ def initialize(options = nil); end
183
+ def match(method_name); end
184
+ def method_name(attr_name); end
185
+ def plain?; end
186
+ def prefix; end
187
+ def suffix; end
188
+ def target; end
189
+ end
190
+ class ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher::AttributeMethodMatch < Struct
191
+ def attr_name; end
192
+ def attr_name=(_); end
193
+ def self.[](*arg0); end
194
+ def self.inspect; end
195
+ def self.members; end
196
+ def self.new(*arg0); end
197
+ def target; end
198
+ def target=(_); end
199
+ end
200
+ module ActiveModel::AttributeMethods::AttrNames
201
+ def self.define_attribute_accessor_method(mod, attr_name, writer: nil); end
202
+ end
203
+ class ActiveModel::Errors
204
+ def [](attribute); end
205
+ def add(attribute, message = nil, options = nil); end
206
+ def added?(attribute, message = nil, options = nil); end
207
+ def apply_default_array(hash); end
208
+ def as_json(options = nil); end
209
+ def blank?; end
210
+ def clear; end
211
+ def copy!(other); end
212
+ def count; end
213
+ def delete(key); end
214
+ def details; end
215
+ def each; end
216
+ def empty?; end
217
+ def full_message(attribute, message); end
218
+ def full_messages; end
219
+ def full_messages_for(attribute); end
220
+ def generate_message(attribute, type = nil, options = nil); end
221
+ def has_key?(attribute); end
222
+ def include?(attribute); end
223
+ def init_with(coder); end
224
+ def initialize(base); end
225
+ def initialize_dup(other); end
226
+ def key?(attribute); end
227
+ def keys; end
228
+ def marshal_dump; end
229
+ def marshal_load(array); end
230
+ def merge!(other); end
231
+ def messages; end
232
+ def normalize_detail(message, options); end
233
+ def normalize_message(attribute, message, options); end
234
+ def of_kind?(attribute, message = nil); end
235
+ def self.i18n_customize_full_message; end
236
+ def self.i18n_customize_full_message=(arg0); end
237
+ def size; end
238
+ def slice!(*keys); end
239
+ def to_a; end
240
+ def to_hash(full_messages = nil); end
241
+ def to_xml(options = nil); end
242
+ def values; end
243
+ def without_default_proc(hash); end
244
+ include Enumerable
245
+ end
246
+ class ActiveModel::StrictValidationFailed < StandardError
247
+ end
248
+ class ActiveModel::RangeError < RangeError
249
+ end
250
+ class ActiveModel::UnknownAttributeError < NoMethodError
251
+ def attribute; end
252
+ def initialize(record, attribute); end
253
+ def record; end
254
+ end
255
+ module ActiveModel::SecurePassword
256
+ def self.min_cost; end
257
+ def self.min_cost=(arg0); end
258
+ extend ActiveSupport::Concern
259
+ end
260
+ module ActiveModel::SecurePassword::ClassMethods
261
+ def has_secure_password(attribute = nil, validations: nil); end
262
+ end
263
+ class ActiveModel::SecurePassword::InstanceMethodsOnActivation < Module
264
+ def initialize(attribute); end
265
+ end
266
+ module ActiveModel::Callbacks
267
+ def _define_after_model_callback(klass, callback); end
268
+ def _define_around_model_callback(klass, callback); end
269
+ def _define_before_model_callback(klass, callback); end
270
+ def define_model_callbacks(*callbacks); end
271
+ def self.extended(base); end
272
+ end
273
+ class ActiveModel::Attribute::UserProvidedDefault < ActiveModel::Attribute::FromUser
274
+ def initialize(name, value, type, database_default); end
275
+ def marshal_dump; end
276
+ def marshal_load(values); end
277
+ def user_provided_value; end
278
+ def value_before_type_cast; end
279
+ def with_type(type); end
280
+ end
281
+ class ActiveModel::Name
282
+ def !~(*args, &block); end
283
+ def <=>(*args, &block); end
284
+ def ==(arg); end
285
+ def ===(arg); end
286
+ def =~(*args, &block); end
287
+ def _singularize(string); end
288
+ def as_json(*args, &block); end
289
+ def cache_key; end
290
+ def collection; end
291
+ def element; end
292
+ def eql?(*args, &block); end
293
+ def human(options = nil); end
294
+ def i18n_key; end
295
+ def initialize(klass, namespace = nil, name = nil); end
296
+ def match?(*args, &block); end
297
+ def name; end
298
+ def param_key; end
299
+ def plural; end
300
+ def route_key; end
301
+ def singular; end
302
+ def singular_route_key; end
303
+ def to_s(*args, &block); end
304
+ def to_str(*args, &block); end
305
+ include Comparable
306
+ end
307
+ module ActiveModel::Naming
308
+ def model_name; end
309
+ def self.extended(base); end
310
+ def self.model_name_from_record_or_class(record_or_class); end
311
+ def self.param_key(record_or_class); end
312
+ def self.plural(record_or_class); end
313
+ def self.route_key(record_or_class); end
314
+ def self.singular(record_or_class); end
315
+ def self.singular_route_key(record_or_class); end
316
+ def self.uncountable?(record_or_class); end
317
+ end
318
+ module ActiveModel::Translation
319
+ def human_attribute_name(attribute, options = nil); end
320
+ def i18n_scope; end
321
+ def lookup_ancestors; end
322
+ include ActiveModel::Naming
323
+ end
324
+ module ActiveModel::Type
325
+ def self.default_value; end
326
+ def self.lookup(*args, **kwargs); end
327
+ def self.register(type_name, klass = nil, **options, &block); end
328
+ def self.registry; end
329
+ def self.registry=(arg0); end
330
+ end
331
+ module ActiveModel::Type::Helpers
332
+ end
333
+ class ActiveModel::Type::Helpers::AcceptsMultiparameterTime < Module
334
+ def initialize(defaults: nil); end
335
+ end
336
+ module ActiveModel::Type::Helpers::Numeric
337
+ def cast(value); end
338
+ def changed?(old_value, _new_value, new_value_before_type_cast); end
339
+ def non_numeric_string?(value); end
340
+ def number_to_non_number?(old_value, new_value_before_type_cast); end
341
+ def serialize(value); end
342
+ end
343
+ module ActiveModel::Type::Helpers::Mutable
344
+ def cast(value); end
345
+ def changed_in_place?(raw_old_value, new_value); end
346
+ end
347
+ module ActiveModel::Type::Helpers::TimeValue
348
+ def apply_seconds_precision(value); end
349
+ def fast_string_to_time(string); end
350
+ def new_time(year, mon, mday, hour, min, sec, microsec, offset = nil); end
351
+ def serialize(value); end
352
+ def type_cast_for_schema(value); end
353
+ def user_input_in_time_zone(value); end
354
+ end
355
+ module ActiveModel::Type::Helpers::Timezone
356
+ def default_timezone; end
357
+ def is_utc?; end
358
+ end
359
+ class ActiveModel::Type::Value
360
+ def ==(other); end
361
+ def assert_valid_value(*arg0); end
362
+ def binary?; end
363
+ def cast(value); end
364
+ def cast_value(value); end
365
+ def changed?(old_value, new_value, _new_value_before_type_cast); end
366
+ def changed_in_place?(raw_old_value, new_value); end
367
+ def deserialize(value); end
368
+ def eql?(other); end
369
+ def force_equality?(_value); end
370
+ def hash; end
371
+ def initialize(precision: nil, limit: nil, scale: nil); end
372
+ def limit; end
373
+ def map(value); end
374
+ def precision; end
375
+ def scale; end
376
+ def serialize(value); end
377
+ def type; end
378
+ def type_cast_for_schema(value); end
379
+ def value_constructed_by_mass_assignment?(_value); end
380
+ end
381
+ class ActiveModel::Type::Integer < ActiveModel::Type::Value
382
+ def _limit; end
383
+ def cast_value(value); end
384
+ def ensure_in_range(value); end
385
+ def initialize(*arg0); end
386
+ def max_value; end
387
+ def min_value; end
388
+ def range; end
389
+ def serialize(value); end
390
+ def type; end
391
+ include ActiveModel::Type::Helpers::Numeric
392
+ end
393
+ class ActiveModel::Type::BigInteger < ActiveModel::Type::Integer
394
+ def max_value; end
395
+ end
396
+ class ActiveModel::Type::Binary < ActiveModel::Type::Value
397
+ def binary?; end
398
+ def cast(value); end
399
+ def changed_in_place?(raw_old_value, value); end
400
+ def serialize(value); end
401
+ def type; end
402
+ end
403
+ class ActiveModel::Type::Binary::Data
404
+ def ==(other); end
405
+ def hex; end
406
+ def initialize(value); end
407
+ def to_s; end
408
+ def to_str; end
409
+ end
410
+ class ActiveModel::Type::Boolean < ActiveModel::Type::Value
411
+ def cast_value(value); end
412
+ def serialize(value); end
413
+ def type; end
414
+ end
415
+ class ActiveModel::Type::Date < ActiveModel::Type::Value
416
+ def cast_value(value); end
417
+ def fallback_string_to_date(string); end
418
+ def fast_string_to_date(string); end
419
+ def new_date(year, mon, mday); end
420
+ def type; end
421
+ def type_cast_for_schema(value); end
422
+ def value_from_multiparameter_assignment(*arg0); end
423
+ include ActiveModel::Type::Helpers::Timezone
424
+ include Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_3
425
+ end
426
+ module Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_3
427
+ def assert_valid_value(value); end
428
+ def cast(value); end
429
+ def serialize(value); end
430
+ def value_constructed_by_mass_assignment?(value); end
431
+ def value_from_multiparameter_assignment(values_hash); end
432
+ end
433
+ class ActiveModel::Type::DateTime < ActiveModel::Type::Value
434
+ def cast_value(value); end
435
+ def fallback_string_to_time(string); end
436
+ def microseconds(time); end
437
+ def type; end
438
+ def value_from_multiparameter_assignment(values_hash); end
439
+ include ActiveModel::Type::Helpers::TimeValue
440
+ include ActiveModel::Type::Helpers::Timezone
441
+ include Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_4
442
+ end
443
+ module Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_4
444
+ def assert_valid_value(value); end
445
+ def cast(value); end
446
+ def serialize(value); end
447
+ def value_constructed_by_mass_assignment?(value); end
448
+ def value_from_multiparameter_assignment(values_hash); end
449
+ end
450
+ class ActiveModel::Type::Decimal < ActiveModel::Type::Value
451
+ def apply_scale(value); end
452
+ def cast_value(value); end
453
+ def convert_float_to_big_decimal(value); end
454
+ def float_precision; end
455
+ def type; end
456
+ def type_cast_for_schema(value); end
457
+ include ActiveModel::Type::Helpers::Numeric
458
+ end
459
+ class ActiveModel::Type::Float < ActiveModel::Type::Value
460
+ def cast_value(value); end
461
+ def type; end
462
+ def type_cast_for_schema(value); end
463
+ include ActiveModel::Type::Helpers::Numeric
464
+ end
465
+ class ActiveModel::Type::ImmutableString < ActiveModel::Type::Value
466
+ def cast_value(value); end
467
+ def serialize(value); end
468
+ def type; end
469
+ end
470
+ class ActiveModel::Type::String < ActiveModel::Type::ImmutableString
471
+ def cast_value(value); end
472
+ def changed_in_place?(raw_old_value, new_value); end
473
+ end
474
+ class ActiveModel::Type::Time < ActiveModel::Type::Value
475
+ def cast_value(value); end
476
+ def type; end
477
+ def user_input_in_time_zone(value); end
478
+ include ActiveModel::Type::Helpers::TimeValue
479
+ include ActiveModel::Type::Helpers::Timezone
480
+ include Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_5
481
+ end
482
+ module Anonymous_ActiveModel_Type_Helpers_AcceptsMultiparameterTime_5
483
+ def assert_valid_value(value); end
484
+ def cast(value); end
485
+ def serialize(value); end
486
+ def value_constructed_by_mass_assignment?(value); end
487
+ def value_from_multiparameter_assignment(values_hash); end
488
+ end
489
+ class ActiveModel::Type::Registry
490
+ def find_registration(symbol, *args); end
491
+ def initialize; end
492
+ def lookup(symbol, *args); end
493
+ def register(type_name, klass = nil, **options, &block); end
494
+ def registration_klass; end
495
+ def registrations; end
496
+ end
497
+ class ActiveModel::Type::Registration
498
+ def block; end
499
+ def call(_registry, *args, **kwargs); end
500
+ def initialize(name, block, **arg2); end
501
+ def matches?(type_name, *args, **kwargs); end
502
+ def name; end
503
+ end
504
+ class ActiveModel::ForbiddenAttributesError < StandardError
505
+ end
506
+ module ActiveModel::ForbiddenAttributesProtection
507
+ def sanitize_for_mass_assignment(attributes); end
508
+ def sanitize_forbidden_attributes(attributes); end
509
+ end
510
+ module ActiveModel::AttributeAssignment
511
+ def _assign_attribute(k, v); end
512
+ def _assign_attributes(attributes); end
513
+ def assign_attributes(new_attributes); end
514
+ def attributes=(new_attributes); end
515
+ include ActiveModel::ForbiddenAttributesProtection
516
+ end
517
+ module ActiveModel::Conversion
518
+ def to_key; end
519
+ def to_model; end
520
+ def to_param; end
521
+ def to_partial_path; end
522
+ extend ActiveSupport::Concern
523
+ end
524
+ module ActiveModel::Conversion::ClassMethods
525
+ def _to_partial_path; end
526
+ end
527
+ module ActiveModel::Validations
528
+ def errors; end
529
+ def initialize_dup(other); end
530
+ def invalid?(context = nil); end
531
+ def raise_validation_error; end
532
+ def read_attribute_for_validation(*arg0); end
533
+ def run_validations!; end
534
+ def valid?(context = nil); end
535
+ def validate!(context = nil); end
536
+ def validate(context = nil); end
537
+ def validates_with(*args, &block); end
538
+ extend ActiveSupport::Concern
539
+ end
540
+ module ActiveModel::Validations::HelperMethods
541
+ def _merge_attributes(attr_names); end
542
+ def validates_absence_of(*attr_names); end
543
+ def validates_acceptance_of(*attr_names); end
544
+ def validates_confirmation_of(*attr_names); end
545
+ def validates_exclusion_of(*attr_names); end
546
+ def validates_format_of(*attr_names); end
547
+ def validates_inclusion_of(*attr_names); end
548
+ def validates_length_of(*attr_names); end
549
+ def validates_numericality_of(*attr_names); end
550
+ def validates_presence_of(*attr_names); end
551
+ def validates_size_of(*attr_names); end
552
+ end
553
+ module ActiveModel::Validations::Callbacks
554
+ def run_validations!; end
555
+ extend ActiveSupport::Concern
556
+ end
557
+ module ActiveModel::Validations::Callbacks::ClassMethods
558
+ def after_validation(*args, &block); end
559
+ def before_validation(*args, &block); end
560
+ end
561
+ module ActiveModel::Validations::Clusivity
562
+ def check_validity!; end
563
+ def delimiter; end
564
+ def include?(record, value); end
565
+ def inclusion_method(enumerable); end
566
+ end
567
+ class ActiveModel::Validator
568
+ def initialize(options = nil); end
569
+ def kind; end
570
+ def options; end
571
+ def self.kind; end
572
+ def validate(record); end
573
+ end
574
+ class ActiveModel::EachValidator < ActiveModel::Validator
575
+ def attributes; end
576
+ def check_validity!; end
577
+ def initialize(options); end
578
+ def validate(record); end
579
+ def validate_each(record, attribute, value); end
580
+ end
581
+ class ActiveModel::BlockValidator < ActiveModel::EachValidator
582
+ def initialize(options, &block); end
583
+ def validate_each(record, attribute, value); end
584
+ end
585
+ class ActiveModel::Validations::ExclusionValidator < ActiveModel::EachValidator
586
+ def validate_each(record, attribute, value); end
587
+ include ActiveModel::Validations::Clusivity
588
+ end
589
+ class ActiveModel::Validations::AcceptanceValidator < ActiveModel::EachValidator
590
+ def acceptable_option?(value); end
591
+ def initialize(options); end
592
+ def setup!(klass); end
593
+ def validate_each(record, attribute, value); end
594
+ end
595
+ class ActiveModel::Validations::AcceptanceValidator::LazilyDefineAttributes < Module
596
+ def initialize(attribute_definition); end
597
+ end
598
+ class ActiveModel::Validations::AcceptanceValidator::AttributeDefinition
599
+ def attributes; end
600
+ def convert_to_reader_name(method_name); end
601
+ def define_on(klass); end
602
+ def initialize(attributes); end
603
+ def matches?(method_name); end
604
+ end
605
+ class ActiveModel::Validations::WithValidator < ActiveModel::EachValidator
606
+ def validate_each(record, attr, val); end
607
+ end
608
+ module ActiveModel::Validations::ClassMethods
609
+ def _parse_validates_options(options); end
610
+ def _validates_default_keys; end
611
+ def attribute_method?(attribute); end
612
+ def clear_validators!; end
613
+ def inherited(base); end
614
+ def validate(*args, &block); end
615
+ def validates!(*attributes); end
616
+ def validates(*attributes); end
617
+ def validates_each(*attr_names, &block); end
618
+ def validates_with(*args, &block); end
619
+ def validators; end
620
+ def validators_on(*attributes); end
621
+ end
622
+ class ActiveModel::Validations::LengthValidator < ActiveModel::EachValidator
623
+ def check_validity!; end
624
+ def initialize(options); end
625
+ def skip_nil_check?(key); end
626
+ def validate_each(record, attribute, value); end
627
+ end
628
+ class ActiveModel::Validations::ConfirmationValidator < ActiveModel::EachValidator
629
+ def confirmation_value_equal?(record, attribute, value, confirmed); end
630
+ def initialize(options); end
631
+ def setup!(klass); end
632
+ def validate_each(record, attribute, value); end
633
+ end
634
+ class ActiveModel::Validations::AbsenceValidator < ActiveModel::EachValidator
635
+ def validate_each(record, attr_name, value); end
636
+ end
637
+ class ActiveModel::Validations::InclusionValidator < ActiveModel::EachValidator
638
+ def validate_each(record, attribute, value); end
639
+ include ActiveModel::Validations::Clusivity
640
+ end
641
+ class ActiveModel::Validations::FormatValidator < ActiveModel::EachValidator
642
+ def check_options_validity(name); end
643
+ def check_validity!; end
644
+ def option_call(record, name); end
645
+ def record_error(record, attribute, name, value); end
646
+ def regexp_using_multiline_anchors?(regexp); end
647
+ def validate_each(record, attribute, value); end
648
+ end
649
+ class ActiveModel::Validations::PresenceValidator < ActiveModel::EachValidator
650
+ def validate_each(record, attr_name, value); end
651
+ end
652
+ class ActiveModel::Validations::NumericalityValidator < ActiveModel::EachValidator
653
+ def allow_only_integer?(record); end
654
+ def check_validity!; end
655
+ def filtered_options(value); end
656
+ def is_hexadecimal_literal?(raw_value); end
657
+ def is_integer?(raw_value); end
658
+ def is_number?(raw_value); end
659
+ def parse_as_number(raw_value); end
660
+ def record_attribute_changed_in_place?(record, attr_name); end
661
+ def validate_each(record, attr_name, value); end
662
+ end
663
+ class ActiveModel::ValidationError < StandardError
664
+ def initialize(model); end
665
+ def model; end
666
+ end
667
+ class ActiveModel::AttributeMutationTracker
668
+ def any_changes?; end
669
+ def attr_names; end
670
+ def attribute_changed?(attr_name); end
671
+ def attributes; end
672
+ def change_to_attribute(attr_name); end
673
+ def changed?(attr_name, from: nil, to: nil); end
674
+ def changed_attribute_names; end
675
+ def changed_in_place?(attr_name); end
676
+ def changed_values; end
677
+ def changes; end
678
+ def fetch_value(attr_name); end
679
+ def force_change(attr_name); end
680
+ def forced_changes; end
681
+ def forget_change(attr_name); end
682
+ def initialize(attributes, forced_changes = nil); end
683
+ def original_value(attr_name); end
684
+ end
685
+ class ActiveModel::ForcedMutationTracker < ActiveModel::AttributeMutationTracker
686
+ def attr_names; end
687
+ def attribute_changed?(attr_name); end
688
+ def change_to_attribute(attr_name); end
689
+ def changed_in_place?(attr_name); end
690
+ def clone_value(attr_name); end
691
+ def fetch_value(attr_name); end
692
+ def finalize_changes; end
693
+ def finalized_changes; end
694
+ def force_change(attr_name); end
695
+ def forget_change(attr_name); end
696
+ def initialize(attributes, forced_changes = nil); end
697
+ def original_value(attr_name); end
698
+ end
699
+ class ActiveModel::NullMutationTracker
700
+ def any_changes?; end
701
+ def change_to_attribute(attr_name); end
702
+ def changed?(attr_name, **arg1); end
703
+ def changed_attribute_names; end
704
+ def changed_in_place?(attr_name); end
705
+ def changed_values; end
706
+ def changes; end
707
+ def original_value(attr_name); end
708
+ def self.allocate; end
709
+ def self.instance; end
710
+ def self.new(*arg0); end
711
+ extend Singleton::SingletonClassMethods
712
+ include Singleton
713
+ end
714
+ module ActiveModel::Dirty
715
+ def attribute_change(attr_name); end
716
+ def attribute_changed?(attr_name, **options); end
717
+ def attribute_changed_in_place?(attr_name); end
718
+ def attribute_previous_change(attr_name); end
719
+ def attribute_previously_changed?(attr_name); end
720
+ def attribute_was(attr_name); end
721
+ def attribute_will_change!(attr_name); end
722
+ def changed; end
723
+ def changed?; end
724
+ def changed_attributes; end
725
+ def changes; end
726
+ def changes_applied; end
727
+ def clear_attribute_change(attr_name); end
728
+ def clear_attribute_changes(attr_names); end
729
+ def clear_changes_information; end
730
+ def forget_attribute_assignments; end
731
+ def initialize_dup(other); end
732
+ def mutations_before_last_save; end
733
+ def mutations_from_database; end
734
+ def previous_changes; end
735
+ def restore_attribute!(attr_name); end
736
+ def restore_attributes(attr_names = nil); end
737
+ extend ActiveSupport::Concern
738
+ include ActiveModel::AttributeMethods
739
+ end
740
+ module ActiveModel::Serialization
741
+ def read_attribute_for_serialization(*arg0); end
742
+ def serializable_add_includes(options = nil); end
743
+ def serializable_hash(options = nil); end
744
+ end
745
+ module ActiveModel::Serializers::JSON
746
+ def as_json(options = nil); end
747
+ def from_json(json, include_root = nil); end
748
+ extend ActiveSupport::Concern
749
+ include ActiveModel::Serialization
750
+ end