diff options
author | Zuul <zuul@review.opendev.org> | 2022-04-29 17:21:37 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2022-04-29 17:21:37 +0000 |
commit | b79a10f0b5ea29235d4c6c77ae30da60f9af3e78 (patch) | |
tree | 1d8a046f5ff94959b5fe103d09b8598792b3d10b /keystoneclient | |
parent | 3c2d57483733dc27a3e80c838072db87d375add0 (diff) | |
parent | 6940b4ff0a2823228fab834bfaca6b851c60d8d3 (diff) | |
download | python-keystoneclient-b79a10f0b5ea29235d4c6c77ae30da60f9af3e78.tar.gz |
Merge "use importlib.metadata to get keyring version"
Diffstat (limited to 'keystoneclient')
-rw-r--r-- | keystoneclient/httpclient.py | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/keystoneclient/httpclient.py b/keystoneclient/httpclient.py index 1e94dab..865af41 100644 --- a/keystoneclient/httpclient.py +++ b/keystoneclient/httpclient.py @@ -20,11 +20,18 @@ import logging import warnings +try: + # For Python 3.8 and later + import importlib.metadata as importlib_metadata +except ImportError: + # For everyone else + import importlib_metadata + from debtcollector import removals from debtcollector import renames from keystoneauth1 import adapter from oslo_serialization import jsonutils -import pkg_resources +import packaging.version import requests try: @@ -33,9 +40,10 @@ try: # NOTE(sdague): The conditional keyring import needs to only # trigger if it's a version of keyring that's supported in global # requirements. Update _min and _bad when that changes. - keyring_v = pkg_resources.parse_version( - pkg_resources.get_distribution("keyring").version) - keyring_min = pkg_resources.parse_version('5.5.1') + keyring_v = packaging.version.Version( + importlib_metadata.version('keyring') + ) + keyring_min = packaging.version.Version('5.5.1') # This is a list of versions, e.g., pkg_resources.parse_version('3.3') keyring_bad = [] @@ -43,7 +51,7 @@ try: import keyring else: keyring = None -except (ImportError, pkg_resources.DistributionNotFound): +except (ImportError, importlib_metadata.PackageNotFoundError): keyring = None pickle = None |