Skip to content

Commit 49ab81c

Browse files
committed
Updated pip and packaging versions to work with free-threading packages
1 parent 6a04d38 commit 49ab81c

File tree

3 files changed

+29
-11
lines changed

3 files changed

+29
-11
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ Unreleased changes template.
6565
* (rules) The version-aware rules have been folded into the base rules and
6666
the version-aware rules are now simply aliases for the base rules. The
6767
`python_version` attribute is still used to specify the Python version.
68+
* (pypi) Updated versions of packages: `pip` to 24.3.1 and
69+
`packaging` to 24.2.
6870

6971
{#v0-0-0-deprecations}
7072
#### Deprecations

python/private/pypi/dependency_resolver/dependency_resolver.py

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
import atexit
1818
import os
19+
import re
1920
import shutil
2021
import sys
2122
from pathlib import Path
@@ -117,7 +118,6 @@ def main(
117118
absolute_path_prefix = resolved_requirements_file[
118119
: -(len(requirements_file) - len(repository_prefix))
119120
]
120-
121121
# As srcs might contain references to generated files we want to
122122
# use the runfiles file first. Thus, we need to compute the relative path
123123
# from the execution root.
@@ -162,12 +162,19 @@ def main(
162162
argv.append(
163163
f"--output-file={requirements_file_relative if UPDATE else requirements_out}"
164164
)
165-
argv.extend(
165+
src_files = [
166166
(src_relative if Path(src_relative).exists() else resolved_src)
167167
for src_relative, resolved_src in zip(srcs_relative, resolved_srcs)
168-
)
168+
]
169+
argv.extend(src_files)
169170
argv.extend(extra_args)
170171

172+
# Replace in the output lock file
173+
# the lines like: # via -r /absolute/path/to/<requirements_file>
174+
# with: # via -r <requirements_file>
175+
# For Windows, we should explicitly call .as_posix() to convert \\ -> /
176+
absolute_src_prefixes = [Path(src).absolute().parent.as_posix() + "/" for src in src_files]
177+
171178
if UPDATE:
172179
print("Updating " + requirements_file_relative)
173180

@@ -185,14 +192,14 @@ def main(
185192
# and we should copy the updated requirements back to the source tree.
186193
if not absolute_output_file.samefile(requirements_file_tree):
187194
atexit.register(
188-
lambda: shutil.copy(
189-
absolute_output_file, requirements_file_tree
190-
)
195+
lambda: shutil.copy(absolute_output_file, requirements_file_tree)
191196
)
192-
cli(argv, standalone_mode = False)
197+
cli(argv, standalone_mode=False)
193198
requirements_file_relative_path = Path(requirements_file_relative)
194199
content = requirements_file_relative_path.read_text()
195200
content = content.replace(absolute_path_prefix, "")
201+
for absolute_src_prefix in absolute_src_prefixes:
202+
content = content.replace(absolute_src_prefix, "")
196203
requirements_file_relative_path.write_text(content)
197204
else:
198205
# cli will exit(0) on success
@@ -214,6 +221,15 @@ def main(
214221
golden = open(_locate(bazel_runfiles, requirements_file)).readlines()
215222
out = open(requirements_out).readlines()
216223
out = [line.replace(absolute_path_prefix, "") for line in out]
224+
225+
def replace_via_minus_r(line):
226+
if "# via -r " in line:
227+
for absolute_src_prefix in absolute_src_prefixes:
228+
line = line.replace(absolute_src_prefix, "")
229+
return line
230+
return line
231+
232+
out = [replace_via_minus_r(line) for line in out]
217233
if golden != out:
218234
import difflib
219235

python/private/pypi/deps.bzl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ _RULE_DEPS = [
5151
),
5252
(
5353
"pypi__packaging",
54-
"https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl",
55-
"2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
54+
"https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl",
55+
"09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759",
5656
),
5757
(
5858
"pypi__pep517",
@@ -61,8 +61,8 @@ _RULE_DEPS = [
6161
),
6262
(
6363
"pypi__pip",
64-
"https://files.pythonhosted.org/packages/8a/6a/19e9fe04fca059ccf770861c7d5721ab4c2aebc539889e97c7977528a53b/pip-24.0-py3-none-any.whl",
65-
"ba0d021a166865d2265246961bec0152ff124de910c5cc39f1156ce3fa7c69dc",
64+
"https://files.pythonhosted.org/packages/ef/7d/500c9ad20238fcfcb4cb9243eede163594d7020ce87bd9610c9e02771876/pip-24.3.1-py3-none-any.whl",
65+
"3790624780082365f47549d032f3770eeb2b1e8bd1f7b2e02dace1afa361b4ed",
6666
),
6767
(
6868
"pypi__pip_tools",

0 commit comments

Comments
 (0)