> No Progress
Published:
Whilst I was going through setting up GitHub Workflows for Talos , I realized that they are not natively acting like a TTY. Because of this, the use of spinners in my testing framework for Talos resulted in distorted outputs. This led me to implementing a standard similar to NO_COLOR but instead for spinners and progress bars.
In short:
Command-line software which adds ANSI spinners and/or progress bars to its output by default should check for a
NO_PROGRESSenvironment variable that, when present and not an empty string (regardless of its value), prevents the display of ANSI spinners and/or progress bars.
For those interested, you can find more a more detailed explanation on the NO_PROGRESS standard website.
Example Usage
// Access the available environment variable.
const no_progress = process.env.NO_PROGRESS;
// We only enable spinners and progress bars if "undefined" or explicitly "0".
const enabled = no_progress === undefined || no_progress === '0';