Skip to content

Releases: pex-tool/pex

pex 2.40.2

08 Jun 21:53
v2.40.2
995c6c6
Compare
Choose a tag to compare

2.40.2

This relase fixes Pex to work in more scenarios on Windows. Windows is still not officially
supported though!

  • Fix some Windows cross-drive issues. (#2781)

file sha256 size
pex 75bca8edf2232225cc1707b794ebfb9517aa50ca1c7143420186ad02b14ecaf6 4825223
pex-linux-aarch64 cc7b63aa1c49afb8b6b796e8f25a0796e05b30240f48b7b3e22e8cccb40858cf 24555503
pex-linux-armv7l 0516e96c24eecb018943b2916780213135cd7088ed14855ad76a938e7cf3682a 24084885
pex-linux-x86_64 423b77be8158d71c4901194babea448309bef2f00a6d623b3a98410bfe3d041d 28618561
pex-macos-aarch64 19ed12124e95a0184932c4ec953a829b0e6ce544b1e6da2cfb91c57c790a4a06 22473518
pex-macos-x86_64 9be7fbf25306d47cb4fc346d864349f48766bdecfb6008910c5c0c84bbfcbb83 22935052

pex 2.40.1

23 May 00:51
v2.40.1
4d0e819
Compare
Choose a tag to compare

2.40.1

This release fixes pex --pylock for locked sdist and wheel artifacts whose locked URL path
basename does not match the optional sdist or wheel name field when present. Notably, this fixes
interop with uv which appears to use the name field to store the normalized name of the wheel
when the wheel name is not normalized already in the index URL basename.

  • Fix --pylock handling of sdist and wheel name. (#2775)

file sha256 size
pex 2153ed70e82424e673a92b5e6e8ff92e13abca7475ad37ed5123391233a3d554 4831780
pex-linux-aarch64 3f88abc1168ad54f3a6544e767c7acd804b9148dcd8afb249590e90f34abb035 24562069
pex-linux-armv7l 2f6d0b9f951fc5d58d1971e18de96ba438c936ac52e59705abd612f0d67e3cf9 24091449
pex-linux-x86_64 9168bb977823304315ec8cfe9489352f42b1ba315d503ea9965427f69ac2ff08 28625125
pex-macos-aarch64 a537f5f04ab7f29045f69c730e21c3052f07f4361c4aa07faa2eb2d076022f46 22480081
pex-macos-x86_64 82a7fc32d0de3645b15c89293053d99deeacbec6dfcb76e4589fa3147f799432 22941610

pex 2.40.0

22 May 03:19
v2.40.0
acdb1ca
Compare
Choose a tag to compare

2.40.0

This release fills out --pylock support with --pylock-extra and --pylock-group to have Pex
resolve extras and dependency groups defined for a PEP-751 lock. This support only works when Pex
is run under Python 3.8 or newer.

  • Support PEP-751 extras and dependency groups. (#2770)

file sha256 size
pex 1295f355b60d9081b4c408b0a035d2dff4056611f8c469d0bf434de92451254b 4831608
pex-linux-aarch64 86578cbe2181f783513dec0d3fd0760d9a8dc95a8bb8e846e6347ca5277a8133 24561899
pex-linux-armv7l 8c3a2b25b4ead23bc6a40cd216613f244135f87269f50a29baa74f95d700c6ee 24091274
pex-linux-x86_64 07c953165ef226e8f18034cec97f7f7de135da21eddfb7259ac089b4917decf2 28624950
pex-macos-aarch64 c5f8f947d533f027309c0d5fd822fb5fcabf32cce248cc6f6dafd0bc5f4c1ae1 22479914
pex-macos-x86_64 915c124a6c279efcb92f3044f4d05fe973b431d96d22743c9f831c486ab8d217 22941433

pex 2.39.0

20 May 23:09
v2.39.0
aa641c0
Compare
Choose a tag to compare

2.39.0

This release adds support for pex --pylock and pex3 venv create --pylock for building PEXes and
venvs from pylock.toml locks. In both cases PEX supports subsetting the lock if it
provides dependencies metadata for its locked packages, but this metadata is optional in the spec;
so your mileage may vary. If the metadata is not available and was required, Pex will let you know
with an appropriate error post-resolve and pre-building the final PEX or venv.

  • Add support for pex --pylock. (#2766)

file sha256 size
pex 3b7391011bb0eebb8d8bb1cc3e6ad577ea5c9a38ab0667a75cf9c272d366faef 4830546
pex-linux-aarch64 c3f29ec2625eaec78d2e09e793a2bc58b9ec29b20bd9965f16255e61f3a12379 24560832
pex-linux-armv7l c2ac462ed4ad294a9d43572920c053d5ed4a052245b17ee85d67d49fbeaf1ddc 24090213
pex-linux-x86_64 c11a31a25f5889730a81fd56a01bf21ef58d830f76edf72499e9bd0d27656311 28623888
pex-macos-aarch64 91a3e0404aa865cb181ea791645ffcb5e16e33c10ea5c46303093c023f5ba5b2 22478848
pex-macos-x86_64 5a86d90f1b3a077af4770d11c13da56178e5131f86504313394a9bb0b6c48b11 22940379

pex 2.38.1

15 May 01:04
v2.38.1
93d76da
Compare
Choose a tag to compare

2.38.1

This release fixes a long-standing bug parsing requirements files that included other requirements
files.

  • Fix requirement file includes relative path handling. (#2764)

file sha256 size
pex 4839cb13232c9918279198a4651193cd58a03920ab0c5a5772fa96e00de21904 4813104
pex-linux-aarch64 7ea650d6d86c8594e5d575a171f0e22fa57e175834b431656edd735fcbc950f0 24543395
pex-linux-armv7l 7614c2bf6514fb85cabf14a6ae0b64799eebbe4b7e2cd8fde8e92e0758396e7c 24072764
pex-linux-x86_64 438e3a930cebc88730cf5516914eefd2aa3b08d3a88791cbb7349d1b2d3ed2a3 28606446
pex-macos-aarch64 0b7898033ee94fc2d9981e157613c1dc5b0e3ab22de9bfd7696009ba1ebfe670 22461410
pex-macos-x86_64 35fae99caed72c36a0a27fcfef881605f2b68a1e5991f267e12ba358be35c6d2 22922932

pex 2.38.0

11 May 22:45
v2.38.0
81f6ae6
Compare
Choose a tag to compare

2.38.0

This release adds support for pex3 lock export --format pep-751 to export Pex locks in the new
pylock.toml format. pex3 lock export-subset also supports pylock.toml and both
forms of export respect universal locks, leveraging the optional marker package
field to make packages installable or not based on the environment the exported lock is used to
install in.

This release does not include support for building PEXes using PEP-751 locks. Add your concrete
use case to #2756 if you have one.

  • Add pex3 lock export --format pep-751 support. (#2760)

file sha256 size
pex b556242560fc12823147a691c56cefc2a567e1db6fc9efab527d82f6f7380960 4813103
pex-linux-aarch64 60dfa8f705d736a4a60b6f8321ee537d77a5fbc94f7cd92ef697d9272df67776 24543391
pex-linux-armv7l f6df8255fde82aaa8602ff9f778d223ae82036848d63639dc69b5501b7407c75 24072762
pex-linux-x86_64 03db7bd44c239cfd0c01cc13d96498054996f6146156d33a3de92d448de8ac2f 28606441
pex-macos-aarch64 9a64a7b69a29346a943fb66494b6307c81ec9a36032fe1974824b2ece81edc4f 22461406
pex-macos-x86_64 6707c57326b640a7856c35957e08a817f114ffdaaee54a6e66eafae95c2c23bd 22922934

pex 2.37.0

07 May 21:49
v2.37.0
fed48cf
Compare
Choose a tag to compare

2.37.0

This release fixes a bug in lock file generation for --pip-version >= 25.1 that would omit some
abi3 wheels from locks.

In addition, support for the latest Pip 25.1.1 bugfix release is also added.

  • Fix lock support for --pip-version >= 25.1. (#2754)

file sha256 size
pex 7c51adfaaef9c48ef41f36053b4c951d85a675c2723e821e12617793ae8f2275 4812111
pex-linux-aarch64 04adfc0944ce5b77fd1a0abbf5bb8c211d0649cd1a25e0a765cbad3abac87145 24542400
pex-linux-armv7l 24560ff27c9320973ae83e879b28a84703054d54c7db6c01595040795bc69900 24071776
pex-linux-x86_64 84049a18b93c14f380f67521f5a32f4a254beffa8ae7e1c1e89f6810a0a626fa 28605450
pex-macos-aarch64 adb571ce6c096c515419c15e132c1ed7f17fc27d3f343a69b82094c72cb6fa9a 22460412
pex-macos-x86_64 0661639ec94e449011c43163b8464075275cca4f2b7acaeb072b45192099f7cf 22921941

pex 2.36.1

29 Apr 02:49
v2.36.1
149e91a
Compare
Choose a tag to compare

2.36.1

This release fixes a few issues with creating Pex locks when source requirements were involved.

Previously, locking VCS requirements would fail for projects with non-normalized project names,
e.g.: PySocks vs its normalized form of pysocks.

Additionally, locking would fail when the requirements were specified at least in part via
requirements files (-r / --requirements) and there was either a local project or a VCS
requirement contained in the requirements files.

  • Fix Pex locking for source requirements. (#2750)

file sha256 size
pex 548fbee2fc26c15be56b8c7b17c99ffd7950763861712249db14f9b6f824e314 4812042
pex-linux-aarch64 a9dd2fce698c034de014c71bd36702ff39b779eaaf1ef3247bce2f709bb6cfaa 24542329
pex-linux-armv7l 45a7f87031320a8bf4d0cf840ebd3114413c4789ac0620fd488ac7f9b54e4cff 24071702
pex-linux-x86_64 1a6c6f39d988a5478bbc1d772a27672984b8d304f03073565c2cfdc00598cc39 28605383
pex-macos-aarch64 03c2162a945bb662c8639b72e59ef784579108723bfa44d8b47a69b052ab8243 22460341
pex-macos-x86_64 7e22b301907439f2f04ef93e64ca557f8e614289e4e091bca9658d613580be94 22921868

pex 2.36.0

28 Apr 07:47
v2.36.0
dff0a23
Compare
Choose a tag to compare

2.36.0

This release brings support for creating PEXes that target Android. The Pip 25.1 upgrade in Pex
2.34.0 brought support for resolving Android platform-specific wheels and this releases upgrade
of Pex's vendored packaging to 25.0 brings support for Pex properly dealing with those Android
platform-specific wheels when packaging PEXes and when booting up from a PEX.

  • Upgrade to latest packaging for Python 3.8+. (#2748)

file sha256 size
pex a08968717dd7bf24d0e7f2800cf44f5308555f727b1d371546815904c8f6d453 4812034
pex-linux-aarch64 1f300017bd7df5790c5c46f5bd3683cc5b579ece1bb6bf3487808a8a75233a0f 24542321
pex-linux-armv7l bd55c0b4b8fa208f47d067cfe76ba0c6869a908adab60743e963faf633a84216 24071704
pex-linux-x86_64 0b7100ce839591e1b9a9a86764415585219afd569458e7862742121649bc5128 28605382
pex-macos-aarch64 d436ec0cdf04c9baf3963795bbef5aab1e0761f0ccd395ab40504c7011170233 22460332
pex-macos-x86_64 207523179473eb3d2b90e3949e160c42e2a717aee2145b9ca332b72496cf58fa 22921872

pex 2.35.0

27 Apr 18:28
v2.35.0
274b0d3
Compare
Choose a tag to compare

2.35.0

This release adds support for the --resume-retries option available in Pip 25.1. If you configure
Pex to use Pip 25.1 or newer, it will now try to resume incomplete downloads 3 times by default.

  • Add support for --resume-retries in Pip 25.1. (#2746)

file sha256 size
pex d401d0623023c9cded3b52f2519a1221041fe718aa36460b1c6b244070fad4b2 4679709
pex-linux-aarch64 c17d8786c3f71c65e79cc448c26ec030e08ba7f59563c501a1d2802326cf89a3 24410001
pex-linux-armv7l 962cd8d2ac70dc76299d23d8fd14d4e7ee677dbee25031fa7834e56e069d50a5 23939377
pex-linux-x86_64 14f5a2275859ce3a9005692db6d5363aa3c2d84f738be39351cee1f433d3dd13 28473055
pex-macos-aarch64 b51bc60f737db83b4d8b2d3bb466d31b62aee7b605494440aca3951a2e6c9cf8 22328015
pex-macos-x86_64 40acafe889a042b10596f2832e439f158886541f0d316fc2afcb418e3c4ed6bb 22789544