NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3992 most downloaded on PyPI
Python SDK for Inngest
Last release 5 days ago
29 Sep 2026
Release timing varies
gaps range from 9 days to 3 months
Nearly every release is documented
notes for 58 of the last 60 stable releases
2 versions withdrawn
withdrawn after publishing
5 years old
111 releases · first in 2021
One column per quarter.
Add INNGEST_BASE_URL support. This likely won't ever be needed but exists for feature parity with the TypeScript SDK
INNGEST_DEVINNGEST_BASE_URL support. This likely won't ever be needed but exists for feature parity with the TypeScript SDKFix type error when returning TypedDict
TypedDictAdd idempotency option to create_function. Read more in our docs
idempotency option to create_function. Read more in our docsFix step.parallel broken for steps besides step.run
step.parallel broken for steps besides step.runstep.parallel may execute more than onceExperimental support for asyncio.gather and asyncio.FIRST_COMPLETED. To enable this feature, set _experimental_execution=True in your function's creat
asyncio.gather and asyncio.FIRST_COMPLETED. To enable this feature, set _experimental_execution=True in your function's create_function decoratorFix internal validation error since ctx.stack.stack in the request body can be null
ctx.stack.stack in the request body can be nullThis release contains some breaking changes. Please see our docs for a detailed migration guide.
This release contains some breaking changes. Please see our docs for a detailed migration guide.
async_mode arg in inngest.django.serve. This is now inferred based on whether any of your Inngest functions are async.NonRetriableError.cause.Nothing published for this version
Nothing published for this version
Nothing published for this version
Add timeout option to step.invoke and step.invoke_by_id.
timeout option to step.invoke and step.invoke_by_id.Add RetryAfterError, which can be used to schedule a retry at a specific time.
RetryAfterError, which can be used to schedule a retry at a specific time.event.data to null instead of {}.Auto-detect async mode for Django. Its async_mode serve kwarg will be removed in version v0.4.
async_mode serve kwarg will be removed in version v0.4.Add DigitalOcean Functions support.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix returning secure introspection when in dev mode. This isn't a security fix since the secure introspection response doesn't include secrets and the…
step.run callback args (e.g. step.run("my-step", my_callback, arg_1, arg_2)).inngest.experimental.EncryptionMiddleware) to use NaCL.Experimental encryption middleware (inngest.experimental.EncryptionMiddleware)
inngest.experimental.EncryptionMiddleware)Use a connection pool when sending HTTP requests.
Add support for zero downtime signing key rotation.
Fix signing key required when using client without serve
serveBranch environment support (docs)
Nothing published for this version
## New features - Add Python 3.9 support
Nothing published for this version
## New features - Multiple triggers
## Fixes - Fix if_exp is ignored
if_exp is ignoredNothing published for this version
Nothing published for this version
Errors raise in step.run can be caught outside of the step.run
step.run can be caught outside of the step.runNonRetriableError raised in step.run not disallowing retriesEvent.data type by changing it to typing.Mapping. Previously, it was dict which is an invariant typeNothing published for this version
Fix not forwarding sync ID header during synchronization
Nothing published for this version
Fix function IDs with invalid URL characters failing at execution time.
INNGEST_DEV detection.create_function moved to method on inngest.Inngest.api_base_url and signing_key params from serve function to inngest.Inngest constructor.Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix 403 due to CSRF when using Django.
403 due to CSRF when using Django.Can customize serve origin and path.
Fix defaulting is_production when it's False.
is_production when it's False.py.typed file.Nothing published for this version
Move most function args into a ctx object. This mitigates future breaking changes to function handler arguments. It also simplifies the transform_inpu…
sleep_until using the local timezone instead of UTC.ctx object. This mitigates future breaking changes to function handler arguments. It also simplifies the transform_input middleware hook. You can read more about the ctx object in the docs.BASE_URL env var into API_BASE_URL and EVENT_API_BASE_URL. This is necessary because Inngest has 2 separate APIs: the Event API (where events are sent) and the API (where apps register themselves). You can read more about env vars in the docs.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →