From 22ea8957aff87a505a6d5545a8eecadd8091c659 Mon Sep 17 00:00:00 2001 From: Jaekwon Bang Date: Mon, 9 Jun 2025 17:01:26 +0900 Subject: [PATCH] Replace pkg_resources to impotlib --- src/fosslight_util/help.py | 10 ++++++++-- src/fosslight_util/set_log.py | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/fosslight_util/help.py b/src/fosslight_util/help.py index 4546e80..9f0db55 100644 --- a/src/fosslight_util/help.py +++ b/src/fosslight_util/help.py @@ -3,7 +3,10 @@ # Copyright (c) 2021 LG Electronics Inc. # SPDX-License-Identifier: Apache-2.0 import sys -import pkg_resources +try: + from importlib.metadata import version, PackageNotFoundError +except ImportError: + from importlib_metadata import version, PackageNotFoundError # Python <3.8 _HELP_MESSAGE_COMMON = """ _______ _______ _______ _______ ___ ___ __ @@ -50,7 +53,10 @@ def print_help_msg(self, exitopt: bool) -> None: def print_package_version(pkg_name: str, msg: str = "", exitopt: bool = True) -> str: if msg == "": msg = f"{pkg_name} Version:" - cur_version = pkg_resources.get_distribution(pkg_name).version + try: + cur_version = version(pkg_name) + except PackageNotFoundError: + cur_version = "unknown" if exitopt: print(f'{msg} {cur_version}') diff --git a/src/fosslight_util/set_log.py b/src/fosslight_util/set_log.py index 9c3dd76..92c8081 100755 --- a/src/fosslight_util/set_log.py +++ b/src/fosslight_util/set_log.py @@ -6,7 +6,6 @@ import logging import os from pathlib import Path -import pkg_resources import sys import platform from . import constant as constant @@ -15,6 +14,11 @@ from typing import Tuple from logging import Logger +try: + from importlib.metadata import version, PackageNotFoundError +except ImportError: + from importlib_metadata import version, PackageNotFoundError # Python <3.8 + def init_check_latest_version(pkg_version="", main_package_name=""): @@ -92,9 +96,11 @@ def init_log(log_file: str, create_file: bool = True, stream_log_level: int = lo if main_package_name != "": pkg_info = main_package_name try: - pkg_version = pkg_resources.get_distribution(main_package_name).version + pkg_version = version(main_package_name) init_check_latest_version(pkg_version, main_package_name) pkg_info = main_package_name + " v" + pkg_version + except PackageNotFoundError: + logger.debug('Cannot check the version: Package not found') except Exception as error: logger.debug('Cannot check the version:' + str(error)) _result_log["Tool Info"] = pkg_info