diff --git a/glanceclient/common/http.py b/glanceclient/common/http.py index 67a8d067..38afd588 100644 --- a/glanceclient/common/http.py +++ b/glanceclient/common/http.py @@ -53,7 +53,7 @@ def encode_headers(headers): names and values """ return dict((encodeutils.safe_encode(h), encodeutils.safe_encode(v)) - for h, v in six.iteritems(headers) if v is not None) + for h, v in headers.items() if v is not None) class _BaseHTTPClient(object): @@ -181,7 +181,7 @@ class HTTPClient(_BaseHTTPClient): headers = copy.deepcopy(headers) headers.update(self.session.headers) - for (key, value) in six.iteritems(headers): + for (key, value) in headers.items(): header = '-H \'%s: %s\'' % utils.safe_header(key, value) curl.append(header) @@ -227,7 +227,7 @@ class HTTPClient(_BaseHTTPClient): headers = copy.deepcopy(kwargs.pop('headers', {})) if self.identity_headers: - for k, v in six.iteritems(self.identity_headers): + for k, v in self.identity_headers.items(): headers.setdefault(k, v) data = self._set_common_request_kwargs(headers, kwargs) diff --git a/glanceclient/common/utils.py b/glanceclient/common/utils.py index 0221bf47..09c89f0b 100644 --- a/glanceclient/common/utils.py +++ b/glanceclient/common/utils.py @@ -122,7 +122,7 @@ def schema_args(schema_getter, omit=None): kwargs)) else: properties = schema.get('properties', {}) - for name, property in six.iteritems(properties): + for name, property in properties.items(): if name in omit: continue param = '--' + name.replace('_', '-') @@ -186,7 +186,7 @@ def print_list(objs, fields, formatters=None, field_settings=None): row = [] for field in fields: if field in field_settings: - for setting, value in six.iteritems(field_settings[field]): + for setting, value in field_settings[field].items(): setting_dict = getattr(pt, setting) setting_dict[field] = value @@ -205,7 +205,7 @@ def print_dict(d, max_column_width=80): pt = prettytable.PrettyTable(['Property', 'Value'], caching=False) pt.align = 'l' pt.max_width = max_column_width - for k, v in six.iteritems(d): + for k, v in d.items(): if isinstance(v, (dict, list)): v = json.dumps(v) pt.add_row([k, v]) @@ -388,7 +388,7 @@ def strip_version(endpoint): def print_image(image_obj, human_readable=False, max_col_width=None): ignore = ['self', 'access', 'file', 'schema'] - image = dict([item for item in six.iteritems(image_obj) + image = dict([item for item in image_obj.items() if item[0] not in ignore]) if human_readable: image['size'] = make_size_human_readable(image['size']) diff --git a/glanceclient/tests/unit/test_http.py b/glanceclient/tests/unit/test_http.py index ae192317..47e600ab 100644 --- a/glanceclient/tests/unit/test_http.py +++ b/glanceclient/tests/unit/test_http.py @@ -134,7 +134,7 @@ class TestClient(testtools.TestCase): http_client.get(path) headers = self.mock.last_request.headers - for k, v in six.iteritems(identity_headers): + for k, v in identity_headers.items(): self.assertEqual(v, headers[k]) def test_language_header_passed(self): @@ -326,7 +326,7 @@ class TestClient(testtools.TestCase): 'LOG.debug called with no arguments') needles = {'key': key, 'cert': cert, 'cacert': cacert} - for option, value in six.iteritems(needles): + for option, value in needles.items(): if value: regex = ".*\s--%s\s+('%s'|%s).*" % (option, value, value) self.assertThat(mock_log.call_args[0][0], diff --git a/glanceclient/tests/unit/v2/test_metadefs_objects.py b/glanceclient/tests/unit/v2/test_metadefs_objects.py index 509f7550..5de31124 100644 --- a/glanceclient/tests/unit/v2/test_metadefs_objects.py +++ b/glanceclient/tests/unit/v2/test_metadefs_objects.py @@ -13,7 +13,6 @@ # License for the specific language governing permissions and limitations # under the License. -import six import testtools from glanceclient.tests.unit.v2 import base @@ -276,7 +275,7 @@ class TestObjectController(testtools.TestCase): obj = self.controller.get(NAMESPACE1, OBJECT1) self.assertEqual(OBJECT1, obj.name) self.assertEqual(sorted([PROPERTY1, PROPERTY2]), - sorted(list(six.iterkeys(obj.properties)))) + sorted(list(obj.properties.keys()))) def test_create_object(self): properties = { diff --git a/glanceclient/v1/apiclient/base.py b/glanceclient/v1/apiclient/base.py index cb480961..a12a8cc0 100644 --- a/glanceclient/v1/apiclient/base.py +++ b/glanceclient/v1/apiclient/base.py @@ -317,7 +317,7 @@ class CrudManager(BaseManager): def _filter_kwargs(self, kwargs): """Drop null values and handle ids.""" - for key, ref in six.iteritems(kwargs.copy()): + for key, ref in kwargs.copy().items(): if ref is None: kwargs.pop(key) else: @@ -475,7 +475,7 @@ class Resource(object): return None def _add_details(self, info): - for (k, v) in six.iteritems(info): + for (k, v) in info.items(): try: setattr(self, k, v) self._info[k] = v diff --git a/glanceclient/v1/apiclient/exceptions.py b/glanceclient/v1/apiclient/exceptions.py index 5bda5f0c..f3d778cd 100644 --- a/glanceclient/v1/apiclient/exceptions.py +++ b/glanceclient/v1/apiclient/exceptions.py @@ -421,7 +421,7 @@ class HttpVersionNotSupported(HttpServerError): # _code_map contains all the classes that have http_status attribute. _code_map = dict( (getattr(obj, 'http_status', None), obj) - for name, obj in six.iteritems(vars(sys.modules[__name__])) + for name, obj in vars(sys.modules[__name__]).items() if inspect.isclass(obj) and getattr(obj, 'http_status', False) ) diff --git a/glanceclient/v1/images.py b/glanceclient/v1/images.py index 182f1e5e..966d45a4 100644 --- a/glanceclient/v1/images.py +++ b/glanceclient/v1/images.py @@ -72,7 +72,7 @@ class ImageManager(base.ManagerWithFind): def _image_meta_from_headers(self, headers): meta = {'properties': {}} safe_decode = encodeutils.safe_decode - for key, value in six.iteritems(headers): + for key, value in headers.items(): # NOTE(flaper87): this is a compatibility fix # for urllib3 >= 1.11. Please, refer to this # bug for more info: @@ -105,9 +105,9 @@ class ImageManager(base.ManagerWithFind): return str(value) return value - for key, value in six.iteritems(fields_copy.pop('properties', {})): + for key, value in fields_copy.pop('properties', {}).items(): headers['x-image-meta-property-%s' % key] = to_str(value) - for key, value in six.iteritems(fields_copy): + for key, value in fields_copy.items(): headers['x-image-meta-%s' % key] = to_str(value) return headers @@ -224,7 +224,7 @@ class ImageManager(base.ManagerWithFind): return not (image.owner == owner) def paginate(qp, return_request_id=None): - for param, value in six.iteritems(qp): + for param, value in qp.items(): if isinstance(value, six.string_types): # Note(flaper87) Url encoding should # be moved inside http utils, at least diff --git a/glanceclient/v1/shell.py b/glanceclient/v1/shell.py index e1df3465..b5ccc93a 100644 --- a/glanceclient/v1/shell.py +++ b/glanceclient/v1/shell.py @@ -18,7 +18,6 @@ from __future__ import print_function import copy import functools import os -import six import sys from oslo_utils import encodeutils @@ -128,7 +127,7 @@ def _image_show(image, human_readable=False, max_column_width=80): info = copy.deepcopy(image._info) if human_readable: info['size'] = utils.make_size_human_readable(info['size']) - for (k, v) in six.iteritems(info.pop('properties')): + for (k, v) in info.pop('properties').items(): info['Property \'%s\'' % k] = v utils.print_dict(info, max_column_width=max_column_width) diff --git a/glanceclient/v2/images.py b/glanceclient/v2/images.py index 38895b8a..8f8072e0 100644 --- a/glanceclient/v2/images.py +++ b/glanceclient/v2/images.py @@ -146,7 +146,7 @@ class Controller(object): tags_url_params.append({'tag': encodeutils.safe_encode(tag)}) - for param, value in six.iteritems(filters): + for param, value in filters.items(): if isinstance(value, six.string_types): filters[param] = encodeutils.safe_encode(value) diff --git a/glanceclient/v2/metadefs.py b/glanceclient/v2/metadefs.py index 316ee2a5..8cfe2229 100644 --- a/glanceclient/v2/metadefs.py +++ b/glanceclient/v2/metadefs.py @@ -60,7 +60,7 @@ class NamespaceController(object): :param kwargs: Unpacked namespace object. """ namespace = self.get(namespace_name) - for (key, value) in six.iteritems(kwargs): + for (key, value) in kwargs.items(): try: setattr(namespace, key, value) except warlock.InvalidOperation as e: @@ -174,7 +174,7 @@ class NamespaceController(object): raise ValueError('sort_dir must be one of the following: %s.' % ', '.join(SORT_DIR_VALUES)) - for param, value in six.iteritems(filters): + for param, value in filters.items(): if isinstance(value, list): filters[param] = encodeutils.safe_encode(','.join(value)) elif isinstance(value, six.string_types): diff --git a/glanceclient/v2/schemas.py b/glanceclient/v2/schemas.py index 8247d313..5ba7399a 100644 --- a/glanceclient/v2/schemas.py +++ b/glanceclient/v2/schemas.py @@ -16,7 +16,6 @@ import copy import json import jsonpatch -import six import warlock.model as warlock @@ -51,7 +50,7 @@ class SchemaBasedModel(warlock.Model): original = copy.deepcopy(self.__dict__['__original__']) new = dict(self) if self.schema: - for (name, prop) in six.iteritems(self.schema['properties']): + for (name, prop) in self.schema['properties'].items(): if (name not in original and name in new and prop.get('is_base', True)): original[name] = None