mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-16 02:02:58 -07:00
Bump importlib-metadata from 8.0.0 to 8.2.0 (#2370)
* Bump importlib-metadata from 8.0.0 to 8.2.0 Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 8.0.0 to 8.2.0. - [Release notes](https://github.com/python/importlib_metadata/releases) - [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst) - [Commits](https://github.com/python/importlib_metadata/compare/v8.0.0...v8.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==8.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
822d5a452c
commit
2e6f541ec2
4 changed files with 113 additions and 4 deletions
|
@ -25,7 +25,7 @@ from ._compat import (
|
|||
install,
|
||||
)
|
||||
from ._functools import method_cache, pass_none
|
||||
from ._itertools import always_iterable, unique_everseen
|
||||
from ._itertools import always_iterable, bucket, unique_everseen
|
||||
from ._meta import PackageMetadata, SimplePath
|
||||
|
||||
from contextlib import suppress
|
||||
|
@ -39,6 +39,7 @@ __all__ = [
|
|||
'DistributionFinder',
|
||||
'PackageMetadata',
|
||||
'PackageNotFoundError',
|
||||
'SimplePath',
|
||||
'distribution',
|
||||
'distributions',
|
||||
'entry_points',
|
||||
|
@ -388,7 +389,7 @@ class Distribution(metaclass=abc.ABCMeta):
|
|||
if not name:
|
||||
raise ValueError("A distribution name is required.")
|
||||
try:
|
||||
return next(iter(cls.discover(name=name)))
|
||||
return next(iter(cls._prefer_valid(cls.discover(name=name))))
|
||||
except StopIteration:
|
||||
raise PackageNotFoundError(name)
|
||||
|
||||
|
@ -412,6 +413,16 @@ class Distribution(metaclass=abc.ABCMeta):
|
|||
resolver(context) for resolver in cls._discover_resolvers()
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def _prefer_valid(dists: Iterable[Distribution]) -> Iterable[Distribution]:
|
||||
"""
|
||||
Prefer (move to the front) distributions that have metadata.
|
||||
|
||||
Ref python/importlib_resources#489.
|
||||
"""
|
||||
buckets = bucket(dists, lambda dist: bool(dist.metadata))
|
||||
return itertools.chain(buckets[True], buckets[False])
|
||||
|
||||
@staticmethod
|
||||
def at(path: str | os.PathLike[str]) -> Distribution:
|
||||
"""Return a Distribution for the indicated metadata path.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue