-
Notifications
You must be signed in to change notification settings - Fork 257
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for python_implementation #72
Comments
https://mail.python.org/pipermail/distutils-sig/2015-September/026873.html seems to be about this; |
This is legacy from setuptools, supported from 0.7 to 20.1.1 (inclusive). See pypa#72 for more detail about its history.
This is legacy from setuptools, supported from 0.7 to 20.1.1 (inclusive).
Fix #72: Add support for python_implementation marker
So for anyone who stumbles across here, the summary as to what versions of setuptools support what markers:
|
See <pypa/packaging#72 (comment)> for a discussion of the various setuptools different aliases support. This means we don't work with 20.2 to 20.6 (released mid-Feb till late-Mar 2016).
See <pypa/packaging#72 (comment)> for a discussion of the various setuptools different aliases support. This means we don't work with 20.2 to 20.6 (released mid-Feb till late-Mar 2016).
@gsnedders, thanks for your breakdown of the version ranges supported by setuptools versions.
when I try with Am I missing something? |
@jayvdb Oh, I concluded the above was wrong, but obviously forgot to post about it here. https://gsnedders.github.io/python-marker-test/results.html is a summary of what supports what. |
Interesting, so the rub is then how do we force setuptools into "without parser" mode... ;-) |
See https://github.com/gsnedders/python-marker-test/blob/master/test_pkgresources.py which is how I did so. Note more recent releases don't have the variants, so you need to handle that too. |
Indeed; that gets us into the right mode, some of the time during but then we run into platform problems on at least 3.2 and the new PyPy3 (all quite solvable, by the look of things) |
OK, a bit of mucking around, and I have two solutions for a setup.py that works with all Option 1: Python 3 compatible
|
https://travis-ci.org/jayvdb/tox-travis/builds/145049141 shows most setuptools versions working correctly, with .travis.yml |
To add some closure, I built a very hacky patch for html5lib that allows all environment markers on nearly every setuptools version. See html5lib/html5lib-python#285 and another version of it at tox-dev/tox-travis#24 . Those are both MIT, so use it accordingly. I am happy to send a similar PR for any project having similar requirements of working with older setuptools, if that helps your licensing situation. |
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
This is a setuptools hack to support environment markers with almost any setuptools version. Context and history at pypa/packaging#72 Previous editions authored by myself. html5lib/html5lib-python@43aeaefe tox-dev/tox-travis@44a35c02 Closes moremoban#89
We currently support
platform.python_implementation
andplatform_python_implementation
.setuptools
' previous fork of packaging did supportpython_implementation
until it was replaced byplatform_python_implementation
in pypa/setuptools@3bd5118#diff-0c04a5cfcbd2a4bdd1121db108b79d3d.python_implementation
existed insetuptools
until that commit and the death ofMarkerEvaluation
, see https://github.com/pypa/setuptools/blob/f8b1293c408bbb652bec3f2ae6e5b4f33f3ca55e/pkg_resources/__init__.py#L1389 for the full (?) list of what was supported there. It also briefly existed in PEP 508 until February (https://hg.python.org/peps/rev/655a101719a5 replaced it withplatform_python_implementation
).The one thing we're missing from what
setuptools
historically supported ispython_implementation
; we have everything else. This adds more duplication, but its removal broke some packages (e.g., some versions of html5lib).The text was updated successfully, but these errors were encountered: