diff --git a/migrations/001_initial.gd b/migrations/001_initial.gd index d778a2c6..e1bd7575 100644 --- a/migrations/001_initial.gd +++ b/migrations/001_initial.gd @@ -5,30 +5,91 @@ func _up() -> void: # Create Table chatters table = create_table("chatters") - table.add_column("id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.NOT_NULL, {}) + table.add_column("id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.AUTO_INCREMENT | Types.Flags.NOT_NULL, {}) table.add_column("twitch_id", Types.DataType.STRING, Types.Flags.NOT_NULL, {}) - table.add_column("nickname", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("user_data", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("first_added", Types.DataType.REAL, Types.Flags.NONE, {}) + table.add_column("first_seen", Types.DataType.REAL, Types.Flags.NONE, {}) + table.add_column("last_seen", Types.DataType.REAL, Types.Flags.NONE, {}) table.add_column("known_engine", Types.DataType.STRING, Types.Flags.NONE, {}) table.add_column("steam_games", Types.DataType.ARRAY, Types.Flags.NONE, {}) table.add_column("itch_games", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) table.add_column("urls", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) table.add_column("is_indie_game_dev", Types.DataType.BOOL, Types.Flags.NONE, {}) table.add_column("is_on_team", Types.DataType.BOOL, Types.Flags.NONE, {}) - table.add_column("level", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("is_streamer", Types.DataType.BOOL, Types.Flags.NONE, {}) table.add_column("auto_shoutout", Types.DataType.BOOL, Types.Flags.NONE, {}) table.add_column("shoutout_as_devteam", Types.DataType.BOOL, Types.Flags.NONE, {}) + table.add_column("promo_msg", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("level", Types.DataType.INT, Types.Flags.NONE, {}) table.add_column("notes", Types.DataType.STRING, Types.Flags.NONE, {}) table.add_column("scores", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) table.add_column("extra_data", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("first_seen", Types.DataType.REAL, Types.Flags.NONE, {}) - table.add_column("last_seen", Types.DataType.REAL, Types.Flags.NONE, {}) - - + # Create Table itch_apps + table = create_table("itch_apps") + table.add_column("id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.NOT_NULL, {}) + table.add_column("title", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("authors", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("tags", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("links", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("cover_image", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("price", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("description", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("screenshots_thumbnails", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("screenshots_full", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("added", Types.DataType.REAL, Types.Flags.NONE, {}) + # Create Table steam_apps + table = create_table("steam_apps") + table.add_column("steam_app_id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.NOT_NULL, {}) + table.add_column("type", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("name", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("required_age", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("is_free", Types.DataType.BOOL, Types.Flags.NONE, {}) + table.add_column("short_description", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("detailed_description", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("header_image", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("capsule_image", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("capsule_imagev5", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("website", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("developers", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("publishers", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("platforms", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("genres", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("release_date", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("screenshots_full", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("screenshots_thumbs", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("trailer_mp4", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("trailer_webm", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) + table.add_column("trailer_thumbnail", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("price_currency", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("price_initial", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("price_final", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("price_discount_percent", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("price_initial_formatted", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("price_final_formatted", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("categories", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("dlc", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("packages", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("total_achievements", Types.DataType.INT, Types.Flags.NONE, {}) + table.add_column("highlighted_achievements", Types.DataType.ARRAY, Types.Flags.NONE, {}) + table.add_column("pc_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("mac_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("linux_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("support_email", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("support_url", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("background_image", Types.DataType.STRING, Types.Flags.NONE, {}) + table.add_column("background_image_raw", Types.DataType.STRING, Types.Flags.NONE, {}) func _down() -> void: # Drop Table chatters drop_table("chatters") + + # Drop Table itch_apps + drop_table("itch_apps") + + # Drop Table steam_apps + drop_table("steam_apps") diff --git a/migrations/001_initial.gd.uid b/migrations/001_initial.gd.uid index 2ee930bb..30615956 100644 --- a/migrations/001_initial.gd.uid +++ b/migrations/001_initial.gd.uid @@ -1 +1 @@ -uid://byvn338f077hm +uid://biw7xekbciqwi diff --git a/migrations/002_add_steam_and_itch_apps.gd b/migrations/002_add_steam_and_itch_apps.gd deleted file mode 100644 index bc6504f2..00000000 --- a/migrations/002_add_steam_and_itch_apps.gd +++ /dev/null @@ -1,68 +0,0 @@ -extends Migration - -func _up() -> void: - # Insert upgrade instructions to modify database structure below - # Create Table itch_apps - var table := create_table("itch_apps") - table.add_column("id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.NOT_NULL, {}) - table.add_column("title", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("authors", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("tags", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("links", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("cover_image", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("price", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("description", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("screenshots_thumbnails", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("screenshots_full", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("added", Types.DataType.REAL, Types.Flags.NONE, {}) - - # Create Table steam_apps - table = create_table("steam_apps") - table.add_column("steam_app_id", Types.DataType.INT, Types.Flags.PRIMARY_KEY | Types.Flags.NOT_NULL, {}) - table.add_column("type", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("name", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("required_age", Types.DataType.INT, Types.Flags.NONE, {}) - table.add_column("is_free", Types.DataType.BOOL, Types.Flags.NONE, {}) - table.add_column("short_description", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("detailed_description", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("header_image", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("capsule_image", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("capsule_imagev5", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("website", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("developers", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("publishers", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("platforms", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("genres", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("release_date", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("screenshots_full", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("screenshots_thumbs", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("trailer_mp4", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("trailer_webm", Types.DataType.DICTIONARY, Types.Flags.NONE, {}) - table.add_column("trailer_thumbnail", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("price_currency", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("price_initial", Types.DataType.INT, Types.Flags.NONE, {}) - table.add_column("price_final", Types.DataType.INT, Types.Flags.NONE, {}) - table.add_column("price_discount_percent", Types.DataType.INT, Types.Flags.NONE, {}) - table.add_column("price_initial_formatted", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("price_final_formatted", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("categories", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("dlc", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("packages", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("total_achievements", Types.DataType.INT, Types.Flags.NONE, {}) - table.add_column("highlighted_achievements", Types.DataType.ARRAY, Types.Flags.NONE, {}) - table.add_column("pc_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("mac_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("linux_requirements", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("support_email", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("support_url", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("background_image", Types.DataType.STRING, Types.Flags.NONE, {}) - table.add_column("background_image_raw", Types.DataType.STRING, Types.Flags.NONE, {}) - pass - -func _down() -> void: - # Insert downgrade instructions to modify database structure below. - # Drop Table itch_apps - drop_table("itch_apps") - - # Drop Table steam_apps - drop_table("steam_apps") diff --git a/migrations/002_add_steam_and_itch_apps.gd.uid b/migrations/002_add_steam_and_itch_apps.gd.uid deleted file mode 100644 index 478dfa99..00000000 --- a/migrations/002_add_steam_and_itch_apps.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://dkoc1y0bjblfw