Skip to content

Commit

Permalink
Merge pull request #99 from lsst-sqre/u/rra/upgrades
Browse files Browse the repository at this point in the history
Add casts for package metadata
  • Loading branch information
rra committed May 2, 2022
2 parents 8930749 + 3d1256f commit 9cfa0f9
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 7 deletions.
8 changes: 6 additions & 2 deletions src/safir/metadata.py
Expand Up @@ -3,9 +3,10 @@

from __future__ import annotations

import sys
from email.message import Message
from importlib.metadata import metadata
from typing import Optional
from typing import Optional, cast

from pydantic import BaseModel, Field

Expand Down Expand Up @@ -66,7 +67,10 @@ def get_metadata(*, package_name: str, application_name: str) -> Metadata:
project_urls, Source code
Used as the ``respository_url``.
"""
pkg_metadata: Message = metadata(package_name)
if sys.version_info >= (3, 10):
pkg_metadata = cast(Message, metadata(package_name))
else:
pkg_metadata = metadata(package_name)
return Metadata(
name=application_name,
version=pkg_metadata.get("Version", "0.0.0"),
Expand Down
12 changes: 7 additions & 5 deletions tests/metadata_test.py
Expand Up @@ -3,20 +3,22 @@

from __future__ import annotations

import sys
from email.message import Message
from importlib.metadata import metadata
from typing import TYPE_CHECKING
from typing import cast

import pytest

from safir.metadata import get_metadata, get_project_url

if TYPE_CHECKING:
from email.message import Message


@pytest.fixture(scope="session")
def safir_metadata() -> Message:
return metadata("safir")
if sys.version_info >= (3, 10):
return cast(Message, metadata("safir"))
else:
return metadata("safir")


def test_get_project_url(safir_metadata: Message) -> None:
Expand Down

0 comments on commit 9cfa0f9

Please sign in to comment.