[Distutils] Plans for binary wheels, and PyPi and OS-X

Nick Coghlan ncoghlan at gmail.com
Sat Nov 2 01:45:28 CET 2013

On 2 Nov 2013 09:15, "Paul Moore" <p.f.moore at gmail.com> wrote:
> On 1 November 2013 23:10, Greg Ewing <greg.ewing at canterbury.ac.nz> wrote:
> > Will there be a mechanism to get the actual MacOSX version
> > needed into the metadata, rather than the one you happen
> > to be building on?
> There can be anything - the question here is really whether anything
> is *needed*, or is what we have sufficient.
> If it's sufficient, we can lift the restriction on uploading OSX
> wheels and we're done.
> If it's not, we need to keep the restriction until the wheel code is
> updated to provide sufficiently flexible tags. We can take as long as
> we need to define and implement those. (When I say "we" here, as a
> Windows user I really mean "you", of course :-))

I spoke to Donald about this on IRC yesterday, and I take the following

* the key relevant points about users on Windows and Mac OS X are that most
(perhaps only many on Mac OS X) tutorials and introductory courses will
direct them to the binary installers on python.org, and such users are
highly unlikely to have a C compiler installed, so their current "out of
the box" user experience with pip is that it doesn't work for even the
simplest of C extensions.

* by contrast, in other *nix environments (including cygwin on Windows and
homebrew etc on Mac OS X), using the system/environment Python is far more
common, and a C compiler is far more likely to be available

* accordingly, the following defaults make sense for pip 1.5:
- allow wheel files from the index server for Windows and Mac OS X
- allow local wheel files everywhere

* the following options should also be available:
- force use of wheel files from the index server (useful for private index
- prevent use of wheel files from the index server (useful to force local
builds on Windows and Mac OS X)
- prevent use of wheel files (useful to force a local rebuild, overwriting
the wheel cache)

It would be good to enable the use of index server wheel files everywhere
by default, but we need to add some kind of "environment" or "variant"
marker to the wheel naming scheme before we can do that (i.e. wheel 1.1,
which isn't planned until the 1.6 time frame).

There are also problems with how the abi and platform tags are set and
interpreted that need to be resolved before we can expand wheel sharing
through PyPI beyond the environments defined by the python.org binary


> Paul
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20131102/bf3d75d9/attachment-0001.html>

More information about the Distutils-SIG mailing list