fix: rank same-named archives by what they hold

The name step only ranked archive copies by members declared
through archive sub-entries, and the contents an archive entry lists
never reached the resolver, so the first copy indexed won. contents
now ranks copies by crc32, or by member name where the code opens
by name, and the report and both extra passes carry it. With no
layout declared, a primary holding every ROM of the others wins;
two revisions keep the index order.
This commit is contained in:
Abdessamad Derraz committed 2026-10-18 02:30:53 +02:00
1 parent da59b20aa6
commit 7d1b8435bc
5 files changed
+161 -7

No files matched your search

+2
View File
@@ -638,6 +638,8 @@ def find_undeclared_files(
"sha1": f.get("sha1"),
"md5": f.get("md5"),
}
if f.get("contents"):
entry["contents"] = f["contents"]
if duplicate:
first.setdefault("other_claims", []).append(entry)
continue