lib/tapioca/loader.rb in tapioca-0.4.0 vs lib/tapioca/loader.rb in tapioca-0.4.1

- old
+ new

@@ -22,10 +22,28 @@ require_helper(require_file) load_rails_engines end + sig { params(environment_load: T::Boolean, eager_load: T::Boolean).void } + def load_rails(environment_load: false, eager_load: false) + return unless File.exist?("config/application.rb") + + safe_require("rails") + + silence_deprecations + + safe_require("rails/generators/test_case") + if environment_load + safe_require("./config/environment") + else + safe_require("./config/application") + end + + eager_load_rails_app if eager_load + end + private sig { returns(Tapioca::Gemfile) } attr_reader :gemfile @@ -78,18 +96,11 @@ rescue NameError nil end sig { void } - def load_rails - return unless File.exist?("config/application.rb") - - safe_require("rails") - - silence_deprecations - - safe_require("rails/generators/test_case") - safe_require("./config/application") + def eager_load_rails_app + Object.const_get("Rails").autoloaders.each(&:eager_load) end sig { void } def load_rails_engines rails_engines.each do |engine|