Skip to main content

Django Durable

Durable execution framework for Django web apps.

Workflows are ordinary Python functions using ctx.activity() and ctx.sleep(). On each step, we replay from the start and use the event log (HistoryEvent) to return prior results. Avoid non-deterministic branching not derived from previous results or inputs.

Activity and workflow results must be JSON-serializable.

Commands

python manage.py durable_start onboard_user --input '{"user_id": 7}'
python manage.py durable_worker --batch 20 --tick 0.2

Signals

  • In code, a workflow can wait for signals using ctx.wait_signal("signal_name"), which pauses execution until a matching signal arrives and returns its payload.
  • To send a signal from outside code:
python manage.py durable_signal <execution_uuid> user_clicked --input '{"clicked": true}'

You can also send a signal programmatically:

from django_durable.engine import send_signal
send_signal(execution_id, "user_clicked", {"clicked": True})

Cancellation

  • Cancel a workflow via CLI:
python manage.py durable_cancel <execution_uuid> --reason "user requested" [--keep-queued]
  • In code:
from django_durable.engine import cancel_workflow
cancel_workflow(execution_id, reason="user requested")

Cancellation moves the workflow to CANCELED and, by default, marks queued activities as failed so workers will not run them.

Release files for django-durable 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-durable 0.1.1
File Size Uploaded
django_durable-0.1.1.tar.gz 7.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-durable 0.1.1
File Interpreter ABI Platform
django_durable-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.1 kB

Release files / django_durable-0.1.1.tar.gz

Download URL django_durable-0.1.1.tar.gz
Size 7.2 kB
Tags Source
SHA-256 checksum
How to use checksums
80bae52fbb3c1eccbcc2f3dab326b76f9036d327cf25b91fe94385630ee20d91
BLAKE2b-256 checksum
How to use checksums
6b3d8076faa73e0f086358c8e856c614d247664a21c027ed9ea08a120891fd3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 30, 2025.

Transparency log

Release files / django_durable-0.1.1-py3-none-any.whl

Download URL django_durable-0.1.1-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d9cdab92284bc5d536d8d8010bae5d615641a8e1692d37a0447ccfffd6c6eb70
BLAKE2b-256 checksum
How to use checksums
38260553bf54e1ffdd1d442a8ffc116d3711070f3a1ce8b15dd5a45aaa90e7dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 30, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page