From b45e19f9f275a31873fd5e07faabef16fd0bbec0 Mon Sep 17 00:00:00 2001 From: Ronny Pfannschmidt Date: Sat, 7 May 2022 21:12:35 +0200 Subject: complete mypy transformation --- src/setuptools_scm/hacks.py | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) (limited to 'src/setuptools_scm/hacks.py') diff --git a/src/setuptools_scm/hacks.py b/src/setuptools_scm/hacks.py index 3108de8..259bab2 100644 --- a/src/setuptools_scm/hacks.py +++ b/src/setuptools_scm/hacks.py @@ -1,33 +1,45 @@ import os +from typing import Optional +from . import _types as _t +from .config import Configuration from .utils import data_from_mime from .utils import trace from .version import meta +from .version import ScmVersion from .version import tag_to_version +_UNKNOWN = "UNKNOWN" -def parse_pkginfo(root, config=None): + +def parse_pkginfo( + root: _t.PathT, config: Optional[Configuration] = None +) -> Optional[ScmVersion]: pkginfo = os.path.join(root, "PKG-INFO") trace("pkginfo", pkginfo) data = data_from_mime(pkginfo) - version = data.get("Version") - if version != "UNKNOWN": + version = data.get("Version", _UNKNOWN) + if version != _UNKNOWN: return meta(version, preformatted=True, config=config) + else: + return None -def parse_pip_egg_info(root, config=None): +def parse_pip_egg_info( + root: _t.PathT, config: Optional[Configuration] = None +) -> Optional[ScmVersion]: pipdir = os.path.join(root, "pip-egg-info") if not os.path.isdir(pipdir): - return + return None items = os.listdir(pipdir) trace("pip-egg-info", pipdir, items) if not items: - return + return None return parse_pkginfo(os.path.join(pipdir, items[0]), config=config) -def fallback_version(root, config=None): +def fallback_version(root: _t.PathT, config: Configuration) -> Optional[ScmVersion]: if config.parentdir_prefix_version is not None: _, parent_name = os.path.split(os.path.abspath(root)) if parent_name.startswith(config.parentdir_prefix_version): @@ -39,3 +51,4 @@ def fallback_version(root, config=None): if config.fallback_version is not None: trace("FALLBACK") return meta(config.fallback_version, preformatted=True, config=config) + return None -- cgit v1.2.1