visionmedia/node-progress — pull request #50 by eirikurn (2013-11-30 02:24:38+00:00)
Title: Support progress on stderr while piping stdout

Render has a guard clause for process.stdout.isTTY, which makes it impossible to pipe stdout while rendering progress bar on stderr. This PR makes it be quiet based on the TTY of the configured output stream.

It also adds a quiet option to override the behaviour. It also allows for easy integration in scripts which have its own quiet flag.

The progress bar will be quiet by default if configured with a WriteStream which doesn't support TTY. If that's a real use case then it can always be fixed with a "quiet: false".

On another note. IMHO the output stream should default to stderr instead of stdout, like curl. But it's simple enough for the developer to switch.