On behalf of the PyPA and the pip team, I am pleased to announce that we
have just released pip 20.3, a new version of pip. You can install it by
running `python -m pip install --upgrade pip`.
[Cross-posted to
https://discuss.python.org/t/announcement-pip-20-3-release/5948 which
will be easier to read in a web browser and to link to.]
This is an important and disruptive release -- we [explained why in a
blog post last
year](https://pyfound.blogspot.com/2019/12/moss-czi-support-pip.html). We
even made [a video about
it](https://www.youtube.com/watch?v=B4GQCBBsuNU).
## Highlights
* **DISRUPTION**: Switch to the new dependency resolver by
default. (#9019) Watch out for changes in handling editable
installs, constraints files, and more:
https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-3-2020
* **DEPRECATION**: Deprecate support for Python 3.5 (to be removed in
pip 21.0) (#8181)
* **DEPRECATION**: pip freeze will stop filtering the pip, setuptools,
distribute and wheel packages from pip freeze output in a future
version. To keep the previous behavior, users should use the new
`--exclude` option. (#4256)
* Substantial improvements in new resolver for performance, output and
error messages, avoiding infinite loops, and support for constraints
files.
* Support for PEP 600: Future ‘manylinux’ Platform Tags for Portable
Linux Built Distributions. (#9077)
* Documentation improvements: Resolver migration guide, quickstart
guide, and new documentation theme.
* Add support for MacOS Big Sur compatibility tags. (#9138)
The new resolver is now *on by default*. It is significantly stricter
and more consistent when it receives incompatible instructions, and
reduces support for certain kinds of constraints files, so some
workarounds and workflows may break. Please see [our guide on how to
test and migrate, and how to report
issues](https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-3-2020).
You
can use the deprecated (old) resolver, using the flag
`--use-deprecated=legacy-resolver`, until we remove it in the pip 21.0
release in January 2021.
You can find more details (including deprecations and removals) [in the
changelog](https://pip.pypa.io/en/stable/news/).
## User experience
Command-line output for this version of pip, and documentation to help
with errors, is significantly better, because you worked with our
experts to test and improve it. [Contribute to our user experience work:
sign up to become a member of the UX Studies
group](https://bit.ly/pip-ux-studies) (after you join, we'll notify you
about future UX surveys and interviews).
## What to expect in 20.1
We aim to release pip 20.1 in January 2021, per our [usual release
cadence](https://pip.pypa.io/en/latest/development/release-process/#release-cadence).
You can expect:
* Removal of [Python
2.7](https://pip.pypa.io/en/latest/development/release-process/#python-2-support)
and 3.5 support
* Further improvements in the new resolver
* Removal of legacy resolver support
## Thanks
As with all pip releases, a significant amount of the work was
contributed by pip's user community. Huge thanks to all who have
contributed, whether through code, documentation, issue reports and/or
discussion. Your help keeps pip improving, and is hugely appreciated.
Specific thanks go to Mozilla (through its [Mozilla Open Source
Support](https://www.mozilla.org/en-US/moss/) Awards) and to the [Chan
Zuckerberg Initiative](https://chanzuckerberg.com/eoss/) DAF, an
advised fund of Silicon Valley Community Foundation, for their funding
that enabled substantial work on the new resolver.
That funding went to [Simply Secure](https://simplysecure.org/)
(specifically Georgia Bullen, Bernard Tyers, Nicole Harris, Ngọc
Triệu, and Karissa McKelvey), [Changeset
Consulting](https://changeset.nyc/) (Sumana Harihareswara),
[Atos](https://www.atos.net) (Paul F. Moore), [Tzu-ping
Chung](https://uranusjr.com), [Pradyun Gedam](https://pradyunsg.me/),
and Ilan Schnell. Thanks also to Ernest W. Durbin III at the Python
Software Foundation for liaising with the project.
--
Sumana Harihareswara, pip project manager
Changeset Consulting
https://changeset.nyc
--
Distutils-SIG mailing list -- distutils-sig@python.org
To unsubscribe send an email to distutils-sig-le...@python.org
https://mail.python.org/mailman3/lists/distutils-sig.python.org/
Message archived at
https://mail.python.org/archives/list/distutils-sig@python.org/message/OU6SUVG5EU6LOAVMROAAZO4AI2G6S7EJ/