Skip to content

Commit f5e0c6c

Browse files
authored
Merge branch 'main' into override-proxy
2 parents 07e51e7 + 02ad0f3 commit f5e0c6c

File tree

590 files changed

+20540
-10655
lines changed

Some content is hidden

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

590 files changed

+20540
-10655
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/chronographer.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
branch-protection-check-name: Changelog entry
2+
action-hints:
3+
check-title-prefix: "Chronographer: "
4+
external-docs-url: https://pip.pypa.io/dev/news-entry-failure
5+
inline-markdown: >
6+
See https://pip.pypa.io/dev/news-entry-failure for details.
7+
enforce-name:
8+
suffix: .rst
9+
labels:
10+
skip-changelog: skip news

.github/dependabot.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "monthly"

.github/workflows/ci.yml

Lines changed: 55 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,10 @@ jobs:
2626
runs-on: ubuntu-latest
2727

2828
steps:
29-
- uses: actions/checkout@v2
30-
- uses: actions/setup-python@v2
29+
- uses: actions/checkout@v4
30+
- uses: actions/setup-python@v5
31+
with:
32+
python-version: "3.x"
3133
- run: pip install nox
3234
- run: nox -s docs
3335

@@ -55,24 +57,15 @@ jobs:
5557
- "noxfile.py"
5658
if: github.event_name == 'pull_request'
5759

58-
pre-commit:
59-
name: pre-commit
60-
runs-on: ubuntu-latest
61-
62-
steps:
63-
- uses: actions/checkout@v2
64-
- uses: actions/setup-python@v2
65-
- uses: pre-commit/[email protected]
66-
with:
67-
extra_args: --all-files --hook-stage=manual
68-
6960
packaging:
7061
name: packaging
7162
runs-on: ubuntu-latest
7263

7364
steps:
74-
- uses: actions/checkout@v2
75-
- uses: actions/setup-python@v2
65+
- uses: actions/checkout@v4
66+
- uses: actions/setup-python@v5
67+
with:
68+
python-version: "3.x"
7669
- name: Set up git credentials
7770
run: |
7871
git config --global user.email "[email protected]"
@@ -81,6 +74,7 @@ jobs:
8174
- run: pip install nox
8275
- run: nox -s prepare-release -- 99.9
8376
- run: nox -s build-release -- 99.9
77+
- run: pipx run check-manifest
8478

8579
vendoring:
8680
name: vendoring
@@ -92,18 +86,20 @@ jobs:
9286
github.event_name != 'pull_request'
9387
9488
steps:
95-
- uses: actions/checkout@v2
96-
- uses: actions/setup-python@v2
89+
- uses: actions/checkout@v4
90+
- uses: actions/setup-python@v5
91+
with:
92+
python-version: "3.x"
9793

9894
- run: pip install nox
9995
- run: nox -s vendoring
10096
- run: git diff --exit-code
10197

10298
tests-unix:
103-
name: tests / ${{ matrix.python }} / ${{ matrix.os }}
99+
name: tests / ${{ matrix.python.key || matrix.python }} / ${{ matrix.os }}
104100
runs-on: ${{ matrix.os }}-latest
105101

106-
needs: [pre-commit, packaging, determine-changes]
102+
needs: [packaging, determine-changes]
107103
if: >-
108104
needs.determine-changes.outputs.tests == 'true' ||
109105
github.event_name != 'pull_request'
@@ -113,36 +109,40 @@ jobs:
113109
matrix:
114110
os: [Ubuntu, MacOS]
115111
python:
116-
- 3.7
117-
- 3.8
118-
- 3.9
112+
- "3.8"
113+
- "3.9"
119114
- "3.10"
115+
- "3.11"
116+
- "3.12"
120117

121118
steps:
122-
- uses: actions/checkout@v2
123-
- uses: actions/setup-python@v2
119+
- uses: actions/checkout@v4
120+
- uses: actions/setup-python@v5
124121
with:
125122
python-version: ${{ matrix.python }}
123+
allow-prereleases: true
126124

127125
- name: Install Ubuntu dependencies
128126
if: matrix.os == 'Ubuntu'
129-
run: sudo apt-get install bzr
127+
run: |
128+
sudo apt-get update
129+
sudo apt-get install bzr
130130
131131
- name: Install MacOS dependencies
132132
if: matrix.os == 'MacOS'
133-
run: brew install bzr
133+
run: brew install breezy
134134

135-
- run: pip install nox 'virtualenv<20' 'setuptools != 60.6.0'
135+
- run: pip install nox
136136

137137
# Main check
138138
- name: Run unit tests
139139
run: >-
140-
nox -s test-${{ matrix.python }} --
140+
nox -s test-${{ matrix.python.key || matrix.python }} --
141141
-m unit
142142
--verbose --numprocesses auto --showlocals
143143
- name: Run integration tests
144144
run: >-
145-
nox -s test-${{ matrix.python }} --
145+
nox -s test-${{ matrix.python.key || matrix.python }} --
146146
-m integration
147147
--verbose --numprocesses auto --showlocals
148148
--durations=5
@@ -151,7 +151,7 @@ jobs:
151151
name: tests / ${{ matrix.python }} / ${{ matrix.os }} / ${{ matrix.group }}
152152
runs-on: ${{ matrix.os }}-latest
153153

