diff --git a/__init__.py b/__init__.py index 544a30e0..56a731ab 100644 --- a/__init__.py +++ b/__init__.py @@ -28,7 +28,7 @@ except: print(f"[WARN] ComfyUI-Manager: Your ComfyUI version is outdated. Please update to the latest version.") -version = [2, 2, 3] +version = [2, 2, 5] version_str = f"V{version[0]}.{version[1]}" + (f'.{version[2]}' if len(version) > 2 else '') print(f"### Loading: ComfyUI-Manager ({version_str})") @@ -102,7 +102,7 @@ sys.path.append('../..') from torchvision.datasets.utils import download_url -comfy_ui_required_revision = 1240 +comfy_ui_required_revision = 1917 comfy_ui_revision = "Unknown" comfy_ui_commit_date = "" @@ -354,9 +354,9 @@ def __win_check_git_update(path, do_fetch=False, do_update=False): output = output.decode('utf-8').strip() if 'detected dubious' in output: + # fix and try again + safedir_path = path.replace('\\', '/') try: - # fix and try again - safedir_path = path.replace('\\', '/') print(f"[ComfyUI-Manager] Try fixing 'dubious repository' error on '{safedir_path}' repo") process = subprocess.Popen(['git', 'config', '--global', '--add', 'safe.directory', safedir_path], stdout=subprocess.PIPE, stderr=subprocess.PIPE) output, _ = process.communicate() @@ -892,7 +892,7 @@ async def fetch_customnode_list(request): except Exception: return False else: - False + return False json_obj['custom_nodes'] = [record for record in json_obj['custom_nodes'] if not is_ignored_notice(record.get('author'))] @@ -1833,7 +1833,7 @@ async def get_notice(request): markdown_content += f"
Manager: {version_str}" try: - if required_comfyui_revision > int(comfy_ui_revision): + if comfy_ui_required_revision > int(comfy_ui_revision): markdown_content = f'

Your ComfyUI is too OUTDATED!!!

' + markdown_content except: pass @@ -2146,6 +2146,7 @@ async def share_art(request): # get the mime type of the asset assetFileType = mimetypes.guess_type(asset_filepath)[0] + share_website_host = "UNKNOWN" if "comfyworkflows" in share_destinations: share_website_host = "https://comfyworkflows.com" share_endpoint = f"{share_website_host}/api" diff --git a/js/components-manager.js b/js/components-manager.js index e5026711..248a74d2 100644 --- a/js/components-manager.js +++ b/js/components-manager.js @@ -86,9 +86,8 @@ export async function load_components() { await config.registerType(category); register_pack_map(name, data); - break; + continue; } - continue; } let nodeData = components[name]; @@ -198,7 +197,7 @@ export async function load_components() { } } -async function save_as_component(node, version, prefix, nodename, packname, category) { +async function save_as_component(node, version, author, prefix, nodename, packname, category) { let component_name = `${prefix}::${nodename}`; let subgraph = app.graph.extra?.groupNodes?.[component_name]; @@ -207,6 +206,7 @@ async function save_as_component(node, version, prefix, nodename, packname, cate } subgraph.version = version; + subgraph.author = author; subgraph.datetime = Date.now(); subgraph.packname = packname; subgraph.category = category; @@ -455,7 +455,7 @@ export class ComponentBuilderDialog extends ComfyDialog { this.element.style.display = "block"; this.element.style.zIndex = 10001; this.element.style.width = "500px"; - this.element.style.height = "450px"; + this.element.style.height = "480px"; } invalidateControl() { @@ -467,7 +467,7 @@ export class ComponentBuilderDialog extends ComfyDialog { this.save_button = $el("button", { id: "cm-save-button", type: "button", textContent: "Save", onclick: () => { - save_as_component(self.target_node, self.version_string.value.trim(), self.node_prefix.value.trim(), + save_as_component(self.target_node, self.version_string.value.trim(), self.author.value.trim(), self.node_prefix.value.trim(), self.getNodeName(), self.getPackName(), self.category.value.trim()); } }); @@ -476,7 +476,6 @@ export class ComponentBuilderDialog extends ComfyDialog { let groupNode = app.graph.extra.groupNodes[default_nodename]; let default_packname = groupNode.packname; - if(!default_packname) { default_packname = ''; } @@ -491,6 +490,11 @@ export class ComponentBuilderDialog extends ComfyDialog { this.default_ver = '0.0'; } + let default_author = groupNode.author; + if(!default_author) { + default_author = ''; + } + let delimiterIndex = default_nodename.indexOf('::'); let default_prefix = ""; if(delimiterIndex != -1) { @@ -508,6 +512,9 @@ export class ComponentBuilderDialog extends ComfyDialog { this.version_string = version_string[1]; this.version_string.disabled = true; + let author = this.createLabeledInput('input author (e.g. Dr.Lt.Data)', 'Author : ', default_author); + this.author = author[1]; + let node_prefix = this.createLabeledInput('input node prefix (e.g. mypack)', '*Prefix : ', default_prefix); this.node_prefix = node_prefix[1]; @@ -537,6 +544,7 @@ export class ComponentBuilderDialog extends ComfyDialog { author_mode[0], author_mode[1], category[0], + author[0], node_prefix[0], manual_nodename[0], manual_packname[0],