|
13 | 13 | importsubprocess
|
14 | 14 | fromtypingimportDict,List,Optional,Tuple
|
15 | 15 | fromemailimportmessage_from_bytes
|
| 16 | +fromemail.parserimportBytesParser |
| 17 | +fromemail.policyimportdefault |
16 | 18 | from .importutils
|
17 | 19 |
|
18 | 20 | frompackaging.utilsimportcanonicalize_name
|
@@ -197,7 +199,7 @@ def extract_metadata_from_wheel(filepath: Path) -> Optional[Tuple[str, str, str]
|
197 | 199 | fornameinz.namelist():
|
198 | 200 | ifname.endswith(r'.dist-info/METADATA')andname.split("/")[1]=="METADATA":
|
199 | 201 | withz.open(name)asmeta_file:
|
200 |
| -metadata=message_from_bytes(meta_file.read()) |
| 202 | +metadata=BytesParser(policy=default).parse(meta_file) |
201 | 203 | name=canonicalize_name(str(metadata.get('Name','unknown')))# Avoid Head type
|
202 | 204 | version=str(metadata.get('Version','unknown'))
|
203 | 205 | summary=utils.sum_up(str(metadata.get('Summary','')))
|
|