Avoid using new _typeshed protocol in pkg_resources for now (#11909)

This commit is contained in:
Avasam
2024-05-12 16:19:58 -04:00
committed by GitHub
parent a4c4076b61
commit ef42294f92

View File

@@ -1,7 +1,6 @@
import types
import zipimport
from _typeshed import Incomplete, StrPath, Unused
from _typeshed.importlib import LoaderProtocol
from collections.abc import Callable, Generator, Iterable, Iterator, Sequence
from io import BytesIO
from itertools import chain
@@ -13,6 +12,10 @@ from zipfile import ZipInfo
from ._vendored_packaging import requirements as packaging_requirements, version as packaging_version
# TODO: Use _typeshed.importlib.LoaderProtocol once mypy has included it in its vendored typeshed
class _LoaderProtocol(Protocol):
def load_module(self, fullname: str, /) -> types.ModuleType: ...
_T = TypeVar("_T")
_D = TypeVar("_D", bound=Distribution)
_NestedStr: TypeAlias = str | Iterable[_NestedStr]
@@ -360,7 +363,7 @@ def evaluate_marker(text: str, extra: Incomplete | None = None) -> bool: ...
class NullProvider:
egg_name: str | None
egg_info: str | None
loader: LoaderProtocol | None
loader: _LoaderProtocol | None
module_path: str | None
def __init__(self, module: _ModuleLike) -> None: ...