Skip to content

Commit 2fad07e

Browse files
committed
Merge branch 'main' into no-import-from-conftest
2 parents c3160c5 + ff05e42 commit 2fad07e

File tree

250 files changed

+7955
-3159
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

250 files changed

+7955
-3159
lines changed

.git-blame-ignore-revs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
917b41d6d73535c090fc312668dff353cdaef906 # Blacken docs/html/conf.py
2+
ed383dd8afa8fe0250dcf9b8962927ada0e21c89 # Blacken docs/pip_sphinxext.py
3+
228405e62451abe8a66233573035007df4be575f # Blacken noxfile.py
4+
f477a9f490e978177b71c9dbaa5465c51ea21129 # Blacken setup.py
5+
e59ba23468390217479465019f8d78e724a23550 # Blacken src/pip/__main__.py
6+
d7013db084e9a52242354ee5754dc5d19ccf062e # Blacken src/pip/_internal/build_env.py
7+
30e9ffacae75378fc3e3df48f754dabad037edb9 # Blacken src/pip/_internal/cache.py
8+
8341d56b46776a805286218ac5fb0e7850fd9341 # Blacken src/pip/_internal/cli/autocompletion.py
9+
3d3461ed65208656358b3595e25d8c31c5c89470 # Blacken src/pip/_internal/cli/base_command.py
10+
d489b0f1b104bc936b0fb17e6c33633664ebdc0e # Blacken src/pip/_internal/cli/cmdoptions.py
11+
591fe4841aefe9befa0530f2a54f820c4ecbb392 # Blacken src/pip/_internal/cli/command_context.py
12+
9265b28ef7248ae1847a80384dbeeb8119c3e2f5 # Blacken src/pip/_internal/cli/main.py
13+
847a369364878c38d210c90beed2737bb6fb3a85 # Blacken src/pip/_internal/cli/main_parser.py
14+
ec97119067041ae58b963935ff5f0e5d9fead80c # Blacken src/pip/_internal/cli/parser.py
15+
6e3b8de22fa39fa3073599ecf9db61367f4b3b32 # Blacken src/pip/_internal/cli/progress_bars.py
16+
55405227de983c5bd5bf0858ea12dbe537d3e490 # Blacken src/pip/_internal/cli/req_command.py
17+
d5ca5c850cae9a0c64882a8f49d3a318699a7e2e # Blacken src/pip/_internal/cli/spinners.py
18+
9747cb48f8430a7a91b36fe697dd18dbddb319f0 # Blacken src/pip/_internal/commands/__init__.py
19+
1c09fd6f124df08ca36bed68085ad68e89bb1957 # Blacken src/pip/_internal/commands/cache.py
20+
315e93d7eb87cd476afcc4eaf0f01a7b56a5037f # Blacken src/pip/_internal/commands/check.py
21+
8ae3b96ed7d24fd24024ccce4840da0dcf635f26 # Blacken src/pip/_internal/commands/completion.py
22+
42ca4792202f26a293ee48380718743a80bbee37 # Blacken src/pip/_internal/commands/configuration.py
23+
790ad78fcd43d41a5bef9dca34a3c128d05eb02c # Blacken src/pip/_internal/commands/debug.py
24+
a6fcc8f045afe257ce321f4012fc8fcb4be01eb3 # Blacken src/pip/_internal/commands/download.py
25+
920e735dfc60109351fbe2f4c483c2f6ede9e52d # Blacken src/pip/_internal/commands/freeze.py
26+
053004e0fcf0851238b1064fbce13aea87b24e9c # Blacken src/pip/_internal/commands/hash.py
27+
a6b6ae487e52c2242045b64cb8962e0a992cfd76 # Blacken src/pip/_internal/commands/help.py
28+
2495cf95a6c7eb61ccf1f9f0e8b8d736af914e53 # Blacken __main__.py
29+
c7ee560e00b85f7486b452c14ff49e4737996eda # Blacken tools/
30+
8e2e1964a4f0a060f7299a96a911c9e116b2283d # Blacken src/pip/_internal/commands/
31+
1bc0eef05679e87f45540ab0a294667cb3c6a88e # Blacken src/pip/_internal/network/
32+
069b01932a7d64a81c708c6254cc93e1f89e6783 # Blacken src/pip/_internal/req
33+
1897784d59e0d5fcda2dd75fea54ddd8be3d502a # Blacken src/pip/_internal/index
34+
94999255d5ede440c37137d210666fdf64302e75 # Reformat the codebase, with black
35+
585037a80a1177f1fa92e159a7079855782e543e # Cleanup implicit string concatenation
36+
8a6f6ac19b80a6dc35900a47016c851d9fcd2ee2 # Blacken src/pip/_internal/resolution directory

