Releases: pex-tool/pex
pex 2.2.0
2.2.0
This release adds tools to interact with Pex's new embedded offline
documentation. You can browse those docs with pex --docs
or, more
flexibly, with pex3 docs
. See pex3 docs --help
for all the options
available.
This release also returns to SemVer versioning
practices. Simply, you can expect 3 things from Pex version numbers:
- The first component (the major version) will remain 2 as long as
possible. Pex tries very hard to never break existing users and to
allow them to upgrade without fear of breaking. This includes not
breaking Python compatibility. In Pex 2, Python 2.7 is supported as
well as Python 3.5+ for both CPython and PyPy. Pex will only continue
to add support for new CPython and PyPy releases and never remove
support for already supported Python versions while the major version
remains 2. - The second component (the minor version) will be incremented whenever
a release adds a feature. Since Pex is a command line tool only (not
a library), this means you can expect a new subcommand, a new option,
or a new allowable option value was added. Bugs might also have been
fixed. - The third component (the patch version) indicates only bugs were
fixed.
You can expect the minor version to get pretty big going forward!
- Add
pex --docs
and severalpex3 docs
options. (#2365)
pex 2.1.164
2.1.164
This release moves Pex documentation from https://pex.readthedocs.io to
https://docs.pex-tool.org. While legacy versioned docs will remain
available at RTD in perpetuity, going forward only the latest Pex
release docs will be available online at the https://docs.pex-tool.org
site. If you want to see the Pex docs for the version you are currently
using, Pex now supports the pex3 docs
command which will serve the
docs for your Pex version locally, offline, but with full functionality,
including search.
- Re-work Pex documentation. (#2362)
pex 2.1.163
2.1.163
This release fixes Pex to work in certain OS / SSL environments where it
did not previously. In particular, under certain Fedora distributions
using certain Python Build Standalone interpreters.
- Create SSLContexts in the main thread. (#2356)
pex 2.1.162
2.1.162
This release adds support for --pip-version 24.0
as well as fixing a
bug in URL encoding for artifacts in lock files. Notably, torch's use of
local version identifiers (+cpu
) combined with their find links page
at https://download.pytorch.org/whl/torch_stable.html would lead to
pex3 lock create
errors.
pex 2.1.161
2.1.161
This release adds support for --only-wheel <project name>
and
--only-build <project name>
to allow finer control over which
distribution artifacts are resolved when building a PEX or creating or
updating a lock file. These options correspond to Pip's --only-binary
and --no-binary
options with project name arguments.
- Plumb Pip's
--{no,only}-binary
. (#2346)
pex 2.1.160
2.1.160
This release adds the ability for pex3 lock update
to replace
requirements in a lock or delete them from the lock using
-R
/ --replace-project
and -d
/ --delete-project
, respectively.
- Lock updates support deleting & replacing reqs. (#2335)
pex 2.1.159
2.1.159
This release brings a fix for leaks of Pex's vendored attrs
onto the
sys.path
of PEXes during boot in common usage scenarios.
- Fix vendored attrs
sys.path
leak. (#2328)
pex 2.1.158
2.1.158
This release adds support for tab completion to all PEX repls running
under Pythons with the readline
module available. This tab completion
support is on-par with newer Python REPL out of the box tab completion
support.
- Add tab-completion support to PEX repls. (#2321)
pex 2.1.157
2.1.157
This release fixes a bug in pex3 lock update
for updates that leave
projects unchanged whose primary artifact is an sdist.
- Fix lock updates for locks with sdist bystanders. (#2325)
pex 2.1.156
2.1.156
This release optimizes wheel install overhead for warm caches. Notably,
this speeds up warm boot for PEXes containing large distributions like
PyTorch as well as creating venvs from them.
- Lower noop wheel install overhead. (#2315)