2.1.25
This release brings support for a --venv
execution mode to complement --unzip
and standard
unadorned PEX zip file execution modes. The --venv
execution mode will first install the PEX
file into a virtual environment under ${PEX_ROOT}/venvs
and then re-execute itself from there.
This mode of execution allows you to ship your PEXed application as a single zipfile that
automatically installs itself in a venv and runs from there to eliminate all PEX startup overhead
on subsequent runs and work like a "normal" application.
There is also support for a new resolution mode when building PEX files that allows you to use the
results of a previous resolve by specifying it as a -pex-repository
to resolve from. If you have
many applications sharing a requirements.txt / constraints.txt, this can drastically speed up
resolves.
- Improve PEX repository error for local projects. (#1184)
- Use symlinks to add dists in the Pex CLI. (#1185)
- Suppress
pip debug
warning. (#1183) - Support resolving from a PEX file repository. (#1182)
- PEXEnvironment for a DistributionTarget. (#1178)
- Fix plumbing of 2020-resolver to Pip. (#1180)
- Platform can report supported_tags. (#1177)
- Record original requirements in PEX-INFO. (#1171)
- Tighten requirements parsing. (#1170)
- Type BuildAndInstallRequest. (#1169)
- Type AtomicDirectory. (#1168)
- Type SpawnedJob. (#1167)
- Refresh and type OrderedSet. (#1166)
- PEXEnvironment recursive runtime resolve. (#1165)
- Add support for -r / --constraints URL to the CLI. (#1163)
- Surface Pip dependency conflict information. (#1162)
- Add support for parsing extras and specifiers. (#1161)
- Support project_name_and_version metadata. (#1160)
- docs: fix simple typo, orignal -> original (#1156)
- Support a --venv mode similar to --unzip mode. (#1153)
- Remove redundant dep edge label info. (#1152)
- Remove our reliance on packaging's LegacyVersion. (#1151)
- Implement PEX_INTERPRETER special mode support. (#1149)
- Fix PexInfo.copy. (#1148)