SECourses_Musubi_Trainer_Setup / venv /lib /python3.11 /site-packages /fastapi /middleware /asyncexitstack.py
Download venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py from nanaj/SECourses_Musubi_Trainer_Setup: direct link, hf CLI and curl.
- Browser
- Download file 637 Bytes
-
https://huggingface.co/nanaj/SECourses_Musubi_Trainer_Setup/resolve/main/venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py
- Command line
-
hf download hf://nanaj/SECourses_Musubi_Trainer_Setup/venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py
-
curl -L -o asyncexitstack.py https://huggingface.co/nanaj/SECourses_Musubi_Trainer_Setup/resolve/main/venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py
637 Bytes
| from contextlib import AsyncExitStack | |
| from starlette.types import ASGIApp, Receive, Scope, Send | |
| # Used mainly to close files after the request is done, dependencies are closed | |
| # in their own AsyncExitStack | |
| class AsyncExitStackMiddleware: | |
| def __init__( | |
| self, app: ASGIApp, context_name: str = "fastapi_middleware_astack" | |
| ) -> None: | |
| self.app = app | |
| self.context_name = context_name | |
| async def __call__(self, scope: Scope, receive: Receive, send: Send) -> None: | |
| async with AsyncExitStack() as stack: | |
| scope[self.context_name] = stack | |
| await self.app(scope, receive, send) | |