From cbc592bc9a83bade278877ddd4e64f8c76439fbe Mon Sep 17 00:00:00 2001 From: sko00o Date: Thu, 5 Dec 2024 16:39:31 +0800 Subject: [PATCH] Fix the situation that requiresments.txt contains `~=` --- glob/manager_core.py | 8 ++++---- prestartup_script.py | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/glob/manager_core.py b/glob/manager_core.py index 9162ce46..2382bd57 100644 --- a/glob/manager_core.py +++ b/glob/manager_core.py @@ -131,7 +131,7 @@ def clear_pip_cache(): def is_blacklisted(name): name = name.strip() - pattern = r'([^<>!=]+)([<>!=]=?)([^ ]*)' + pattern = r'([^<>!~=]+)([<>!~=]=?)([^ ]*)' match = re.search(pattern, name) if match: @@ -146,7 +146,7 @@ def is_blacklisted(name): if match is None: if name in pips: return True - elif match.group(2) in ['<=', '==', '<']: + elif match.group(2) in ['<=', '==', '~=', '<']: if name in pips: if StrictVersion(pips[name]) >= StrictVersion(match.group(3)): return True @@ -160,7 +160,7 @@ def is_installed(name): if name.startswith('#'): return True - pattern = r'([^<>!=]+)([<>!=]=?)([0-9.a-zA-Z]*)' + pattern = r'([^<>!~=]+)([<>!~=]=?)([0-9.a-zA-Z]*)' match = re.search(pattern, name) if match: @@ -175,7 +175,7 @@ def is_installed(name): if match is None: if name in pips: return True - elif match.group(2) in ['<=', '==', '<']: + elif match.group(2) in ['<=', '==', '~=', '<']: if name in pips: if StrictVersion(pips[name]) >= StrictVersion(match.group(3)): print(f"[ComfyUI-Manager] skip black listed pip installation: '{name}'") diff --git a/prestartup_script.py b/prestartup_script.py index 8deb3a65..c8cbac88 100644 --- a/prestartup_script.py +++ b/prestartup_script.py @@ -394,7 +394,7 @@ def is_installed(name): if name.startswith('#'): return True - pattern = r'([^<>!=]+)([<>!=]=?)([0-9.a-zA-Z]*)' + pattern = r'([^<>!~=]+)([<>!~=]=?)([0-9.a-zA-Z]*)' match = re.search(pattern, name) if match: @@ -409,7 +409,7 @@ def is_installed(name): if match is None: if name in pips: return True - elif match.group(2) in ['<=', '==', '<']: + elif match.group(2) in ['<=', '==', '~=', '<']: if name in pips: if StrictVersion(pips[name]) >= StrictVersion(match.group(3)): print(f"[ComfyUI-Manager] skip black listed pip installation: '{name}'")