Skip to content

Commit

Permalink
types: Pass through types through Filter
Browse files Browse the repository at this point in the history
  • Loading branch information
henryiii committed Dec 13, 2022
1 parent c20074d commit 20a0e6c
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/packaging/specifiers.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@
import abc
import itertools
import re
from typing import Callable, Iterable, Iterator, List, Optional, Set, Tuple, Union
from typing import Callable, Iterable, Iterator, List, Optional, Set, Tuple, TypeVar, Union

from .utils import canonicalize_version
from .version import Version

UnparsedVersion = Union[Version, str]
UnparsedVersionVar = TypeVar("UnparsedVersionVar", bound=UnparsedVersion)
CallableOperator = Callable[[Version, str], bool]


Expand Down Expand Up @@ -85,8 +86,8 @@ def contains(self, item: str, prereleases: Optional[bool] = None) -> bool:

@abc.abstractmethod
def filter(
self, iterable: Iterable[UnparsedVersion], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersion]:
self, iterable: Iterable[UnparsedVersionVar], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersionVar]:
"""
Takes an iterable of items and filters them so that only items which
are contained within this specifier are allowed in it.
Expand Down Expand Up @@ -565,8 +566,8 @@ def contains(
return operator_callable(normalized_item, self.version)

def filter(
self, iterable: Iterable[UnparsedVersion], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersion]:
self, iterable: Iterable[UnparsedVersionVar], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersionVar]:
"""Filter items in the given iterable, that match the specifier.
:param iterable:
Expand Down Expand Up @@ -915,8 +916,8 @@ def contains(
return all(s.contains(item, prereleases=prereleases) for s in self._specs)

def filter(
self, iterable: Iterable[UnparsedVersion], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersion]:
self, iterable: Iterable[UnparsedVersionVar], prereleases: Optional[bool] = None
) -> Iterator[UnparsedVersionVar]:
"""Filter items in the given iterable, that match the specifiers in this set.
:param iterable:
Expand Down

0 comments on commit 20a0e6c

Please sign in to comment.