aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--alembic/env.py3
-rw-r--r--metricity/database.py3
-rw-r--r--metricity/exts/event_listeners/guild_listeners.py1
-rw-r--r--metricity/exts/event_listeners/member_listeners.py1
4 files changed, 7 insertions, 1 deletions
diff --git a/alembic/env.py b/alembic/env.py
index efe2573..f6871e1 100644
--- a/alembic/env.py
+++ b/alembic/env.py
@@ -30,6 +30,7 @@ target_metadata = Base.metadata
config.set_main_option("sqlalchemy.url", build_db_uri())
+
def do_run_migrations(connection: Connection) -> None:
"""Run migrations."""
context.configure(connection=connection, target_metadata=target_metadata)
@@ -37,6 +38,7 @@ def do_run_migrations(connection: Connection) -> None:
with context.begin_transaction():
context.run_migrations()
+
async def run_async_migrations() -> None:
"""Run migrations asynchronously using the asyncpg driver."""
connectable = async_engine_from_config(
@@ -50,6 +52,7 @@ async def run_async_migrations() -> None:
await connectable.dispose()
+
def run_migrations_offline() -> None:
"""
Run migrations in 'offline' mode.
diff --git a/metricity/database.py b/metricity/database.py
index 347ce90..84b7eef 100644
--- a/metricity/database.py
+++ b/metricity/database.py
@@ -12,6 +12,7 @@ from metricity.config import DatabaseConfig
log = logging.getLogger(__name__)
+
def build_db_uri() -> str:
"""Build the database uri from the config."""
if DatabaseConfig.uri:
@@ -27,9 +28,11 @@ def build_db_uri() -> str:
f"@{DatabaseConfig.host}:{DatabaseConfig.port}/{DatabaseConfig.database}"
)
+
engine: AsyncEngine = create_async_engine(build_db_uri(), echo=DatabaseConfig.log_queries)
async_session = async_sessionmaker(engine, expire_on_commit=False)
+
class TZDateTime(TypeDecorator):
"""
A db type that supports the use of aware datetimes in user-land.
diff --git a/metricity/exts/event_listeners/guild_listeners.py b/metricity/exts/event_listeners/guild_listeners.py
index 10ec2c3..d31aa8a 100644
--- a/metricity/exts/event_listeners/guild_listeners.py
+++ b/metricity/exts/event_listeners/guild_listeners.py
@@ -16,6 +16,7 @@ from metricity.exts.event_listeners import _utils
log = logging.get_logger(__name__)
+
class GuildListeners(commands.Cog):
"""Listen for guild (and guild channel) events and sync them to the database."""
diff --git a/metricity/exts/event_listeners/member_listeners.py b/metricity/exts/event_listeners/member_listeners.py
index 04090f1..bcc7de3 100644
--- a/metricity/exts/event_listeners/member_listeners.py
+++ b/metricity/exts/event_listeners/member_listeners.py
@@ -125,7 +125,6 @@ class MemberListeners(commands.Cog):
await sess.commit()
-
async def setup(bot: Bot) -> None:
"""Load the MemberListeners cog."""
await bot.add_cog(MemberListeners(bot))