Some utilities write debugging or other information to stderr even though they aren't actually errors. An example I have come across recently is using Google Closure compiler called from within gulp.spawn.
I modified index.js to allow for another option called 'failonstderr' that if set to false will simply write to process.stderr and not halt other gulp operations.
if(options.failonstderr !== false)
{
program.stderr.on("end", function () {
if (errBuffer.length) {
stream.emit("error", new gUtil.PluginError(PLUGIN_NAME,
errBuffer.toString("utf-8")));
}
});
}
else
{
program.stderr.on("end", function () {
if (errBuffer.length) { process.stderr.write(errBuffer.toString("utf-8")); }
});
}