Merge pull request #80 from mjun0812/copilot/add-coverage-calculation-file

Centralize coverage matrix definitions for full-platform stats
This commit is contained in:
Junya Morioka
2026-02-02 02:17:02 +09:00
committed by GitHub
2 changed files with 80 additions and 32 deletions
+6 -32
View File
@@ -25,49 +25,23 @@ 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."""
"""Get comprehensive matrix for a platform."""
if platform == "linux":
# Merge LINUX_MATRIX and LINUX_SELF_HOSTED_MATRIX
return merge_matrices([LINUX_MATRIX, LINUX_SELF_HOSTED_MATRIX])
return LINUX_MATRIX
elif platform == "linux_arm64":
return merge_matrices([LINUX_ARM64_MATRIX, LINUX_ARM64_SELF_HOSTED_MATRIX])
return LINUX_ARM64_MATRIX
elif platform == "windows":
return merge_matrices(
[WINDOWS_MATRIX, WINDOWS_SELF_HOSTED_MATRIX, WINDOWS_CODEBUILD_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(".")
+74
View File
@@ -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",
],
}