From 8975f63e2fd0def15b4c22f4bf355a1b219c8b54 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 20 Mar 2022 16:25:48 +1000 Subject: [PATCH] Fix AsyncSession handling after breaking changes in FastAPI 0.74.0 See https://github.com/tiangolo/fastapi/releases/tag/0.74.0 for details. --- .../api/routes/controller/dependencies/database.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gns3server/api/routes/controller/dependencies/database.py b/gns3server/api/routes/controller/dependencies/database.py index fe2226c7..2e859106 100644 --- a/gns3server/api/routes/controller/dependencies/database.py +++ b/gns3server/api/routes/controller/dependencies/database.py @@ -24,11 +24,11 @@ from gns3server.db.repositories.base import BaseRepository async def get_db_session(request: HTTPConnection) -> AsyncSession: - session = AsyncSession(request.app.state._db_engine, expire_on_commit=False) - try: - yield session - finally: - await session.close() + async with AsyncSession(request.app.state._db_engine, expire_on_commit=False) as session: + try: + yield session + finally: + await session.close() def get_repository(repo: Type[BaseRepository]) -> Callable: