Sinatra starts itself up in an at_exit() handler. Ruby runs multiple at_exit() handlers in reverse order of registration. Sucker Punch does clean up and shutdown in an at_exit() handler. Hence, if SuckerPunch is required after Sinatra, Sucker Punch will shut itself down just prior to Sinatra starting up.
This is a bit surprising, so mention it in the docs.
Sinatra starts itself up in an
at_exit()
handler. Ruby runs multipleat_exit()
handlers in reverse order of registration. Sucker Punch does clean up and shutdown in anat_exit()
handler. Hence, if SuckerPunch is required after Sinatra, Sucker Punch will shut itself down just prior to Sinatra starting up.This is a bit surprising, so mention it in the docs.