From 74b63c7b5f08373f48ef9d5dd35c0cd2410e4241 Mon Sep 17 00:00:00 2001 From: Rodrigo Agundez Date: Thu, 20 Nov 2025 13:35:31 +0700 Subject: [PATCH 1/2] Remove unused sqlite and mysql settings --- src/app/core/config.py | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/src/app/core/config.py b/src/app/core/config.py index e67169a..47b2b8f 100644 --- a/src/app/core/config.py +++ b/src/app/core/config.py @@ -25,30 +25,6 @@ class DatabaseSettings(BaseSettings): pass -class SQLiteSettings(DatabaseSettings): - SQLITE_URI: str = "./sql_app.db" - SQLITE_SYNC_PREFIX: str = "sqlite:///" - SQLITE_ASYNC_PREFIX: str = "sqlite+aiosqlite:///" - - -class MySQLSettings(DatabaseSettings): - MYSQL_USER: str = "username" - MYSQL_PASSWORD: str = "password" - MYSQL_SERVER: str = "localhost" - MYSQL_PORT: int = 5432 - MYSQL_DB: str = "dbname" - MYSQL_SYNC_PREFIX: str = "mysql://" - MYSQL_ASYNC_PREFIX: str = "mysql+aiomysql://" - MYSQL_URL: str | None = None - - @computed_field # type: ignore[prop-decorator] - @property - def MYSQL_URI(self) -> str: - credentials = f"{self.MYSQL_USER}:{self.MYSQL_PASSWORD}" - location = f"{self.MYSQL_SERVER}:{self.MYSQL_PORT}/{self.MYSQL_DB}" - return f"{credentials}@{location}" - - class PostgresSettings(DatabaseSettings): POSTGRES_USER: str = "postgres" POSTGRES_PASSWORD: str = "postgres" @@ -151,7 +127,6 @@ class CORSSettings(BaseSettings): class Settings( AppSettings, - SQLiteSettings, PostgresSettings, CryptSettings, FirstUserSettings, From 798b215e0c94c3e441af956f16499ddad33fab64 Mon Sep 17 00:00:00 2001 From: Rodrigo Agundez Date: Thu, 20 Nov 2025 13:39:59 +0700 Subject: [PATCH 2/2] Centralize the postgres url creation --- src/app/core/config.py | 7 +++++-- src/app/core/db/database.py | 4 +--- tests/conftest.py | 6 +++--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/app/core/config.py b/src/app/core/config.py index 47b2b8f..ce77ff0 100644 --- a/src/app/core/config.py +++ b/src/app/core/config.py @@ -31,9 +31,7 @@ class PostgresSettings(DatabaseSettings): POSTGRES_SERVER: str = "localhost" POSTGRES_PORT: int = 5432 POSTGRES_DB: str = "postgres" - POSTGRES_SYNC_PREFIX: str = "postgresql://" POSTGRES_ASYNC_PREFIX: str = "postgresql+asyncpg://" - POSTGRES_URL: str | None = None @computed_field # type: ignore[prop-decorator] @property @@ -42,6 +40,11 @@ def POSTGRES_URI(self) -> str: location = f"{self.POSTGRES_SERVER}:{self.POSTGRES_PORT}/{self.POSTGRES_DB}" return f"{credentials}@{location}" + @computed_field # type: ignore[prop-decorator] + @property + def POSTGRES_URL(self) -> str: + return f"{self.POSTGRES_ASYNC_PREFIX}{self.POSTGRES_URI}" + class FirstUserSettings(BaseSettings): ADMIN_NAME: str = "admin" diff --git a/src/app/core/db/database.py b/src/app/core/db/database.py index b95ab3b..9d08287 100644 --- a/src/app/core/db/database.py +++ b/src/app/core/db/database.py @@ -11,9 +11,7 @@ class Base(DeclarativeBase, MappedAsDataclass): pass -DATABASE_URI = settings.POSTGRES_URI -DATABASE_PREFIX = settings.POSTGRES_ASYNC_PREFIX -DATABASE_URL = f"{DATABASE_PREFIX}{DATABASE_URI}" +DATABASE_URL = settings.POSTGRES_URL async_engine = create_async_engine(DATABASE_URL, echo=False, future=True) diff --git a/tests/conftest.py b/tests/conftest.py index 22038f1..831dfe8 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -13,10 +13,10 @@ from src.app.core.config import settings from src.app.main import app -DATABASE_URI = settings.POSTGRES_URI -DATABASE_PREFIX = settings.POSTGRES_SYNC_PREFIX +DATABASE_URL = settings.POSTGRES_URL -sync_engine = create_engine(DATABASE_PREFIX + DATABASE_URI) + +sync_engine = create_engine(DATABASE_URL) local_session = sessionmaker(autocommit=False, autoflush=False, bind=sync_engine)