Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 77 lines (64 sloc) 2.282 kB
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
1 module Rails
2 class Application
3 module Finisher
4 include Initializable
5
6690d66 @josevalim Rename config.cookie_secret to config.secret_token and pass it as con…
josevalim authored
6 initializer :add_generator_templates do
d649bf1 @josevalim Provide a cleaner syntax for paths configuration that does not rely o…
josevalim authored
7 config.generators.templates.unshift(*paths["lib/templates"].existent)
6690d66 @josevalim Rename config.cookie_secret to config.secret_token and pass it as con…
josevalim authored
8 end
9
6f83a50 @fxn renames load_(once_)paths to autoload_(once_)paths in dependencies an…
fxn authored
10 initializer :ensure_autoload_once_paths_as_subset do
11 extra = ActiveSupport::Dependencies.autoload_once_paths -
12 ActiveSupport::Dependencies.autoload_paths
924fa08 @josevalim First steps into making Plugin < Engine.
josevalim authored
13
14 unless extra.empty?
15 abort <<-end_error
6f83a50 @fxn renames load_(once_)paths to autoload_(once_)paths in dependencies an…
fxn authored
16 autoload_once_paths must be a subset of the autoload_paths.
17 Extra items in autoload_once_paths: #{extra * ','}
924fa08 @josevalim First steps into making Plugin < Engine.
josevalim authored
18 end_error
19 end
20 end
21
d3d4874 @josevalim Add config.to_prepare back and add tests for it.
josevalim authored
22 initializer :add_to_prepare_blocks do
23 config.to_prepare_blocks.each do |block|
435bccd Replace AD::Callbacks.to_prepare with AD::Reloader.to_prepare
John Firebaugh authored
24 ActionDispatch::Reloader.to_prepare(&block)
d3d4874 @josevalim Add config.to_prepare back and add tests for it.
josevalim authored
25 end
26 end
27
226d8e7 @josevalim Refactor MetalLoader and RoutesReloader to rely less on class configu…
josevalim authored
28 initializer :add_builtin_route do |app|
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
29 if Rails.env.development?
117daba @carllerche Update Rails' built in routes to use RouteSet#append
carllerche authored
30 app.routes.append do
31 match '/rails/info/properties' => "rails/info#properties"
32 end
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
33 end
34 end
35
e49f94d @josevalim Revert behavior from a5684dfa3c16472bfa5d5d861ba78cb6dbadcb59 and ens…
josevalim authored
36 initializer :build_middleware_stack do
f816666 @josevalim Alias app to build_middleware_stack for clarity.
josevalim authored
37 build_middleware_stack
e49f94d @josevalim Revert behavior from a5684dfa3c16472bfa5d5d861ba78cb6dbadcb59 and ens…
josevalim authored
38 end
39
435bccd Replace AD::Callbacks.to_prepare with AD::Reloader.to_prepare
John Firebaugh authored
40 initializer :run_prepare_callbacks do
41 ActionDispatch::Reloader.prepare!
42 end
43
820c0fe @drogus Explicitly define main_app proxy
drogus authored
44 initializer :define_main_app_helper do |app|
45 app.routes.define_mounted_helper(:main_app)
46 end
47
351816f @josevalim Ensure that eager_load actually takes place just after the middleware…
josevalim authored
48 initializer :eager_load! do
49 if config.cache_classes && !$rails_rake_task
3afdfc3 @josevalim Expose remaining hooks to minimize the need for a Railtie based on fe…
josevalim authored
50 ActiveSupport.run_load_hooks(:before_eager_load, self)
5a0d73f @josevalim Add lib to load paths when application is inherited to be able to loa…
josevalim authored
51 eager_load!
351816f @josevalim Ensure that eager_load actually takes place just after the middleware…
josevalim authored
52 end
53 end
54
55 initializer :finisher_hook do
56 ActiveSupport.run_load_hooks(:after_initialize, self)
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
57 end
58
48bf667 @josevalim Ensure routes are loaded only after the initialization process finish…
josevalim authored
59 # Force routes to be loaded just at the end and add it to to_prepare callbacks
8f75c3a @josevalim Move app initializers to sprockets railtie.
josevalim authored
60 # This needs to be after the finisher hook to ensure routes added in the hook
61 # are still loaded.
48bf667 @josevalim Ensure routes are loaded only after the initialization process finish…
josevalim authored
62 initializer :set_routes_reloader do |app|
63 reloader = lambda { app.routes_reloader.execute_if_updated }
64 reloader.call
435bccd Replace AD::Callbacks.to_prepare with AD::Reloader.to_prepare
John Firebaugh authored
65 ActionDispatch::Reloader.to_prepare(&reloader)
48bf667 @josevalim Ensure routes are loaded only after the initialization process finish…
josevalim authored
66 end
67
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
68 # Disable dependency loading during request cycle
5d07869 @josevalim Ensure all initializers are collections.
josevalim authored
69 initializer :disable_dependency_loading do
70 if config.cache_classes && !config.dependency_loading
4f03603 @josevalim Break application.rb file in smaller chunks.
josevalim authored
71 ActiveSupport::Dependencies.unhook!
72 end
73 end
74 end
75 end
f38e89c @josh Move railties/builtin into lib
josh authored
76 end
Something went wrong with that request. Please try again.