pypi / fastapi
fastapi
What changed in fastapi 0.129 to 0.143, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-17.
9 breaking2 deprecations12 new APIs and options2 performance3 behavior and defaults21 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initfastapi 0.1435 changes
Breaking changes 2
Set this environment variable to true to retain automatic OpenTelemetry exporter setup from OTEL_* environment variables.
Set auto_configure to true in the FastAPI telemetry configuration to retain automatic OpenTelemetry exporter setup.
Fixes and other changes 3
Fixes serialization of non-finite floats in JSONL and SSE streams.
Fixes blocking frontend fallback file checks.
Fixes included route metadata in iter_route_contexts().
fastapi 0.1425 changes
New APIs and options 1
FastAPI adds native OpenTelemetry support.
Fixes and other changes 4
FastAPI telemetry is isolated for excluded requests.
Cache OpenTelemetry tracers to preserve warning deduplication.
Startup is allowed to continue when automatic OpenTelemetry configuration fails.
Fixes repeated endpoint wrapping in included routers.
fastapi 0.1412 changes
New APIs and options 1
Adds app.frontend with check_dir="auto" to make local development more convenient with fastapi dev.
Fixes and other changes 1
Fix support for background tasks and headers from dependencies in
app.frontend().
fastapi 0.1407 changes
Performance 1
Reduced memory usage in dependencies, which may lower FastAPI’s runtime memory consumption.
Fixes and other changes 6
Fixes
status_codebeing ignored for SSE and JSONL streaming endpoints.Fixes line splitting to comply with the SSE spec.
Fixes response_model_* parameters being ignored for non-generator endpoints with Iterable return types.
Fix handling sequences with nested Annotated types.
Fixes
exclude_defaultsnot being propagated to dictionary keys and values during encoding.Fixes the stream item type being lost when using include_router().
fastapi 0.1393 changes
New APIs and options 1
app.frontend() now supports dependencies, for example to enable automatic cookie authentication for the frontend.
Fixes and other changes 2
Router route building is thread-safe, mainly benefiting tests running in parallel threads.
Frontend fallback now supports dotted paths such as /users/john.doe.
fastapi 0.1383 changes
Breaking changes 1
Returns 404 for methods other than GET or HEAD when there are no static file matches.
New APIs and options 2
Adds support for serving a frontend from a directory using app.frontend, allowing developers to configure the frontend at a path such as /.
Adds support for serving a frontend from a directory using router.frontend, allowing developers to configure the frontend at a path such as /.
fastapi 0.1378 changes
Breaking changes 1
router.routes can now contain intermediate objects forming a tree, not just APIRoute objects; treat it as an internal implementation detail rather than iterating or modifying it as a flat list.
New APIs and options 3
Adds iter_route_contexts() for advanced use cases that previously used router.routes.
APIRouter adds an experimental handle method, allowing a router to customize how it handles requests.
APIRouter adds an experimental matches method, allowing a router to customize how it matches requests, such as matching on a specific header.
Behavior and default changes 2
APIRouter instances are preserved when included instead of having their routes copied, enabling router customization and saving memory in some cases.
Included routers and routes are no longer copied, so routes added after inclusion are reflected, and a subrouter can be included before its routes are added.
Fixes and other changes 2
Typing checks for APIRoute are fixed.
Path operations in a prefixless router now allow an empty path.
fastapi 0.1363 changes
Breaking changes 1
With the default convert_underscores=True, underscore headers are no longer accepted.
Fixes and other changes 2
Server Sent Event fields are validated to prevent applications from sending broken data.
FastAPI supports free-threaded Python 3.14t.
fastapi 0.1355 changes
Breaking changes 2
The April Fool's @app.vibe() decorator was removed.
The minimum supported Pydantic version is now 2.9.0, affecting which versions can be installed with FastAPI.
New APIs and options 2
Adds support for the @app.vibe() decorator.
FastAPI adds support for Server-Sent Events (SSE).
Fixes and other changes 1
Avoids yielding from a TaskGroup; it is used only as an async context manager and closed in the request async exit stack.
fastapi 0.1341 changes
New APIs and options 1
Endpoints can stream JSON Lines and binary data with yield.
fastapi 0.1332 changes
New APIs and options 1
Adds a FastAPI Agent Skill for use with library agent skills.
Behavior and default changes 1
FastAPI now supports Starlette 1.0.0 and later.
fastapi 0.1321 changes
Breaking changes 1
FastAPI now rejects JSON requests without a valid JSON Content-Type header by default; set strict_content_type=False to disable the check.
fastapi 0.1312 changes
Deprecations 2
ORJSONResponse is deprecated.
UJSONResponse is deprecated.
fastapi 0.1301 changes
Performance 1
JSON responses are serialized with Pydantic in Rust when there is a Pydantic return type or response model, resulting in a 2x or greater performance increase.
fastapi 0.1291 changes
Breaking changes 1
Support for fastapi-slim is dropped and no further versions will be released; use fastapi[standard] or fastapi instead.