73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
# File 'lib/spring/application.rb', line 73
def preload
log "preloading app"
begin
require "spring/commands"
ensure
start_watcher
end
require Spring.application_root_path.join("config", "application")
Rails::Application.initializer :initialize_dependency_mechanism, group: :all do
ActiveSupport::Dependencies.mechanism = :load
end
require Spring.application_root_path.join("config", "environment")
@original_cache_classes = Rails.application.config.cache_classes
Rails.application.config.cache_classes = false
disconnect_database
@preloaded = :success
rescue Exception => e
@preloaded = :failure
watcher.add e.backtrace.map { |line| line.match(/^(.*)\:\d+\:in /)[1] }
raise e unless initialized?
ensure
watcher.add loaded_application_features
watcher.add Spring.gemfile, "#{Spring.gemfile}.lock"
if defined?(Rails) && Rails.application
watcher.add Rails.application.paths["config/initializers"]
watcher.add Rails.application.paths["config/database"]
if secrets_path = Rails.application.paths["config/secrets"]
watcher.add secrets_path
end
end
end
|