mirror of
https://github.com/django-q2/django-q2.git
synced 2026-09-26 01:48:12 +08:00
Fixes backward compatibility problems with django-picklefield
This commit is contained in:
@@ -9,6 +9,6 @@ from .models import Task, Schedule, Success, Failure
|
||||
from .cluster import Cluster
|
||||
from .status import Stat
|
||||
|
||||
VERSION = (0, 6, 1)
|
||||
VERSION = (0, 6, 2)
|
||||
|
||||
default_app_config = 'django_q.apps.DjangoQConfig'
|
||||
|
||||
+10
-1
@@ -38,7 +38,7 @@ class Task(models.Model):
|
||||
values = Task.objects.filter(group=group_id).values_list('result', flat=True)
|
||||
else:
|
||||
values = Task.objects.filter(group=group_id).exclude(success=False).values_list('result', flat=True)
|
||||
return [dbsafe_decode(t) for t in values]
|
||||
return decode_results(values)
|
||||
|
||||
@staticmethod
|
||||
def get_group_count(group_id, failures=False):
|
||||
@@ -186,3 +186,12 @@ class Schedule(models.Model):
|
||||
verbose_name = _('Scheduled task')
|
||||
verbose_name_plural = _('Scheduled tasks')
|
||||
ordering = ['next_run']
|
||||
|
||||
|
||||
# Backwards compatibility for Django 1.7
|
||||
if hasattr(PickledObjectField, 'from_db_value'):
|
||||
def decode_results(values):
|
||||
return values
|
||||
else:
|
||||
def decode_results(values):
|
||||
return [dbsafe_decode(v) for v in values]
|
||||
|
||||
@@ -209,8 +209,8 @@ def test_async(broker, admin_user):
|
||||
assert fetch(result_j.name) == result_j
|
||||
assert result(result_j.name) == result_j.result
|
||||
# groups
|
||||
assert result_group('test_j') == [result_j.result]
|
||||
assert result_group('test_j', failures=True) == [result_j.result]
|
||||
assert result_group('test_j')[0] == result_j.result
|
||||
assert result_group('test_j', failures=True)[0] == result_j.result
|
||||
assert fetch_group('test_j')[0].id == [result_j][0].id
|
||||
assert fetch_group('test_j', failures=False)[0].id == [result_j][0].id
|
||||
assert count_group('test_j') == 1
|
||||
|
||||
+1
-1
@@ -72,7 +72,7 @@ author = 'Ilan Steemers'
|
||||
# The short X.Y version.
|
||||
version = '0.6'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '0.6.1'
|
||||
release = '0.6.2'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
#
|
||||
arrow==0.6.0
|
||||
blessed==1.9.5
|
||||
django-picklefield==0.3.1
|
||||
django-picklefield==0.3.2
|
||||
django-redis==4.2.0
|
||||
future==0.15.0
|
||||
hiredis==0.2.0
|
||||
|
||||
@@ -26,7 +26,7 @@ class PyTest(Command):
|
||||
|
||||
setup(
|
||||
name='django-q',
|
||||
version='0.6.1',
|
||||
version='0.6.2',
|
||||
author='Ilan Steemers',
|
||||
author_email='koed00@gmail.com',
|
||||
keywords='django task queue worker redis disque multiprocessing',
|
||||
@@ -36,7 +36,7 @@ setup(
|
||||
license='MIT',
|
||||
description='A multiprocessing task queue for Django',
|
||||
long_description=README,
|
||||
install_requires=['django>=1.7', 'django-picklefield===0.3.1', 'blessed', 'arrow', 'future'],
|
||||
install_requires=['django>=1.7', 'django-picklefield', 'blessed', 'arrow', 'future'],
|
||||
test_requires=['pytest', 'pytest-django', ],
|
||||
cmdclass={'test': PyTest},
|
||||
classifiers=[
|
||||
|
||||
Reference in New Issue
Block a user