-
-
Notifications
You must be signed in to change notification settings - Fork 292
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
Fix wheel installs: account for purelib & platlib. #1867
Conversation
I manually tested this on ubuntu:20.04 and centos:7 images. They both worked, but the interesting case was CentOS:
Note that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Intricate. Thanks for the great comment
Lovely, this doesn't work on Mac: https://github.com/pantsbuild/pex/runs/7520701726?check_suite_focus=true#step:7:1857 I'll need to trim down CI and start debugging. |
This fixes a further corner-case detecting `--prefix` installation `site-packages` directories surfaced by Red Hat based OSes where "purelib" and "platlib" installation directories differ (`lib/` vs. `lib64/`). We now simply check each `site-packages` directory found under the installation `--prefix` for an installation `RECORD` and use the first such one found. This is safe since we know `pip install --no-deps --prefix <dist>` only installs one distribution once. Fixes pex-tool#1866
Alright, please take another look - the strategy has changed slightly. I re-ran the docker manual checks, still good:
|
This fixes a further corner-case detecting
--prefix
installationsite-packages
directories surfaced by Red Hat based OSes where"purelib" and "platlib" installation directories differ (
lib/
vs.lib64/
). We now simply check eachsite-packages
directory foundunder the installation
--prefix
for an installationRECORD
and usethe first such one found. This is safe since we know
pip install --no-deps --prefix <dist>
only installs one distributiononce.
Fixes #1866