Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 22.0 #10841

Merged
merged 6 commits into from
Jan 30, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions AUTHORS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ Alan Yee
Albert Tugushev
Albert-Guan
albertg
Alberto Sottile
Aleks Bunin
Alethea Flowers
Alex Gaynor
Expand Down Expand Up @@ -124,6 +125,7 @@ Chris Brinker
Chris Hunt
Chris Jerdonek
Chris McDonough
Chris Pawley
Chris Wolfe
Christian Clauss
Christian Heimes
Expand Down Expand Up @@ -155,6 +157,7 @@ Damian Shaw
Dan Black
Dan Savilonis
Dan Sully
Dane Hillard
daniel
Daniel Collins
Daniel Hahler
Expand Down Expand Up @@ -195,6 +198,7 @@ DiegoCaraballo
Dimitri Merejkowsky
Dirk Stolle
Dmitry Gladkov
Dmitry Volodin
Domen Kožar
Dominic Davis-Foster
Donald Stufft
Expand Down Expand Up @@ -248,6 +252,7 @@ gizmoguy1
gkdoc
Gopinath M
GOTO Hayato
gousaiyang
gpiks
Greg Roodt
Greg Ward
Expand Down Expand Up @@ -290,6 +295,7 @@ Jakub Wilk
James Cleveland
James Curtin
James Firth
James Gerity
James Polley
Jan Pokorný
Jannis Leidel
Expand Down Expand Up @@ -358,13 +364,15 @@ Laurent Bristiel
Laurent LAPORTE
Laurie O
Laurie Opperman
layday
Leon Sasson
Lev Givon
Lincoln de Sousa
Lipis
Loren Carvalho
Lucas Cimon
Ludovic Gasc
Lukas Juhrich
Luke Macken
Luo Jiebin
luojiebin
Expand Down Expand Up @@ -395,6 +403,7 @@ Matthew Trumbell
Matthew Willson
Matthias Bussonnier
mattip
Maurits van Rees
Max W Chase
Maxim Kurnikov
Maxime Rouyrre
Expand All @@ -409,6 +418,7 @@ Michael E. Karpeles
Michael Klich
Michael Williamson
michaelpacer
Michał Górny
Mickaël Schoentgen
Miguel Araujo Perez
Mihir Singh
Expand All @@ -420,7 +430,10 @@ Miro Hrončok
Monica Baluna
montefra
Monty Taylor
Nadav Wexler
Nate Coraor
Nate Prewitt
Nathan Houghton
Nathaniel J. Smith
Nehal J Wani
Neil Botelho
Expand Down Expand Up @@ -472,6 +485,7 @@ Paulus Schoutsen
Pavel Safronov
Pavithra Eswaramoorthy
Pawel Jasinski
Paweł Szramowski
Pekka Klärck
Peter Gessler
Peter Lisák
Expand Down Expand Up @@ -602,6 +616,7 @@ toonarmycaptain
Toshio Kuratomi
toxinu
Travis Swicegood
Tushar Sadhwani
Tzu-ping Chung
Valentin Haenel
Victor Stinner
Expand Down
64 changes: 64 additions & 0 deletions NEWS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,70 @@

.. towncrier release notes start

22.0 (2022-01-29)
=================

Process
-------

- Completely replace :pypi:`tox` in our development workflow, with :pypi:`nox`.

Deprecations and Removals
-------------------------

- Deprecate alternative progress bar styles, leaving only ``on`` and ``off`` as available choices. (`#10462 <https://github.com/pypa/pip/issues/10462>`_)
- Drop support for Python 3.6. (`#10641 <https://github.com/pypa/pip/issues/10641>`_)
- Disable location mismatch warnings on Python versions prior to 3.10.

These warnings were helping identify potential issues as part of the sysconfig -> distutils transition, and we no longer need to rely on reports from older Python versions for information on the transition. (`#10840 <https://github.com/pypa/pip/issues/10840>`_)

Features
--------

- Changed ``PackageFinder`` to parse HTML documents using the stdlib :class:`html.parser.HTMLParser` class instead of the ``html5lib`` package.

For now, the deprecated ``html5lib`` code remains and can be used with the ``--use-deprecated=html5lib`` command line option. However, it will be removed in a future pip release. (`#10291 <https://github.com/pypa/pip/issues/10291>`_)
- Utilise ``rich`` for presenting pip's default download progress bar. (`#10462 <https://github.com/pypa/pip/issues/10462>`_)
- Present a better error message when an invalid wheel file is encountered, providing more context where the invalid wheel file is. (`#10535 <https://github.com/pypa/pip/issues/10535>`_)
- Documents the ``--require-virtualenv`` flag for ``pip install``. (`#10588 <https://github.com/pypa/pip/issues/10588>`_)
- ``pip install <tab>`` autocompletes paths. (`#10646 <https://github.com/pypa/pip/issues/10646>`_)
- Allow Python distributors to opt-out from or opt-in to the ``sysconfig`` installation scheme backend by setting ``sysconfig._PIP_USE_SYSCONFIG`` to ``True`` or ``False``. (`#10647 <https://github.com/pypa/pip/issues/10647>`_)
- Make it possible to deselect tests requiring cryptography package on systems where it cannot be installed. (`#10686 <https://github.com/pypa/pip/issues/10686>`_)
- Start using Rich for presenting error messages in a consistent format. (`#10703 <https://github.com/pypa/pip/issues/10703>`_)
- Improve presentation of errors from subprocesses. (`#10705 <https://github.com/pypa/pip/issues/10705>`_)
- Forward pip's verbosity configuration to VCS tools to control their output accordingly. (`#8819 <https://github.com/pypa/pip/issues/8819>`_)

