1. Build some program with RDMD 2. Modify a string import file your program uses. 3. Run RDMD again. RDMD will use the cached executable instead of rebuilding it.
I talked to Walter about adding support for this in the compiler.
The string import files are already in the .deps file, they're just marked "file" instead of "import". (At least in 2.054 anyway.) The .deps entries marked "binary", "config" and "library" should also be checked.
Pull request fixing this issue: https://github.com/D-Programming-Language/tools/pull/6 That fixes the issue for "file" (ie string imports), "binary" and "config". Fixing it for "library" is more difficult since the path to the library has to be figured out (rather than scraped from the deps file), so I've made a separate issue for that: issue 6431
Pull request was accepted and issue is fixed as of 2.055