You've already forked AstralRinth
forked from didirus/AstralRinth
Staging bug fixes (#819)
* Staging bug fixes * Finish fixes * fix tests * Update migration * Update migrations * fix side types being added for ineligible loaders * fix tests * Fix tests * Finish fixes * Add slug display names
This commit is contained in:
@@ -77,7 +77,7 @@ FROM versions v
|
||||
INNER JOIN mods m ON v.mod_id = m.id
|
||||
INNER JOIN loader_field_enum_values lfev ON m.client_side = lfev.original_id
|
||||
CROSS JOIN loader_fields lf
|
||||
WHERE client_side IS NOT NULL AND lfev.enum_id = 1 AND lf.field = 'client_side';
|
||||
WHERE client_side IS NOT NULL AND lfev.enum_id = 1 AND lf.field = 'client_side' AND NOT (ARRAY['vanilla', 'minecraft', 'optifine', 'iris', 'canvas', 'bukkit', 'folia', 'paper', 'purpur', 'spigot', 'sponge', 'datapack', 'bungeecord', 'velocity', 'waterfall'] @> m.loaders::text[]);;
|
||||
|
||||
INSERT INTO version_fields (version_id, field_id, enum_value)
|
||||
SELECT v.id, lf.id, lfev.id -- Note: bug fix/edited 2023-11-27
|
||||
@@ -85,7 +85,7 @@ FROM versions v
|
||||
INNER JOIN mods m ON v.mod_id = m.id
|
||||
INNER JOIN loader_field_enum_values lfev ON m.server_side = lfev.original_id
|
||||
CROSS JOIN loader_fields lf
|
||||
WHERE server_side IS NOT NULL AND lfev.enum_id = 1 AND lf.field = 'server_side';
|
||||
WHERE server_side IS NOT NULL AND lfev.enum_id = 1 AND lf.field = 'server_side' AND NOT (ARRAY['vanilla', 'minecraft', 'optifine', 'iris', 'canvas', 'bukkit', 'folia', 'paper', 'purpur', 'spigot', 'sponge', 'datapack', 'bungeecord', 'velocity', 'waterfall'] @> m.loaders::text[]);
|
||||
|
||||
ALTER TABLE mods DROP COLUMN client_side;
|
||||
ALTER TABLE mods DROP COLUMN server_side;
|
||||
@@ -99,8 +99,12 @@ SELECT id, 2, version, created, json_build_object('type', type, 'major', major)
|
||||
INSERT INTO loader_fields (field, field_type, enum_type, optional, min_val) VALUES('game_versions', 'array_enum', 2, false, 0);
|
||||
INSERT INTO loader_fields_loaders (loader_id, loader_field_id) SELECT l.id, lf.id FROM loaders l CROSS JOIN loader_fields lf WHERE lf.field = 'game_versions' AND l.loader = ANY( ARRAY['forge', 'fabric', 'quilt', 'modloader','rift','liteloader', 'neoforge']);
|
||||
|
||||
INSERT INTO version_fields(version_id, field_id, enum_value)
|
||||
SELECT gvv.joining_version_id, lf.id, lfev.id
|
||||
-- remove dangling game versions
|
||||
DELETE FROM game_versions_versions
|
||||
WHERE joining_version_id NOT IN (SELECT id FROM versions);
|
||||
|
||||
INSERT INTO version_fields(version_id, field_id, enum_value)
|
||||
SELECT gvv.joining_version_id, lf.id, lfev.id
|
||||
FROM game_versions_versions gvv INNER JOIN loader_field_enum_values lfev ON gvv.game_version_id = lfev.original_id
|
||||
CROSS JOIN loader_fields lf
|
||||
WHERE lf.field = 'game_versions' AND lfev.enum_id = 2;
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
ALTER TABLE users DROP COLUMN IF EXISTS paypal_email;
|
||||
|
||||
ALTER TABLE users
|
||||
ADD COLUMN paypal_country text NULL,
|
||||
ADD COLUMN paypal_email text NULL,
|
||||
|
||||
@@ -4,13 +4,18 @@
|
||||
-- This also allows v2 routes (which have things such as client_side to remain to work with these loaders)
|
||||
INSERT INTO loader_fields_loaders
|
||||
SELECT l.id, lf.id FROM loaders l CROSS JOIN loader_fields lf
|
||||
WHERE lf.field=ANY(ARRAY['game_versions','client_and_server','server_only','client_only','singleplayer'])
|
||||
WHERE lf.field=ANY(ARRAY['client_and_server','server_only','client_only','singleplayer'])
|
||||
AND
|
||||
l.loader NOT IN ('vanilla', 'minecraft', 'optifine', 'iris', 'canvas')
|
||||
l.loader NOT IN ('vanilla', 'minecraft', 'optifine', 'iris', 'canvas', 'bukkit', 'folia', 'paper', 'purpur', 'spigot', 'sponge', 'datapack', 'bungeecord', 'velocity', 'waterfall')
|
||||
ON CONFLICT DO NOTHING;
|
||||
|
||||
INSERT INTO loader_fields_loaders
|
||||
SELECT l.id, lf.id FROM loaders l CROSS JOIN loader_fields lf
|
||||
WHERE lf.field=ANY(ARRAY['game_versions'])
|
||||
ON CONFLICT DO NOTHING;
|
||||
|
||||
-- All existing loader_project_types so far should have a games entry as minecraft
|
||||
INSERT INTO loaders_project_types_games
|
||||
SELECT lpt.joining_loader_id, lpt.joining_project_type_id, g.id FROM loaders_project_types lpt CROSS JOIN games g
|
||||
WHERE g.name='minecraft-java'
|
||||
ON CONFLICT DO NOTHING;
|
||||
ON CONFLICT DO NOTHING;
|
||||
|
||||
7
migrations/20240104203711_orgs-names.sql
Normal file
7
migrations/20240104203711_orgs-names.sql
Normal file
@@ -0,0 +1,7 @@
|
||||
-- Add migration script here
|
||||
ALTER TABLE organizations RENAME COLUMN name TO slug;
|
||||
|
||||
ALTER TABLE organizations ADD COLUMN name text NULL;
|
||||
UPDATE organizations SET name = slug;
|
||||
ALTER TABLE organizations ALTER COLUMN name SET NOT NULL;
|
||||
|
||||
Reference in New Issue
Block a user