Apply Nathaniel's latest changes

This commit is contained in:
Chris Angelico 2016-01-31 07:51:23 +11:00
parent 364cbfa224
commit 28f163de57
1 changed files with 6 additions and 6 deletions

View File

@ -17,7 +17,7 @@ Abstract
======== ========
This PEP proposes the creation of a new platform tag for Python package built This PEP proposes the creation of a new platform tag for Python package built
distributions, such as wheels, called ``manylinux1_{x86_64,i386}`` with distributions, such as wheels, called ``manylinux1_{x86_64,i686}`` with
external dependencies limited to a standardized, restricted subset of external dependencies limited to a standardized, restricted subset of
the Linux kernel and core userspace ABI. It proposes that PyPI support the Linux kernel and core userspace ABI. It proposes that PyPI support
uploading and distributing wheels with this platform tag, and that ``pip`` uploading and distributing wheels with this platform tag, and that ``pip``
@ -40,7 +40,7 @@ distribution with different system libraries installed.
Build tools using PEP 425 platform tags [3]_ do not track information about the Build tools using PEP 425 platform tags [3]_ do not track information about the
particular Linux distribution or installed system libraries, and instead assign particular Linux distribution or installed system libraries, and instead assign
all wheels the too-vague ``linux_i386`` or ``linux_x86_64`` tags. Because of all wheels the too-vague ``linux_i686`` or ``linux_x86_64`` tags. Because of
this ambiguity, there is no expectation that ``linux``-tagged built this ambiguity, there is no expectation that ``linux``-tagged built
distributions compiled on one machine will work properly on another, and for distributions compiled on one machine will work properly on another, and for
this reason, PyPI has not permitted the uploading of wheels for Linux. this reason, PyPI has not permitted the uploading of wheels for Linux.
@ -159,7 +159,7 @@ versions), there is an extra requirement that (c) the wheel be
built against a version of CPython compiled with 4-byte unicode built against a version of CPython compiled with 4-byte unicode
support (i.e. one where ``sys.maxunicode > 0xFFFF``). support (i.e. one where ``sys.maxunicode > 0xFFFF``).
Because CentOS 5 is only available for x86_64 and i386 architectures, Because CentOS 5 is only available for x86_64 and i686 architectures,
these are the only architectures currently supported by the ``manylinux1`` these are the only architectures currently supported by the ``manylinux1``
policy. policy.
@ -384,9 +384,9 @@ for the overall age of the distribution).
Specifically, the algorithm we propose is:: Specifically, the algorithm we propose is::
def is_manylinux1_compatible(): def is_manylinux1_compatible():
# Only Linux, and only x86-64 / i386 # Only Linux, and only x86-64 / i686
from distutils.util import get_platform from distutils.util import get_platform
if get_platform() not in ["linux_x86_64", "linux_i386"]: if get_platform() not in ["linux-x86_64", "linux-i686"]:
return False return False
# "wide" Unicode mode is mandatory (always true on CPython 3.3+) # "wide" Unicode mode is mandatory (always true on CPython 3.3+)
@ -437,7 +437,7 @@ file, e.g. ``/etc/python/compatibility.cfg``. The problem with this is
that a single filesystem might contain many different interpreter that a single filesystem might contain many different interpreter
environments, each with their own ABI profile -- the ``manylinux1`` environments, each with their own ABI profile -- the ``manylinux1``
compatibility of a system-installed x86_64 CPython might not tell us compatibility of a system-installed x86_64 CPython might not tell us
much about the ``manylinux1`` compatibility of a user-installed i386 much about the ``manylinux1`` compatibility of a user-installed i686
PyPy. Locating this configuration information within the Python PyPy. Locating this configuration information within the Python
environment itself ensures that it remains attached to the correct environment itself ensures that it remains attached to the correct
binary, and dramatically simplifies lookup code. binary, and dramatically simplifies lookup code.