From 6d81f93cec68da98729ff14750a9753797f4e872 Mon Sep 17 00:00:00 2001 From: Zach Clendenen Date: Mon, 2 Feb 2026 22:27:42 -0600 Subject: [PATCH 1/3] added explicit statements for postgres including USING clause --- .../versions/0062_rom_file_category_enum.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/backend/alembic/versions/0062_rom_file_category_enum.py b/backend/alembic/versions/0062_rom_file_category_enum.py index 75ae8d08f..83c8b0ab4 100644 --- a/backend/alembic/versions/0062_rom_file_category_enum.py +++ b/backend/alembic/versions/0062_rom_file_category_enum.py @@ -38,6 +38,26 @@ def upgrade() -> None: create_type=False, ) rom_file_category_enum.create(connection, checkfirst=True) + + # remove bad values before alter + op.execute( + """ + UPDATE rom_files + SET category = NULL + WHERE category IS NOT NULL + AND category NOT IN ('GAME', 'DLC', 'HACK', 'MANUAL', 'PATCH', 'UPDATE', 'MOD', 'DEMO', 'TRANSLATION', 'PROTOTYPE') + """ + ) + + # postgres being picky about needing USING + op.execute( + """ + ALTER TABLE rom_files + ALTER COLUMN category TYPE romfilecategory + USING category::text::romfilecategory + """ + ) + else: rom_file_category_enum = sa.Enum( "GAME", From 3416d0f46558c9e48529e814ed4050c23ea80eb8 Mon Sep 17 00:00:00 2001 From: Zach Clendenen Date: Mon, 2 Feb 2026 22:28:18 -0600 Subject: [PATCH 2/3] move batch_op to else block so postgres bypasses --- backend/alembic/versions/0062_rom_file_category_enum.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/alembic/versions/0062_rom_file_category_enum.py b/backend/alembic/versions/0062_rom_file_category_enum.py index 83c8b0ab4..c078ae3a1 100644 --- a/backend/alembic/versions/0062_rom_file_category_enum.py +++ b/backend/alembic/versions/0062_rom_file_category_enum.py @@ -73,8 +73,8 @@ def upgrade() -> None: name="romfilecategory", ) - with op.batch_alter_table("rom_files", schema=None) as batch_op: - batch_op.alter_column("category", type_=rom_file_category_enum, nullable=True) + with op.batch_alter_table("rom_files", schema=None) as batch_op: + batch_op.alter_column("category", type_=rom_file_category_enum, nullable=True) def downgrade() -> None: From 0430b53ee1d8e46ee944196409e37b80315f6d45 Mon Sep 17 00:00:00 2001 From: Zach Clendenen Date: Mon, 2 Feb 2026 23:17:04 -0600 Subject: [PATCH 3/3] signing with gpg and trunk check --- backend/alembic/versions/0062_rom_file_category_enum.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backend/alembic/versions/0062_rom_file_category_enum.py b/backend/alembic/versions/0062_rom_file_category_enum.py index c078ae3a1..d184a32c9 100644 --- a/backend/alembic/versions/0062_rom_file_category_enum.py +++ b/backend/alembic/versions/0062_rom_file_category_enum.py @@ -74,7 +74,9 @@ def upgrade() -> None: ) with op.batch_alter_table("rom_files", schema=None) as batch_op: - batch_op.alter_column("category", type_=rom_file_category_enum, nullable=True) + batch_op.alter_column( + "category", type_=rom_file_category_enum, nullable=True + ) def downgrade() -> None: