Hi there! I'm opening this for consideration.
For better or worse, some people like to manually patch their wheels after they're built by a normal, well-behaved build backend. Sometimes this means that they modify their wheel tags without updating the corresponds Tag: fields in .dist-info/WHEEL, or update those fields incorrectly (e.g. by doing Tag: <compressed-tag> instead of one Tag: per expanded compatibility tag.
It'd be great if auditwheel could detail these (and repair them, where possible) 🙂
For reference, I've made some misshapen wheels that exhibit these behaviors:
(More broadly, these and others are all detected by a consistency check between the wheel filename's expanded tags and the Tag: set.)
I think there are other potential consistency checks as well (e.g. on Build and Root-Is-Purelib).
CC @konstin for viz
Hi there! I'm opening this for consideration.
For better or worse, some people like to manually patch their wheels after they're built by a normal, well-behaved build backend. Sometimes this means that they modify their wheel tags without updating the corresponds
Tag:fields in.dist-info/WHEEL, or update those fields incorrectly (e.g. by doingTag: <compressed-tag>instead of oneTag:per expanded compatibility tag.It'd be great if auditwheel could detail these (and repair them, where possible) 🙂
For reference, I've made some misshapen wheels that exhibit these behaviors:
Tag:in theWHEELfile is junk)Tag:being missing entirely from theWHEELfile(More broadly, these and others are all detected by a consistency check between the wheel filename's expanded tags and the
Tag:set.)I think there are other potential consistency checks as well (e.g. on
BuildandRoot-Is-Purelib).CC @konstin for viz