diff --git a/src/cmlibs/utils/__init__.py b/src/cmlibs/utils/__init__.py index 79760ca..8ca559c 100644 --- a/src/cmlibs/utils/__init__.py +++ b/src/cmlibs/utils/__init__.py @@ -1,3 +1,14 @@ -import importlib.metadata +from importlib import metadata -__version__ = importlib.metadata.version("cmlibs_utils") + +def get_version(package_name: str, fallback: str = "X.Y.Z") -> str: + try: + return metadata.version(package_name) + except metadata.PackageNotFoundError: + try: + return metadata.version(package_name.replace(".", "_")) + except metadata.PackageNotFoundError: + return fallback + + +__version__ = get_version("cmlibs.utils")