.github/workflows/ci.yml

Lines changed: 13 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ jobs:
9191
- run: git diff --exit-code
9292

9393
tests-unix:
94-
name: tests / ${{ matrix.python }} / ${{ matrix.os }}
94+
name: tests / ${{ matrix.python.key || matrix.python }} / ${{ matrix.os }}
9595
runs-on: ${{ matrix.os }}-latest
9696

9797
needs: [packaging, determine-changes]
@@ -109,12 +109,14 @@ jobs:
109109
- "3.9"
110110
- "3.10"
111111
- "3.11"
112+
- "3.12"
112113

113114
steps:
114115
- uses: actions/checkout@v3
115116
- uses: actions/setup-python@v4
116117
with:
117118
python-version: ${{ matrix.python }}
119+
allow-prereleases: true
118120

119121
- name: Install Ubuntu dependencies
120122
if: matrix.os == 'Ubuntu'
@@ -129,12 +131,12 @@ jobs:
129131
# Main check
130132
- name: Run unit tests
131133
run: >-
132-
nox -s test-${{ matrix.python }} --
134+
nox -s test-${{ matrix.python.key || matrix.python }} --
133135
-m unit
134136
--verbose --numprocesses auto --showlocals
135137
- name: Run integration tests
136138
run: >-
137-
nox -s test-${{ matrix.python }} --
139+
nox -s test-${{ matrix.python.key || matrix.python }} --
138140
-m integration
139141
--verbose --numprocesses auto --showlocals
140142
--durations=5
@@ -167,24 +169,13 @@ jobs:
167169
with:
168170
python-version: ${{ matrix.python }}
169171

170-
# We use a RAMDisk on Windows, since filesystem IO is a big slowdown
171-
# for our tests.
172-
- name: Create a RAMDisk
173-
run: ./tools/ci/New-RAMDisk.ps1 -Drive R -Size 1GB
174-
175-
- name: Setup RAMDisk permissions
176-
run: |
177-
mkdir R:\Temp
178-
$acl = Get-Acl "R:\Temp"
179-
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule(
180-
"Everyone", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow"
181-
)
182-
$acl.AddAccessRule($rule)
183-
Set-Acl "R:\Temp" $acl
184-
172+
# We use C:\Temp (which is already available on the worker)
173+
# as a temporary directory for all of the tests because the
174+
# default value (under the user dir) is more deeply nested
175+
# and causes tests to fail with "path too long" errors.
185176
- run: pip install nox
186177
env:
187-
TEMP: "R:\\Temp"
178+
TEMP: "C:\\Temp"
188179

189180
# Main check
190181
- name: Run unit tests
@@ -194,7 +185,7 @@ jobs:
194185
-m unit
195186
--verbose --numprocesses auto --showlocals
196187
env:
197-
TEMP: "R:\\Temp"
188+
TEMP: "C:\\Temp"
198189

199190
- name: Run integration tests (group 1)
200191
if: matrix.group == 1
@@ -203,7 +194,7 @@ jobs:
203194
-m integration -k "not test_install"
204195
--verbose --numprocesses auto --showlocals
205196
env:
206-
TEMP: "R:\\Temp"
197+
TEMP: "C:\\Temp"
207198

