diff --git a/dosagelib/__init__.py b/dosagelib/__init__.py index 6788241fa..e9bc79b5c 100644 --- a/dosagelib/__init__.py +++ b/dosagelib/__init__.py @@ -15,12 +15,16 @@ Comic modules for each comic are located in L{dosagelib.plugins}. """ from __future__ import absolute_import, division, print_function -AppName = u'dosage' - -from pkg_resources import get_distribution, DistributionNotFound try: - version_info = get_distribution(AppName) - __version__ = version_info.version # PEP 396 -except DistributionNotFound: + from importlib.metadata import version, PackageNotFoundError +except ImportError: + from importlib_metadata import version, PackageNotFoundError + +from .output import out + +AppName = u'dosage' +try: + __version__ = version(AppName) # PEP 396 +except PackageNotFoundError: # package is not installed pass diff --git a/requirements.txt b/requirements.txt index af3012a41..5a2e66052 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,3 +5,4 @@ six backports.shutil_get_terminal_size; python_version<'3.3' backports.functools_lru_cache; python_version<'3.2' cached_property; python_version<'3.8' +importlib_metadata; python_version<'3.8' diff --git a/setup.cfg b/setup.cfg index 1f3ffedbb..8b945f4e4 100644 --- a/setup.cfg +++ b/setup.cfg @@ -41,6 +41,7 @@ install_requires = backports.shutil_get_terminal_size; python_version<'3.3' backports.functools_lru_cache; python_version<'3.2' cached_property; python_version<'3.8' + importlib_metadata; python_version<'3.8' [options.entry_points] console_scripts =