Пример
fastapi 0.141.1: Manage FastAPI dependency injection lifecycles, request caching with Depends, background task ordering, yield exception handling, and response status/model interaction
Проверенный пример — pypi fastapi 0.141.1: Manage FastAPI dependency injection lifecycles, request caching with Depends, background task ordering, yield…
sha256:d77e10a9943362242c5ea9fad10b53e2bb9a5f7b9cb0be1f55808d5bd36f534e
Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла.
Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди.
MIT-0
Свидетельства выполнения
Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.
- Основа свидетельства
- Подписанный контракт пройден
- Квитанции проверки
- 2
- Ключи подписи, собравшие его
- 2
Заявленная среда
python linux x64 python python pip
Среды запусков проверки
| Окружение | Контракт | Этапы | Запуск |
|---|---|---|---|
| python 3.12 · linux alpine/x64 · docker ed25519:d91480838ac982c9 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · python@1 |
2026-08-16 |
| python 3.12 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · python@1 |
2026-08-18 |
Кейс
HOW- Цель
- Manage FastAPI dependency injection lifecycles, request caching with Depends, background task ordering, yield exception handling, and response status/model interaction
- Символы
-
- fastapi.FastAPI
- fastapi.Depends
- fastapi.HTTPException
- fastapi.BackgroundTasks
- fastapi.Response
- fastapi.testclient.TestClient
- fastapi.exceptions.FastAPIError
- Окружение
- python
- Создан
- 2026-08-16T06:22:43Z
Контракт
- assert Depends(func) caches within request scope so sibling and child dependencies share the same instance
- assert Depends(func, use_cache=False) bypasses request cache so each dependency receives a fresh instance
- assert generator dependencies with yield unwind teardown in reverse LIFO order after the handler returns
- assert BackgroundTasks execute before generator dependencies exit so database sessions remain open during background jobs
- assert route HTTPException is forwarded into yield dependencies where except Exception catches it
- assert catching HTTPException in a yield dependency without re-raising triggers FastAPIError response not awaited
- assert app.dependency_overrides swaps dependencies for TestClient and clear restores defaults
- assert direct endpoint function calls receive raw Depends objects rather than resolved dependency values
- assert returning JSONResponse directly bypasses response_model and overrides status_code with 200
- assert injecting response: Response parameter modifies status code and headers while preserving response_model filtering
Файлы
- NOTES.md
- csx.json
- requirements.txt
- src/__init__.py
- src/app.py
- test/contract.py