208199
- name: Run integration tests (group 2)
209200
if: matrix.group == 2
@@ -212,7 +203,7 @@ jobs:
212203
-m integration -k "test_install"
213204
--verbose --numprocesses auto --showlocals
214205
env:
215-
TEMP: "R:\\Temp"
206+
TEMP: "C:\\Temp"
216207

217208
tests-zipapp:
218209
name: tests / zipapp

.github/workflows/no-response.yml

Lines changed: 0 additions & 19 deletions
This file was deleted.

.pre-commit-config.yaml

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,15 @@ repos:
1717
exclude: .patch
1818

1919
- repo: https://github.com/psf/black
20-
rev: 23.1.0
20+
rev: 23.7.0
2121
hooks:
2222
- id: black
2323

24-
- repo: https://github.com/PyCQA/flake8
25-
rev: 6.0.0
24+
- repo: https://github.com/astral-sh/ruff-pre-commit
25+
# Ruff version.
26+
rev: v0.0.287
2627
hooks:
27-
- id: flake8
28-
additional_dependencies: [
29-
'flake8-bugbear',
30-
'flake8-logging-format',
31-
'flake8-implicit-str-concat',
32-
]
33-
exclude: tests/data
34-
35-
- repo: https://github.com/PyCQA/isort
36-
rev: 5.12.0
37-
hooks:
38-
- id: isort
39-
files: \.py$
28+
- id: ruff
4029

4130
- repo: https://github.com/pre-commit/mirrors-mypy
4231
rev: v0.961

.readthedocs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ build:
66
python: "3.11"
77

88
sphinx:
9-
builder: htmldir
9+
builder: dirhtml
1010
configuration: docs/html/conf.py
1111

1212
python:

AUTHORS.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ atse
7171
Atsushi Odagiri
7272
Avinash Karhana
7373
Avner Cohen
74+
Awit (Ah-Wit) Ghirmai
7475
Baptiste Mispelon
7576
Barney Gale
7677
barneygale
@@ -126,6 +127,7 @@ Chih-Hsuan Yen
126127
Chris Brinker
127128
Chris Hunt
128129
Chris Jerdonek
130+
Chris Kuehl
129131
Chris McDonough
130132
Chris Pawley
131133
Chris Pryer
@@ -330,6 +332,8 @@ Jarek Potiuk
330332
jarondl
331333
Jason Curtis
332334
Jason R. Coombs
335+
JasonMo
336+
JasonMo1
333337
Jay Graves
334338
Jean-Christophe Fillion-Robin
335339
Jeff Barber
@@ -344,6 +348,7 @@ Jim Fisher
344348
Jim Garrison
345349
Jiun Bae
346350
Jivan Amara
351+
Joe Bylund
347352
Joe Michelini
348353
John Paton
349354
John T. Wodder II
@@ -441,6 +446,7 @@ Matthew Einhorn
441446
Matthew Feickert
442447
Matthew Gilliard
443448
Matthew Iversen
449+
Matthew Treinish
444450
Matthew Trumbell
445451
Matthew Willson
446452
Matthias Bussonnier
@@ -582,6 +588,7 @@ Rishi
582588
RobberPhex
583589
Robert Collins
584590
Robert McGibbon
591+
Robert Pollak
585592
Robert T. McGibbon
586593
robin elisha robinson
587594
Roey Berman
@@ -614,6 +621,7 @@ SeongSoo Cho
614621
Sergey Vasilyev
615622
Seth Michael Larson
616623
Seth Woodworth
624+
Shantanu
617625
shireenrao
618626
Shivansh-007
619627
Shlomi Fish
@@ -638,6 +646,7 @@ Steve Barnes
638646
Steve Dower
639647
Steve Kowalik
640648
Steven Myint
649+
Steven Silvester
641650
stonebig
642651
Stéphane Bidoul
643652
Stéphane Bidoul (ACSONE)
@@ -707,6 +716,7 @@ Wilson Mo
707716
wim glenn
708717
Winson Luk
709718
Wolfgang Maier
719+
Wu Zhenyu
710720
XAMES3
711721
Xavier Fernandez
712722
xoviat

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ recursive-include src/pip/_vendor *COPYING*
1414
include docs/docutils.conf
1515
include docs/requirements.txt
1616

