-
Notifications
You must be signed in to change notification settings - Fork 34
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
Support PyPy3 v5.2 #23
Conversation
PyPy has started releasing alpha releases of PyPy3 v5.2, and Travis now supports `python: pypy3.3-5.2-alpha1`. PyPy3 v5.2 depends on virtualenv>=15.0.2, whereas Travis installs 12.0.6. Only force the use of virtualenv>=15.0.2 on PyPy3 v5.2, so that existing users of tox-travis are not impacted. This is complicated by Travis providing setuptools 12.0.5, which does not support `platform_python_implementation=="PyPy"` as an environment marker, and fails to install tox-travis from a source tarball. However tox-travis provides a universal wheel, which supports that environment marker, and Travis pip 6.0.7 can install it. This change breaks any use of tox-travis with old setuptools. As tox-travis uses tox to install and test the package, either we use `skipdist=True` or tell tox to use a wheel to install tox-travis, thereby avoiding setuptools in tox. Also, fiddle with tox internals so that it attempts to run `python` for the Travis versions `pypy3.3-5.2-*`.
I have yet to add tests for the code changes. I would appreciate it if you could first upload this to https://testpypi.python.org/pypi , then we can double check that I have avoided using |
This is excellent work. I'm learning a lot from reviewing it, thank you. I'll probably take a couple more days to figure it all out (not enough time available to review quickly), so don't think I'm ignoring you. You've also requested that I test this on testpypi before I merge it, so I'll do that too. |
Nod. Im happy for this one to be done slowly and carefully. |
Confirmed the tox min version is still 2.0 . Here is the last change related to |
Thank you for checking on that. |
Here is a nice breakdown of the problem with detecting PyPy: I have independently found that ~18+ is the min that supports However my testing shows that And We still probably need to dance around tox by using the wheel, because tox-travis installs various |
I've found two solutions which I believe will work with any version of setuptools. I'll be working on that over the w/e, as that reduces the chance that tox-travis users will have their builds broken by this enhancement which most users will probably not use in the near future. |
#24 was merged, so this is no longer appropriate to merge, as they were targeting the same result. |
PyPy has started releasing alpha releases of PyPy3 v5.2, and Travis now supports
python: pypy3.3-5.2-alpha1
.PyPy3 v5.2 depends on virtualenv>=15.0.2, whereas Travis installs 12.0.6. Only force the use of virtualenv>=15.0.2 on PyPy3 v5.2, so that existing users of tox-travis are not impacted. This is complicated by Travis providing setuptools 12.0.5, which does not support
platform_python_implementation=="PyPy"
as an environment marker, and fails to install tox-travis from a source tarball. However tox-travis provides a universal wheel, which supports that environment marker, and Travis pip 6.0.7 can install it.This change breaks any use of tox-travis with old setuptools. As tox-travis uses tox to install and test the package, either we use
skipdist=True
or tell tox to use a wheel to install tox-travis, thereby avoiding setuptools in tox.Also, fiddle with tox internals so that it attempts to run
python
for the Travis versionspypy3.3-5.2-*
.Fixes #22