Command-line software which adds ANSI color to its output by default should check for a NO_COLOR environment variable that, when present and not an empty string (regardless of its value), prevents the addition of ANSI color.
Command-line software which outputs colored text should check for a FORCE_COLOR environment variable. When this variable is present and not an empty string (regardless of its value), it should force the addition of ANSI color.
Both "standards" state that these environment variables has only effect if their value is not an empty string. But Python currently only tests that the environment variables are defined.
Activity
serhiy-storchaka commented on Jan 20, 2025
cc @hugovk
erlend-aasland commented on Jan 20, 2025
See also earlier discussion: #128318 (comment)
hugovk commented on Jan 23, 2025
Please see PR #129140.
gh-129061: Fix `FORCE_COLOR` and `NO_COLOR` when empty strings (#129140)
pythongh-129061: Fix `FORCE_COLOR` and `NO_COLOR` when empty strings (p…
[3.13] gh-129061: Fix `FORCE_COLOR` and `NO_COLOR` when empty strings (…