diff --git a/libcomxml/__init__.py b/libcomxml/__init__.py index b0582eb..d94e558 100644 --- a/libcomxml/__init__.py +++ b/libcomxml/__init__.py @@ -3,7 +3,15 @@ """libcomxml package""" try: - __version__ = __import__('pkg_resources') \ - .get_distribution(__name__).version + from importlib.metadata import version as _distribution_version +except ImportError: + from pkg_resources import get_distribution as _get_distribution + + def _distribution_version(distribution): + return _get_distribution(distribution).version + + +try: + __version__ = _distribution_version(__name__) except Exception: - __version__ = 'unknown' \ No newline at end of file + __version__ = 'unknown' diff --git a/tests/test_libcomxml.py b/tests/test_libcomxml.py index 8d16743..9a73a41 100644 --- a/tests/test_libcomxml.py +++ b/tests/test_libcomxml.py @@ -6,6 +6,7 @@ import unittest import locale import re +from libcomxml import __version__ from libcomxml.core import XmlField, XmlModel, clean_xml import os import sys @@ -13,6 +14,12 @@ _ROOT = os.path.abspath(os.path.dirname(__file__)) +class TestPackage(unittest.TestCase): + + def test_version_is_available(self): + self.assertNotEqual(__version__, 'unknown') + + class XMLTest(unittest.TestCase): def assertXmlEqual(self, got, want):