32 lines
694 B
Python
32 lines
694 B
Python
"""preserve time flags for existing task deadlines
|
|
|
|
Revision ID: 0014_preserve_task_due_times
|
|
Revises: 0013_task_due_has_time
|
|
"""
|
|
|
|
import sqlalchemy as sa
|
|
from alembic import op
|
|
|
|
revision = "0014_preserve_task_due_times"
|
|
down_revision = "0013_task_due_has_time"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
tasks = sa.table(
|
|
"tasks",
|
|
sa.column("due_at", sa.DateTime(timezone=True)),
|
|
sa.column("due_has_time", sa.Boolean()),
|
|
)
|
|
op.execute(
|
|
tasks.update()
|
|
.where(tasks.c.due_at.is_not(None))
|
|
.where(sa.extract("hour", tasks.c.due_at) != 23)
|
|
.values(due_has_time=True)
|
|
)
|
|
|
|
|
|
def downgrade() -> None:
|
|
pass
|