[Distutils] PEP 426 updated (with more than you ever wanted to know about version schemes)

Paul Moore p.f.moore at gmail.com
Tue Feb 12 12:25:58 CET 2013


On 12 February 2013 08:33, Nick Coghlan <ncoghlan at gmail.com> wrote:
> The missing piece is a standard hook for invoking the builder to
> create a wheel. Currently, that would be via "./setup.py bdist_wheel",
> but we want to get away from the setup.py format.

I've offered to do this before to resounding silence, but it's not too
hard in theory to create a bdist_wheel command within the existing
setup.py infrastructure - it's just a matter of leveraging the
existing "Builder" infrastructure in distutils to do a setup.py
install into a temporary area, then zipping up the results.

However, the problem is that distutils currently only supports
creating the old .egg-info format metadata. I believe it's possible to
rename the egg-info file and munge the metadata directory structure to
give a .dist-info format layout (IIRC, that's roughly what the
existing setuptools bdist_wheel extension provided by the wheel
project does) but I'm not sure if simply doing that meets the new
standards. Retrofitting full support for the new PEPs into distutils
may go beyond the limits of the "distutils freeze"...

Regardless, I'll do a proof of concept at least - it's not a big job
(http://bugs.python.org/issue13189 was my last version, the
bdist_simple format - here's hoping this one doesn't die of apathy the
same way :-().

Paul.


More information about the Distutils-SIG mailing list