Herrtian
a5982b2ab5
test: avoid wrapped method coverage branch
1 month ago
pre-commit-ci-lite[bot]
6071d250d3
🎨 Auto format
1 month ago
Herrtian
2bfa699e60
test: simplify included route method check for coverage
1 month ago
Herrtian
cbe3a8cd92
test: cover methodless included route context
1 month ago
Herrtian
65bf29d55a
fix: include implicit HEAD in allow header
1 month ago
Herrtian
b141423b13
fix: handle routes without methods in head helper
1 month ago
pre-commit-ci-lite[bot]
ca74beb593
🎨 Auto format
1 month ago
Herrtian
80ec43df86
fix: keep explicit head routes preferred
2 months ago
tengtian
e852c1cd0d
Automatically support HEAD method for all GET routes
RFC 7231 §4.3.2 states that the server SHOULD send the same header fields
in response to a HEAD request as it would have sent for GET. Starlette
does this by default but FastAPI's APIRoute did not.
This adds automatic HEAD support by overriding matches() and handle() on
APIRoute to accept HEAD requests when the route has GET in its methods.
Key design decisions:
- HEAD is NOT added to self.methods, so it stays out of the OpenAPI schema
- Explicit HEAD routes still work and appear in OpenAPI when declared
- The match promotion only happens when HEAD is not already in methods,
so explicit @app.head() or methods=["GET","HEAD"] are unaffected
- POST/PUT/DELETE/PATCH routes are not affected
Closes #1773
3 months ago
Sebastián Ramírez
9a9c4ad5d0
🔖 Release version 0.137.0 ( #15748 )
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 month ago
Sebastián Ramírez
8e1d774cef
♻️ Refactor internals to preserve `APIRouter` and `APIRoute` instances ( #15745 )
1 month ago
Sebastián Ramírez
8206485753
🔖 Release version 0.136.3
2 months ago
Sebastián Ramírez
063b5bf582
♻️ Do not accept underscore headers when using `convert_underscores=True` (the default) ( #15589 )
2 months ago
Sebastián Ramírez
22b02e26f9
🔖 Release version 0.136.2
2 months ago
Sebastián Ramírez
c7fb7851b3
♻️ Validate Server Sent Event fields to avoid applications from sending broken data ( #15588 )
2 months ago
dependabot[bot]
5d5666bec5
⬆ Bump ty from 0.0.21 to 0.0.34 ( #15443 )
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: svlandeg <[email protected] >
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 months ago
Sebastián Ramírez
e54e5a8980
🔖 Release version 0.136.1
3 months ago
Sofie Van Landeghem
7815a32f2e
⬆️ Update Pydantic v2 code to address deprecations ( #15101 )
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
3 months ago
Sebastián Ramírez
708606c982
🔖 Release version 0.136.0
3 months ago
Sofie Van Landeghem
4b264878d7
⬆️ Support free-threaded Python 3.14t ( #15149 )
3 months ago
Sebastián Ramírez
f796c346a8
🔖 Release version 0.135.4
3 months ago
Sebastián Ramírez
ae4e45c5cc
🔥 Remove April Fool's `@app.vibe()` 🤪 ( #15363 )
3 months ago
Sebastián Ramírez
1f442c454f
🔖 Release version 0.135.3
4 months ago
Sebastián Ramírez
70580da818
✨ Add support for `@app.vibe()` ( #15280 )
4 months ago
Kadir Can Ozden
fa3588c38c
✏️ Fix typo for `client_secret` in OAuth2 form docstrings ( #14946 )
4 months ago
Sebastián Ramírez
25a3697ced
🔖 Release version 0.135.2
4 months ago
Ahsan Sheraz
31bbb38074
📝 Fix duplicated words in docstrings ( #15116 )
Fix "to to" and "that that" word duplications in security module docstrings,
and "be be" in test data string.
Co-authored-by: ahsan.sheraz <[email protected] >
Co-authored-by: Claude Opus 4.6 <[email protected] >
4 months ago
Sofie Van Landeghem
98b269b51e
👷 Add `ty` to precommit ( #15091 )
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Motov Yurii <[email protected] >
4 months ago
Motov Yurii
8b0090c39b
📝 Fix doctrings for `max_digits` and `decimal_places` ( #14944 )
Fix doctrings for `max_digits` and `decimal_places`
5 months ago
Sebastián Ramírez
ca5f60ee72
🔖 Release version 0.135.1
5 months ago
Sebastián Ramírez
8a9258b169
🐛 Fix, avoid yield from a TaskGroup, only as an async context manager, closed in the request async exit stack ( #15038 )
5 months ago
Sebastián Ramírez
924a535a4f
📝 Update Skill, optimize context, trim and refactor into references ( #15031 )
5 months ago
Sebastián Ramírez
12ea7be0be
🔖 Release version 0.135.0
5 months ago
Sebastián Ramírez
2238155844
✨ Add support for Server Sent Events ( #15030 )
5 months ago
Sebastián Ramírez
d98eb74da9
🔖 Release version 0.134.0
5 months ago
Sebastián Ramírez
c01dc8b03c
📝 Update Library Agent Skill with streaming responses ( #15024 )
5 months ago
Sebastián Ramírez
749cefdeb1
✨ Add support for streaming JSON Lines and binary data with `yield` ( #15022 )
5 months ago
Sebastián Ramírez
728b097564
🔖 Release version 0.133.1
5 months ago
Sebastián Ramírez
4fce9ce172
🔧 Add FastAPI Agents Skill ( #14982 )
Co-authored-by: Sofie Van Landeghem <[email protected] >
Co-authored-by: Alejandra <[email protected] >
5 months ago
Sebastián Ramírez
daba0aa328
🔖 Release version 0.133.0
5 months ago
Sebastián Ramírez
6c68838615
🔖 Release version 0.132.1
5 months ago
Sebastián Ramírez
2686c7fbbf
♻️ Refactor logic to handle OpenAPI and Swagger UI escaping data ( #14986 )
5 months ago
Sebastián Ramírez
5c863d0718
🔖 Release version 0.132.0
5 months ago
Sebastián Ramírez
22354a2530
🔒 ️ Add `strict_content_type` checking for JSON requests ( #14978 )
5 months ago
Sebastián Ramírez
b423b73c35
🔖 Release version 0.131.0
5 months ago
Sebastián Ramírez
48e9835732
🗑️ Deprecate `ORJSONResponse` and `UJSONResponse` ( #14964 )
5 months ago
Sebastián Ramírez
eb544e704c
🔖 Release version 0.130.0
5 months ago
Sebastián Ramírez
590a5e5355
✨ Serialize JSON response with Pydantic (in Rust), when there's a Pydantic return type or response model ( #14962 )
5 months ago
Sebastián Ramírez
1e78a36b73
🔖 Release version 0.129.2
5 months ago
Sebastián Ramírez
c91fed958e
🔖 Release version 0.129.1
5 months ago