$ the-wire ยท showcase
FastAPI stops inferring False for omitted boolean form fields
By RepoJournal ยท Filed ยท About FastAPI & Pydantic ยท Composed from the cited sources ยท methodology
FastAPI 0.162.0 makes omitted boolean form fields behave like every other field, and pydantic lands a Self-resolution fix for parametrized generics alongside a Rust-side dependency bump.
0.162.0 fastapi/fastapi
by github-actions[bot]
Omitted bool and bool | None form fields now use their declared defaults or raise missing-field errors instead of silently resolving to False. This is a breaking change covering individual form parameters, form models, and unions of form models, so any client that relied on absence meaning false will now see either the declared default or a validation error. Omitted boolean model fields are als...
๐ Restore default handling for omitted boolean form fields fastapi/fastapi
The pull request behind the release restores default handling for omitted boolean form fields, reverting the implicit False that FastAPI previously applied. Tiangolo notes the work was "Made with the help of AI, using Codex with gpt-6-astra, manually reviewed."
Fix `Self` resolution in parametrized generics pydantic/pydantic
Self resolution in parametrized generics is fixed, addressing a regression introduced in an earlier pydantic PR. If your models use Self inside generic classes with bound type parameters, resolution broke after that change; this restores it.
Bump PyO3 to 0.30.1, jiter to 0.18.0, use `PyFrozenDict` pydantic/pydantic
pydantic bumps PyO3 to 0.30.1 and jiter to 0.18.0 and moves to PyFrozenDict on the Rust side. That is toolchain and internals work rather than a behavior change for Python callers.
๐ Release version 0.162.0 (#16606) fastapi/fastapi
by pr-submit[bot]
The rest of the day is release housekeeping: version 0.162.0 tagged and the release notes regenerated.
Action items
- โ Audit FastAPI form endpoints that treat an omitted boolean as False, then upgrade fastapi to 0.162.0 fastapi/fastapi [plan]
- โ Upgrade pydantic past the release containing the Self-in-generics fix if you subclass parametrized generics pydantic/pydantic [plan]