154-
needs: [pre-commit, packaging, determine-changes]
154+
needs: [packaging, determine-changes]
155155
if: >-
156156
needs.determine-changes.outputs.tests == 'true' ||
157157
github.event_name != 'pull_request'
@@ -161,37 +161,28 @@ jobs:
161161
matrix:
162162
os: [Windows]
163163
python:
164-
- 3.7
165-
# Commented out, since Windows tests are expensively slow.
166-
# - 3.8
167-
# - 3.9
168-
- "3.10"
164+
- "3.8"
165+
# Commented out, since Windows tests are expensively slow,
166+
# only test the oldest and newest Python supported by pip
167+
# - "3.9"
168+
# - "3.10"
169+
# - "3.11"
170+
- "3.12"
169171
group: [1, 2]
170172

171173
steps:
172-
- uses: actions/checkout@v2
173-
- uses: actions/setup-python@v2
174+
- uses: actions/checkout@v4
175+
- uses: actions/setup-python@v5
174176
with:
175177
python-version: ${{ matrix.python }}
176178

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

196187
# Main check
197188
- name: Run unit tests
@@ -201,7 +192,7 @@ jobs:
201192
-m unit
202193
--verbose --numprocesses auto --showlocals
203194
env:
204-
TEMP: "R:\\Temp"
195+
TEMP: "C:\\Temp"
205196

206197
- name: Run integration tests (group 1)
207198
if: matrix.group == 1
@@ -210,7 +201,7 @@ jobs:
210201
-m integration -k "not test_install"
211202
--verbose --numprocesses auto --showlocals
212203
env:
213-
TEMP: "R:\\Temp"
204+
TEMP: "C:\\Temp"
214205

215206
- name: Run integration tests (group 2)
216207
if: matrix.group == 2
@@ -219,27 +210,29 @@ jobs:
219210
-m integration -k "test_install"
220211
--verbose --numprocesses auto --showlocals
221212
env:
222-
TEMP: "R:\\Temp"
213+
TEMP: "C:\\Temp"
223214

224215
tests-zipapp:
225216
name: tests / zipapp
226217
runs-on: ubuntu-latest
227218

228-
needs: [pre-commit, packaging, determine-changes]
219+
needs: [packaging, determine-changes]
229220
if: >-
230221
needs.determine-changes.outputs.tests == 'true' ||
231222
github.event_name != 'pull_request'
232223
233224
steps:
234-
- uses: actions/checkout@v2
235-
- uses: actions/setup-python@v2
225+
- uses: actions/checkout@v4
226+
- uses: actions/setup-python@v5
236227
with:
237228
python-version: "3.10"
238229

239230
- name: Install Ubuntu dependencies
240-
run: sudo apt-get install bzr
231+
run: |
232+
sudo apt-get update
233+
sudo apt-get install bzr
241234
242-
- run: pip install nox 'virtualenv<20' 'setuptools != 60.6.0'
235+
- run: pip install nox
243236

244237
# Main check
245238
- name: Run integration tests
@@ -250,53 +243,16 @@ jobs:
250243
--durations=5
251244
--use-zipapp
252245
253-
# TODO: Remove this when we add Python 3.11 to CI.
254-
tests-importlib-metadata:
255-
name: tests for importlib.metadata backend
256-
runs-on: ubuntu-latest
257-
env:
258-
_PIP_USE_IMPORTLIB_METADATA: 'true'
259-
260-
needs: [pre-commit, packaging, determine-changes]
261-
if: >-
262-
needs.determine-changes.outputs.tests == 'true' ||
263-
github.event_name != 'pull_request'
264-
265-
steps:
266-
- uses: actions/checkout@v2
267-
- uses: actions/setup-python@v2
268-
with:
269-
python-version: '3.10'
270-
271-
- name: Install Ubuntu dependencies
272-
run: sudo apt-get install bzr
273-
274-
- run: pip install nox 'virtualenv<20'
275-
276-
- name: Run unit tests
277-
run: >-
278-
nox -s test-3.10 --
279-
-m unit
280-
--verbose --numprocesses auto --showlocals
281-
- name: Run integration tests
282-
run: >-
283-
nox -s test-3.10 --
284-
-m integration
285-
--verbose --numprocesses auto --showlocals
286-
--durations=5
287-
288246
check: # This job does nothing and is only used for the branch protection
289247
if: always()
290248

291249
needs:
292250
- determine-changes
293251
- docs
294252
- packaging
295-
- pre-commit
296253
- tests-unix
297254
- tests-windows
298255
- tests-zipapp
299-
- tests-importlib-metadata
300256
- vendoring
301257

302258
runs-on: ubuntu-latest

.github/workflows/label-merge-conflicts.yml

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

.github/workflows/lock-threads.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
if: github.repository_owner == 'pypa'
1818
runs-on: ubuntu-latest
1919
steps:
20-
- uses: dessant/lock-threads@v3
20+
- uses: dessant/lock-threads@v4
2121
with:
2222
issue-inactive-days: '30'
2323
pr-inactive-days: '15'

.github/workflows/news-file.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ubuntu-20.04
1111

1212
steps:
13-
- uses: actions/checkout@v2
13+
- uses: actions/checkout@v4
1414
with:
1515
# `towncrier check` runs `git diff --name-only origin/main...`, which
1616
# needs a non-shallow clone.

0 commit comments

Comments
 (0)