from __future__ import annotations from sqlalchemy import create_engine from sqlalchemy.orm import Session, sessionmaker from app.core.config import settings engine = create_engine( settings.db_url, connect_args={"check_same_thread": False} if settings.db_url.startswith("sqlite") else {}, future=True, ) SessionLocal = sessionmaker(bind=engine, class_=Session, autoflush=False, autocommit=False, future=True) def get_session() -> Session: return SessionLocal()