mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-14 01:02:59 -07:00
Bump importlib-metadata from 5.0.0 to 5.2.0 (#1932)
* Bump importlib-metadata from 5.0.0 to 5.2.0 Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 5.0.0 to 5.2.0. - [Release notes](https://github.com/python/importlib_metadata/releases) - [Changelog](https://github.com/python/importlib_metadata/blob/main/CHANGES.rst) - [Commits](https://github.com/python/importlib_metadata/compare/v5.0.0...v5.2.0) --- updated-dependencies: - dependency-name: importlib-metadata dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Update importlib-metadata==5.2.0 Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> [skip ci]
This commit is contained in:
parent
56780677fb
commit
8159bf456c
6 changed files with 35 additions and 25 deletions
|
@ -1,7 +1,7 @@
|
|||
"""
|
||||
Compatibility layer with Python 3.8/3.9
|
||||
"""
|
||||
from typing import TYPE_CHECKING, Any, Optional, Tuple
|
||||
from typing import TYPE_CHECKING, Any, Optional
|
||||
|
||||
if TYPE_CHECKING: # pragma: no cover
|
||||
# Prevent circular imports on runtime.
|
||||
|
@ -22,27 +22,14 @@ def normalized_name(dist: Distribution) -> Optional[str]:
|
|||
return Prepared.normalize(getattr(dist, "name", None) or dist.metadata['Name'])
|
||||
|
||||
|
||||
def ep_matches(ep: EntryPoint, **params) -> Tuple[EntryPoint, bool]:
|
||||
def ep_matches(ep: EntryPoint, **params) -> bool:
|
||||
"""
|
||||
Workaround for ``EntryPoint`` objects without the ``matches`` method.
|
||||
For the sake of convenience, a tuple is returned containing not only the
|
||||
boolean value corresponding to the predicate evalutation, but also a compatible
|
||||
``EntryPoint`` object that can be safely used at a later stage.
|
||||
|
||||
For example, the following sequences of expressions should be compatible:
|
||||
|
||||
# Sequence 1: using the compatibility layer
|
||||
candidates = (_py39compat.ep_matches(ep, **params) for ep in entry_points)
|
||||
[ep for ep, predicate in candidates if predicate]
|
||||
|
||||
# Sequence 2: using Python 3.9+
|
||||
[ep for ep in entry_points if ep.matches(**params)]
|
||||
"""
|
||||
try:
|
||||
return ep, ep.matches(**params)
|
||||
return ep.matches(**params)
|
||||
except AttributeError:
|
||||
from . import EntryPoint # -> delay to prevent circular imports.
|
||||
|
||||
# Reconstruct the EntryPoint object to make sure it is compatible.
|
||||
_ep = EntryPoint(ep.name, ep.value, ep.group)
|
||||
return _ep, _ep.matches(**params)
|
||||
return EntryPoint(ep.name, ep.value, ep.group).matches(**params)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue