From 7b3ee9d5fa33930eca70b771eaf85a9ed8c4d81d Mon Sep 17 00:00:00 2001 From: luxferre Date: Thu, 21 May 2026 16:55:15 +0100 Subject: [PATCH] feat: db dependency upgrade No longer using .begin() and context manager. This means commits must be explicit (already were) but also, it allows for sanity checks within routes after commits. --- src/database.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/database.py b/src/database.py index 1761560..819faeb 100644 --- a/src/database.py +++ b/src/database.py @@ -17,13 +17,16 @@ engine = create_engine(SQLALCHEMY_DATABASE_URI.get_secret_value()) SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine) + def get_db(): - with SessionLocal.begin() as db: - try: - yield db - finally: - db.rollback() # Anything not explicitly commited is rolled back - db.close() + db = SessionLocal() + try: + yield db + except: + db.rollback() + raise + finally: + db.close() db_dependency = Annotated[Session, Depends(get_db)]