PEP 777: How to Re-invent the Wheel

Have you read the existing spec? It’s preferable that installers fail with knowledge when receiving a wheel they don’t understand because the installer then has the information to inform the user of why it failed. It is a significantly worse experience for users if they suddenly are getting old unsupported versions of libraries or long build times (see prior discussions on this). But this isn’t breaking, it’s working by design to give users the information they need to decide what to do. It is a change in the wheel version, but it’s intentionally designed in a way that tools designed for any version of wheel format have visibility of future unsupported wheels.

A user that gets this kind of failure now has the option of

  • upgrade installer
  • use --no-binary and build it themselves
  • revert to an older version of the library.

but it’s actually a choice presented to them rather than the cause of surprising behavior.

2 Likes