summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJamie Lennox <jamielennox@gmail.com>2016-12-07 15:19:52 +1100
committerJamie Lennox <jamielennox@gmail.com>2016-12-07 15:55:03 +1100
commite9f0d54499047d534f068722868f6a66277870d8 (patch)
tree844a9cf48fe2fa219e252121d54e350c4c41c391
parent2b9d1554cc7ab08dd6606a0338843be268c868df (diff)
downloadpython-keystoneclient-e9f0d54499047d534f068722868f6a66277870d8.tar.gz
Deprecate the generic client
The generic client has been around and unused for a really long time. I dont think it works at all and was never updated to support V3 concepts. Realistically we can probably just remove it and noone will notice, but give it a quick deprecation cycle. Closes-Bug: #1647930 Change-Id: Ie68c8995275bcd55aede49d8f4af4e0d172de089
-rw-r--r--keystoneclient/generic/client.py6
-rw-r--r--keystoneclient/releasenotes/notes/removed-generic-client-ff505b2b01bc9302.yaml6
-rw-r--r--keystoneclient/tests/unit/generic/test_client.py1
3 files changed, 13 insertions, 0 deletions
diff --git a/keystoneclient/generic/client.py b/keystoneclient/generic/client.py
index 6d04802..2f1ffca 100644
--- a/keystoneclient/generic/client.py
+++ b/keystoneclient/generic/client.py
@@ -15,6 +15,7 @@
import logging
+from debtcollector import removals
from six.moves.urllib import parse as urlparse
from keystoneclient import exceptions
@@ -25,6 +26,11 @@ from keystoneclient.i18n import _, _LE
_logger = logging.getLogger(__name__)
+# NOTE(jamielennox): To be removed after Pike.
+@removals.removed_class('keystoneclient.generic.client.Client',
+ message='Use keystoneauth discovery',
+ version='3.9.0',
+ removal_version='4.0.0')
class Client(httpclient.HTTPClient):
"""Client for the OpenStack Keystone pre-version calls API.
diff --git a/keystoneclient/releasenotes/notes/removed-generic-client-ff505b2b01bc9302.yaml b/keystoneclient/releasenotes/notes/removed-generic-client-ff505b2b01bc9302.yaml
new file mode 100644
index 0000000..61b9d17
--- /dev/null
+++ b/keystoneclient/releasenotes/notes/removed-generic-client-ff505b2b01bc9302.yaml
@@ -0,0 +1,6 @@
+---
+deprecations:
+ - Deprecate the `keystoneclient.generic` client. This client used to be able
+ to determine available API versions and some basics around installed
+ extensions however the APIs were never upgraded for the v3 API. It doesn't
+ seem to be used in the openstack ecosystem.
diff --git a/keystoneclient/tests/unit/generic/test_client.py b/keystoneclient/tests/unit/generic/test_client.py
index a3690fb..ffd3a52 100644
--- a/keystoneclient/tests/unit/generic/test_client.py
+++ b/keystoneclient/tests/unit/generic/test_client.py
@@ -58,6 +58,7 @@ class ClientDiscoveryTests(utils.TestCase):
def test_discover_extensions_v2(self):
self.requests_mock.get("%s/extensions" % V2_URL, text=EXTENSION_LIST)
# Creating a HTTPClient not using session is deprecated.
+ # creating a generic client at all is deprecated.
with self.deprecations.expect_deprecations_here():
extensions = client.Client().discover_extensions(url=V2_URL)
self.assertIn(EXTENSION_ALIAS_FOO, extensions)