From cb1be57d38fac914e718fc4998f63f2c1800ca03 Mon Sep 17 00:00:00 2001
From: Takashi Kajinami <kajinamit@oss.nttdata.com>
Date: Sat, 7 Oct 2023 12:07:46 +0900
Subject: [PATCH] Declare Python 3.10 support

... and removes the remaining code and dependency for Python < 3.8.

Change-Id: I9aa4b4fa6b73b6fbc792789b4bc63b7fb0370806
---
 keystoneclient/httpclient.py | 12 +++---------
 requirements.txt             |  1 -
 setup.cfg                    |  1 +
 3 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/keystoneclient/httpclient.py b/keystoneclient/httpclient.py
index 865af4175..8c38d1596 100644
--- a/keystoneclient/httpclient.py
+++ b/keystoneclient/httpclient.py
@@ -17,16 +17,10 @@
 #    under the License.
 """OpenStack Client interface. Handles the REST calls and responses."""
 
+import importlib.metadata
 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
@@ -41,7 +35,7 @@ try:
     # trigger if it's a version of keyring that's supported in global
     # requirements. Update _min and _bad when that changes.
     keyring_v = packaging.version.Version(
-        importlib_metadata.version('keyring')
+        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')
@@ -51,7 +45,7 @@ try:
         import keyring
     else:
         keyring = None
-except (ImportError, importlib_metadata.PackageNotFoundError):
+except (ImportError, importlib.metadata.PackageNotFoundError):
     keyring = None
     pickle = None
 
diff --git a/requirements.txt b/requirements.txt
index e621b5802..c0528e08f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -17,5 +17,4 @@ oslo.utils>=3.33.0 # Apache-2.0
 requests>=2.14.2 # Apache-2.0
 six>=1.10.0 # MIT
 stevedore>=1.20.0 # Apache-2.0
-importlib_metadata>=1.7.0;python_version<'3.8' # Apache-2.0
 packaging>=20.4 # BSD
diff --git a/setup.cfg b/setup.cfg
index 36ad7d91b..9d6e9050b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -17,6 +17,7 @@ classifier =
     Programming Language :: Python :: 3
     Programming Language :: Python :: 3.8
     Programming Language :: Python :: 3.9
+    Programming Language :: Python :: 3.10
 
 [files]
 packages =