From 3a5188f9341d040076d84f0031242b4699b38c9c Mon Sep 17 00:00:00 2001 From: Just van Rossum Date: Sat, 13 Jul 2024 07:02:16 +0200 Subject: [PATCH 1/2] Improve assert --- App/Distribute/ensure_universal_wheels.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/App/Distribute/ensure_universal_wheels.py b/App/Distribute/ensure_universal_wheels.py index 066a2245..f7c3553f 100644 --- a/App/Distribute/ensure_universal_wheels.py +++ b/App/Distribute/ensure_universal_wheels.py @@ -124,10 +124,10 @@ def main(): platform_wheels.append(file_descriptor["url"]) if universal_wheels: - assert len(universal_wheels) == 1 + assert len(universal_wheels) == 1, universal_wheels download_file(universal_wheels[0], wheels_dir) elif platform_wheels: - assert len(platform_wheels) == 2 + assert len(platform_wheels) == 2, platform_wheels merge_wheels(platform_wheels[0], platform_wheels[1], wheels_dir) else: raise IncompatibleWheelError( From 53015f4e120023bcb10443a309173d07f8ddf662 Mon Sep 17 00:00:00 2001 From: Just van Rossum Date: Sat, 13 Jul 2024 07:14:25 +0200 Subject: [PATCH 2/2] Try to prune the platform wheel list down to two items --- App/Distribute/ensure_universal_wheels.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/App/Distribute/ensure_universal_wheels.py b/App/Distribute/ensure_universal_wheels.py index f7c3553f..f3b4f8df 100644 --- a/App/Distribute/ensure_universal_wheels.py +++ b/App/Distribute/ensure_universal_wheels.py @@ -127,6 +127,13 @@ def main(): assert len(universal_wheels) == 1, universal_wheels download_file(universal_wheels[0], wheels_dir) elif platform_wheels: + if len(platform_wheels) > 2: + # There may be multiple wheels per platform. Pick the first of each from + # a sorted list. + platform_wheels = sorted(platform_wheels) + x86_64 = [pw for pw in platform_wheels if "x86_64" in pw.rsplit("/", 1)[-1]] + arm64 = [pw for pw in platform_wheels if "arm64" in pw.rsplit("/", 1)[-1]] + platform_wheels = [x86_64[0], arm64[1]] assert len(platform_wheels) == 2, platform_wheels merge_wheels(platform_wheels[0], platform_wheels[1], wheels_dir) else: