| Store | Cart

Re: [Distutils] Proposal: using /etc/os-release in the "platform tag" definition for wheel files

From: Donald Stufft <don...@stufft.io>
Sat, 29 Nov 2014 12:40:00 -0500
Binary compatibility is not something that is my strong suite, however I think
that whatever we do should be aimed at eventual support of uploading Linux
binaries to PyPI. Currently we allow Windows and OSX and from what I understand
the same Linux ABI problems can happen in those situations, it's just less
likely because of the single vendor nature of those platforms. In that vein
I don't believe we need to *solve* the Linux ABI problem generically but that
we need to get something that will most likely work.

To this end the idea of using the distro name and version sounds like a
solution that will get the Linux side of things closer to the Windows and OS X
side. I do think we should continue to support the plain linux values and
possibly we should even allow them to be uploaded to PyPI.

I had also previously though about an additional file in the metadata spec
which would encode the SOABI of each thing that has been dynamically linked
(it's my understanding that you can inspect this?) and then when pip downloads
a Wheel file it can use that file as a final and certain check of
compatability. In this way the filename would only be used to try and select
the file which is most likely to work on the system but that we can detect
once we've downloaded the file if it will or will not work and fall back to
attempt other files, possibly even the sdist.

I don't think we need to try and protect people from uploading a badly built
Wheel. If a project uploads a Wheel that has incorrect platform tags then that
is a bug in their project as long as we provide reasonable differentiators that
people can use to tag their Wheels with.

Donald Stufft
PGP: 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

Distutils-SIG maillist  -  Dist...@python.org

Recent Messages in this Thread
Nick Coghlan Nov 28, 2014 06:03 am
Antoine Pitrou Nov 28, 2014 08:19 am
Nick Coghlan Nov 28, 2014 03:27 pm
Antoine Pitrou Nov 28, 2014 03:51 pm
Nick Coghlan Nov 29, 2014 03:47 pm
Antoine Pitrou Nov 29, 2014 04:10 pm
Nick Coghlan Nov 29, 2014 05:02 pm
Donald Stufft Nov 29, 2014 05:40 pm
Antoine Pitrou Nov 29, 2014 05:41 pm
Tres Seaver Nov 29, 2014 05:39 pm
Marius Gedminas Nov 28, 2014 08:40 am
Matthias Klose Nov 28, 2014 03:31 pm
Nick Coghlan Nov 28, 2014 03:38 pm
Marcus Smith Dec 01, 2014 01:41 am
Olivier Grisel Dec 02, 2014 10:57 am
Nick Coghlan Dec 02, 2014 11:56 am
Messages in this thread