Changelog
All notable changes to ComfyUI Eclipse are documented in this file.
A quick note regarding the repackaging allegations: Eclipse does not contain a single repackaged node. Anyone who claims to have looked under the hood and found someone else's code is lying—and is only proving that they have no idea what they're talking about.
Entries follow conventional commit prefixes:
2026-07-16
Version: 4.1.25
Fix
VRAM purge: Turn the shared purge into a synchronized aggressive memory barrier that unloads ComfyUI-managed models before garbage collection, clears every accelerator cache afterward, and defers safely to ComfyUI without stopping the workflow if any purge stage cannot complete.
Version: 4.1.24
Fix
Image Comparer: Replace overflowing A/B batch labels with a responsive matching-pair navigator that stays clickable and clear of input/output slots in Vue and classic modes.
2026-07-15
Version: 4.1.23
Fix
Smart Detection: Convert normalized Qwen spatial coordinates to original-image pixels before filtering, mask, SEGS, preview, and data outputs so all detection results stay aligned.
Version: 4.1.22
Feat (New)
Indices to List: Convert comma- or newline-separated integer indices from an editable string widget into the
LISTformat used by IO Slice & Dice.WAN LipSync Timeline Planner and Plan Step: Build frame-exact InfiniteTalk extension tasks from manual clip-relative switch times or automatic equal spacing, optionally align targets to existing Wav2Vec2 activity gaps, and preserve accumulated-frame timing through transition-only conditioning copies.
Version: 4.1.21
Feat
Loop Image Selector: Pass a lone image source and existing loop context through unchanged, skipping redundant selection and transition blending when only
image_1or a one-frame image batch is provided.
2026-07-14
Version: 4.1.20
Fix
Image Convert: Match the V3
remove_alphainput keyword and stop installingpilgramduring node import; missing style-filter dependencies now fail only when a style is selected.Network and API security: Block image-download SSRF across DNS and redirects, enforce component-aware CivitAI paths, keep Hugging Face tokens write-only, and use safe LoRA deserialization.
Frontend lifecycle: Remove Load Image document listeners with their nodes and always unwind shared graph-to-prompt state after serialization failures.
Node colors: Apply Custom Title, Custom BG, and Custom All colors to every selected node, matching ComfyUI's native multi-selection behavior.
Perf
Bounded I/O: Stream image transfers within the 100 MB limit, reuse one timed Smart LM download response, and move CivitAI resolution/hash work and audio slicing to bounded worker tasks.
Version: 4.1.19
Fix
Color Match: Preserve sanitized target pixels for partial-strength blending and failure fallback while applying the Reinhard floor only to separate matcher inputs.
Image Resize: Clamp final image and mask outputs to
[0, 1]after interpolation so bicubic overshoot cannot destabilize downstream image processing.
2026-07-07/13
Version: 4.1.0 - 4.1.18
Feat (New)
Image Resolution Pipes: Added
Image Resolution PipeandImage Resolution Simple Pipenodes for passing custom resolution and batch settings through workflows.List/Batch Conversion: Added MatchType-based
To ListandTo Batchnodes for converting and consolidating list and batch inputs.Load Batch From Folder (Step Advanced): Added advanced resizing, sorting, paged
batch_indexexecution, automatic queue advancement, and source-file list output.IO Slice & Dice: Added direct index-based slicing for connected text, conditioning, latent, image, and list inputs, with the selected indices passed downstream.
Filter Prompt: Added tag, string, parenthesis, and wildcard-expression filtering while preserving the remaining prompt formatting.
Image Batch Extend With RIFE: Added an experimental gradient-MSE pyramid transition node with optional RIFE replacement of center frames and safe fallback behavior.
Feat
Convert Primitive / To List: Added recursive list and tuple flattening, element-wise scalar conversion, boolean numeric fallbacks, and newline/comma string splitting.
Image Selector: Added an
indicesoutput, an "All" action, stacked status controls, stable in-memory preview caching, and improved selection reset behavior.Routers and Passers: Added Generic MatchType and native list-wise execution across switches, conditionals, and pass-through nodes, including safe
[None]fallbacks.List/Batch Processing: Added native list and batch handling across image transforms, loaders, video nodes, tile nodes, batch operations, and text deduplication.
Save Prompt: Added list-wise execution and source-folder-anchored output paths while retaining containment for ordinary relative paths.
Smart LM: Added loader-template core-model deletion, newline-only Prompt Variations output, batch and WD14 progress reporting, title updates, and automatic WD14 layout resizing.
Workflow Utilities: Added multi-slot reordering menus to GetAllActive/GetFirst, batch-frame support to Tile Split, and explicit camera-angle guidance to vision prompts.
Fix
Tile Assembly: Corrected batch/list reconstruction in Tile Assembly and Tile Decode & Assembly with native list input/output handling.
Image Selector: Corrected one-image-per-row and fixed-column layouts, resize loops, nested batch extraction, stale selections, fingerprint instability, and preview flashing after discard/reset.
Folder Loaders: Added memory caches tied to file-list invalidation and restored clean titles after interrupted scanning, loading, or resizing.
WD14: Added persistent CPU fallback for CUDA/cuDNN failures so batch tagging does not repeatedly retry a failing GPU provider.
Save Prompt: Handled
Noneand empty text inputs and corrected%source_base_folderresolution when usingfilename_optwithout a pipe.IO Slice & Dice: Corrected recursive flattening, batch-size alignment, conditioning slicing, image/image-list cross-population, and mixed-size batch fitting.
List/Batch Output Protocol: Centralized list-wrapped outputs to prevent ComfyUI V3 from auto-slicing 4D tensors into invalid 3D downstream inputs; updated Image Resize accordingly.
Convert Primitive: Corrected multi-element tensor boolean conversion and added graceful fallbacks for conversion errors.
Smart LM and Migration: Restored clean node titles after interruption/errors and stopped manually deleted defaults from being recreated on startup.
Save Images: Added safe nested
filename_prefixfolders while keeping counters and workflow JSON beside the images and preventing output-path escape.Color Match: Prevented CPU Reinhard black frames by isolating and normalizing matcher inputs, sanitizing non-finite results, and falling back to the target frame.
Refactor
Centralized List/Batch Helpers: Added shared unwrapping, flattening, size fitting, batch detection, and output preparation utilities and adopted them across the node pack.
Type Handling: Modernized dynamic node types and list propagation around ComfyUI V3 MatchType.
Formatting: Reformatted the Python codebase with Black for consistent PEP 8 style.
Perf
Save Video: Encodes flattened frame views directly, defers resizing until encoding, avoids copying unchanged single batches, and evaluates loop candidates in bounded inference chunks.
Folder Loaders: Reads dimensions from headers, downsizes with PIL before tensor conversion, and reuses decoded images from memory caches.
Image Loaders: Returns native image/mask lists to avoid large contiguous RAM/VRAM allocations.
Chore
Moved superseded Convert To List, Convert To Batch, and Load Batch From Folder (Advanced) implementations into the legacy module.
Breaking
Smart LM Loader: Removed the
exclude_tagswidget and backend filter in favor of Filter Prompt, and movedseedbelowreplace_underscore.Image Selector: Replaced the legacy secondary list output with the
indicesoutput used by IO Slice & Dice.
Deprecated nodes:
Convert To List [Eclipse]
Convert To Batch [Eclipse]
Load Batch From Folder (Advanced) [Eclipse]
2026-07-06
Version: 4.0.0
Feat (New)
Show Any Stop [Eclipse]node (py/RvTools_ShowAnyStop.py) which acts as a text/data viewer with a socketless "Stop (Result Review)" review interruption toggle.Image Filter Adjustments Advanced [Eclipse] node (
py/RvImage_FilterAdjustmentsAdvanced.py) with Hue Shift, Temperature, Tint, Solarize, Vignette, Chromatic Aberration, and GPU-accelerated LUT (.cube) loading.Workflow Migration Tool [Eclipse] node (
py/RvTools_WorkflowMigration.py) supporting workflow JSON scanning, validation, and in-place upgrade of legacy [Eclipse] and [RvTools] nodes.standalone
Preview Image (DOM) [Stop](py/RvImage_PreviewDom_Stop.py) andShow Text [Stop](py/RvTools_ShowText_Stop.py) nodes with socketless active/bypass stop toggles to halt execution for manual review.
Feat
refactored
Show Any [Eclipse]node (py/RvTools_ShowAny.py) to act as a simple text/data viewer (matchingShow Any Stopbut without the stop review button).added legacy // RvTools node naming support to the workflow migration systems, splitting mappings into v1 and v2 files, and adding explicit legacy mappings.
added standalone command-line Python script
tools/migrate_workflow.pyfor headless workflow JSON folder/file migration.added interactive large preview overlay to Image Selector with cycling, Space/S/Enter selection toggles, and viewport focus sync.
added grid layout modes, toolbar status layout, preview mode combo dropdown, and double-click high-resolution zoom gesture to Image Selector.
structured Image Selector preview outputs in uid-specific temp folders with automatic cleanup to prevent filesystem bloat.
added native list-of-images and list-of-masks input support to various nodes (Resize, Rescale, Soften, Filter Adjustments, Inset & Crop, Color Match, Upscale, Save, Smart Model Loader, Batch Slice/Strip/Interleave).
added progress bar support (
comfy.utils.ProgressBar) inside the workflow migration execute loops.added floating close button in DOM Preview single image mode to return to grid layout.
updated repository reset scripts under
scripts/to include safety confirmation prompts and preserveconfig.jsonoption.
Fix
resolved a PIL data type
TypeError: Cannot handle this data type: (1, 1, 832, 3)inPreview Image (DOM)(RvImage_PreviewDom.py) by implementing robust list/batch flattening and squeezing logic.updated
Save Images [Eclipse](RvImage_Save.py) to declareis_input_list=Trueandis_output_list=Trueon outputs, wrapping single output elements into lists to resolve downstream list compatibility issues.resolved a list nesting bug in
Save Images [Eclipse](RvImage_Save.py) where returning single-element lists wrapped the output tensor in a nested list[[tensor]], causing downstream SaveImage nodes to fail.resolved execution crashes and schema mapping issues for list connections on Image Selector, Image Comparer, Save Images, Mask to SEGS, and the Stop node.
resolved a frontend configuration bug in Seed node where clicking "New Fixed Random" or randomizing generated a 64-bit seed value when in 32-bit mode.
resolved image display inside Image Selector's One Image per Row mode to calculate dynamic cell heights based on natural aspect ratios.
Docs
added descriptive parameter tooltips with recommended values for advanced photographic parameters to ensure ease of use.
Chore
completely removed all hardcoded static fallback node name mappings from the Python codebase, relying fully on loading external configuration files.
renamed
RvImage_Preview_MasktoRvMask_Previewand moved it under a new Mask node category.reorganized all
RvImage_nodes into Loaders, Save & Preview, Batch Operations, Transforms, and FX & Color subcategory menus.renamed video nodes starting with
RvImage_to start withRvVideo_.complete removal of all deprecated legacy nodes, legacy files, and registry imports for the v4.0.0 cleanup.
Breaking
removed all deprecated legacy nodes, breaking older saved workflows using legacy nodes.
removed compatibility configurations and output connection checks for the rgthree-comfy node pack.
combined Seed and Seed 32-bit nodes into one using a bit_depth combo selector (defaulting to 64-bit).
removed Lora Stack to String node from the codebase.
removed VRAM CleanUp custom node and JS helper.
removed old v21 and v22 Pipe IO Sampler Settings nodes, renamed v23 to Pipe IO Sampler Settings, and removed
prompt_seed,upscale_steps, andupscale_denoiseoptions.removed deprecated Pipe Out VC Name Generator node.
removed Sampler Selection and Custom Size nodes.
removed RAM Cleanup node.
removed version tag suffixes from active node IDs: Smart Model Loader v2 [Eclipse] -> Smart Model Loader [Eclipse], IO Checkpoint Loader v2 [Eclipse] -> IO Checkpoint Loader [Eclipse], Smart Folder v2 [Eclipse] -> Smart Folder [Eclipse], and Save Images v2 [Eclipse] -> Save Images [Eclipse].
2026-07-02
Version: 3.7.28
feat: renamed text conditioning zero out node to RvCond_ConditioningZeroOut and expanded model token mappings to support SD20, SDXLRefiner, HunyuanDiT, GenmoMochi, Cosmos, and CogVideoX.
feat: renamed KSampler (Pipe Data) to KSampler (Kargim), outputting a merged pipe context alongside individual pass-through slots, resolving parameters with custom widget overwrite and external link priorities.
chore: deprecated and moved Basic Pipe, From Basic Pipe, and To Basic Pipe nodes into the legacy module under the Deprecated category.
chore: deleted standard non-pipe KSampler node and cleaned up all backend/frontend references
See the full changelog here

