On Friday, 20 February 2015 at 14:00:33 UTC, Kingsley wrote:

Just thought I would share this in case anyone else finds it useful. I wrote a tiny utility that detects changes to D files and then rebuilds and re-executes the main binary using dub.

I use for developing with vibe.d and other dub D project that have an executable binary.

The code is here:   https://github.com/kingsleyh/reloaded

essentially you just run dub in the root and it builds the reloaded binary. Then you just copy that binary to the root of your dub project and ./reloaded and then as soon as you make a change to a D file your code will be built and executed.

You seem to especially target Vibe.d and your approach is based on *restarting* the server. It should be possible to do even better. Reload the server without stopping.

Basic idea: Compile your server application as a shared library. Run a small wrapper, which uses the shared library. If a file changes, recompile the library and load it into the wrapper.

Reply via email to