Update zluda.py

This commit is contained in:
patientx 2025-05-08 20:18:26 +03:00 committed by GitHub
parent 0436293d99
commit 6c2370a577
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -26,7 +26,7 @@ from typing import Union, List
from enum import Enum from enum import Enum
# ------------------- main imports ------------------- # ------------------- main imports -------------------
# ------------------- ComfyUI Frontend Version Check ------------------- # ------------------- ComfyUI Package Version Check -------------------
def get_package_version(package_name): def get_package_version(package_name):
try: try:
from importlib.metadata import version from importlib.metadata import version
@ -35,66 +35,47 @@ def get_package_version(package_name):
from importlib_metadata import version from importlib_metadata import version
return version(package_name) return version(package_name)
# Check and install/update comfyui-frontend-package def ensure_package(package_name, required_version, suppress_errors=False):
required_frontend_version = "1.18.6" try:
frontend_package_name = "comfyui-frontend-package" installed_version = get_package_version(package_name)
print(f"Installed version of {package_name}: {installed_version}")
try: from packaging import version
installed_version = get_package_version(frontend_package_name) if version.parse(installed_version) < version.parse(required_version):
# print(f"\nInstalled version of {frontend_package_name}: {installed_version}") install_package(package_name, required_version, upgrade=True, suppress_errors=suppress_errors)
print(f"\n{package_name} outdated. Upgraded to {required_version}.")
except Exception:
install_package(package_name, required_version, suppress_errors=suppress_errors)
print(f"\n{package_name} was missing. Installed it.")
from packaging import version def install_package(package_name, version, upgrade=False, suppress_errors=False):
if version.parse(installed_version) < version.parse(required_frontend_version):
import subprocess
import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{frontend_package_name}=={required_frontend_version}', '--quiet', '--upgrade'])
print(f"\nComfyUI Frontend Package outdated. Upgraded to {required_frontend_version}.")
except Exception:
import subprocess import subprocess
import sys import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{frontend_package_name}=={required_frontend_version}', '--quiet']) import platform
print("\nComfyUI Frontend Package was missing. Installed it.")
# Check and install/update comfyui-workflow-templates args = [sys.executable, '-m', 'pip', 'install', f'{package_name}=={version}', '--quiet']
required_templates_version = "0.1.3" if upgrade:
templates_package_name = "comfyui-workflow-templates" args.append('--upgrade')
try: if suppress_errors and platform.system() == 'Windows':
installed_version = get_package_version(templates_package_name) # For Windows with error suppression, we need to join the command and use shell=True
# print(f"Installed version of {templates_package_name}: {installed_version}") command = ' '.join(args) + ' 2>nul'
subprocess.check_call(command, shell=True)
else:
# Normal execution without shell
subprocess.check_call(args)
from packaging import version # List of packages and their required versions with special flags
if version.parse(installed_version) < version.parse(required_templates_version): packages_to_check = [
import subprocess ("comfyui-frontend-package", "1.18.6", False),
import sys ("comfyui-workflow-templates", "0.1.3", False),
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{templates_package_name}=={required_templates_version}', '--quiet', '--upgrade']) ("av", "14.3.0", True) # Special case: suppress errors for av
print(f"\nComfyUI Workflow Templates outdated. Upgraded to {required_templates_version}.") ]
except Exception:
import subprocess
import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{templates_package_name}=={required_templates_version}', '--quiet'])
print("\nComfyUI Workflow Templates was missing. Installed it.")
# Check and install/update pyav # Check and install/update all packages
required_templates_version = "14.3.0" for package_name, required_version, suppress_errors in packages_to_check:
templates_package_name = "av" ensure_package(package_name, required_version, suppress_errors)
# ------------------- End Version Check -------------------
try:
installed_version = get_package_version(templates_package_name)
print(f"Installed version of {templates_package_name}: {installed_version}")
from packaging import version
if version.parse(installed_version) < version.parse(required_templates_version):
import subprocess
import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{templates_package_name}=={required_templates_version}', '--quiet', '--upgrade'])
print(f"\nPYAV outdated. Upgraded to {required_templates_version}.")
except Exception:
import subprocess
import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', f'{templates_package_name}=={required_templates_version}', '--quiet'])
print("\nPYAV was missing. Installed it.")
# ------------------- End Frontend Version Check -------------------
# ------------------- Triton Setup ------------------- # ------------------- Triton Setup -------------------
print("\n :: ------------------------ ZLUDA ----------------------- :: ") print("\n :: ------------------------ ZLUDA ----------------------- :: ")