From 2087780f2a040c5b035fefeecd7c1ffa7e23f515 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 1 Feb 2026 05:05:00 +0000 Subject: [PATCH 1/3] Initial plan From 0001aa15747d76b78d72c88fb4ada78f41142400 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 1 Feb 2026 05:09:32 +0000 Subject: [PATCH 2/3] chore: add coverage matrix definitions Co-authored-by: mjun0812 <77187490+mjun0812@users.noreply.github.com> --- check_missing_packages.py | 21 +++-------- coverage_matrix.py | 74 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+), 16 deletions(-) create mode 100644 coverage_matrix.py diff --git a/check_missing_packages.py b/check_missing_packages.py index 840fc9d..d0f7a9c 100644 --- a/check_missing_packages.py +++ b/check_missing_packages.py @@ -25,30 +25,19 @@ from rich.table import Table from rich.text import Text from common import parse_wheel_filename -from create_matrix import ( - EXCLUDE, - LINUX_ARM64_MATRIX, - LINUX_ARM64_SELF_HOSTED_MATRIX, - LINUX_MATRIX, - LINUX_SELF_HOSTED_MATRIX, - WINDOWS_CODEBUILD_MATRIX, - WINDOWS_MATRIX, - WINDOWS_SELF_HOSTED_MATRIX, -) +from coverage_matrix import LINUX_ARM64_MATRIX, LINUX_MATRIX, WINDOWS_MATRIX +from create_matrix import EXCLUDE # Comprehensive matrix combining all platform-specific matrices def get_comprehensive_matrix(platform: str) -> dict: """Get comprehensive matrix for a platform by merging all related matrices.""" if platform == "linux": - # Merge LINUX_MATRIX and LINUX_SELF_HOSTED_MATRIX - return merge_matrices([LINUX_MATRIX, LINUX_SELF_HOSTED_MATRIX]) + return merge_matrices([LINUX_MATRIX]) elif platform == "linux_arm64": - return merge_matrices([LINUX_ARM64_MATRIX, LINUX_ARM64_SELF_HOSTED_MATRIX]) + return merge_matrices([LINUX_ARM64_MATRIX]) elif platform == "windows": - return merge_matrices( - [WINDOWS_MATRIX, WINDOWS_SELF_HOSTED_MATRIX, WINDOWS_CODEBUILD_MATRIX] - ) + return merge_matrices([WINDOWS_MATRIX]) else: return {} diff --git a/coverage_matrix.py b/coverage_matrix.py new file mode 100644 index 0000000..19ae8b1 --- /dev/null +++ b/coverage_matrix.py @@ -0,0 +1,74 @@ +"""Coverage matrix definitions for wheel availability checks.""" + +LINUX_MATRIX = { + "flash-attn-version": [ + "2.6.3", + "2.7.4", + "2.8.3", + ], + "python-version": [ + "3.10", + "3.11", + "3.12", + "3.13", + "3.14", + ], + "torch-version": [ + "2.5.1", + "2.6.0", + "2.7.1", + "2.8.0", + "2.9.1", + "2.10.0", + ], + "cuda-version": [ + "12.4", + "12.6", + "12.8", + "13.0", + ], +} + +LINUX_ARM64_MATRIX = { + "flash-attn-version": [ + "2.8.3", + ], + "python-version": [ + "3.10", + "3.11", + "3.12", + "3.13", + "3.14", + ], + "torch-version": [ + "2.9.1", + "2.10.0", + ], + "cuda-version": [ + "12.6", + "12.8", + "13.0", + ], +} + +WINDOWS_MATRIX = { + "flash-attn-version": [ + "2.8.3", + ], + "python-version": [ + "3.10", + "3.11", + "3.12", + "3.13", + "3.14", + ], + "torch-version": [ + "2.9.1", + "2.10.0", + ], + "cuda-version": [ + "12.6", + "12.8", + "13.0", + ], +} From 268c7013f1f0a55883a2b32c7a277e52aaf54498 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 1 Feb 2026 17:13:56 +0000 Subject: [PATCH 3/3] Remove unused merge_matrices helper Co-authored-by: mjun0812 <77187490+mjun0812@users.noreply.github.com> --- check_missing_packages.py | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/check_missing_packages.py b/check_missing_packages.py index d0f7a9c..7c93985 100644 --- a/check_missing_packages.py +++ b/check_missing_packages.py @@ -31,32 +31,17 @@ from create_matrix import EXCLUDE # Comprehensive matrix combining all platform-specific matrices def get_comprehensive_matrix(platform: str) -> dict: - """Get comprehensive matrix for a platform by merging all related matrices.""" + """Get comprehensive matrix for a platform.""" if platform == "linux": - return merge_matrices([LINUX_MATRIX]) + return LINUX_MATRIX elif platform == "linux_arm64": - return merge_matrices([LINUX_ARM64_MATRIX]) + return LINUX_ARM64_MATRIX elif platform == "windows": - return merge_matrices([WINDOWS_MATRIX]) + return WINDOWS_MATRIX else: return {} -def merge_matrices(matrices: list[dict]) -> dict: - """Merge multiple matrices by combining their version lists.""" - merged = { - "flash-attn-version": set(), - "python-version": set(), - "torch-version": set(), - "cuda-version": set(), - } - for matrix in matrices: - for key in merged: - merged[key].update(matrix.get(key, [])) - # Convert sets to sorted lists - return {key: sorted(vals, key=parse_version_tuple) for key, vals in merged.items()} - - def parse_version_tuple(version: str) -> tuple: """Parse version string to tuple for sorting.""" parts = version.replace("post", ".").split(".")