Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prefer importlib_metadata for entrypoint parsing. #728

Merged
merged 4 commits into from Feb 21, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog/728.feature.rst
@@ -0,0 +1 @@
Prefer importlib.metadata for entry point handling.
4 changes: 3 additions & 1 deletion twine/__init__.py
Expand Up @@ -29,7 +29,9 @@
if sys.version_info[:2] >= (3, 8):
from importlib import metadata as importlib_metadata
else:
import importlib_metadata
# Using `as` to workaround "implicit reexport disabled"
# https://mypy.readthedocs.io/en/stable/config_file.html#confval-implicit_reexport
import importlib_metadata as importlib_metadata


metadata = importlib_metadata.metadata("twine")
Expand Down
9 changes: 5 additions & 4 deletions twine/cli.py
Expand Up @@ -14,7 +14,6 @@
import argparse
from typing import Any, Dict, List, Tuple

import pkg_resources
import pkginfo
import requests
import requests_toolbelt
Expand All @@ -23,15 +22,17 @@

import twine
from twine import _installed
from twine import importlib_metadata

args = argparse.Namespace()


def _registered_commands(
group: str = "twine.registered_commands",
) -> Dict[str, pkg_resources.EntryPoint]:
registered_commands = pkg_resources.iter_entry_points(group=group)
return {c.name: c for c in registered_commands}
) -> Dict[str, importlib_metadata.EntryPoint]:
# todo: with python/importlib_metadata#278:
# return importlib_metadata.entry_points()[group]
return {ep.name: ep for ep in importlib_metadata.entry_points()[group]}


def list_dependencies_and_versions() -> List[Tuple[str, str]]:
Expand Down