17+
exclude .git-blame-ignore-revs
1718
exclude .coveragerc
1819
exclude .mailmap
1920
exclude .appveyor.yml

NEWS.rst

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,69 @@
99
1010
.. towncrier release notes start
1111
12+
23.2.1 (2023-07-22)
13+
===================
14+
15+
Bug Fixes
16+
---------
17+
18+
- Disable PEP 658 metadata fetching with the legacy resolver. (`#12156 <https://github.com/pypa/pip/issues/12156>`_)
19+
20+
21+
23.2 (2023-07-15)
22+
=================
23+
24+
Process
25+
-------
26+
27+
- Deprecate support for eggs for Python 3.11 or later, when the new ``importlib.metadata`` backend is used to load distribution metadata. This only affects the egg *distribution format* (with the ``.egg`` extension); distributions using the ``.egg-info`` *metadata format* (but are not actually eggs) are not affected. For more information about eggs, see `relevant section in the setuptools documentation <https://setuptools.pypa.io/en/stable/deprecated/python_eggs.html>`__.
28+
29+
Deprecations and Removals
30+
-------------------------
31+
32+
- Deprecate legacy version and version specifiers that don't conform to `PEP 440
33+
<https://peps.python.org/pep-0440/>`_ (`#12063 <https://github.com/pypa/pip/issues/12063>`_)
34+
- ``freeze`` no longer excludes the ``setuptools``, ``distribute``, and ``wheel``
35+
from the output when running on Python 3.12 or later, where they are not
36+
included in a virtual environment by default. Use ``--exclude`` if you wish to
37+
exclude any of these packages. (`#4256 <https://github.com/pypa/pip/issues/4256>`_)
38+
39+
Features
40+
--------
41+
42+
- make rejection messages slightly different between 1 and 8, so the user can make the difference. (`#12040 <https://github.com/pypa/pip/issues/12040>`_)
43+
44+
Bug Fixes
45+
---------
46+
47+
- Fix ``pip completion --zsh``. (`#11417 <https://github.com/pypa/pip/issues/11417>`_)
48+
- Prevent downloading files twice when PEP 658 metadata is present (`#11847 <https://github.com/pypa/pip/issues/11847>`_)
49+
- Add permission check before configuration (`#11920 <https://github.com/pypa/pip/issues/11920>`_)
50+
- Fix deprecation warnings in Python 3.12 for usage of shutil.rmtree (`#11957 <https://github.com/pypa/pip/issues/11957>`_)
51+
- Ignore invalid or unreadable ``origin.json`` files in the cache of locally built wheels. (`#11985 <https://github.com/pypa/pip/issues/11985>`_)
52+
- Fix installation of packages with PEP658 metadata using non-canonicalized names (`#12038 <https://github.com/pypa/pip/issues/12038>`_)
53+
- Correctly parse ``dist-info-metadata`` values from JSON-format index data. (`#12042 <https://github.com/pypa/pip/issues/12042>`_)
54+
- Fail with an error if the ``--python`` option is specified after the subcommand name. (`#12067 <https://github.com/pypa/pip/issues/12067>`_)
55+
- Fix slowness when using ``importlib.metadata`` (the default way for pip to read metadata in Python 3.11+) and there is a large overlap between already installed and to-be-installed packages. (`#12079 <https://github.com/pypa/pip/issues/12079>`_)
56+
- Pass the ``-r`` flag to mercurial to be explicit that a revision is passed and protect
57+
against ``hg`` options injection as part of VCS URLs. Users that do not have control on
58+
VCS URLs passed to pip are advised to upgrade. (`#12119 <https://github.com/pypa/pip/issues/12119>`_)
59+
60+
Vendored Libraries
61+
------------------
62+
63+
- Upgrade certifi to 2023.5.7
64+
- Upgrade platformdirs to 3.8.1
65+
- Upgrade pygments to 2.15.1
66+
- Upgrade pyparsing to 3.1.0
67+
- Upgrade Requests to 2.31.0
68+
- Upgrade rich to 13.4.2
69+
- Upgrade setuptools to 68.0.0
70+
- Updated typing_extensions to 4.6.0
71+
- Upgrade typing_extensions to 4.7.1
72+
- Upgrade urllib3 to 1.26.16
73+
74+
1275
23.1.2 (2023-04-26)
1376
===================
1477

