mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-06-07 16:24:48 +02:00
39 lines
1.5 KiB
Diff
39 lines
1.5 KiB
Diff
Patch-Source: https://github.com/ceph/ceph/pull/59739
|
|
---
|
|
From 8c78a22d2cf69892570f635735d9735169b64a75 Mon Sep 17 00:00:00 2001
|
|
From: Peter Sabaini <peter.sabaini@canonical.com>
|
|
Date: Wed, 11 Sep 2024 16:56:50 +0200
|
|
Subject: [PATCH] ceph-volume: fix importlib.metadata compat
|
|
|
|
The importlib.metadata library removed older shims in releases >5.0.0
|
|
where EntryPoints objects use .select() instead of dict-like access.
|
|
|
|
Fixes: https://tracker.ceph.com/issues/68032
|
|
|
|
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
|
|
---
|
|
src/ceph-volume/ceph_volume/main.py | 10 +++++++++-
|
|
1 file changed, 9 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/ceph-volume/ceph_volume/main.py b/src/ceph-volume/ceph_volume/main.py
|
|
index f8eca65ec497c..4f27f429e89e2 100644
|
|
--- a/src/ceph-volume/ceph_volume/main.py
|
|
+++ b/src/ceph-volume/ceph_volume/main.py
|
|
@@ -11,8 +11,16 @@
|
|
from importlib.metadata import entry_points
|
|
|
|
def get_entry_points(group: str): # type: ignore
|
|
- return entry_points().get(group, []) # type: ignore
|
|
+ eps = entry_points()
|
|
+ if hasattr(eps, 'select'):
|
|
+ # New importlib.metadata uses .select()
|
|
+ return eps.select(group=group)
|
|
+ else:
|
|
+ # Fallback to older EntryPoints that returns dicts
|
|
+ return eps.get(group, []) # type: ignore
|
|
+
|
|
except ImportError:
|
|
+ # Fallback to `pkg_resources` for older versions
|
|
from pkg_resources import iter_entry_points as entry_points # type: ignore
|
|
|
|
def get_entry_points(group: str): # type: ignore
|