diff --git a/app/frontend_management.py b/app/frontend_management.py index a0eb43ea3..d0596b276 100644 --- a/app/frontend_management.py +++ b/app/frontend_management.py @@ -42,9 +42,12 @@ def get_required_frontend_version(): return get_required_packages_versions().get("comfyui-frontend-package", None) +COMFY_PACKAGE_VERSIONS = [] def get_comfy_package_versions(): """List installed/required versions for every comfy* package in requirements.txt.""" - out = [] + if COMFY_PACKAGE_VERSIONS: + return COMFY_PACKAGE_VERSIONS.copy() + out = COMFY_PACKAGE_VERSIONS for name, required in (get_required_packages_versions() or {}).items(): if not name.startswith("comfy"): continue @@ -53,7 +56,7 @@ def get_comfy_package_versions(): except Exception: installed = None out.append({"name": name, "installed": installed, "required": required}) - return out + return out.copy() def check_comfy_packages_versions(): diff --git a/tests-unit/app_test/frontend_manager_test.py b/tests-unit/app_test/frontend_manager_test.py index 3bdc8b57d..8c8a2eb48 100644 --- a/tests-unit/app_test/frontend_manager_test.py +++ b/tests-unit/app_test/frontend_manager_test.py @@ -52,7 +52,10 @@ def mock_provider(mock_releases): @pytest.fixture(autouse=True) def clear_cache(): import utils.install_util + import app.frontend_management + utils.install_util.PACKAGE_VERSIONS = {} + app.frontend_management.COMFY_PACKAGE_VERSIONS = [] def test_get_release(mock_provider, mock_releases): @@ -277,7 +280,9 @@ def test_get_installed_templates_version(): def test_get_installed_templates_version_not_installed(): # Act - with patch("app.frontend_management.version", side_effect=Exception("Package not found")): + with patch( + "app.frontend_management.version", side_effect=Exception("Package not found") + ): version = FrontendManager.get_installed_templates_version() # Assert