aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2023-09-06 11:01:47 -0700
committerGitHub <noreply@github.com>2023-09-06 20:01:47 +0200
commitfa2d13efa6907b68dea2b8a25656772345341a22 (patch)
treee6851c88e4ba7a7050a1be317b642c025da8d9e2
parent97e87f7489d2dedbc881346d4f08d545866f224b (diff)
downloadcpython3-fa2d13efa6907b68dea2b8a25656772345341a22.tar.gz
[3.8] gh-109002: Ensure only one wheel for each vendored package (GH-109003) (#109009)
Output with one wheel: ``` ❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py Verifying checksum for /Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl. Expected digest: 7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be Actual digest: 7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be ::notice file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Successfully verified the checksum of the pip wheel. ``` Output with two wheels: ``` ❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py ::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-22.0.4-py3-none-any.whl::Found more than one wheel for package pip. ::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Found more than one wheel for package pip. ``` Output without wheels: ``` ❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py ::error file=::Could not find a pip wheel on disk. ``` (cherry picked from commit f8a047941f2e4a1848700c21d58a08c9ec6a9c68) Co-authored-by: Łukasz Langa <lukasz@langa.pl>
-rwxr-xr-xTools/scripts/verify_ensurepip_wheels.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/Tools/scripts/verify_ensurepip_wheels.py b/Tools/scripts/verify_ensurepip_wheels.py
index 044d1fd6b3..434a0b4c53 100755
--- a/Tools/scripts/verify_ensurepip_wheels.py
+++ b/Tools/scripts/verify_ensurepip_wheels.py
@@ -1,4 +1,4 @@
-#! /usr/bin/env python3
+#!/usr/bin/env python3
"""
Compare checksums for wheels in :mod:`ensurepip` against the Cheeseshop.
@@ -35,11 +35,17 @@ def print_error(file_path: str, message: str) -> None:
def verify_wheel(package_name: str) -> bool:
# Find the package on disk
- package_path = next(WHEEL_DIR.glob(f"{package_name}*.whl"), None)
- if not package_path:
- print_error("", f"Could not find a {package_name} wheel on disk.")
+ package_paths = list(WHEEL_DIR.glob(f"{package_name}*.whl"))
+ if len(package_paths) != 1:
+ if package_paths:
+ for p in package_paths:
+ print_error(p, f"Found more than one wheel for package {package_name}.")
+ else:
+ print_error("", f"Could not find a {package_name} wheel on disk.")
return False
+ package_path = package_paths[0]
+
print(f"Verifying checksum for {package_path}.")
# Find the version of the package used by ensurepip