I have an app where starting the HTTP server is a command line option. Nevertheless, despite not using the default vibe.d main, as soon as I just import vibe.vibe
I get an interrupt signal handler installed. This has two nasty behaviors: 1) when the user presses CTRL-C the user gets an annoying "Received signal 2. Shutting down." message. Imagine that happening in console applications like, say, less or grep. Annoying. 2) vibe.d and ncurses don't play along, and CTRL-C no longer quits the application, no matter how many times you CTRL-C it.
Now, I don't know who's at fault regarding point two, but it certainly should be possible to disable the signal handler from being installed, and I don't see anything about that in the docs. In fact, if I have a custom main function then I'd argue that the signal handler shouldn't be installed behind my back, since I never called any vibe.d function. Why not install it only in the runEventLoop
function or something similar?