fix: strip only a hash suffix off variant names

slots dropped the last extension of any .variants/ name, so a
variant stored under its plain name (63 of them, aes.zip among
them) was not the family of its primary and a platform declaring
both at one path would read as a collision. The database already
stripped an eight-hex suffix only; both now read one function.
This commit is contained in:
Abdessamad Derraz committed 2026-10-18 02:33:10 +02:00
1 parent 6448a1ab3d
commit fd6ae1f5c9
4 files changed
+44 -12

No files matched your search

+2 -1
View File
@@ -31,6 +31,7 @@ from common import (
resolve_local_file,
resolve_platform_cores,
runs_standalone,
variant_base_name,
)
from packresolve import preferred_entries
from validation import outside_gap_scope
@@ -752,7 +753,7 @@ def _same_file_family(paths: list[str]) -> bool:
if "/.variants/" in path:
directory, _, name = path.rpartition("/")
directory = directory[: -len("/.variants")]
name = name.rsplit(".", 1)[0]
name = variant_base_name(name)
path = f"{directory}/{name}"
canonical.add(path.casefold())
return len(canonical) == 1