From 46dd03fe02b5b9a71f3c048d358305cd8fdbad1f Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 9 Jun 2023 10:42:08 -0400 Subject: [PATCH 1/2] replace pkg_resources with importlib.metadata --- readme_renderer/__main__.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/readme_renderer/__main__.py b/readme_renderer/__main__.py index 945997c..bcefadd 100644 --- a/readme_renderer/__main__.py +++ b/readme_renderer/__main__.py @@ -1,10 +1,9 @@ import argparse -import email from readme_renderer.markdown import render as render_md from readme_renderer.rst import render as render_rst from readme_renderer.txt import render as render_txt import pathlib -from pkg_resources import get_distribution +from importlib.metadata import metadata import sys from typing import Optional, List @@ -24,14 +23,12 @@ def main(cli_args: Optional[List[str]] = None) -> None: content_format = args.format if args.package: - distribution = get_distribution(args.input) - pkg_info = distribution.get_metadata(distribution.PKG_INFO) - message = email.message_from_string(pkg_info) - source = message.get_payload() + message = metadata(args.input) + source = message.get_payload() # type: ignore[attr-defined] # https://peps.python.org/pep-0566/ # Infer the format of the description from package metadata. if not content_format: - content_type = message.get("Description-Content-Type", "text/x-rst") + content_type = message.get("Description-Content-Type", "text/x-rst") # type: ignore[attr-defined] # noqa: F821 https://github.com/python/typeshed/issues/10021 if content_type == "text/x-rst": content_format = "rst" elif content_type == "text/markdown": From cf16987c8c12a633d40820f89ff3f54c3977617c Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 9 Jun 2023 10:47:25 -0400 Subject: [PATCH 2/2] fix noqa ignores --- readme_renderer/__main__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/readme_renderer/__main__.py b/readme_renderer/__main__.py index bcefadd..d3ebab3 100644 --- a/readme_renderer/__main__.py +++ b/readme_renderer/__main__.py @@ -24,11 +24,11 @@ def main(cli_args: Optional[List[str]] = None) -> None: content_format = args.format if args.package: message = metadata(args.input) - source = message.get_payload() # type: ignore[attr-defined] # https://peps.python.org/pep-0566/ + source = message.get_payload() # type: ignore[attr-defined] # noqa: E501 https://peps.python.org/pep-0566/ # Infer the format of the description from package metadata. if not content_format: - content_type = message.get("Description-Content-Type", "text/x-rst") # type: ignore[attr-defined] # noqa: F821 https://github.com/python/typeshed/issues/10021 + content_type = message.get("Description-Content-Type", "text/x-rst") # type: ignore[attr-defined] # noqa: E501 https://github.com/python/typeshed/issues/10021 if content_type == "text/x-rst": content_format = "rst" elif content_type == "text/markdown":