[Distutils] PEP 513: A Platform Tag for Portable Linux Built Distributions Version

Robert T. McGibbon rmcgibbo at gmail.com
Tue Jan 26 16:04:12 EST 2016


The file pip uses to record its latest check for being out of date (on
linux ~/.cache/pip/selfcheck.json) is a json file that maps the path to the
interpreter's sys.prefix to some metadata about the installation

e.g.

{"/home/rmcgibbo/opt/python-3.5/":
{"last_check":"2016-01-12T00:09:02Z","pypi_version":"7.1.2"}, ...}

Perhaps a similar model should be used for /etc/python/compatibility.cfg.
That is, the configuration option should be keyed on a per-interpreter
basis.

[/usr]
manylinux1 compatible = true

[/path/to/armv7l/python]
manylinux1 compatible = false


-Robert



On Tue, Jan 26, 2016 at 4:22 AM, Olivier Grisel <olivier.grisel at ensta.org>
wrote:

> 2016-01-26 11:41 GMT+01:00 Olivier Grisel <olivier.grisel at ensta.org>:
> > Maybe we could devise some syntax for /etc/python/compatibility.conf
> > to state that the manylinux1 entry is only valid for Python
> > interpreters such as distutils.util.get_platform() == 'linux-x86_64'?
>
> Actually this won't work. I just try to debootstrap ubuntu trusty i386
> on top of ubuntu trusty amd64 and I get the following behavior in
> python3 inside the i386 chroot:
>
> >>> from distutils.util import get_platform
> >>> get_platform()
> 'linux-x86_64'
>
> >>> import platform
> >>> platform.machine()
> 'x86_64'
>
> >>> import sys
> >>> sys.maxsize > 2**32
> False
>
> So this is actually a 32 bit Python declared as running on a
> linux-x86_64 platform (even though everything is i386 inside the
> chroot)...
>
> I get the exact same behavior when installing the 32 bit miniconda on
> ubuntu trusty amd64.
>
> --
> Olivier
> http://twitter.com/ogrisel - http://github.com/ogrisel
>



-- 
-Robert
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20160126/f3375695/attachment.html>


More information about the Distutils-SIG mailing list