[Distutils] Metadata 2.0: Warning if optional features are missing

Paul Moore p.f.moore at gmail.com
Tue Dec 15 13:52:50 EST 2015


On 15 December 2015 at 18:40, Michael Merickel <mmericke at gmail.com> wrote:
>
> Well in this world of wheels we aren't necessarily building anything right..
> so there's no "rebuild" or "build". We are just unzipping a bdist and some
> optional deps. I've seen in the past that a recommended way of accomplishing
> this would be to create an sqlalchemy-cext package on pypi and have
> sqlalchemy depend on it. This is what I meant with the "cext":
> "sqlalchemy-cext" extra. Then people who wanted speedups (most people
> obviously) would depend on sqlalchemy[cext]. This example works entirely
> within the current framework.

If sqlalchemy[1] provided binary wheels for Windows, none of this
would be needed. The speedups would be in the wheel, end of story -
no-one is likely to ever deliberately to want to *not* have the
speedups if they had the choice. I keep trying to set up private
indexes of binary wheels to get round issues like this, but
maintaining such an index always ends up being more work than is
justified by the benefits. It's worth keeping that in mind, though -
any proposed solution probably has to be less work for the relevant
projects to adopt than providing Windows binary builds would be.

[1] And pyyaml, and any other projects with optional C speedups...

Paul


More information about the Distutils-SIG mailing list