Bug Fixes
---------

- Optimize installation order calculation to improve performance when installing requirements that form a complex dependency graph with a large amount of edges. (`#10557 <https://github.com/pypa/pip/issues/10557>`_)
- When a package is requested by the user for upgrade, correctly identify that the extra-ed variant of that same package depended by another user-requested package is requesting the same package, and upgrade it accordingly. (`#10613 <https://github.com/pypa/pip/issues/10613>`_)
- Prevent pip from installing yanked releases unless explicitly pinned via the ``==`` or ``===`` operators. (`#10617 <https://github.com/pypa/pip/issues/10617>`_)
- Stop backtracking on build failures, by instead surfacing them to the user and aborting immediately. This behaviour provides more immediate feedback when a package cannot be built due to missing build dependencies or platform incompatibility. (`#10655 <https://github.com/pypa/pip/issues/10655>`_)
- Silence ``Value for <location> does not match`` warning caused by an erroneous patch in Slackware-distributed Python 3.9. (`#10668 <https://github.com/pypa/pip/issues/10668>`_)
- Fix an issue where pip did not consider dependencies with and without extras to be equal (`#9644 <https://github.com/pypa/pip/issues/9644>`_)

Vendored Libraries
------------------

- Upgrade CacheControl to 0.12.10
- Upgrade certifi to 2021.10.8
- Upgrade distlib to 0.3.4
- Upgrade idna to 3.3
- Upgrade msgpack to 1.0.3
- Upgrade packaging to 21.3
- Upgrade platformdirs to 2.4.1
- Add pygments 2.11.2 as a vendored dependency.
- Tree-trim unused portions of vendored pygments, to reduce the distribution size.
- Upgrade pyparsing to 3.0.7
- Upgrade Requests to 2.27.1
- Upgrade resolvelib to 0.8.1
- Add rich 11.0.0 as a vendored dependency.
- Tree-trim unused portions of vendored rich, to reduce the distribution size.
- Add typing_extensions 4.0.1 as a vendored dependency.
- Upgrade urllib3 to 1.26.8


21.3.1 (2021-10-22)
===================

Expand Down
5 changes: 0 additions & 5 deletions news/10291.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10462.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10462.removal.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10535.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10557.bugfix.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10588.feature.rst

This file was deleted.

Empty file removed news/10593.trivial.rst
Empty file.
3 changes: 0 additions & 3 deletions news/10613.bugfix.rst

This file was deleted.

2 changes: 0 additions & 2 deletions news/10617.bugfix.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10627.trivial.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10641.removal.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10646.feature.rst

This file was deleted.

3 changes: 0 additions & 3 deletions news/10647.feature.rst

This file was deleted.

4 changes: 0 additions & 4 deletions news/10655.bugfix.rst

This file was deleted.

2 changes: 0 additions & 2 deletions news/10668.process.rst

This file was deleted.

2 changes: 0 additions & 2 deletions news/10686.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10693.process.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10703.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/10705.feature.rst

This file was deleted.

3 changes: 0 additions & 3 deletions news/10840.removal.rst

This file was deleted.

Empty file.
Empty file.
Empty file.
Empty file.
1 change: 0 additions & 1 deletion news/8819.feature.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/9644.bugfix.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/CacheControl.vendor.rst

This file was deleted.

Empty file.
1 change: 0 additions & 1 deletion news/certifi.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/distlib.vendor.rst

This file was deleted.

Empty file.
1 change: 0 additions & 1 deletion news/idna.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/msgpack.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/packaging.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/platformdirs.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/pygments-modifications.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/pygments.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/pyparsing.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/requests.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/resolvelib.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/rich-modifications.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/rich.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/typing_extensions.vendor.rst

This file was deleted.

1 change: 0 additions & 1 deletion news/urllib3.vendor.rst

This file was deleted.

2 changes: 1 addition & 1 deletion src/pip/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from typing import List, Optional

__version__ = "22.0.dev0"
__version__ = "22.1.dev0"


def main(args: Optional[List[str]] = None) -> int:
Expand Down
2 changes: 1 addition & 1 deletion src/pip/_internal/resolution/resolvelib/factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ def iter_index_candidate_infos() -> Iterator[IndexCandidateInfo]:
icans = list(result.iter_applicable())

# PEP 592: Yanked releases are ignored unless the specifier
# explicitely pins a version (via '==' or '===') that can be
# explicitly pins a version (via '==' or '===') that can be
# solely satisfied by a yanked release.
all_yanked = all(ican.link.is_yanked for ican in icans)

Expand Down
2 changes: 0 additions & 2 deletions tools/news/template.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
{#- Heading for individual version #}
{{ versiondata.version }} ({{ versiondata.date }})
{{ top_underline * ((versiondata.version + versiondata.date)|length + 3) }}

{#

The following loop will run exactly once, with ``section_name == ""``.
Expand All @@ -30,7 +29,6 @@
{# Heading for individual types #}
{{ definitions[type_]['name'] }}
{{ underlines[0] * definitions[type_]['name']|length }}

{# This is the loop that generates individual entries #}
{% for message, issue_reference in sections[section_name][type_]|dictsort(by='value') %}

Expand Down