summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAsk Solem <ask@celeryproject.org>2013-09-10 17:26:12 +0100
committerAsk Solem <ask@celeryproject.org>2013-09-10 17:26:12 +0100
commit554bddd2af198680b6e2ea5a4aa3448850e04c07 (patch)
treec7bc069e196dc90aedf1bff31d8d1286f790b8da
parent2ff6f89c48143ae9101df91fe58cc61375aaca0b (diff)
downloadkombu-554bddd2af198680b6e2ea5a4aa3448850e04c07.tar.gz
Py3 fixes
-rw-r--r--docs/_ext/literals_to_xrefs.py9
-rw-r--r--docs/conf.py8
-rw-r--r--examples/complete_receive.py12
-rw-r--r--examples/simple_eventlet_receive.py4
-rw-r--r--examples/simple_eventlet_send.py2
-rw-r--r--examples/simple_task_queue/client.py4
-rw-r--r--examples/simple_task_queue/worker.py2
-rwxr-xr-xextra/release/bump_version.py4
-rw-r--r--funtests/tests/test_mongodb.py9
-rw-r--r--funtests/transport.py21
-rw-r--r--kombu/simple.py5
-rw-r--r--kombu/tests/test_simple.py7
-rw-r--r--kombu/transport/librabbitmq.py4
-rw-r--r--kombu/transport/virtual/__init__.py4
-rw-r--r--setup.py7
15 files changed, 57 insertions, 45 deletions
diff --git a/docs/_ext/literals_to_xrefs.py b/docs/_ext/literals_to_xrefs.py
index f1497565..d01a4227 100644
--- a/docs/_ext/literals_to_xrefs.py
+++ b/docs/_ext/literals_to_xrefs.py
@@ -7,6 +7,11 @@ import re
import sys
import shelve
+try:
+ input = input
+except NameError:
+ input = raw_input # noqa
+
refre = re.compile(r'``([^`\s]+?)``')
ROLES = (
@@ -76,7 +81,7 @@ def fixliterals(fname):
replace_type = None
while replace_type is None:
- replace_type = raw_input(
+ replace_type = input(
colorize("Replace role: ", fg="yellow")).strip().lower()
if replace_type and replace_type not in ROLES:
replace_type = None
@@ -94,7 +99,7 @@ def fixliterals(fname):
if default.endswith("()") and \
replace_type in ("class", "func", "meth"):
default = default[:-2]
- replace_value = raw_input(
+ replace_value = input(
colorize("Text <target> [", fg="yellow") +
default +
colorize("]: ", fg="yellow"),
diff --git a/docs/conf.py b/docs/conf.py
index bf39ded2..5b2f2fff 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -28,8 +28,8 @@ source_suffix = '.rst'
master_doc = 'index'
# General information about the project.
-project = u'Kombu'
-copyright = u'2009-2012, Ask Solem'
+project = 'Kombu'
+copyright = '2009-2012, Ask Solem'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -62,8 +62,8 @@ html_use_modindex = True
html_use_index = True
latex_documents = [
- ('index', 'Kombu.tex', u'Kombu Documentation',
- u'Ask Solem', 'manual'),
+ ('index', 'Kombu.tex', 'Kombu Documentation',
+ 'Ask Solem', 'manual'),
]
html_theme = "celery"
diff --git a/examples/complete_receive.py b/examples/complete_receive.py
index 3d9d44a9..373b74c1 100644
--- a/examples/complete_receive.py
+++ b/examples/complete_receive.py
@@ -40,9 +40,9 @@ with Connection('pyamqp://guest:guest@localhost:5672//') as connection:
#: any number of queues.
with Consumer(connection, queue, callbacks=[handle_message]):
- #: This waits for a single event. Note that this event may not
- #: be a message, or a message that is to be delivered to the consumers
- #: channel, but any event received on the connection.
- recv = eventloop(connection)
- while True:
- recv.next()
+ #: Each iteration waits for a single event. Note that this
+ #: event may not be a message, or a message that is to be
+ #: delivered to the consumers channel, but any event received
+ #: on the connection.
+ for _ in eventloop(connection):
+ pass
diff --git a/examples/simple_eventlet_receive.py b/examples/simple_eventlet_receive.py
index d70126df..f353d1c0 100644
--- a/examples/simple_eventlet_receive.py
+++ b/examples/simple_eventlet_receive.py
@@ -8,8 +8,6 @@ message sent.
"""
import eventlet
-from Queue import Empty
-
from kombu import Connection
eventlet.monkey_patch()
@@ -32,7 +30,7 @@ def wait_many(timeout=1):
while True:
try:
message = queue.get(block=False, timeout=timeout)
- except Empty:
+ except queue.Empty:
break
else:
message.ack()
diff --git a/examples/simple_eventlet_send.py b/examples/simple_eventlet_send.py
index 1ba87fbf..c2b3690d 100644
--- a/examples/simple_eventlet_send.py
+++ b/examples/simple_eventlet_send.py
@@ -31,7 +31,7 @@ def send_many(n):
queue.put({'hello': 'world%s' % (i, )})
pool = eventlet.GreenPool(10)
- for i in xrange(n):
+ for i in range(n):
pool.spawn(send_message, i)
pool.waitall()
diff --git a/examples/simple_task_queue/client.py b/examples/simple_task_queue/client.py
index 2cbd8f92..8e14381f 100644
--- a/examples/simple_task_queue/client.py
+++ b/examples/simple_task_queue/client.py
@@ -1,7 +1,7 @@
from kombu.common import maybe_declare
from kombu.pools import producers
-from queues import task_exchange
+from .queues import task_exchange
priority_to_routing_key = {'high': 'hipri',
'mid': 'midpri',
@@ -22,7 +22,7 @@ def send_as_task(connection, fun, args=(), kwargs={}, priority='mid'):
if __name__ == '__main__':
from kombu import Connection
- from tasks import hello_task
+ from .tasks import hello_task
connection = Connection('amqp://guest:guest@localhost:5672//')
send_as_task(connection, fun=hello_task, args=('Kombu', ), kwargs={},
diff --git a/examples/simple_task_queue/worker.py b/examples/simple_task_queue/worker.py
index 7f62445d..ded3aa73 100644
--- a/examples/simple_task_queue/worker.py
+++ b/examples/simple_task_queue/worker.py
@@ -2,7 +2,7 @@ from kombu.mixins import ConsumerMixin
from kombu.log import get_logger
from kombu.utils import kwdict, reprcall
-from queues import task_queues
+from .queues import task_queues
logger = get_logger(__name__)
diff --git a/extra/release/bump_version.py b/extra/release/bump_version.py
index d9dab464..82ef6bfd 100755
--- a/extra/release/bump_version.py
+++ b/extra/release/bump_version.py
@@ -11,6 +11,8 @@ from contextlib import contextmanager
from tempfile import NamedTemporaryFile
rq = lambda s: s.strip("\"'")
+str_t = str if sys.version_info[0] >= 3 else basestring
+
def cmd(*args):
@@ -54,7 +56,7 @@ class TupleVersion(object):
v = list(v)
def quote(lit):
- if isinstance(lit, basestring):
+ if isinstance(lit, str_t):
return '"%s"' % (lit, )
return str(lit)
diff --git a/funtests/tests/test_mongodb.py b/funtests/tests/test_mongodb.py
index d3a2f1d7..fca8192e 100644
--- a/funtests/tests/test_mongodb.py
+++ b/funtests/tests/test_mongodb.py
@@ -1,6 +1,7 @@
from nose import SkipTest
from kombu import Consumer, Producer, Exchange, Queue
+from kombu.five import range
from kombu.utils import nested
from funtests import transport
@@ -36,9 +37,9 @@ class test_mongodb(transport.TransportCase):
consumer2 = Consumer(channel, self.q2)
self.q2(channel).declare()
- for i in xrange(10):
+ for i in range(10):
producer.publish({'foo': i}, routing_key=name)
- for i in xrange(10):
+ for i in range(10):
producer.publish({'foo': i}, routing_key=name + '2')
_received1 = []
@@ -64,7 +65,7 @@ class test_mongodb(transport.TransportCase):
self.assertEqual(len(_received1) + len(_received2), 20)
# queue.delete
- for i in xrange(10):
+ for i in range(10):
producer.publish({'foo': i}, routing_key=name)
self.assertTrue(self.q(channel).get())
self.q(channel).delete()
@@ -72,7 +73,7 @@ class test_mongodb(transport.TransportCase):
self.assertIsNone(self.q(channel).get())
# queue.purge
- for i in xrange(10):
+ for i in range(10):
producer.publish({'foo': i}, routing_key=name + '2')
self.assertTrue(self.q2(channel).get())
self.q2(channel).purge()
diff --git a/funtests/transport.py b/funtests/transport.py
index 5f250731..e96f8280 100644
--- a/funtests/transport.py
+++ b/funtests/transport.py
@@ -1,3 +1,5 @@
+from __future__ import absolute_import, print_statement
+
import random
import socket
import string
@@ -11,6 +13,7 @@ from nose import SkipTest
from kombu import Connection
from kombu import Exchange, Queue
+from kombu.five import range
from kombu.tests.utils import skip_if_quick
if sys.version_info >= (2, 5):
@@ -20,7 +23,7 @@ else:
def say(msg):
- sys.stderr.write(unicode(msg) + '\n')
+ print(msg, file=sys.stderr)
def _nobuf(x):
@@ -151,7 +154,7 @@ class TransportCase(unittest.TestCase):
self.purge_consumer(consumer)
producer = chan1.Producer(self.exchange)
- for i in xrange(10):
+ for i in range(10):
producer.publish({'foo': 'bar'}, routing_key=self.prefix)
if self.reliable_purge:
self.assertEqual(consumer.purge(), 10)
@@ -170,10 +173,10 @@ class TransportCase(unittest.TestCase):
charset=string.punctuation + string.letters + string.digits):
if not self.verify_alive():
return
- bytes = min(filter(None, [bytes, self.message_size_limit]))
+ bytes = min(x for x in [bytes, self.message_size_limit] if x)
messages = [''.join(random.choice(charset)
- for j in xrange(bytes)) + '--%s' % n
- for i in xrange(n)]
+ for j in range(bytes)) + '--%s' % n
+ for i in range(n)]
digests = []
chan1 = self.connection.channel()
consumer = chan1.Consumer(self.queue)
@@ -216,9 +219,9 @@ class TransportCase(unittest.TestCase):
[q.declare() for q in (b1, b2, b3)]
self.purge([b1.name, b2.name, b3.name])
- producer.publish(u'b1', routing_key='b1')
- producer.publish(u'b2', routing_key='b2')
- producer.publish(u'b3', routing_key='b3')
+ producer.publish('b1', routing_key='b1')
+ producer.publish('b2', routing_key='b2')
+ producer.publish('b3', routing_key='b3')
chan1.close()
chan2 = self.connection.channel()
@@ -294,7 +297,7 @@ class TransportCase(unittest.TestCase):
conn.connect()
chanrefs = []
try:
- for i in xrange(100):
+ for i in range(100):
channel = conn.channel()
chanrefs.append(weakref.ref(channel))
channel.close()
diff --git a/kombu/simple.py b/kombu/simple.py
index 02bca7b2..15f704cc 100644
--- a/kombu/simple.py
+++ b/kombu/simple.py
@@ -21,6 +21,7 @@ __all__ = ['SimpleQueue', 'SimpleBuffer']
class SimpleBase(object):
+ Empty = Empty
_consuming = False
def __enter__(self):
@@ -52,14 +53,14 @@ class SimpleBase(object):
self.channel.connection.client.drain_events(
timeout=timeout and remaining)
except socket.timeout:
- raise Empty()
+ raise self.Empty()
elapsed += time() - time_start
remaining = timeout and timeout - elapsed or None
def get_nowait(self):
m = self.queue.get(no_ack=self.no_ack)
if not m:
- raise Empty()
+ raise self.Empty()
return m
def put(self, message, serializer=None, headers=None, compression=None,
diff --git a/kombu/tests/test_simple.py b/kombu/tests/test_simple.py
index e9524620..727ce2d2 100644
--- a/kombu/tests/test_simple.py
+++ b/kombu/tests/test_simple.py
@@ -1,7 +1,6 @@
from __future__ import absolute_import
from kombu import Connection, Exchange, Queue
-from kombu.five import Empty
from .utils import TestCase
from .utils import Mock
@@ -41,7 +40,7 @@ class SimpleBase(TestCase):
q.put({'hello': 'Simple'})
self.assertEqual(q.get(timeout=1).payload, {'hello': 'Simple'})
- with self.assertRaises(Empty):
+ with self.assertRaises(q.Empty):
q.get(timeout=0.1)
def test_produce__basic_get(self):
@@ -50,12 +49,12 @@ class SimpleBase(TestCase):
q = self.Queue('test_produce__basic_get', no_ack=True)
q.put({'hello': 'SimpleSync'})
self.assertEqual(q.get_nowait().payload, {'hello': 'SimpleSync'})
- with self.assertRaises(Empty):
+ with self.assertRaises(q.Empty):
q.get_nowait()
q.put({'hello': 'SimpleSync'})
self.assertEqual(q.get(block=False).payload, {'hello': 'SimpleSync'})
- with self.assertRaises(Empty):
+ with self.assertRaises(q.Empty):
q.get(block=False)
def test_clear(self):
diff --git a/kombu/transport/librabbitmq.py b/kombu/transport/librabbitmq.py
index 078bd04e..7454a480 100644
--- a/kombu/transport/librabbitmq.py
+++ b/kombu/transport/librabbitmq.py
@@ -20,7 +20,7 @@ except ImportError:
import pylibrabbitmq as amqp # noqa
from pylibrabbitmq import ChannelError, ConnectionError # noqa
except ImportError:
- raise ImportError("No module named librabbitmq")
+ raise ImportError('No module named librabbitmq')
from kombu.exceptions import StdConnectionError, StdChannelError
from kombu.five import items
@@ -128,7 +128,7 @@ class Transport(base.Transport):
def _collect(self, connection):
if connection is not None:
- for channel in connection.channels.itervalues():
+ for channel in values(connection.channels):
channel.connection = None
try:
os.close(connection.fileno())
diff --git a/kombu/transport/virtual/__init__.py b/kombu/transport/virtual/__init__.py
index f67cf9e5..212cc46d 100644
--- a/kombu/transport/virtual/__init__.py
+++ b/kombu/transport/virtual/__init__.py
@@ -21,7 +21,7 @@ from multiprocessing.util import Finalize
from time import sleep, time
from kombu.exceptions import ResourceError, StdChannelError
-from kombu.five import Empty
+from kombu.five import Empty, items
from kombu.utils import emergency_dump_state, say, uuid
from kombu.utils.compat import OrderedDict
from kombu.utils.encoding import str_to_bytes, bytes_to_str
@@ -356,7 +356,7 @@ class Channel(AbstractChannel, base.StdChannel):
# instantiate exchange types
self.exchange_types = dict(
- (typ, cls(self)) for typ, cls in self.exchange_types.items()
+ (typ, cls(self)) for typ, cls in items(self.exchange_types)
)
try:
diff --git a/setup.py b/setup.py
index c53190f3..c005639a 100644
--- a/setup.py
+++ b/setup.py
@@ -106,8 +106,11 @@ def strip_comments(l):
def reqs(f):
- return filter(None, [strip_comments(l) for l in open(
- os.path.join(os.getcwd(), 'requirements', f)).readlines()])
+ return [
+ r for r in (
+ strip_comments(l) for l in open(
+ os.path.join(os.getcwd(), 'requirements', f)).readlines()
+ ) if r]
install_requires = reqs('default.txt')
if py_version[0:2] == (2, 6):