pypi / termcolor
termcolor
What changed in termcolor 2 to 3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-28.
4 breaking2 new APIs and options2 behavior and defaults1 tooling8 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli inittermcolor 311 changes
Breaking changes 2
Dropped support for Python 3.9.
The deprecated
__ALL__is removed; use__all__instead.
New APIs and options 1
Italic styling is now supported.
Behavior and default changes 2
Exposed can_colorize as a public API.
Literal types are replaced with strings, changing the package's type annotations.
Fixes and other changes 6
Expect fileno() to raise OSError, as documented.
Added support for Python 3.15.
The variable is applied only when present and not an empty string.
The variable is applied only when present and not an empty string.
The variable is applied only when present and not an empty string.
Adds support for Python 3.14.
termcolor 26 changes
Breaking changes 2
Support for EOL Python versions 3.6 and earlier was dropped.
The hardcoded VERSION constant was removed; release notes show how to retrieve the installed package version with importlib.metadata.
New APIs and options 1
The library supports the NO_COLOR environment variable.
Tooling 1
Type annotations were added to the project.
Fixes and other changes 2
Python 3.10 is supported.
Python 3.11 and PyPy are supported.