Permalink
Browse files

Add option to enable dependency loading in production

This will make easier to applications that rely on having const_missing
hooks in production upgrade to Rails 5.

This option is going to be remove in the future and the default behavior
will be to disable the dependency loading.
  • Loading branch information...
rafaelfranca committed Jun 22, 2016
1 parent 7b0b3d8 commit 80b416f5e692ae79f4062f59fed6c7d7648a8af0
Showing with 3 additions and 1 deletion.
  1. +2 −0 guides/source/configuring.md
  2. +1 −1 railties/lib/rails/application/finisher.rb
@@ -94,6 +94,8 @@ application. Accepts a valid week day symbol (e.g. `:monday`).
* `config.eager_load_paths` accepts an array of paths from which Rails will eager load on boot if cache classes is enabled. Defaults to every folder in the `app` directory of the application.
* `config.enable_dependency_loading` when true, enable the autoload loading behavior even if the application is eager loaded and have `cache_classes` as true. Default to false.
* `config.encoding` sets up the application-wide encoding. Defaults to UTF-8.
* `config.exceptions_app` sets the exceptions application invoked by the ShowException middleware when an exception happens. Defaults to `ActionDispatch::PublicExceptions.new(Rails.public_path)`.
@@ -176,7 +176,7 @@ def self.complete(_state)
# Disable dependency loading during request cycle
initializer :disable_dependency_loading do
if config.eager_load && config.cache_classes
if config.eager_load && config.cache_classes && !config.enable_dependency_loading
ActiveSupport::Dependencies.unhook!
end
end

0 comments on commit 80b416f

Please sign in to comment.