- Adding the output paths now correctly registers a relative path,
i.e., outputs/loras and models/lorals will now be searched on all
your base paths
- Adding absolute paths with models/ works better
- All the base paths and directories are queried better
- Validation errors that occur early in the lifecycle of prompt
execution now get propagated to their callers in the
EmbeddedComfyClient. This includes error messages about missing node
classes.
- The execution context now includes the node_id and the prompt_id
- Latent previews are now sent with a node_id. This is not backwards
compatible with old frontends.
- Dependency execution errors are now modeled correctly.
- Distributed progress encodes image previews with node and prompt IDs.
- Typing for models
- The frontend was updated to use node IDs with previews
- Improvements to torch.compile experiments
- Some controlnet_aux nodes were upstreamed
- move workflows to distinct json files
- add the comfy-org workflows for testing
- fix issues where workflows from windows users would not be compatible
with backends running on linux or macos in light of separator
differences. Because this codebase uses get_or_download wherever
checkpoints, models, etc. are used, this is the only place where the
comparison is gracefully handled for downloading. Validation code
will correctly convert backslashes to forward slashes, assuming that
100% of the places they are used and when comparing with a list, they
are intended to be paths and not strict symbols
- huggingface cache is now better used on platforms that support
symlinking and the files you are requesting already exist in the
cache
- absolute imports were changed to relative in the correct places
- StringEnumRequestParameter has a special case in validation
- fix model_management whitespace issue
- fix comfy.ops references
- Tests now perform faster
- Tests will run on supported GPU platforms
- Configuration has known issues related to setting up a working
directory for an embedded client
- Introduce a Skeletonize node that solves many problems with Canny
- Improve behavior of exception reporting
- ComfyUI can now load EXR files.
- There are new arithmetic nodes for floats and integers.
- EXR nodes can load depth maps and be remapped with
ImageApplyColormap. This allows end users to use ground truth depth
data from video game engines or 3D graphics tools and recolor it to
the format expected by depth ControlNets: grayscale inverse depth
maps and "inferno" colored inverse depth maps.
- Fixed license notes.
- Added an additional known ControlNet model.
- Because CV2 is now used to read OpenEXR files, an environment
variable must be set early on in the application, before CV2 is
imported. This file, main_pre, is now imported early on in more
places.
- Removed /api/v1/images because you should use your own CDN style
image host and /view for maximum compatibility
- The /api/v1/prompts POST application/json response will now return
the outputs dictionary
- Caching has been removed
- More tests
- Subdirectory prefixes are now supported
- Fixed an issue where a Linux frontend and Windows backend would have
paths that could not interact with each other correctly
- Improve node loading order. It now occurs "as late as possible".
Configuration should be exposed as per the README.
- Added methods to specify custom folders and models used in examples
more robustly for custom nodes.
- Downloading models can now be gracefully interrupted.
- Progress notifications are now sent over the network for distributed
ComfyUI operations.
- Python objects have been moved around to prevent less transitive
package importing issues.