Sponsors 🌟
Thanks to these incredible business sponsors:
- Scalar (@scalar), Telemetry Sports (via @chris-telemetry)
Thanks to these incredible personal sponsors:
- Polar.sh: @Nozavi, @cemrehancavdar, @thomastu
- GitHub Sponsors: @roboflow, @benjamin-kirkbride, @ddahan, @cbscsm
- OpenCollective: Christian Y, Shaun Wah, Jordan Russel
Bugfixes 🐛
- fix: add sniffio as depndency by @JCHacking in #4522
- fix(pydantic): add support for 'AwareDatetime' serialization by @MetaHG in #4503
- fix: Improve
Accept.best_matchtyping by @sobolevn in #4487 - fix:
KeyErrorswallowing indefault_serializerby @sobolevn in #4420 - fix(typing):
_dec_pydantic_uuidreturn type annotation by @sobolevn in #4419 - fix: do not check for
Pathindefault_deserializerby @sobolevn in #4421 - fix: Use
inspect.iscoroutinefunctioninstead ofasyncio.iscoroutinefunctionto address deprecation warning in Python 3.14+ by @edgarrmondragon in #4405 - fix(websockets): Correctly pass
guardsto underlying handler by @7576457 in #4414 - fix: Fix
TypedDictrequired field on 3.8 by @provinzkraut in #4525
New features 🚀
- feat(typing): support
typing.ReadOnlyforTypedDictschemas by @sobolevn in #4424 - feat: make route reverse take handlers by @marcuslimdw in #4506
- feat: Support Python 3.14 by @provinzkraut in #4524
New contributors 🎉
- @vladpi made their first contribution in #4515
- @Adithya1331 made their first contribution in #4500
- @7576457 made their first contribution in #4414
- @JCHacking made their first contribution in #4522
- @winstxnhdw made their first contribution in #4427
- @thecyberbutler made their first contribution in #4474
- @MetaHG made their first contribution in #4503
Other changes
- refactor: type annotate
contentproperly by @winstxnhdw in #4427
Full Changelog
v2.18.0...v2.19.0