Skip to content

Commit f8bf04e

Browse files
authoredMar 23, 2024
Merge pull request #1077 from pypa/fix-typing
Fix types and type linting
2 parents c57d4b9 + 9eb9269 commit f8bf04e

File tree

3 files changed

+21
-3
lines changed

3 files changed

+21
-3
lines changed
 

Diff for: ‎tests/test_package.py

+16-1
Original file line numberDiff line numberDiff line change
@@ -340,20 +340,35 @@ def test_fips_metadata_excludes_md5_and_blake2(monkeypatch):
340340
"read_data, missing_fields",
341341
[
342342
pytest.param(
343-
b"Metadata-Version: 2.3\nName: test-package\nVersion: 1.0.0\n",
343+
b"Metadata-Version: 102.3\nName: test-package\nVersion: 1.0.0\n",
344344
"Name, Version",
345345
id="unsupported Metadata-Version",
346346
),
347+
pytest.param(
348+
b"Metadata-Version: 2.3\nName: UNKNOWN\nVersion: UNKNOWN\n",
349+
"Name, Version",
350+
id="missing Name and Version",
351+
),
347352
pytest.param(
348353
b"Metadata-Version: 2.2\nName: UNKNOWN\nVersion: UNKNOWN\n",
349354
"Name, Version",
350355
id="missing Name and Version",
351356
),
357+
pytest.param(
358+
b"Metadata-Version: 2.3\nName: UNKNOWN\nVersion: 1.0.0\n",
359+
"Name",
360+
id="missing Name",
361+
),
352362
pytest.param(
353363
b"Metadata-Version: 2.2\nName: UNKNOWN\nVersion: 1.0.0\n",
354364
"Name",
355365
id="missing Name",
356366
),
367+
pytest.param(
368+
b"Metadata-Version: 2.3\nName: test-package\nVersion: UNKNOWN\n",
369+
"Version",
370+
id="missing Version",
371+
),
357372
pytest.param(
358373
b"Metadata-Version: 2.2\nName: test-package\nVersion: UNKNOWN\n",
359374
"Version",

Diff for: ‎twine/cli.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,6 @@ def dispatch(argv: List[str]) -> Any:
118118

119119
configure_output()
120120

121-
main = registered_commands[args.command].load() # type: ignore[no-untyped-call] # python/importlib_metadata#288 # noqa: E501
121+
main = registered_commands[args.command].load()
122122

123123
return main(args.args)

Diff for: ‎twine/wheel.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import re
1717
import zipfile
1818
from typing import List, Optional
19+
from typing import cast as type_cast
1920

2021
from pkginfo import distribution
2122

@@ -87,5 +88,7 @@ def parse(self, data: bytes) -> None:
8788
super().parse(data)
8889

8990
fp = io.StringIO(data.decode("utf-8", errors="replace"))
91+
# msg is ``email.message.Message`` which is a legacy API documented
92+
# here: https://docs.python.org/3/library/email.compat32-message.html
9093
msg = distribution.parse(fp)
91-
self.description = msg.get_payload()
94+
self.description = type_cast(str, msg.get_payload())

0 commit comments

Comments
 (0)