@@ -53,7 +116,7 @@ Deprecations and Removals
53116
``--config-settings``. (`#11859 <https://github.com/pypa/pip/issues/11859>`_)
54117
- Using ``--config-settings`` with projects that don't have a ``pyproject.toml`` now prints
55118
a deprecation warning. In the future the presence of config settings will automatically
56-
enable the default build backend for legacy projects and pass the setttings to it. (`#11915 <https://github.com/pypa/pip/issues/11915>`_)
119+
enable the default build backend for legacy projects and pass the settings to it. (`#11915 <https://github.com/pypa/pip/issues/11915>`_)
57120
- Remove ``setup.py install`` fallback when building a wheel failed for projects without
58121
``pyproject.toml``. (`#8368 <https://github.com/pypa/pip/issues/8368>`_)
59122
- When the ``wheel`` package is not installed, pip now uses the default build backend

README.rst

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,15 @@ pip - The Python Package Installer
33

44
.. image:: https://img.shields.io/pypi/v/pip.svg
55
:target: https://pypi.org/project/pip/
6+
:alt: PyPI
7+
8+
.. image:: https://img.shields.io/pypi/pyversions/pip
9+
:target: https://pypi.org/project/pip
10+
:alt: PyPI - Python Version
611

712
.. image:: https://readthedocs.org/projects/pip/badge/?version=latest
813
:target: https://pip.pypa.io/en/latest
14+
:alt: Documentation
915

1016
pip is the `package installer`_ for Python. You can use pip to install packages from the `Python Package Index`_ and other indexes.
1117

@@ -19,10 +25,6 @@ We release updates regularly, with a new version every 3 months. Find more detai
1925
* `Release notes`_
2026
* `Release process`_
2127

22-
In pip 20.3, we've `made a big improvement to the heart of pip`_; `learn more`_. We want your input, so `sign up for our user experience research studies`_ to help us do it right.
23-
24-
**Note**: pip 21.0, in January 2021, removed Python 2 support, per pip's `Python 2 support policy`_. Please migrate to Python 3.
25-
2628
If you find bugs, need help, or want to talk to the developers, please use our mailing lists or chat rooms:
2729

2830
* `Issue tracking`_
@@ -49,10 +51,6 @@ rooms, and mailing lists is expected to follow the `PSF Code of Conduct`_.
4951
.. _Release process: https://pip.pypa.io/en/latest/development/release-process/
5052
.. _GitHub page: https://github.com/pypa/pip
5153
.. _Development documentation: https://pip.pypa.io/en/latest/development
52-
.. _made a big improvement to the heart of pip: https://pyfound.blogspot.com/2020/11/pip-20-3-new-resolver.html
53-
.. _learn more: https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-3-2020
54-
.. _sign up for our user experience research studies: https://pyfound.blogspot.com/2020/03/new-pip-resolver-to-roll-out-this-year.html
55-
.. _Python 2 support policy: https://pip.pypa.io/en/latest/development/release-process/#python-2-support
5654
.. _Issue tracking: https://github.com/pypa/pip/issues
5755
.. _Discourse channel: https://discuss.python.org/c/packaging
5856
.. _User IRC: https://kiwiirc.com/nextclient/#ircs://irc.libera.chat:+6697/pypa

0 commit comments

Comments
 (0)