Fix missing sliced_for_model migration (Issue #211)

The sliced_for_model column was added to the PrintArchive model for
model-based queue assignment but the database migration was missing.

This caused upgrades from 0.1.6b11 to 0.1.6 to fail with:
"no such column: print_archives.sliced_for_model"

Users' data was not deleted - just inaccessible due to query failures.
This commit is contained in:
maziggy
2026-02-01 13:33:23 +01:00
parent 6ff394d016
commit 9b27b0a503
+35
View File
@@ -34,6 +34,7 @@ async def get_db() -> AsyncSession:
async def init_db():
# Import models to register them with SQLAlchemy
from backend.app.models import ( # noqa: F401
ams_history,
api_key,
archive,
external_link,
@@ -45,11 +46,13 @@ async def init_db():
maintenance,
notification,
notification_template,
pending_upload,
print_queue,
printer,
project,
project_bom,
settings,
slot_preset,
smart_plug,
user,
)
@@ -959,6 +962,38 @@ async def run_migrations(conn):
except Exception:
pass
# Migration: Add queue notification event columns to notification_providers
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_added BOOLEAN DEFAULT 0"))
except Exception:
pass
try:
await conn.execute(
text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_assigned BOOLEAN DEFAULT 0")
)
except Exception:
pass
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_started BOOLEAN DEFAULT 0"))
except Exception:
pass
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_waiting BOOLEAN DEFAULT 1"))
except Exception:
pass
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_skipped BOOLEAN DEFAULT 1"))
except Exception:
pass
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_job_failed BOOLEAN DEFAULT 1"))
except Exception:
pass
try:
await conn.execute(text("ALTER TABLE notification_providers ADD COLUMN on_queue_completed BOOLEAN DEFAULT 0"))
except Exception:
pass
async def seed_notification_templates():
"""Seed default notification templates if they don't exist."""