On Fri, Jul 10, 2015 at 12:16 AM, Ionel Cristian Mărieș <cont...@ionelmc.ro> wrote:
> Would be quite useful to see some references and details about the vague > issues being mentioned in the thread. It would help a lot the less versed > engineers (like me) understand the issues at hand (and hopefully reduce the > amount of disagreement overall). > > For example, for me it's not clear what's wrong with Antoine's proposal > (compile on Centos 5) - it seemed quite sensible approach to produce a > reasonably compatible binary. > > Some issues with kernel ABI have been mentioned - can anyone point me to > some resources describing the possible problems? Is it correct to assume > that it's about using vendor-specific kernel api? > No, it is about some python packages depending directly or indirectly on kernel features not available in the kernel on centos 5. For example, you can't build subprocess32 (https://pypi.python.org/pypi/subprocess32/) on centos 5 kernels. > > Also, what does Conda do to solve the binary compatibility issues and > distutils or pip could never ever do (or implement)? > They do what almost everybody distributing large applications on Linux do : they "ship the world". Any large binary python distribution provider does the same here: except for low level X11/glibc libraries, everything else is bundled as part of the distribution. So no magic, just lots of maintenance work. David > > Thanks, > -- Ionel Cristian Mărieș > > On Thu, Jul 9, 2015 at 4:50 PM, Nick Coghlan <ncogh...@gmail.com> wrote: > >> On 9 July 2015 at 05:06, Antoine Pitrou <solip...@pitrou.net> wrote: >> > On Wed, 08 Jul 2015 13:05:45 -0400 >> > Tres Seaver <tsea...@palladion.com> wrote: >> >> -----BEGIN PGP SIGNED MESSAGE----- >> >> Hash: SHA1 >> >> >> >> On 07/08/2015 07:10 AM, Antoine Pitrou wrote: >> >> >> >> > Seriously, how this is even supposed to be relevant? The whole point >> >> > is to produce best-effort packages that work on still-supported >> >> > mainstream distros, not any arbitrary "Linux" setup. >> >> >> >> I'm arguing that allowing PyPI uploads of binary wheels for Linux will >> be >> >> actively harmful. >> > >> > There is no point in reinstating an argument that has already been made >> > and discussed in the other subthread (of course, you would have to read >> > it first to know that). >> >> Steady on folks - prebuilt binary software distribution is *really*, >> *really*, hard, and we're not going to magically solve problems in a >> couple of days that have eluded Linux distribution vendors for over a >> decade. Yes, it's annoying, yes, it's frustrating, but sniping at each >> other when we point out the many and varied reasons it's hard won't >> help us to improve the experience for Python users. >> >> The key is remembering that now matter how broken you think prebuilt >> binary software distribution might be, it's actually worse. And >> channeling Hofstadter's Law: this principle remains true, even when >> you attempt to take this principle into account :) >> >> If you look at various prebuilt binary ecosystems to date, there's >> either a central authority defining the ABI to link against: >> >> - CPython on Windows >> - CPython on Mac OS X >> - Linux distributions with centralised package review and build systems >> - conda >> - nix >> - MS Visual Studio >> - XCode >> - Google Play >> - Apple App Store >> >> Or else a relatively tightly controlled isolation layer between the >> application code and the host system: >> >> - JVM >> - .NET CLR >> >> (even Linux containers can still hit the kernel ABI compatibility >> issues mentioned elsewhere in the thread) >> >> As Donald notes, I think we're now in a good position to start making >> progress here, but the first step is going to be finding a way to >> ensure that *by default*, pip on Linux ignores wheel files published >> on PyPI, and requires that they be *whitelisted* in some fashion >> (whether individually or categorically). That way, we know we're not >> going to make the default user experience on Linux *worse* than the >> status quo while we're still experimenting with how we want the >> publication side of things to work. Debugging build time API >> compatibility errors can be hard enough, debugging runtime A*B*I >> compatibility errors is a nightmare even for seasoned support >> engineers. >> >> It seems to me that one possible way to do that might be to change >> PyPI from whitelisting Windows and Mac OS X (as I believe it does now) >> to instead blacklisting all the other currently possible results from >> distutils.util.get_platform(). >> >> Regards, >> Nick. >> >> -- >> Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia >> _______________________________________________ >> Distutils-SIG maillist - Distutils-SIG@python.org >> https://mail.python.org/mailman/listinfo/distutils-sig >> > > > _______________________________________________ > Distutils-SIG maillist - Distutils-SIG@python.org > https://mail.python.org/mailman/listinfo/distutils-sig > >
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig