From 7e693223ea2ece5fe9625e4dd5d7ebbe250d7a00 Mon Sep 17 00:00:00 2001 From: Michael Keirnan Date: Sat, 1 Aug 2015 13:52:03 -0400 Subject: [PATCH] v0.0.2 - test with python2 and python3 --- .travis.yml | 3 ++- CHANGELOG.md | 4 ++++ requirements-dev.txt | 1 + rq_retry/__init__.py | 2 +- rq_retry/queue.py | 2 +- rq_retry/worker.py | 11 ++++++----- setup.py | 4 +++- tests/test_retry_worker.py | 7 ++++++- 8 files changed, 24 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7b1f518..4d9e712 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,8 +3,9 @@ sudo: false language: python python: - - 3.3 - 3.4 + - 3.3 + - 2.7 services: - redis-server diff --git a/CHANGELOG.md b/CHANGELOG.md index 64f25fa..ed261aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,3 +4,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). ## [0.0.1] - 2015-08-01 ### Added - Initial release. + +## [0.0.2] - 2015-08-01 +### Added +- Test with Python 2.7, 3.3, and 3.4. diff --git a/requirements-dev.txt b/requirements-dev.txt index 9527df4..c9b6267 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,4 +1,5 @@ pytest pep8 coveralls +mock rq-scheduler>=0.5.1 diff --git a/rq_retry/__init__.py b/rq_retry/__init__.py index f18dee0..821d2c4 100644 --- a/rq_retry/__init__.py +++ b/rq_retry/__init__.py @@ -1,3 +1,3 @@ from .worker import RetryWorker -__version__ = '0.0.1' +__version__ = '0.0.2' diff --git a/rq_retry/queue.py b/rq_retry/queue.py index 16cee59..d6434ef 100644 --- a/rq_retry/queue.py +++ b/rq_retry/queue.py @@ -16,7 +16,7 @@ class DeadLetterQueue(Queue): of dead letter queues. """ def __init__(self, name, connection): - super().__init__(name=name, connection=connection) + super(DeadLetterQueue, self).__init__(name=name, connection=connection) def quarantine(self, job, queue): """Moves job from the specified queue to the dead letter queue""" diff --git a/rq_retry/worker.py b/rq_retry/worker.py index e551803..da31e38 100644 --- a/rq_retry/worker.py +++ b/rq_retry/worker.py @@ -58,14 +58,15 @@ class RetryWorker(Worker): *Environment variable*: `RQ_RETRY_DEAD_LETTER_QUEUE` *Default*: 'dead_letter_queue' """ - def __init__(self, *args, retry_config={}, **kwargs): - + def __init__(self, *args, **kwargs): default_config = dict( maint_interval=timedelta(seconds=30), max_tries=3, delays=[5], dead_letter_queue='dead_letter_queue') + retry_config = kwargs.pop('retry_config', {}) + self.apply_config(retry_config, default_config) if not isinstance(self.maint_interval, timedelta): self.maint_interval = timedelta(seconds=float(self.maint_interval)) @@ -79,7 +80,7 @@ def __init__(self, *args, retry_config={}, **kwargs): except ValueError: self.delays = [] - super().__init__(*args, **kwargs) + super(RetryWorker, self).__init__(*args, **kwargs) self._dead_letter_queue = DeadLetterQueue(self.dead_letter_queue, connection=self.connection) @@ -99,7 +100,7 @@ def register_birth(self): 'dead_letter_queue']: self.log.info('{} = {}'.format(p, getattr(self, p))) self.log.info('Use RQ Scheduler? {}'.format(self.use_scheduler)) - super().register_birth() + super(RetryWorker, self).register_birth() @property def use_scheduler(self): @@ -113,7 +114,7 @@ def should_run_maintenance_tasks(self): ) def clean_registries(self): - super().clean_registries() + super(RetryWorker, self).clean_registries() self.retry_failed_jobs() def retry_failed_jobs(self): diff --git a/setup.py b/setup.py index 0f0db9e..a454960 100755 --- a/setup.py +++ b/setup.py @@ -22,7 +22,7 @@ def run_tests(self): setup( name='rq-retry', - version='0.0.1', + version='0.0.2', description='RQ retry worker and dead letter queue', long_description=__doc__, url='https://github.com/mgk/rq-retry', @@ -54,6 +54,8 @@ def run_tests(self): 'Topic :: System :: Systems Administration', 'Topic :: System :: Monitoring', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', diff --git a/tests/test_retry_worker.py b/tests/test_retry_worker.py index 4fa61de..9635fed 100644 --- a/tests/test_retry_worker.py +++ b/tests/test_retry_worker.py @@ -1,5 +1,10 @@ import pytest -from unittest.mock import patch, Mock + +try: + from unittest.mock import patch, Mock +except ImportError: + from mock import patch, Mock + import os import logging from datetime import timedelta