File: //usr/share/rubygems-integration/all/gems/spring-2.1.1/lib/spring/application/boot.rb
# This is necessary for the terminal to work correctly when we reopen stdin.
Process.setsid
require "spring/application"
app = Spring::Application.new(
UNIXSocket.for_fd(3),
Spring::JSON.load(ENV.delete("SPRING_ORIGINAL_ENV").dup),
Spring::Env.new(log_file: IO.for_fd(4))
)
Signal.trap("TERM") { app.terminate }
Spring::ProcessTitleUpdater.run { |distance|
"spring app | #{app.app_name} | started #{distance} ago | #{app.app_env} mode"
}
app.eager_preload if ENV.delete("SPRING_PRELOAD") == "1"
app.run