v2.5.0
·
15 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Task runs can queue other task runs and the chain is recorded on every run,
CPU bound tasks behave the same way in a subprocess as on the event loop, and
Kubernetes Jobs inherit the task timeout. The documentation gained a settings
reference, a recipes cheat sheet and a page on pointing coding agents at the
library.
- A task run can queue another task run with
TaskRun.queue, which
records the queueing run infrom_run_idand carries theroot_run_idof
the first run in the chain, so any run can be traced back to the one that
started it.
(#110) - CPU bound tasks now start the async event dispatcher in the subprocess that
runs them, so lifecycle events reach the handlers and plugins there as well,
and a consumer with CPU bound tasks that is not started from
TaskManagerCLI raises the
newCpuBoundEntryPointErroron startup rather than failing when the first
such task runs. - A Kubernetes Job created for a CPU bound task sets
active_deadline_seconds
from the tasktimeout_seconds, so the cluster terminates a Job that
overruns.
(#108) - New Settings reference
page covering the environment variables that configure the task consumer,
broker, database and HTTP client, including the prefix rules and the fields
that keep an unprefixed name. - Fixed the Task Broker
tutorial, which imported a name that does not exist, quoted the wrong
default Redis port, and listed six outdated abstract methods instead of the
sixteen a broker has to implement. - Admonition blocks are rendered as admonitions instead of literal text, which
also fixes the note on retry delays in the
Task Retry reference. - New recipes cheat sheet, a page on
using the docs with AI agents and
anAGENTS.mdfor contributors.
(#111) - New tutorials on
task dependencies,
choosing a task manager
and extending the FastAPI app.
(#109,
#111) - New comparison page placing the
library next to Celery, RQ, arq and taskiq, with download numbers refreshed
by a scheduled workflow, and a landing page rewritten around CPU bound work.
(#104,
#105,
#107)