Unfortunately, the maintainers of the
pyca/cryptography package have made Rust a hard dependency in newer releases. Since they cut short any discussion about this (not your problem, but a problem for the Python community in general), I was not able to explain to them that a dependency that is required by default and must be manually disabled can be considered a hard dependency.
As a result, updating any package that depends on
cryptography breaks. Yours happens to be a widely used one.
It’s not your fault, for which I am sorry. But you can solve this for your package by keeping your requirement on
cryptography restricted to versions that do not require Rust.
Any that has an unbounded dependency on
OS / Environment
Steps to Reproduce
pip install -U ansible
I expect ansible to upgrade
Pip fails to install ansible if there is no Rust toolchain installed.