Skip to content

Releases: Koed00/django-q

v0.7.14

24 Jan 21:03
Compare
Choose a tag to compare
  • Fixes a bug with duplicate tasks
  • Updates packages

Payloads that fail and are re-queued will now update the task result and run time, until a success is logged.
Subsequent results will be discarded.

v0.7.13

08 Jan 12:56
Compare
Choose a tag to compare
  • fixes double log output with default log handler

v0.7.12

08 Jan 12:21
Compare
Choose a tag to compare
  • Django 1.9 support
  • Rollbar support
  • Fixes stale ORM db connections issues, thanks @kdmukai
  • Prevents accidental creation of duplicate schedules
  • Updated packages for testing

v0.7.11

28 Oct 11:24
Compare
Choose a tag to compare
  • adds an Async class wrapper for the async function
  • the wait keyword now can take the value -1 which will make the functions wait indefinitely for a result.
  • fixes a bug with cached group key not timing out
  • fixes a bug where a task with a group only has a group results
  • much faster option iteration for async
  • references to q_options objects now retain their value after a run

The Async class wraps the async function, to make it easier to work with:

# Async class instance example
from django_q.tasks import Async

# instantiate an async task
a = Async('math.floor', 1.5, group='math')

# you can set or change keywords afterwards
a.cached = True

# run it
a.run()

# wait indefinitely for the result and print it
print(a.result(wait=-1))

# change the args
a.args = (2.5,)

# run it again
a.run()

# wait max 10 seconds for the result and print it

print(a.result(wait=10))
1
2

v0.7.10

19 Oct 09:46
Compare
Choose a tag to compare
  • adds Chain class and asycn_chain function for chained tasks
  • adds Iter class for more convenient iterable argument tasks

v0.7.9

08 Oct 10:50
Compare
Choose a tag to compare
  • adds cached option to async_iter command
  • adds version and broker info to qinfo
  • hides None values from qinfo --config
  • updated dependencies

v0.7.8

04 Oct 14:29
Compare
Choose a tag to compare
  • Adds a global and per-task cached option, which will redirect any results to the much faster cache backend where it is accessible for all the result functions without touching the database.
  • Adds a count option for groups results which will block until the indicated amount of results in the group has been reached
  • Adds a wait option in miliseconds for group results. Can be used in conjunction with count
  • Adds async_iter(func, args_iter, **kwargs) command which takes an iterable set of arguments, asyncs them individually against the cache backend and collates them back into a single database result.

v0.7.7

29 Sep 21:00
Compare
Choose a tag to compare

Fixes a Django 1.9a regression

v0.7.6

29 Sep 16:58
Compare
Choose a tag to compare

Fixes an issue with forking connections when using Django's database backend as the cache provider.

v0.7.5

28 Sep 16:29
Compare
Choose a tag to compare
  • Improved database connection handling

Fixes database connection errors after long idle time by checking the database connection state before every transaction. This is still faster then closing and opening connections on each transaction.