Commit Graph

6791 Commits

Author SHA1 Message Date
pre-commit-ci-lite[bot] 6240dc105a
🎨 Auto format 2026-02-17 16:02:39 +00:00
Charisn d762eb6405 Fix _endpoint_context_cache using id() which risks stale entries and memory leaks
The _endpoint_context_cache in routing.py used id(func) as dict keys to
cache endpoint context (source file, line number, function name) for
error messages. This has two problems:

1. ID reuse after garbage collection. Python id() returns the memory
   address of an object. Once an object is garbage collected, its ID can
   be reassigned to a newly created object. If an endpoint function were
   deallocated and a new function reused the same ID, the cache would
   return stale context (wrong file, line, function name) for error
   messages.

2. No eviction. The module-level dict grows unboundedly for every unique
   endpoint function. In scenarios where FastAPI instances are
   dynamically created and destroyed in a single process (e.g., test
   suites running hundreds of apps), endpoint functions and their
   closures are kept alive indefinitely by the cache, leaking memory.

Fix: replace the plain dict with a weakref.WeakKeyDictionary keyed on
the function object itself. This solves both problems: keys are looked
up by object identity (no ID collision), and entries are automatically
evicted when the endpoint function is garbage collected, allowing the
function and its closure to be reclaimed.

Endpoint functions always support weak references (regular def / async
def), so WeakKeyDictionary is safe for this use case.
2026-02-17 18:01:13 +02:00
github-actions[bot] ed12105cce 📝 Update release notes
[skip ci]
2026-02-14 08:57:26 +00:00
Motov Yurii 01e2e1088c
🌐 Update translations for ko (update-all and add-missing) (#14923)
* Update all and add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-14 09:57:01 +01:00
github-actions[bot] 82d90c51b4 📝 Update release notes
[skip ci]
2026-02-14 08:43:37 +00:00
Motov Yurii ec35d6d380
🌐 Update translations for uk (add-missing) (#14922)
* Add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-14 09:43:14 +01:00
github-actions[bot] 12f7e65670 📝 Update release notes
[skip ci]
2026-02-14 08:15:47 +00:00
Motov Yurii 9a082312f3
🌐 Update translations for zh-hant (update-all and add-missing) (#14921)
* Update all

* Add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-14 09:15:26 +01:00
github-actions[bot] dd97806864 📝 Update release notes
[skip ci]
2026-02-14 08:13:07 +00:00
Motov Yurii 7dc1be8b88
🌐 Update translations for fr (update-all and add-missing) (#14920)
* Update all

* Add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-14 09:12:41 +01:00
github-actions[bot] 417990fcb7 📝 Update release notes
[skip ci]
2026-02-14 07:57:54 +00:00
Motov Yurii dca874c58c
🌐 Update translations for de (update-all) (#14910)
* Update all

* 🎨 Auto format

* Apply suggestions from code review

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-14 08:57:30 +01:00
github-actions[bot] 5420847d9f 📝 Update release notes
[skip ci]
2026-02-13 15:24:56 +00:00
Motov Yurii 5ad9d258e4
🌐 Update translations for ja (update-all) (#14916)
* Update all

* 🎨 Auto format

* Add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 16:24:30 +01:00
github-actions[bot] d213dd363d 📝 Update release notes
[skip ci]
2026-02-13 13:49:19 +00:00
Motov Yurii 0d1f4d935b
🌐 Update translations for pt (update-all) (#14912)
* Update all

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 14:48:53 +01:00
github-actions[bot] 9d42132e7a 📝 Update release notes
[skip ci]
2026-02-13 13:42:06 +00:00
Motov Yurii dd50de1205
🌐 Update translations for es (update-all and add-missing) (#14911)
* Update all

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 14:41:41 +01:00
github-actions[bot] 7dbdb11fb0 📝 Update release notes
[skip ci]
2026-02-13 13:38:24 +00:00
Motov Yurii eada361fa2
🌐 Update translations for zh (update-all) (#14917)
* Update all

* 🎨 Auto format

* Add missing

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 14:37:57 +01:00
github-actions[bot] 149ef6264e 📝 Update release notes
[skip ci]
2026-02-13 12:42:31 +00:00
github-actions[bot] 54e29fbad8 📝 Update release notes
[skip ci]
2026-02-13 12:42:05 +00:00
Motov Yurii 685cc0de17
🌐 Update translations for uk (update-all) (#14914)
* Update all

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 13:42:01 +01:00
Motov Yurii ea8db708f1
🌐 Update translations for tr (update-all) (#14913)
* Update all

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 13:41:38 +01:00
github-actions[bot] fdbbf74908 📝 Update release notes
[skip ci]
2026-02-13 07:05:05 +00:00
dependabot[bot] b93c964d7f
⬆ Bump cryptography from 46.0.4 to 46.0.5 (#14892)
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.4 to 46.0.5.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.4...46.0.5)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Motov Yurii <109919500+YuriiMotov@users.noreply.github.com>
2026-02-13 08:04:40 +01:00
github-actions[bot] 7c4b134464 📝 Update release notes
[skip ci]
2026-02-13 06:56:53 +00:00
dependabot[bot] db328270aa
⬆ Bump pillow from 12.1.0 to 12.1.1 (#14899)
Bumps [pillow](https://github.com/python-pillow/Pillow) from 12.1.0 to 12.1.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/12.1.0...12.1.1)

---
updated-dependencies:
- dependency-name: pillow
  dependency-version: 12.1.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-13 07:56:30 +01:00
github-actions[bot] 6fa573ce0b 📝 Update release notes
[skip ci]
2026-02-12 19:58:08 +00:00
Motov Yurii 55a9eee13a
🌐 Update translations for ru (update-outdated) (#14909)
* Update all

* Reflect latest changes in `docs/en/docs/tutorial/security/oauth2-jwt.md`
2026-02-12 20:57:34 +01:00
github-actions[bot] c206f19b5d 📝 Update release notes
[skip ci]
2026-02-12 18:10:57 +00:00
Sebastián Ramírez d11f820ac3
📝 Update docs for JWT to prevent timing attacks (#14908) 2026-02-12 19:10:35 +01:00
Sebastián Ramírez a2e51363c7 🔖 Release version 0.129.0 2026-02-12 14:52:27 +01:00
github-actions[bot] b7ce02ae86 📝 Update release notes
[skip ci]
2026-02-12 13:32:02 +00:00
Sebastián Ramírez 31d9750ace
🔨 Update docs.py scripts to migrate Python 3.9 to Python 3.10 (#14906) 2026-02-12 13:31:33 +00:00
github-actions[bot] 109cc8aff1 📝 Update release notes
[skip ci]
2026-02-12 13:24:54 +00:00
Sebastián Ramírez c82a3d8a13
📝 Update highlights in webhooks docs (#14905) 2026-02-12 14:24:28 +01:00
github-actions[bot] 0e460654af 📝 Update release notes
[skip ci]
2026-02-12 13:20:10 +00:00
Sebastián Ramírez c9e2277d8b
📝 Update source examples and docs from Python 3.9 to 3.10 (#14900) 2026-02-12 14:19:43 +01:00
github-actions[bot] d06ab3f5c7 📝 Update release notes
[skip ci]
2026-02-11 18:41:46 +00:00
Sebastián Ramírez 3da206c06d
🎨 Update internal types for Python 3.10 (#14898) 2026-02-11 18:41:21 +00:00
github-actions[bot] cc903bd440 📝 Update release notes
[skip ci]
2026-02-11 18:32:39 +00:00
Sebastián Ramírez ad4e8e0060
Drop support for Python 3.9 (#14897)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-11 19:32:12 +01:00
Sebastián Ramírez bdd20051c4 🔖 Release version 0.128.8 2026-02-11 16:16:34 +01:00
github-actions[bot] 1ed9bd4923 📝 Update release notes
[skip ci]
2026-02-11 13:37:37 +00:00
Sebastián Ramírez aac30fd707
🔨 Tweak PDM hook script (#14895) 2026-02-11 13:37:09 +00:00
github-actions[bot] 417f1ee078 📝 Update release notes
[skip ci]
2026-02-11 12:34:12 +00:00
Sebastián Ramírez ffb8965260
♻️ Update build setup for `fastapi-slim`, deprecate it, and make it only depend on `fastapi` (#14894) 2026-02-11 12:33:49 +00:00
github-actions[bot] 93fa935fb8 📝 Update release notes
[skip ci]
2026-02-10 12:26:38 +00:00
Sanjana S f0f3e7a113
📝 Fix grammar in `docs/en/docs/tutorial/first-steps.md` (#14708) 2026-02-10 13:26:10 +01:00