From 0fb4ee9feb0146932f0edabb8b94a95f0d26eb77 Mon Sep 17 00:00:00 2001 From: Joshua Reed <11220408+jreed1701@users.noreply.github.com> Date: Sun, 3 Mar 2024 17:43:51 -0700 Subject: [PATCH 1/4] Fix alembic revision adding non nullable column. --- application/alembic/versions/database_v3.py | 7 ++++++- application/alembic/versions/database_v4.py | 18 ++++++++++++------ application/factory.py | 2 ++ application/models/games.py | 2 +- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/application/alembic/versions/database_v3.py b/application/alembic/versions/database_v3.py index 4d890d9..9e7b595 100644 --- a/application/alembic/versions/database_v3.py +++ b/application/alembic/versions/database_v3.py @@ -25,12 +25,17 @@ def upgrade(): "game_state", sa.String(length=25), default=GameStates.NOT_STATE.value, - nullable=False, + nullable=True, ), insert_after="", insert_before="", ) + # Set back to nullable and fill with a default value. + batch_op.alter_column( + "game_state", nullable=False, server_default=GameStates.NOT_STATE.value + ) + # ### end Alembic commands ### diff --git a/application/alembic/versions/database_v4.py b/application/alembic/versions/database_v4.py index 6af58d8..4866241 100644 --- a/application/alembic/versions/database_v4.py +++ b/application/alembic/versions/database_v4.py @@ -44,10 +44,8 @@ def upgrade(): "game_steam_build_branch", sa.String(length=256), default="public", - nullable=False, + nullable=True, ), - insert_after="public", - insert_before="public", ) batch_op.add_column( @@ -55,10 +53,18 @@ def upgrade(): "game_steam_build_id", sa.Integer(), default=-1, - nullable=False, + nullable=True, ), - insert_after=-1, - insert_before=-1, + ) + + # Set back to nullable and fill with a default value. + batch_op.alter_column( + "game_steam_build_branch", nullable=False, server_default="public" + ) + + # Set back to nullable and fill with a default value. + batch_op.alter_column( + "game_steam_build_id", nullable=False, server_default="-1" ) op.create_index("ix_actions_action_id", "actions", ["action_id"], unique=False) diff --git a/application/factory.py b/application/factory.py index ff4f4f9..7558a95 100644 --- a/application/factory.py +++ b/application/factory.py @@ -105,6 +105,8 @@ def create_app(config=None): _handle_migrations(flask_app) + return flask_app + startup_settings: dict = { constants.SETTING_NAME_STEAM_PATH: os.path.join( constants.DEFAULT_INSTALL_PATH, "steam" diff --git a/application/models/games.py b/application/models/games.py index 90f5378..9ed7dd2 100644 --- a/application/models/games.py +++ b/application/models/games.py @@ -32,7 +32,7 @@ class Games(PaginatedApi, DATABASE.Model): nullable=False, ) game_state = DATABASE.Column( - DATABASE.String(25), default=GameStates.NOT_STATE.value, nullable=False + DATABASE.String(25), default=GameStates.NOT_STATE.value, nullable=True ) actions = DATABASE.relationship( From c002edd650781c1f3af791dd538550302000cb63 Mon Sep 17 00:00:00 2001 From: Joshua Reed <11220408+jreed1701@users.noreply.github.com> Date: Sun, 3 Mar 2024 17:47:44 -0700 Subject: [PATCH 2/4] Correct typo in games object. --- application/models/games.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/models/games.py b/application/models/games.py index 9ed7dd2..90f5378 100644 --- a/application/models/games.py +++ b/application/models/games.py @@ -32,7 +32,7 @@ class Games(PaginatedApi, DATABASE.Model): nullable=False, ) game_state = DATABASE.Column( - DATABASE.String(25), default=GameStates.NOT_STATE.value, nullable=True + DATABASE.String(25), default=GameStates.NOT_STATE.value, nullable=False ) actions = DATABASE.relationship( From 2805d7e7935965a12433526a7dc4b861d0b8a327 Mon Sep 17 00:00:00 2001 From: Joshua Reed <11220408+jreed1701@users.noreply.github.com> Date: Wed, 6 Mar 2024 15:29:44 -0700 Subject: [PATCH 3/4] Remove debug code. --- application/factory.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/application/factory.py b/application/factory.py index 7558a95..ff4f4f9 100644 --- a/application/factory.py +++ b/application/factory.py @@ -105,8 +105,6 @@ def create_app(config=None): _handle_migrations(flask_app) - return flask_app - startup_settings: dict = { constants.SETTING_NAME_STEAM_PATH: os.path.join( constants.DEFAULT_INSTALL_PATH, "steam" From 78e2fe83556b5b6181bbe3fd66c80980012df7d0 Mon Sep 17 00:00:00 2001 From: Joshua Reed <11220408+jreed1701@users.noreply.github.com> Date: Wed, 6 Mar 2024 15:56:17 -0700 Subject: [PATCH 4/4] agent-smith.py will no longer start up if it is already running. --- application/gui/launch.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/application/gui/launch.py b/application/gui/launch.py index d98c836..c925d74 100644 --- a/application/gui/launch.py +++ b/application/gui/launch.py @@ -125,6 +125,17 @@ def initialize(self, with_server=False): initialization_data = None if with_server: + # Check that one is not already running. + is_already_there = None + is_already_there = self._globals._client.architect.get_health() + if is_already_there == "Alive": + message = QMessageBox() + message.setText( + "Error: Unable to start. This application is already running!" + ) + message.exec() + return + # Launch Flask Server self._spawn_server_on_thread()