This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author dstufft
Recipients Arfrever, barry, brett.cannon, doko, dstufft, eric.snow, lemburg, ncoghlan, ned.deily, pitrou, python-dev, steve.dower, tim.golden, zach.ware
Date 2015-04-16.18:17:33
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1429208254.0.0.14319912574.issue22980@psf.upfronthosting.co.za>
In-reply-to
Content
> Well, it's even more wasteful if you have to download 100MB wheels
> with all the different platforms when the dedicated wheel would just
> need 1.5MB.

I think it's going to vary greatly based on how many platforms you're attempting to support and how big your .so's are compared to the rest of the Wheel. You can also mix and match, do a single bundle for the most popular platforms (which will mean that you're almost always serving out of cache) but then do individual wheels for the less popular platforms to keep the file size of the "main" wheel from bloating up with a bunch of .so's for platforms which are unlikely to be needed very often.

Another possible (future) benefit - Right now we have executable zip files, but they can only reasonably contain pure Python files. There are rumblings of making it so it's possible to import .so's from inside of an executable zip file. If you bake in the platform ABI into the .so file name, it would mean in that possible future you could have a single executable zip file that just works across multiple platforms as long as you already have Python installed.

I do agree that pretty much every place someone would want to do this, could possibly be implemented by having it look inside a per platform directory (you could implement fat wheels for instance by having platform sub dirs, same with a single executable zip file), however doing that causes duplication because every place you deal with .so's then need to deal with the question of platform ABI and have to come up with their own solution to it, instead of having a central solution which is managed by Python itself and can be re-used by all of these situations.
History
Date User Action Args
2015-04-16 18:17:34dstufftsetrecipients: + dstufft, lemburg, barry, brett.cannon, doko, ncoghlan, pitrou, tim.golden, ned.deily, Arfrever, python-dev, eric.snow, zach.ware, steve.dower
2015-04-16 18:17:33dstufftsetmessageid: <1429208254.0.0.14319912574.issue22980@psf.upfronthosting.co.za>
2015-04-16 18:17:33dstufftlinkissue22980 messages
2015-04-16 18:17:33dstufftcreate