And to help in getting a reply, here is the trimmed-down results for CPython 3.7 to compare against:
[('cp37', 'cp37m', 'macosx_10_13_x86_64'), … ('cp37', 'abi3', 'macosx_10_13_x86_64'), … ('cp37', 'none', 'macosx_10_13_x86_64'), … ('cp36', 'abi3', 'macosx_10_13_x86_64'), … ('cp35', 'abi3', 'macosx_10_13_x86_64'), … ('cp34', 'abi3', 'macosx_10_13_x86_64'), … ('cp33', 'abi3', 'macosx_10_13_x86_64'), … ('cp32', 'abi3', 'macosx_10_13_x86_64'), … ('py3', 'none', 'macosx_10_13_x86_64'), … ('cp37', 'none', 'any'), ('cp3', 'none', 'any'), ('py37', 'none', 'any'), ('py3', 'none', 'any'), ('py36', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')] So, it re-iterate the questions: 1. What is ('pp3', 'none', 'any') supposed to represent for PyPy3? Since the version of the interpreter is PyPy3 6.0 the lack of major version number seems like a bug more than a purposeful interpreter version (and there's only a single project -- cliquet <https://pypi.org/project/cliquet/3.1.1/#files> -- that has a wheel that's compatible with that tag triple and it's not even for their latest release). 2. Why does CPython have (*, 'none', 'any') from the version of the interpreter down to Python 3.0 plus generically Python 3 while PyPy3 only gets generic Python 3? 3. Why isn't (*, 'none', platform) listed from Python 3.7 to 3.0 for either CPython or PyPy3? I understand not iterating through all versions when an ABI is involved (without knowing exactly which versions are compatible like abi3), but this triple seems safe to iterate through as a fallback just as much as (*, 'none', 'any'). Maybe because it's too ambiguous to know how important such a fallback would be between e.g. ('py36', 'none', 'macosx_10_13_x86_64') and ('py37', 'none', 'any'), and so why bother when the older version triples are there just for a safety net to have at least some chance of a match? 4. I still think ('py360', 'none', 'any') is a bug. ;) P.S.: The ('py3', 'none', 'macosx_10_13_x86_64') triple being between e.g. ('pp360', 'none', 'macosx_10_13_x86_64') and ('pp360', 'none', 'any') is really messing with my head and making the code to generate supported triples a bit less elegant. ;) On Sat, 25 Aug 2018 at 15:03 Brett Cannon <br...@python.org> wrote: > I noticed that for PyPy3, the tag triples considered compatible were > (roughly; trimmed out the long list of macOS versions): > > [('pp360', 'pypy3_60', 'macosx_10_13_x86_64'), > ('pp360', 'none', 'macosx_10_13_x86_64'), > ('py3', 'none', 'macosx_10_13_x86_64'), > ('pp360', 'none', 'any'), > ('pp3', 'none', 'any'), > ('py360', 'none', 'any'), > ('py3', 'none', 'any')] > > Now the first question I have is about ('pp3', 'none', 'any'). Is this > meant to be a generic thing for any interpreter of the interpreter > implementation and major version, or is this special to CPython and PyPy3? > > Question two is why isn't there a ('py35', 'none', 'any') or ('py34', > 'none', 'any') and older to py30 after py3 like there is for CPython? Seems > like if they are just source then they should be compatible as much as > CPython. > > Question three is why isn't there a ('py35', 'none', > 'macosx_10_13_x86_64') for PyPy3 or CPython 3.7? I can't figure out what a > Python- and platform-specific wheel but agnostic to API wouldn't ever work? > > And I'm assuming ('py360', 'none', 'any'), isn't legitimate since that > makes no sense. ;) >
-- Distutils-SIG mailing list -- distutils-sig@python.org To unsubscribe send an email to distutils-sig-le...@python.org https://mail.python.org/mm3/mailman3/lists/distutils-sig.python.org/ Message archived at https://mail.python.org/mm3/archives/list/distutils-sig@python.org/message/D7H47XWWDMOIUWODELQU27TGTC5KL6WY/