Skip to content

Commit

Permalink
Merge pull request #1077 from pypa/fix-typing
Browse files Browse the repository at this point in the history
Fix types and type linting
  • Loading branch information
sigmavirus24 committed Mar 23, 2024
2 parents c57d4b9 + 9eb9269 commit f8bf04e
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 3 deletions.
17 changes: 16 additions & 1 deletion tests/test_package.py
Original file line number Diff line number Diff line change
Expand Up @@ -340,20 +340,35 @@ def test_fips_metadata_excludes_md5_and_blake2(monkeypatch):
"read_data, missing_fields",
[
pytest.param(
b"Metadata-Version: 2.3\nName: test-package\nVersion: 1.0.0\n",
b"Metadata-Version: 102.3\nName: test-package\nVersion: 1.0.0\n",
"Name, Version",
id="unsupported Metadata-Version",
),
pytest.param(
b"Metadata-Version: 2.3\nName: UNKNOWN\nVersion: UNKNOWN\n",
"Name, Version",
id="missing Name and Version",
),
pytest.param(
b"Metadata-Version: 2.2\nName: UNKNOWN\nVersion: UNKNOWN\n",
"Name, Version",
id="missing Name and Version",
),
pytest.param(
b"Metadata-Version: 2.3\nName: UNKNOWN\nVersion: 1.0.0\n",
"Name",
id="missing Name",
),
pytest.param(
b"Metadata-Version: 2.2\nName: UNKNOWN\nVersion: 1.0.0\n",
"Name",
id="missing Name",
),
pytest.param(
b"Metadata-Version: 2.3\nName: test-package\nVersion: UNKNOWN\n",
"Version",
id="missing Version",
),
pytest.param(
b"Metadata-Version: 2.2\nName: test-package\nVersion: UNKNOWN\n",
"Version",
Expand Down
2 changes: 1 addition & 1 deletion twine/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,6 @@ def dispatch(argv: List[str]) -> Any:

configure_output()

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

return main(args.args)
5 changes: 4 additions & 1 deletion twine/wheel.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import re
import zipfile
from typing import List, Optional
from typing import cast as type_cast

from pkginfo import distribution

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

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

0 comments on commit f8bf04e

Please sign in to comment.