git: 97d1d164cab3 - main - sysutils/py-salt: fix runtime conflict with py39-importlib-metadata
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 21 Mar 2023 15:06:19 UTC
The branch main has been updated by brd:
URL: https://cgit.FreeBSD.org/ports/commit/?id=97d1d164cab342554bc413f269bab95752d3e704
commit 97d1d164cab342554bc413f269bab95752d3e704
Author: Alan Somers <asomers@FreeBSD.org>
AuthorDate: 2023-03-21 15:02:58 +0000
Commit: Brad Davis <brd@FreeBSD.org>
CommitDate: 2023-03-21 15:05:28 +0000
sysutils/py-salt: fix runtime conflict with py39-importlib-metadata
PR: 269858
Approved by: maintainer timeout
---
sysutils/py-salt/Makefile | 1 +
.../py-salt/files/patch-salt_utils_entrypoints.py | 27 ++++++++++++++++++++++
2 files changed, 28 insertions(+)
diff --git a/sysutils/py-salt/Makefile b/sysutils/py-salt/Makefile
index 5a29f0beb390..b32abac6a4de 100644
--- a/sysutils/py-salt/Makefile
+++ b/sysutils/py-salt/Makefile
@@ -1,5 +1,6 @@
PORTNAME= salt
PORTVERSION= 3005.1
+PORTREVISION= 1
CATEGORIES= sysutils python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/sysutils/py-salt/files/patch-salt_utils_entrypoints.py b/sysutils/py-salt/files/patch-salt_utils_entrypoints.py
new file mode 100644
index 000000000000..6dcfa3725648
--- /dev/null
+++ b/sysutils/py-salt/files/patch-salt_utils_entrypoints.py
@@ -0,0 +1,27 @@
+--- salt/utils/entrypoints.py.orig 2022-09-26 21:22:01 UTC
++++ salt/utils/entrypoints.py
+@@ -38,13 +38,20 @@ def iter_entry_points(group, name=None):
+ entry_points_listing = []
+ entry_points = importlib_metadata.entry_points()
+
+- for entry_point_group, entry_points_list in entry_points.items():
+- if entry_point_group != group:
+- continue
+- for entry_point in entry_points_list:
++ try:
++ for entry_point in entry_points.select(group=group):
+ if name is not None and entry_point.name != name:
+ continue
+ entry_points_listing.append(entry_point)
++ except AttributeError:
++ # importlib-metadata<5.0.0
++ for entry_point_group, entry_points_list in entry_points.items():
++ if entry_point_group != group:
++ continue
++ for entry_point in entry_points_list:
++ if name is not None and entry_point.name != name:
++ continue
++ entry_points_listing.append(entry_point)
+
+ return entry_points_listing
+