From 5ea55e37184b52ca3e4e4cef419c05315324906f Mon Sep 17 00:00:00 2001 From: Benjamin Bach Date: Sun, 9 Jul 2017 21:44:25 +0200 Subject: [PATCH] Import python3 version of range --- django_q/cluster.py | 4 ++-- django_q/compat.py | 14 ++++++++++++++ django_q/tests/test_brokers.py | 1 + django_q/tests/test_cached.py | 1 + django_q/tests/test_cluster.py | 1 + django_q/tests/test_monitor.py | 1 + 6 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 django_q/compat.py diff --git a/django_q/cluster.py b/django_q/cluster.py index 935bb66..e49792a 100644 --- a/django_q/cluster.py +++ b/django_q/cluster.py @@ -4,8 +4,6 @@ from __future__ import division from __future__ import print_function from __future__ import unicode_literals -from builtins import range - # Standard import importlib import signal @@ -26,6 +24,7 @@ from django import db import signing import tasks +from django_q.compat import range from django_q.conf import Conf, logger, psutil, get_ppid, rollbar from django_q.models import Task, Success, Schedule from django_q.status import Stat, Status @@ -33,6 +32,7 @@ from django_q.brokers import get_broker from django_q.signals import pre_execute + class Cluster(object): def __init__(self, broker=None): self.broker = broker or get_broker() diff --git a/django_q/compat.py b/django_q/compat.py new file mode 100644 index 0000000..0ba80c4 --- /dev/null +++ b/django_q/compat.py @@ -0,0 +1,14 @@ +from __future__ import absolute_import +""" +Compatibility layer. + +Intentionally replaces use of python-future +""" + +# https://github.com/Koed00/django-q/issues/4 + +try: + range = xrange +except NameError: + range = range + diff --git a/django_q/tests/test_brokers.py b/django_q/tests/test_brokers.py index 05265e9..6ef7cd4 100644 --- a/django_q/tests/test_brokers.py +++ b/django_q/tests/test_brokers.py @@ -5,6 +5,7 @@ import pytest import redis from django_q.brokers import get_broker, Broker +from django_q.compat import range from django_q.conf import Conf from django_q.humanhash import uuid diff --git a/django_q/tests/test_cached.py b/django_q/tests/test_cached.py index d2b4141..1cf9980 100644 --- a/django_q/tests/test_cached.py +++ b/django_q/tests/test_cached.py @@ -3,6 +3,7 @@ from multiprocessing import Event, Queue, Value import pytest from django_q.cluster import pusher, worker, monitor +from django_q.compat import range from django_q.conf import Conf from django_q.tasks import async, result, fetch, count_group, result_group, fetch_group, delete_group, delete_cached, \ async_iter, Chain, async_chain, Iter, Async diff --git a/django_q/tests/test_cluster.py b/django_q/tests/test_cluster.py index 2e33d26..70af89c 100644 --- a/django_q/tests/test_cluster.py +++ b/django_q/tests/test_cluster.py @@ -11,6 +11,7 @@ myPath = os.path.dirname(os.path.abspath(__file__)) sys.path.insert(0, myPath + '/../') from django_q.cluster import Cluster, Sentinel, pusher, worker, monitor, save_task +from django_q.compat import range from django_q.humanhash import DEFAULT_WORDLIST, uuid from django_q.tasks import fetch, fetch_group, async, result, result_group, count_group, delete_group, queue_size from django_q.models import Task, Success diff --git a/django_q/tests/test_monitor.py b/django_q/tests/test_monitor.py index d07fe07..0d43b7f 100644 --- a/django_q/tests/test_monitor.py +++ b/django_q/tests/test_monitor.py @@ -3,6 +3,7 @@ import pytest from django_q.tasks import async from django_q.brokers import get_broker from django_q.cluster import Cluster +from django_q.compat import range from django_q.monitor import monitor, info from django_q.status import Stat from django_q.conf import Conf