It's easy enough to change in distlib, but the use of "probably" in that PyPy-specific sentence in PEP 425 makes that statement as a whole less than definitive. Indeed, the clear specification is to use py_version_nodot, which on PyPy 1.9 at least gives me '27'. So, if we should be using the PyPy version number, I think PEP 425 should explicitly say something like On PyPy, use ''.join(sys.pypy_version_info[:2]) Or whichever PyPy-specific API is supposed to be used to get this information, if not the one I've suggested. Regards, Vinay Sajip -------------------------------------------- On Tue, 21/1/14, Brian Wickman <wickman@gmail.com> wrote: Subject: Re: [Distutils] inconsistency between PEP425 and wheel tags To: "Daniel Holth" <dholth@gmail.com> Cc: "DistUtils mailing list" <distutils-sig@python.org> Date: Tuesday, 21 January, 2014, 18:09 For now I'm just using bdist_wheel, but the question is more focused on the dependency resolution side where I need to select from a list of compatible wheels on a remote server. As it stands, I will be very unsuccessful if bdist_wheel produces pp27 tags and my downloader only looks for distributions tagged with pp22. :-) Happy to send out some pull requests. pip, wheel and distlib all get this wrong. AFAICT pip/wheel use the same pep425tags code. Does that have a shared home? ~brian On Tue, Jan 21, 2014 at 8:30 AM, Daniel Holth <dholth@gmail.com> wrote: That should probably be considered a bug in bdist_wheel. I don't think there has been any movement on alternate implementations choosing what they want their PEP 425 tags to be. Are you implementing your own wheel generator? (neat) On Mon, Jan 20, 2014 at 12:28 AM, Brian Wickman <wickman@gmail.com> wrote:
For interpreter-specific tags PEP425 says:
"The version is py_version_nodot. CPython gets away with no dot, but if one
is needed the underscore _ is used instead. PyPy should probably use its own
versions here pp18, pp19."
But in practice if you build with an alternate interpreter you just get the
equivalent CPython version level, e.g.
pycrypto-2.6.1-pp27-none-macosx_10_7_x86_64.whl for PyPy 2.2.1, when the PEP
indicates it should be pp22.
As an implementer, should I follow the spec or follow reality? If the
latter, should PEP425 be amended?
thanks!
brian
twitter.com/wickman
_______________________________________________
Distutils-SIG maillist - Distutils-SIG@python.org
-----Inline Attachment Follows----- _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig