Overview

Uvicorn 0.40, released on December 21, 2025, drops Python 3.9 support.

Main Features

Python 3.9 dropped

Uvicorn 0.40 now requires Python 3.10 or later, aligning its requirements with Starlette 0.50.

python
# uvicorn 0.40 - Python 3.10+
# pip install uvicorn==0.40

import uvicorn

async def app(scope, receive, send):
    ...

if __name__ == '__main__':
    uvicorn.run(app, host='0.0.0.0', port=8000)

ASGI ecosystem alignment

This update aligns Uvicorn with the minimum Python requirements of Starlette and modern ASGI frameworks.

Sources