From fe918dab6674d029a807b9681b7b80cfc86581eb Mon Sep 17 00:00:00 2001 From: Michael Carlstrom Date: Mon, 24 Nov 2025 09:19:35 -0800 Subject: [PATCH 1/4] Remove importlib_metadata Signed-off-by: Michael Carlstrom --- ament_copyright/ament_copyright/__init__.py | 19 +++++-------------- ament_copyright/package.xml | 1 - 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/ament_copyright/ament_copyright/__init__.py b/ament_copyright/ament_copyright/__init__.py index 3c6def31..71e96a85 100644 --- a/ament_copyright/ament_copyright/__init__.py +++ b/ament_copyright/ament_copyright/__init__.py @@ -12,10 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -try: - import importlib.metadata as importlib_metadata -except ModuleNotFoundError: - import importlib_metadata +from importlib import metadata COPYRIGHT_GROUP = 'ament_copyright.copyright_name' @@ -38,11 +35,8 @@ def get_copyright_names(): names = {} - entry_points = importlib_metadata.entry_points() - if hasattr(entry_points, 'select'): - copyright_groups = entry_points.select(group=COPYRIGHT_GROUP) - else: - copyright_groups = entry_points.get(COPYRIGHT_GROUP, []) + entry_points = metadata.entry_points() + copyright_groups = entry_points.select(group=COPYRIGHT_GROUP) for entry_point in copyright_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name @@ -53,11 +47,8 @@ def get_copyright_names(): def get_licenses(): licenses = {} - entry_points = importlib_metadata.entry_points() - if hasattr(entry_points, 'select'): - license_groups = entry_points.select(group=LICENSE_GROUP) - else: - license_groups = entry_points.get(LICENSE_GROUP, []) + entry_points = metadata.entry_points() + license_groups = entry_points.select(group=LICENSE_GROUP) for entry_point in license_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name diff --git a/ament_copyright/package.xml b/ament_copyright/package.xml index c5943b76..8d33e062 100644 --- a/ament_copyright/package.xml +++ b/ament_copyright/package.xml @@ -19,7 +19,6 @@ Michel Hidalgo ament_lint - python3-importlib-metadata ament_flake8 ament_pep257 From b74c9e18f15c0b46ebdc885baa43f7991d55d99f Mon Sep 17 00:00:00 2001 From: Michael Carlstrom Date: Tue, 25 Nov 2025 07:45:05 -0800 Subject: [PATCH 2/4] switch to version guard Signed-off-by: Michael Carlstrom --- ament_copyright/ament_copyright/__init__.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ament_copyright/ament_copyright/__init__.py b/ament_copyright/ament_copyright/__init__.py index 71e96a85..6815d721 100644 --- a/ament_copyright/ament_copyright/__init__.py +++ b/ament_copyright/ament_copyright/__init__.py @@ -12,6 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import sys from importlib import metadata @@ -36,7 +37,10 @@ def get_copyright_names(): names = {} entry_points = metadata.entry_points() - copyright_groups = entry_points.select(group=COPYRIGHT_GROUP) + if sys.version_info >= (3, 12): + copyright_groups = entry_points.select(group=COPYRIGHT_GROUP) + else: + copyright_groups = entry_points.get(COPYRIGHT_GROUP) for entry_point in copyright_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name @@ -48,7 +52,10 @@ def get_copyright_names(): def get_licenses(): licenses = {} entry_points = metadata.entry_points() - license_groups = entry_points.select(group=LICENSE_GROUP) + if sys.version_info >= (3, 12): + license_groups = entry_points.select(group=COPYRIGHT_GROUP) + else: + license_groups = entry_points.get(COPYRIGHT_GROUP) for entry_point in license_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name From e11dc3a33f94b47d435eea29d15fd38d056eca39 Mon Sep 17 00:00:00 2001 From: Michael Carlstrom Date: Tue, 25 Nov 2025 07:45:44 -0800 Subject: [PATCH 3/4] add back default Signed-off-by: Michael Carlstrom --- ament_copyright/ament_copyright/__init__.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ament_copyright/ament_copyright/__init__.py b/ament_copyright/ament_copyright/__init__.py index 6815d721..476e33cc 100644 --- a/ament_copyright/ament_copyright/__init__.py +++ b/ament_copyright/ament_copyright/__init__.py @@ -40,7 +40,7 @@ def get_copyright_names(): if sys.version_info >= (3, 12): copyright_groups = entry_points.select(group=COPYRIGHT_GROUP) else: - copyright_groups = entry_points.get(COPYRIGHT_GROUP) + copyright_groups = entry_points.get(COPYRIGHT_GROUP, []) for entry_point in copyright_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name @@ -53,9 +53,9 @@ def get_licenses(): licenses = {} entry_points = metadata.entry_points() if sys.version_info >= (3, 12): - license_groups = entry_points.select(group=COPYRIGHT_GROUP) + license_groups = entry_points.select(group=LICENSE_GROUP) else: - license_groups = entry_points.get(COPYRIGHT_GROUP) + license_groups = entry_points.get(LICENSE_GROUP, []) for entry_point in license_groups: assert entry_point.name != UNKNOWN_IDENTIFIER, \ "Invalid entry point name '%s'" % entry_point.name From fd96230423ad068c1e24402fff554e55f2940f2d Mon Sep 17 00:00:00 2001 From: Michael Carlstrom Date: Tue, 25 Nov 2025 08:11:33 -0800 Subject: [PATCH 4/4] fix flake8 Signed-off-by: Michael Carlstrom --- ament_copyright/ament_copyright/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ament_copyright/ament_copyright/__init__.py b/ament_copyright/ament_copyright/__init__.py index 476e33cc..940e7120 100644 --- a/ament_copyright/ament_copyright/__init__.py +++ b/ament_copyright/ament_copyright/__init__.py @@ -12,8 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -import sys from importlib import metadata +import sys COPYRIGHT_GROUP = 'ament_copyright.copyright_name'