Re: What are reasonable compatibility tags? (was: Three clarification questions about PEP 425 and PyPy3

Brett Cannon <[email protected]>
Newsgroups gmane.comp.python.distutils.devel
Message-ID <CAP1=2W6=-CDeZNVq_FyLHQ1ohKgkZM9sLPJ-xOGkBrgZe41BVA@mail.gmail.com>
On Fri, 31 Aug 2018 at 13:33 Xavier Fernandez <[email protected]>
wrote:

>
>
>
> Le ven. 31 août 2018 à 9:25 PM, Brett Cannon <[email protected]> a écrit :
>
>>
>> OK, so let's look at what we're trying to support. If we have pure Python
>> code there's very likely going to be a bottom Python version that's
>> supported and then forward-compatibility is assumed. This is specified
>> today through python-requires, so having a specific Python version in the
>> wheel itself isn't totally critical. So 'py3-none-any' combined with
>> python-requires takes care of this the vast majority of the time.
>>
>
> Hello,
>
> while python-requires is indeed nice, it is only usable by pip to select a
> wheel file with a fully compliant PEP 503 repository.
> Otherwise, like in a local wheelhouse (wheel files in a directory), it is
> invisible to pip until pip tries to install the wheel so a more precise
> python tag can still be somewhat useful...
> (I agree that pip could access the wheel metadata to check the
> python-requires without needing to unzip the whole file).
>

You can make your pure Python wheel have a py3-cp36m-* wheel name and you
get the version specification you want; there is nothing saying a wheel
must have extension modules if it specifies an ABI tag.

But more importantly, pip still has to resolve what version of a package to
use, so regardless of what's cached in your wheelhouse there will be a
check against python-requires somewhere, else you're no worse off than just
installing the wheel directly. IOW your wheelhouse isn't going to
short-circuit pip's resolver, it's just going to save you from having to
download some bits from somewhere else (unless I understand how pip
utilizes the wheelhouse on disk).

--
Distutils-SIG mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mm3/mailman3/lists/distutils-sig.python.org/
Message archived at https://mail.python.org/mm3/archives/list/[email protected]/message/RGDXTBACIZR3MU2ZP4YEU4CIE3MG34NH/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.