a little task queue for python
delay=
, eta=
in Huey's .s()
and .then()
- this adds support for delaying or scheduling pipelines.preserve_pipeline=True
).on_commit_task()
decorator for Django extension that will enqueue the task after any database changes have been committed. This eliminates a common race condition where a task is enqueued and executed before the corresponding database changes have been committed.delay
and eta
when raising a RetryTask
exception. This provides finer-grained control over when a task should be retried.ResultGroup.as_completed()
helper to provide a way to deal with multiple results as they become available. Refs #746.asyncio
helper for resolving task results asynchronously. Asyncio users can use await aget_result(result)
or await aget_result_group(rg)
to fetch a task result in non-blocking fashion.TaskLocked
exception (#757).Improves propagation of errors in task results and includes fix for newer versions of pip.
is_locked(lock_name)
to test whether lock is held.CancelExecution
within a Task, and override retries
.periodic_task()
wrapper for MiniHuey
class.db_task()
and db_periodic_task()
.huey.contrib.sql_huey.SqlHuey
.FileStorage
- use fcntl.flock()
instead.crontab()
parsing strict, raising an error if an invalid interval specification is given. You probably want to enable this.Huey.build_error_result
) for customizing the error result metadata.SIGNAL_INTERRUPTED
to signal when a task is interrupted when a consumer exits abruptly.Huey.create_consumer()
API within the Django management command, to allow Django users to customize the creation of the Consumer
instance.on_shutdown
handler to djhuey namespace.