Sub-routers grow up, middleware can be chained, and streaming handles binary + async data correctly.
✨ Features
- Modern SubRouter syntax with nested-prefix fixes and cleanups (#1404)
- Async
authenticate()and automatic SubRouter auth-handler inheritance — sub-routers can configure their own auth or inherit the parent app's (#1407) - Multiple middlewares per route (middleware chains) (#1405)
- Consolidated OpenAPI/Swagger fixes with per-route documentation flags (#1403)
🐛 Fixes
StreamingResponsenow supportsbytes(binary downloads /application/octet-stream) and async DB access inside generators; generator errors now propagate to the logs instead of silently truncating the stream (#1412 — closes #1236, #1219)- Cast bare
before_requestreturns and handle OPTIONS under static mounts (#1409 — fixes #793, #1130)
📚 Docs
- Document catch-all / wildcard (
*path) routes (#1410)
Full Changelog: v0.86.0...v0.87.0