Skip to content

Releases: pex-tool/pex

pex 2.1.129

11 Mar 02:42
v2.1.129
86ecdeb
Compare
Choose a tag to compare

2.1.129

This release fixes a bug downloading a VCS requirement from a lock when
the ambient Python interpreter used to run Pex does not meet the
Requires-Python constraint of the VCS requirement.

  • Fix VCS lock downloads to respect target. (#2094)

pex 2.1.128

09 Mar 05:29
v2.1.128
e5661d6
Compare
Choose a tag to compare

2.1.128

This release fixes a regression introduced in Pex 2.1.120 that caused
--no-venv-site-packages-copies (the default when using --venv)
to to be ignored for both zipapp PEXes (the default) and
--layout packed PEXes.

  • Fix regression in venv symlinking. (#2090)

pex 2.1.127

08 Mar 00:12
v2.1.127
9b85bff
Compare
Choose a tag to compare

2.1.127

This release fixes --lock resolve sub-setting for local project
requirements.

  • Fix lock subsetting for local projects. (#2085)

pex 2.1.126

04 Mar 15:04
v2.1.126
f0c162d
Compare
Choose a tag to compare

2.1.126

This release fixes a long standing (> 4 years old!) concurrency bug
when building the same sdist for the 1st time and racing another Pex
process doing the same sdist build.

  • Guard against racing sdist builds. (#2080)

pex 2.1.125

02 Mar 20:32
v2.1.125
a66005f
Compare
Choose a tag to compare

2.1.125

This release makes --platform and --complete-platform resolves
and locks as permissive as possible. If such a resolve or lock only has
an sdist available for a certain project, that sdist will now be used if
it builds to a wheel compatible with the specified foreign platform(s).

  • Attempt "cross-builds" of sdists for foreign platforms. (#2075)

pex 2.1.124

27 Feb 06:39
v2.1.124
aa10bf1
Compare
Choose a tag to compare

2.1.124

This release adds support for specifying --non-hermetic-venv-scripts
when building a --venv PEX. This can be useful when integrating with
frameworks that do setup via PYTHONPATH manipulation.

Support for Pip 23.0.1 and setuptools 67.4.0 is added via
--pip-version 23.0.1.

Additionally, more work towards hardening Pex against rare concurrency
issues in its atomic directory handling is included.

  • Introduce --non-hermetic-venv-scripts. (#2068)
  • Wrap inter-process locks in in-process locks. (#2070)
  • Add support for Pip 23.0.1. (#2072)

pex 2.1.123

23 Feb 06:08
v2.1.123
49deb6b
Compare
Choose a tag to compare

2.1.123

This release fixes a few pex3 lock create bugs.

There was a regression introduced in Pex 2.1.122 where projects that
used a PEP-518 [build-system] requires but specified no
corresponding build-backend would fail to lock.

There were also two long standing issues handling more exotic direct
reference URL requirements. Source archives with names not following the
standard Python sdist naming scheme of
<project name>-<version>.{zip,tar.gz} would cause a lock error. An
important class of these is provided by GitHub's magic source archive
download URLs. Also, although local projects addressed with Pip
proprietary support for pure local path requirements would lock, the
same local projects addressed via
<project name> @ file://<local project path> would also cause a lock
error. Both of these cases are now fixed and can be locked successfully.

When locking with an --interpreter-constraint, any resolve
traversing wheels using the pypyXY or cpythonXY python tags
would cause the lock to error. Wheels with this form of python tag are
now handled correctly.

  • Handle [build-system] with no build-backend. (#2064)
  • Handle locking all direct reference URL forms. (#2060)
  • Fix python tag handling in IC locks. (#2061)

pex 2.1.122

12 Feb 19:23
v2.1.122
06570eb
Compare
Choose a tag to compare

2.1.122

This release fixes posix file locks used by Pex internally and enhances
lock creation to support locking sdist-only C extension projects that
do not build on the current platform. Pex is also updated to support
--pip-version 22.3.1 and --pip-version 23.0, bringing it up to date
with the latest Pip's available.

  • Support the latest Pip releases: 22.3.1 & 23.0 (#2056)
  • Lock sdists with prepare-metadata-for-build-wheel. (#2053)
  • Fix execute_parallel "leaking" a thread. (#2052)

pex 2.1.121

18 Jan 23:43
v2.1.121
97a2497
Compare
Choose a tag to compare

2.1.121

This release fixes two bugs brought to light trying to interoperate with
Poetry projects.

  • Support space separated markers in URL reqs. (#2039)
  • Handle file:// URL deps in distributions. (#2041)

pex 2.1.120

10 Jan 00:13
v2.1.120
32a085c
Compare
Choose a tag to compare

2.1.120

This release completes the --complete-platform fix started in
Pex 2.1.116 by #1991. That fix did not work in all cases but now does.

PEXes run in interpreter mode now support command history when the
underlying interpreter being used to run the PEX does; use the
PEX_INTERPRETER_HISTORY bool env var to turn this on.

Additionally, PEXes built with the combination
--layout loose --venv --no-venv-site-packages-copies are fixed to
be robust to moves of the source loose PEX directory.

  • Fix loose --venv PEXes to be robust to moves. (#2033)
  • Fix interpreter resolution when using --complete-platform with --resolve-local-platforms (#2031)
  • Support REPL command history. (#2018)