Starlette

Latest version: v0.45.2

Safety actively analyzes 693883 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 9 of 12

0.21.0

Not secure
This release replaces the underlying HTTP client used on the `TestClient` (`requests` :arrow_right: `httpx`), and as those clients [differ _a bit_ on their API](https://www.python-httpx.org/compatibility/), your test suite will likely break. To make the migration smoother, you can use the [`bump-testclient`](https://github.com/Kludex/bump-testclient) tool.

Changed
* Replace `requests` with `httpx` in `TestClient` [1376](https://github.com/encode/starlette/pull/1376).

Added
* Add `WebSocketException` and support for WebSocket exception handlers [1263](https://github.com/encode/starlette/pull/1263).
* Add `middleware` parameter to `Mount` class [1649](https://github.com/encode/starlette/pull/1649).
* Officially support Python 3.11 [1863](https://github.com/encode/starlette/pull/1863).
* Implement `__repr__` for route classes [1864](https://github.com/encode/starlette/pull/1864).

Fixed
* Fix bug on which `BackgroundTasks` were cancelled when using `BaseHTTPMiddleware` and client disconnected [1715](https://github.com/encode/starlette/pull/1715).

0.20.4

Not secure
Fixed
* Remove converter from path when generating OpenAPI schema [1648](https://github.com/encode/starlette/pull/1648).

0.20.3

Not secure
Fixed
* Revert "Allow `StaticFiles` to follow symlinks" [1681](https://github.com/encode/starlette/pull/1681).

0.20.2

Not secure
Fixed
* Fix regression on route paths with colons [1675](https://github.com/encode/starlette/pull/1675).
* Allow `StaticFiles` to follow symlinks [1337](https://github.com/encode/starlette/pull/1377).

0.20.1

Not secure
Fixed
* Improve detection of async callables [1444](https://github.com/encode/starlette/pull/1444).
* Send 400 (Bad Request) when `boundary` is missing [1617](https://github.com/encode/starlette/pull/1617).
* Send 400 (Bad Request) when missing "name" field on `Content-Disposition` header [1643](https://github.com/encode/starlette/pull/1643).
* Do not send empty data to `StreamingResponse` on `BaseHTTPMiddleware` [1609](https://github.com/encode/starlette/pull/1609).
* Add `__bool__` dunder for `Secret` [1625](https://github.com/encode/starlette/pull/1625).

0.20.0

Not secure
Removed
* Drop Python 3.6 support [1357](https://github.com/encode/starlette/pull/1357) and [#1616](https://github.com/encode/starlette/pull/1616).

Page 9 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.