From b38b3a3c134d888ff73dd8756df4e6998c0d5a78 Mon Sep 17 00:00:00 2001 From: Chang Bo Guo Date: Tue, 3 Dec 2013 15:41:59 +0000 Subject: [PATCH] Replace data structures' attribute with six module In Python 3, some data structures' attribute is different in Python 2. See http://pythonhosted.org/six/#object-model-compatibility This is change mapping: six Python 2 Python 3 six.next(it) it.next() next(it) six.iterkeys(dict) dict.iterkeys() dict.keys() six.itervalues(dict) dict.itervalues() dict.values() Implements: blueprint make-python3-compatible Change-Id: Ida48f39ff230860feee7305b93b134c625a21663 --- oslo/messaging/_drivers/common.py | 2 +- oslo/messaging/_drivers/impl_qpid.py | 5 +++-- oslo/messaging/_drivers/impl_rabbit.py | 5 +++-- oslo/messaging/_drivers/impl_zmq.py | 5 +++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/oslo/messaging/_drivers/common.py b/oslo/messaging/_drivers/common.py index 8c2d57c95..ebec95098 100644 --- a/oslo/messaging/_drivers/common.py +++ b/oslo/messaging/_drivers/common.py @@ -275,7 +275,7 @@ def _safe_log(log_func, msg, msg_data): def _fix_passwords(d): """Sanitizes the password fields in the dictionary.""" - for k in d.iterkeys(): + for k in six.iterkeys(d): if k.lower().find('password') != -1: d[k] = '' elif k.lower() in SANITIZE: diff --git a/oslo/messaging/_drivers/impl_qpid.py b/oslo/messaging/_drivers/impl_qpid.py index baa040374..4df454c91 100644 --- a/oslo/messaging/_drivers/impl_qpid.py +++ b/oslo/messaging/_drivers/impl_qpid.py @@ -21,6 +21,7 @@ import time import eventlet import greenlet from oslo.config import cfg +import six from oslo.messaging._drivers import amqp as rpc_amqp from oslo.messaging._drivers import amqpdriver @@ -523,7 +524,7 @@ class Connection(object): consumers = self.consumers self.consumers = {} - for consumer in consumers.itervalues(): + for consumer in six.itervalues(consumers): consumer.reconnect(self.session) self._register_consumer(consumer) @@ -681,7 +682,7 @@ class Connection(object): it = self.iterconsume(limit=limit, timeout=timeout) while True: try: - it.next() + six.next(it) except StopIteration: return diff --git a/oslo/messaging/_drivers/impl_rabbit.py b/oslo/messaging/_drivers/impl_rabbit.py index dccde7e2b..6f4c9904f 100644 --- a/oslo/messaging/_drivers/impl_rabbit.py +++ b/oslo/messaging/_drivers/impl_rabbit.py @@ -27,6 +27,7 @@ import kombu.connection import kombu.entity import kombu.messaging from oslo.config import cfg +import six from oslo.messaging._drivers import amqp as rpc_amqp from oslo.messaging._drivers import amqpdriver @@ -620,7 +621,7 @@ class Connection(object): def _declare_consumer(): consumer = consumer_cls(self.conf, self.channel, topic, callback, - self.consumer_num.next()) + six.next(self.consumer_num)) self.consumers.append(consumer) return consumer @@ -724,7 +725,7 @@ class Connection(object): it = self.iterconsume(limit=limit, timeout=timeout) while True: try: - it.next() + six.next(it) except StopIteration: return diff --git a/oslo/messaging/_drivers/impl_zmq.py b/oslo/messaging/_drivers/impl_zmq.py index 6f5ef9c46..30f0ec2cc 100644 --- a/oslo/messaging/_drivers/impl_zmq.py +++ b/oslo/messaging/_drivers/impl_zmq.py @@ -27,6 +27,7 @@ import uuid import eventlet import greenlet from oslo.config import cfg +import six from six import moves from oslo.messaging._drivers import base @@ -532,8 +533,8 @@ def unflatten_envelope(packenv): h = {} try: while True: - k = i.next() - h[k] = i.next() + k = six.next(i) + h[k] = six.next(i) except StopIteration: return h