mirror of
https://github.com/github/rails.git
synced 2026-04-04 03:00:58 -04:00
Allow files in plugins to be reloaded like the rest of the application. [rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
@@ -1,5 +1,20 @@
|
||||
*SVN*
|
||||
|
||||
* Allow files in plugins to be reloaded like the rest of the application. [rick]
|
||||
|
||||
Enables or disables plugin reloading.
|
||||
|
||||
config.reload_plugins = true
|
||||
|
||||
You can get around this setting per plugin.
|
||||
If #reload_plugins? == false (DEFAULT), add this to your plugin's init.rb to make it reloadable:
|
||||
|
||||
Dependencies.load_once_paths.delete lib_path
|
||||
|
||||
If #reload_plugins? == true, add this to your plugin's init.rb to only load it once:
|
||||
|
||||
Dependencies.load_once_paths << lib_path
|
||||
|
||||
* Small tweak to allow plugins to specify gem dependencies. [rick]
|
||||
|
||||
# OLD open_id_authentication plugin init.rb
|
||||
|
||||
@@ -516,6 +516,22 @@ module Rails
|
||||
# a sub class would have access to fine grained modification of the loading behavior. See
|
||||
# the implementation of Rails::Plugin::Loader for more details.
|
||||
attr_accessor :plugin_loader
|
||||
|
||||
# Enables or disables plugin reloading. You can get around this setting per plugin.
|
||||
# If #reload_plugins? == false, add this to your plugin's init.rb to make it reloadable:
|
||||
#
|
||||
# Dependencies.load_once_paths.delete lib_path
|
||||
#
|
||||
# If #reload_plugins? == true, add this to your plugin's init.rb to only load it once:
|
||||
#
|
||||
# Dependencies.load_once_paths << lib_path
|
||||
#
|
||||
attr_accessor :reload_plugins
|
||||
|
||||
# Returns true if plugin reloading is enabled.
|
||||
def reload_plugins?
|
||||
!!@reload_plugins
|
||||
end
|
||||
|
||||
# An array of gems that this rails application depends on. Rails will automatically load
|
||||
# these gems during installation, and allow you to install any missing gems with:
|
||||
|
||||
@@ -46,7 +46,9 @@ module Rails
|
||||
plugin.load_paths.each do |path|
|
||||
$LOAD_PATH.insert(application_lib_index + 1, path)
|
||||
Dependencies.load_paths << path
|
||||
Dependencies.load_once_paths << path
|
||||
unless Rails.configuration.reload_plugins?
|
||||
Dependencies.load_once_paths << path
|
||||
end
|
||||
end
|
||||
end
|
||||
$LOAD_PATH.uniq!
|
||||
|
||||
Reference in New Issue
Block a user