Apply Nathaniel's latest changes
This commit is contained in:
parent
364cbfa224
commit
28f163de57
12
pep-0513.txt
12
pep-0513.txt
|
@ -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.
|
||||||
|
|
Loading…
Reference in New Issue