From 2808e0a4377eb75085ec81035fbe9c9199600e50 Mon Sep 17 00:00:00 2001 From: Comfy Org PR Bot Date: Tue, 14 Oct 2025 11:15:14 +0900 Subject: [PATCH] 1.29.2 (#6045) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What's Changed ### πŸš€ Features - Add MediaAssetCard presentation components (#5878) - Make Vue nodes' outputs/previews responsively sized and work with node resizing (#5970) - Allow connection to subgraphIOs in vue mode (#6016) - Add distribution detection pattern (#6028) - Make nodeData.widgets reactive (#6019) ### πŸ› Bug Fixes - Fix FLOAT widget incrementing broken & disabled state styles on widget number input (Vue) (#6036) - Fix Vue node border styles in different states (executing, error, selected) (#6018) - Fix Vue node opacity conditions (user node opacity, bypass state, muted state) (#6022) - Fix: emit layout change for batch node bounds (#5939) - Safer restoration of widgets_values on subgraph nodes (#6015) - Fix(execution): reset progress state after runs to unfreeze tab title/favicon (main) (#6026) - Use type check instead of cast (#6041) ### 🎨 Style & Design - [style] match widget border/outline styles with designs (#6021) - [style] make Vue widget/slot/label width and spacing align with designs (#6023) ### β™Ώ Accessibility - Add aria labels on vue node widgets (#6032) ### πŸ”§ Maintenance - [refactor] adjust Vue node fixtures to not be coupled to Litegraph (#6033) - [refactor] reorganize devtools test nodes into modules (#6020) ### πŸ§ͺ Testing - [test] add browser test for control+a selection of Vue nodes (#6031) ### πŸ”„ CI/CD - [ci] fix update locales workflow (#6017) **Full Changelog**: https://github.com/Comfy-Org/ComfyUI_frontend/compare/v1.29.1...v1.29.2 ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-6045-1-29-2-28c6d73d3650817a8c36fba944ce69a8) by [Unito](https://www.unito.io) --------- Co-authored-by: arjansingh <1598641+arjansingh@users.noreply.github.com> Co-authored-by: github-actions --- package.json | 2 +- src/locales/en/nodeDefs.json | 206 +++++++++++++++++++++++++++++++++-- 2 files changed, 199 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 9076140c5..0fca0e59e 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@comfyorg/comfyui-frontend", "private": true, - "version": "1.29.1", + "version": "1.29.2", "type": "module", "repository": "https://github.com/Comfy-Org/ComfyUI_frontend", "homepage": "https://comfy.org", diff --git a/src/locales/en/nodeDefs.json b/src/locales/en/nodeDefs.json index a3e2da72f..87780e516 100644 --- a/src/locales/en/nodeDefs.json +++ b/src/locales/en/nodeDefs.json @@ -832,6 +832,11 @@ "guidance": { "name": "guidance" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "CLIPTextEncodeHiDream": { @@ -871,6 +876,11 @@ "mt5xl": { "name": "mt5xl" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "CLIPTextEncodeLumina2": { @@ -937,6 +947,11 @@ "empty_padding": { "name": "empty_padding" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "CLIPTextEncodeSDXL": { @@ -1475,10 +1490,12 @@ }, "outputs": { "0": { - "name": "positive" + "name": "positive", + "tooltip": null }, "1": { - "name": "negative" + "name": "negative", + "tooltip": null } } }, @@ -1974,6 +1991,11 @@ "batch_size": { "name": "batch_size" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "EmptyHunyuanLatentVideo": { @@ -1991,6 +2013,11 @@ "batch_size": { "name": "batch_size" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "EmptyImage": { @@ -2113,6 +2140,11 @@ "batch_size": { "name": "batch_size" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "Epsilon Scaling": { @@ -2200,6 +2232,11 @@ "conditioning": { "name": "conditioning" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "FluxGuidance": { @@ -2211,6 +2248,11 @@ "guidance": { "name": "guidance" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "FluxKontextImageScale": { @@ -2220,6 +2262,11 @@ "image": { "name": "image" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "FluxKontextMaxImageNode": { @@ -2272,6 +2319,11 @@ "reference_latents_method": { "name": "reference_latents_method" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "FluxKontextProImageNode": { @@ -2629,6 +2681,10 @@ "name": "files", "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." }, + "aspect_ratio": { + "name": "aspect_ratio", + "tooltip": "Defaults to matching the output image size to that of your input image, or otherwise generates 1:1 squares." + }, "control_after_generate": { "name": "control after generate" } @@ -2870,10 +2926,12 @@ }, "outputs": { "0": { - "name": "positive" + "name": "positive", + "tooltip": null }, "1": { - "name": "latent" + "name": "latent", + "tooltip": null } } }, @@ -2895,13 +2953,16 @@ }, "outputs": { "0": { - "name": "positive" + "name": "positive", + "tooltip": null }, "1": { - "name": "negative" + "name": "negative", + "tooltip": null }, "2": { - "name": "latent" + "name": "latent", + "tooltip": null } } }, @@ -3478,6 +3539,11 @@ "image": { "name": "image" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "ImageYUVToRGB": { @@ -3582,6 +3648,11 @@ "alpha": { "name": "alpha" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "KarrasScheduler": { @@ -4209,6 +4280,11 @@ "samples2": { "name": "samples2" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentApplyOperation": { @@ -4220,6 +4296,11 @@ "operation": { "name": "operation" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentApplyOperationCFG": { @@ -4231,6 +4312,11 @@ "operation": { "name": "operation" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentBatch": { @@ -4242,6 +4328,11 @@ "samples2": { "name": "samples2" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentBatchSeedBehavior": { @@ -4253,6 +4344,11 @@ "seed_behavior": { "name": "seed_behavior" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentBlend": { @@ -4324,6 +4420,11 @@ "dim": { "name": "dim" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentCrop": { @@ -4361,6 +4462,11 @@ "amount": { "name": "amount" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentFlip": { @@ -4400,6 +4506,11 @@ "ratio": { "name": "ratio" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentMultiply": { @@ -4411,6 +4522,11 @@ "multiplier": { "name": "multiplier" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentOperationSharpen": { @@ -4425,6 +4541,11 @@ "alpha": { "name": "alpha" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentOperationTonemapReinhard": { @@ -4433,6 +4554,11 @@ "multiplier": { "name": "multiplier" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentRotate": { @@ -4455,6 +4581,11 @@ "samples2": { "name": "samples2" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "LatentUpscale": { @@ -7701,6 +7832,10 @@ "name": "video", "tooltip": "The reference video used to generate the output video. Must be at least 5 seconds long. Videos longer than 5s will be automatically trimmed. Only MP4 format supported." }, + "steps": { + "name": "steps", + "tooltip": "Number of inference steps" + }, "control_type": { "name": "control_type" }, @@ -8106,6 +8241,11 @@ "upscale_method": { "name": "upscale_method" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "PerpNeg": { @@ -8407,7 +8547,7 @@ }, "mask": { "name": "mask", - "tooltip": "Use the mask to define areas in the video to replace" + "tooltip": "Use the mask to define areas in the video to replace." }, "prompt_text": { "name": "prompt_text" @@ -8418,6 +8558,10 @@ "seed": { "name": "seed" }, + "region_to_modify": { + "name": "region_to_modify", + "tooltip": "Plaintext description of the object / region to modify." + }, "control_after_generate": { "name": "control after generate" } @@ -8635,6 +8779,14 @@ "mode": { "name": "mode" } + }, + "outputs": { + "0": { + "tooltip": null + }, + "1": { + "tooltip": null + } } }, "Preview3D": { @@ -10248,6 +10400,11 @@ "rescaling_scale": { "name": "rescaling_scale" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "SkipLayerGuidanceDiTSimple": { @@ -10269,6 +10426,11 @@ "end_percent": { "name": "end_percent" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "SkipLayerGuidanceSD3": { @@ -10290,6 +10452,11 @@ "end_percent": { "name": "end_percent" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "SolidMask": { @@ -10329,6 +10496,14 @@ "image": { "name": "image" } + }, + "outputs": { + "0": { + "tooltip": null + }, + "1": { + "tooltip": null + } } }, "SplitSigmas": { @@ -11152,6 +11327,11 @@ "name": "image_interleave", "tooltip": "How much the image influences things vs the text prompt. Higher number means more influence from the text prompt." } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "TextEncodeQwenImageEdit": { @@ -11379,6 +11559,11 @@ "clip_name3": { "name": "clip_name3" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "TripoConversionNode": { @@ -11760,6 +11945,11 @@ "model_name": { "name": "model_name" } + }, + "outputs": { + "0": { + "tooltip": null + } } }, "USOStyleReference": {