detect mode configuration issue and warn about them
Created originally on Bitbucket by marmoute (Pierre-Yves David)
A common error mode, is to have a tool configured as "pipe" output while actually performing an inplace update.
Currently, the formatter runs fine, and format source read an empty file. Since is pretty bad the merge mechanism will see an empty "base" and "other", picking "local" as is.
I'm pretty sure there is not formatting tools that will return "Nothing" when passed something. So we can detect this to detect the error and warn the user about it.