mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-10-02 12:15:36 +02:00
The migration that removes the UNIQUE constraint on smart_plugs.printer_id
used an exact substring match ("printer_id INTEGER UNIQUE") to detect the
constraint. Databases created with older SQLAlchemy versions may express
the constraint differently (quoted column names, table-level UNIQUE clause,
or separate UNIQUE indexes), causing the migration to silently skip.
Users hit "IntegrityError: UNIQUE constraint failed: smart_plugs.printer_id"
when assigning a second HA switch to a printer.
Replace the exact string match with regex pattern matching that handles
inline constraints, table-level UNIQUE(printer_id), quoted column names,
and standalone UNIQUE indexes.