-
Notifications
You must be signed in to change notification settings - Fork 18
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
Installation of sdist is (silently) failing #249
Comments
Thanks for reporting the issue! I would need to take a look at your branch to see what's going on here. Originally, the |
I was only able to test now. I did so with 0.8.0 now and eventually it worked. When I first tried with my original noxfile, it was still failing to produce the rinoh directory. At that point, I tried some things (expand)
Giving up, I decided to have a look at the other changes in 0.8.0. After swapping I'll report back in case I bump into this again. |
I ran into this again, when testing get_versions() from #268 (on 0.8.1) 😭 |
@cjolowicz I was wondering whether you were able to reproduce this issue yourself. I want to have another look at it soon, so any extra information you might have could be useful. |
I haven't. Please do let me know whatever you find out about this issue. |
My earlier confusion was caused by pip creating and caching wheels when installing from sdist. To be able to debug this issue, one needs to delete the cached wheel file after every install (or disable caching somehow). The wheel file create by pip contains next to nothing:
When I install the sdist into a venv (after deleting the cached wheel) from the command line using the same arguments to pip as used by nox-poetry, the wheel does include the rinoh directory. By clearing It's not yet clear to me why the added search path affects creation of the wheel. I was hoping you have a clue? Even with the test venv bin path removed, its python is used for running pip. |
Running the pip install command from a terminal after activating the test environment manually, a proper wheel is produced. This revealed that a difference in the TMPPATH environment variable is also involved:
So, instead of adjusting the PATH, setting TMPDIR to the regular temp dir or an empty directory also fixes the issue. The presence of the requirements.txt in I think the wheel building step is executed in TMPDIR, which is affected by the presence of a requirements.txt file. In that case, storing the requirements.txt in a subdirectory would fix this issue. |
Thank you for looking into this! It would be good to know which version of pip you have in that Nox session? This looks a little like pypa/pip#7808 which was fixed in pip 20.2. We set TMPDIR indirectly by invoking |
The pip version in the test env was 21.0.1. But testing with pip 20.0.1, 20.3 and 20.3.3 shows from the same issue.
Not calling Perhaps you can export requirements.txt to |
Thanks for the additional info! Can you see if #298 works for you?
Yes, it looks like we no longer need to have separate requirements.txt per session. I'd like to do this in a separate PR though from the one dealing with TMPDIR. |
Released in 0.8.2 |
I tested 0.8.2, which works. Now I can finally migrate from tox to nox :-) |
Thank you for this very useful package! Unfortunately, I'm unable to test sdists.
My noxfile.py:
$ nox -v -rs unit-3.8
For some reason the rinoh package is missing, but the dist-info file is present:
$ ls -d .nox/unit-3-8/lib/python3.8/site-packages/rinoh* .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_dejavuserif .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_dejavuserif-0.1.3.dist-info .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyrecursor .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyrecursor-0.1.1.dist-info .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyreheros .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyreheros-0.1.1.dist-info .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyrepagella .nox/unit-3-8/lib/python3.8/site-packages/rinoh_typeface_texgyrepagella-0.1.1.dist-info .nox/unit-3-8/lib/python3.8/site-packages/rinohtype-0.5.0.dev1.dist-info
Testing the wheel works fine, though. Using tox, I can test both the sdist and wheel.
I tried to install the sdist by using the same command as executed by nox-poetry (quotes added):
This neither yields the rinoh directory. However, when I drop the sha256 bit, it does appear:
I'm not sure what's going on here. Possibly this is an issue in pip instead.
The text was updated successfully, but these errors were encountered: