-
-
Notifications
You must be signed in to change notification settings - Fork 267
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
Plumb reproducible build env vars more thoroughly. #2554
Plumb reproducible build env vars more thoroughly. #2554
Conversation
This helps reduce cache sizes where sdists are built into wheels as well as expanding the set of sdists Pex can lock reproducibly.
c3c12e1
to
f173109
Compare
For the record, the Pip cache size difference where the cache is blown away, then
|
Without going the extra length of exporting `PYTHONHASHSEED=0` or similar, the built sdist and wheel for a given version of the project would have inconsistent random ordering of extras_require entries between builds. This was observed attempting to lock a VCS requirement on this project here: pantsbuild/pants#21145 On the bright side, it led to Pex fixing its building and locking code to be robust to this sort of (unintended) bad behavior: pex-tool/pex#2554
Without going the extra length of exporting `PYTHONHASHSEED=0` or similar, the built sdist and wheel for a given version of the project would have inconsistent random ordering of extras_require entries between builds. This was observed attempting to lock a VCS requirement on this project here: pantsbuild/pants#21145 On the bright side, it led to Pex fixing its building and locking code to be robust to this sort of (unintended) bad behavior: pex-tool/pex#2554
Pants folks: added you FYI since this fixed a problem observed by a Pants user here: pantsbuild/pants#21145 and so you may want this release since that user didn't actually attempt to fix the underlying problem in the wild with the "unstructured" project's build. |
pantsbuild/pants#21545 upgrades Pants to use Pex 2.20.3, which includes this change. |
To pick up various fixes, including pex-tool/pex#2554
This helps reduce cache sizes where sdists are built into wheels as well
as expanding the set of sdists Pex can lock reproducibly.