pex-tool / pex

A tool for generating .pex (Python EXecutable) files, lock files and venvs.
https://docs.pex-tool.org/
Apache License 2.0
2.52k stars 258 forks source link

Move wheel install logic into Pex. #2295

Closed jsirois closed 9 months ago

jsirois commented 9 months ago

This sets the stage for doing runtime installation of wheels without needing to ship a copy of Pip in every PEX file. To help prove the robustness, convert the current build time installation of wheel chroots to this mechanism.

Work towards #2292

jsirois commented 9 months ago

N.B.: That the nitty-gritty actually works across lots of vagaries in the wild is well tested by the existing integration tests; none of which needed altering here. That's the main test. I also did a lot of by-hand testing to even get the PR working and then there are a few new tests added of new functionality / functionality not exercised by the existing tests.