-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
terryfy macOS 2.7.17 and virtualenv 20.0: unable to find 'coverage' command (zope.interface) #1555
Comments
Thanks for the insight, I'll try to reproduce and see if I can pinpoint the issue. From the description, it does not seems to be #1550. |
* Allow to use a common Sphinx version for Python 2 and 3. * Work around pypa/virtualenv#1555
See pypa/virtualenv#1555 Also fix 64-bit windows Python 2; apparently the documentation I read was outdated.
Hi - just another plea for a fix for this one - it's causing some stress for those of us using CI to test Python 2.7 builds - see https://github.com/matthew-brett/multibuild/issues/305 Can I help to reproduce? |
If you can reproduce with a small example that would indeed help. |
Ouch - sorry - I can't even get that far:
gives:
|
@matthew-brett for new we need to do #1561, have #1641 open for it, it's a WIP. That might fix it but not sure hence why opening this. That being said I haven't seen that error before 🤔 As someone who removed |
Does the |
It does thanks 👍 |
@matthew-brett This looks similar to #1577 and what I saw in https://travis-ci.org/nsoranzo/galaxy/builds/649733024 |
so looked into this; seems MacOs customizes framework builds so much that they just don't work without rewriting the mach-o (the magic from here https://github.com/pypa/virtualenv/blob/legacy/virtualenv.py#L2492-L2631); will take a while to get this done, but I'm on it 🤷♂ |
@gaborbernat Thanks, let me know if you want me to test anything! |
Thanks too - likewise - let me know if I can help.
|
Thanks, will let you know; maybe tomorrow at around now I'll have something ready. |
If anyone can give #1641 a try that would be great; seems to work for me locally but I might be missing something 🤷♂ |
Works for me - thanks for the quick fix. |
The CI seems to still cough; I'll try to fix that to and then hopefully do a release late today. |
Great - thanks again. |
Should be fixed with https://github.com/pypa/virtualenv/pull/1641/files. |
Thanks - and thanks for the quick release to PyPI. |
(We found a workaround so this isn't super critical, but several other projects also would have to change to use the workaround.)
zope.interface uses https://github.com/MacPython/terryfy to install the python.org distribution of Python on Travis macOS for testing for 2.7, and 3.5+. Here's the relevant .travis.yml configuration for the builds discussed. terrypy
A few days ago, there was a successful build of all versions using virtualenv 16.7.9. (Build log).
This morning, a round of builds installed virtualenv 20.0. While all the Python 3 builds worked, Python 2.7.17 failed. It seems that the $PATH wasn't setup correctly, and so the
coverage
command provided by the coverage wheel wasn't available. This build failed repeatedly, so it doesn't seem to be a simple fluke. (Build log). As far as I can see, that's the only relevant difference.terryfy uses the get_macpython_environment function from https://github.com/matthew-brett/multibuild to create and activate the virtual environment after installing Python:
We're calling terryfy and passing a
venv_dir
, and I verified that in fact the virtualenv Python is the Python that's active.With virtualenv 20.0, we get lots of errors from
pip install coverage
about scripts not being on the PATH:Is this an expected change of some sort? Does terryfy/multibuild need to adapt? Are we doing something wrong? (Possibly https://github.com/pypa/virtualenv/pull/1550/files might be related?) Thanks for any insight!
Workaround
In a subsequent build, I modified the commands in
.travis.yml
to usepython -m pip install...
andpython -m coverage run …
. Thepython -m pip install
command still produced warnings about scripts not being on the PATH, but thepython -m coverage run …
command executed as expected. That will let us limp along.The text was updated successfully, but these errors were encountered: