always install colorama on Windows by davidism · Pull Request #1784 · pallets/click

Colorama is required to provide ANSI style/color support in the Windows console. This adds it as a required dependency for Windows only.

I think in this very specific case it's ok to add this as a required dependency (on Windows). It's required to support a fairly fundamental feature, and it's way too complex to implement ourselves. It's also already fairly ubiquitous, it's installed 21 million times per month while Click is only 15 million. So it's likely that users are already pulling in this dependency or expect it to work.

Checklist:

  • Add tests that demonstrate the correct behavior of the change. Tests should fail without the change.
  • Add or update relevant docs, in the docs folder and in code.
  • Add an entry in CHANGES.rst summarizing the change and linking to the issue.
  • Add .. versionchanged:: entries in any relevant code docs.
  • Run pre-commit hooks and fix any issues.
  • Run pytest and tox, no tests failed.