NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #123 most downloaded on PyPI
SSE plugin for Starlette
Last release 6 days ago
28 Sep 2026
Ships fairly regularly
a new release about every 4 weeks
Most releases are documented
notes for 49 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
81 releases · first in 2020
One column per quarter.
A stopped uvicorn server no longer cancels SSE streams of later servers in the same process ( #211 , regression since 3.1.1). Typical trigger: test su
AppStatus.should_exit is no longer set when sse-starlette detects uvicorn'sServer.should_exit (fallback path, e.g. uvicorn "module:app"). StreamsAppStatus.should_exit to detectshutdown_event instead.AppStatus.should_exit process-wide; seeAppStatus.disable_automatic_graceful_drain() only to workFull Changelog: v3.4.11...v3.5.0
fix(examples): handle slow broadcasting clients by @varadfromeast in #209
Full Changelog: v3.4.10...v3.4.11
fix: apply send timeout to heartbeat messages by @wse114 in #208
fix: disable keep-alive pings when ping=0 ( #206 ) by @sysid in #207
Full Changelog: v3.4.8...v3.4.9
Full Changelog : v3.4.7...v3.4.8
Full Changelog: v3.4.7...v3.4.8
Bump version: 3.4.6 → 3.4.7
Bump version: 3.4.6 → 3.4.7
chore(deps): bump daphne from 4.2.1 to 4.2.2 by @dependabot [bot] in #201
Full Changelog: v3.4.5...v3.4.6
chore(deps): bump ujson from 5.12.0 to 5.12.1 by @dependabot [bot] in #187
Full Changelog: v3.4.4...v3.4.5
Full Changelog : v3.4.3...v3.4.4
Full Changelog: v3.4.3...v3.4.4
chore(deps): bump granian from 2.6.0 to 2.7.4 by @dependabot [bot] in #185
Full Changelog: v3.4.2...v3.4.3
Full Changelog : v3.4.1...v3.4.2
Full Changelog: v3.4.1...v3.4.2
chore(deps): bump cryptography from 46.0.6 to 46.0.7 by @dependabot [bot] in #181
Full Changelog: v3.3.4...v3.4.1
chore(deps): bump cbor2 from 5.8.0 to 5.9.0 by @dependabot [bot] in #177
Full Changelog: v3.3.3...v3.3.4
chore(deps): bump astral-sh/setup-uv from 6 to 7 by @dependabot[bot] in https://github.com/sysid/sse-starlette/pull/172
Full Changelog: https://github.com/sysid/sse-starlette/compare/v0.0.0...v3.3.3
chore(deps): bump cryptography from 46.0.3 to 46.0.5 by @dependabot[bot] in https://github.com/sysid/sse-starlette/pull/166
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.3.1...v3.3.2
chore: modernize project infrastructure by @sysid in https://github.com/sysid/sse-starlette/pull/169
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.3.0...v3.3.1
feat: expose shutdown event for cooperative generator shutdown
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.2.0...v3.3.0
Nothing published for this version
[feat] Allow disabling automatic draining immediately on sigterm by @yuliy-openai in https://github.com/sysid/sse-starlette/pull/157
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.1.2...v3.2.0
fix: prevent watcher task leak by using threading.local (#152) by @sysid in https://github.com/sysid/sse-starlette/pull/153
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.1.1...v3.1.2
fix(shutdown): detect uvicorn shutdown via signal handler introspection by @sysid in https://github.com/sysid/sse-starlette/pull/151
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.1.0...v3.1.1
chore(deps): bump actions/setup-python from 3 to 6 by @dependabot[bot] in https://github.com/sysid/sse-starlette/pull/143
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.4...v3.1.0
Add starlette to dependencies by @WOnder93 in https://github.com/sysid/sse-starlette/pull/147
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.3...v3.0.4
Security: Upgrade Starlette to 0.49.1 to address CVE-2025-62727 by @ColeMurray in https://github.com/sysid/sse-starlette/pull/144
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.2...v3.0.3
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.1...v3.0.2
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.1...v3.0.2
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.0...v3.0.1
Full Changelog: https://github.com/sysid/sse-starlette/compare/v3.0.0...v3.0.1
Modern APIs: Updated to Starlette's lifespan parameter (no more deprecation warnings)
No breaking changes expected.
Major Thread Safety Improvements
Development Experience
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.4.1...v3.0.0
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.4.0...v2.4.1
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.4.0...v2.4.1
add missing test dependencies to tox.ini by @ancieg in https://github.com/sysid/sse-starlette/pull/121
JSONServerSentEvent utility based on starlette JSONResponse by @cjavad in https://github.com/sysid/sse-starlette/pull/136Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.3.6...v2.4.0
Rework of documentation and examples by @sysid in https://github.com/sysid/sse-starlette/pull/134
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.3.5...v2.3.6
Fix streaming examples cannot be running in python3.9 by @neolooong in https://github.com/sysid/sse-starlette/pull/123
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.3.0...v2.3.5
Fix the type annotation on client_close_handler_callable by @frankdu in https://github.com/sysid/sse-starlette/pull/130
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.3.3...v2.3.4
Implement handle session close by @lcamhoa in https://github.com/sysid/sse-starlette/pull/127
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.2.1...v2.3.3
Nothing published for this version
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.2.0...v2.2.1
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.2.0...v2.2.1
chore (docs): Add documentation note and example about thread safety by @msukmanowsky in https://github.com/sysid/sse-starlette/pull/112
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.1.3...v2.2.0
Cleanup unused loops by @truh in https://github.com/sysid/sse-starlette/pull/100
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.1.0...v2.1.3
Cleanup unused loops by @truh in https://github.com/sysid/sse-starlette/pull/100
Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.1.0...v2.1.2
fix: honor custom separator in ping sse by @fancyweb in https://github.com/sysid/sse-starlette/pull/91
decode() and allocating strings for logging if said log lines will no-op anyways. by @judilsteve in https://github.com/sysid/sse-starlette/pull/93Full Changelog: https://github.com/sysid/sse-starlette/compare/v2.0.0...v2.1.0
Exceptions raising out of task groups are nested inside an ExceptionGroup (seeanyio 4.0.0: https://anyio.readthedocs.io/en/stable/versionhistory.html)
Exceptions raising out of task groups are nested inside an ExceptionGroup (seeanyio 4.0.0: https://anyio.readthedocs.io/en/stable/versionhistory.html)
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.8.3...v2.0.0
fix: typing by @sysid in https://github.com/sysid/sse-starlette/pull/82
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.8.1...v1.8.2
## What's Changed Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.8.0...v1.8.1
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.8.0...v1.8.1
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.6.4...v1.6.5
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.6.4...v1.6.5
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.6.3...v1.6.4
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.6.3...v1.6.4
fix: there should be only one exit event by @metakot in https://github.com/sysid/sse-starlette/pull/57
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.6.0...v1.6.1
Allow Usage without Async Generators by @ejlangev in https://github.com/sysid/sse-starlette/pull/56
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.5.0...v1.6.0
feat: Send pings as comments by default by @paxcodes in https://github.com/sysid/sse-starlette/pull/53
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.5.0
feat: Send pings as comments by default by @paxcodes in https://github.com/sysid/sse-starlette/pull/53
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.4.0
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.3.4
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.3.4
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.3.3
Full Changelog: https://github.com/sysid/sse-starlette/compare/v1.3.2...v1.3.3
Nothing published for this version
replace asyncio.sleep() with anyio.sleep
asyncio.sleep() with anyio.sleepNothing 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 →