Basisimplementierung für Mailversandt.

This commit is contained in:
Frank Agerholm 2026-01-16 20:51:40 +01:00
commit 531b9cb10e
No known key found for this signature in database
14 changed files with 520 additions and 41 deletions

View file

@ -0,0 +1,28 @@
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql
# revision identifiers:
revision = "20260116_create_messages"
down_revision = None # oder deine letzte Revision
def upgrade():
op.create_table(
"messages",
sa.Column("id", postgresql.UUID(as_uuid=True), primary_key=True),
sa.Column("mailbox_id", postgresql.UUID(as_uuid=True), nullable=False),
sa.Column("message_id", sa.String(512), nullable=True),
sa.Column("subject", sa.String(2048), nullable=True),
sa.Column("from_addr", sa.String(2048), nullable=True),
sa.Column("to_addr", sa.String(4096), nullable=True),
sa.Column("date_header", sa.TIMESTAMP(timezone=True), nullable=True),
sa.Column("received_at", sa.TIMESTAMP(timezone=True), nullable=False),
sa.Column("raw_eml", sa.LargeBinary(), nullable=False),
)
op.create_index("ix_messages_date", "messages", ["date_header"])
op.create_index("ix_messages_message_id", "messages", ["message_id"])
op.create_index("ix_messages_mailbox", "messages", ["mailbox_id"])
def downgrade():
op.drop_table("messages")

View file

@ -0,0 +1,28 @@
"""merge message-branch and baseline
Revision ID: 918e1dd7c598
Revises: 20260116_create_messages, bb8e2c8e4b8f
Create Date: 2026-01-16 14:20:04.807623
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision: str = '918e1dd7c598'
down_revision: Union[str, Sequence[str], None] = ('20260116_create_messages', 'bb8e2c8e4b8f')
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
"""Upgrade schema."""
pass
def downgrade() -> None:
"""Downgrade schema."""
pass