What's Changed
- Read audio and video at the same time in video loader node. by @comfyanonymous in #13591
- fix: Handle un-inited meta-tensors in models (fixes a CPU TE crash) (CORE-67) by @rattus128 in #13578
- ci: dispatch tag push to Comfy Cloud by @MillerMedia in #13541
- Change the
save 3d modelnode's filename prefix to3d/ComfyUI(CORE-106) by @comfyui-wiki in #12826 - Fix SolidMask and MaskComposite device mismatch with --gpu-only (CORE-98) by @gschreiber in #13296
- Handle metadata rotation in pyav code. by @comfyanonymous in #13605
- comfy-aimdo v0.3.0 by @rattus128 in #13604
- Make pyav loading code handle tRNS PNG. by @comfyanonymous in #13607
- Use pyav to load images instead of pillow (CORE-95) by @comfyanonymous in #13594
- dynamicVRAM + --cache-ram 2 (CORE-117) by @rattus128 in #13603
- Reduce video tiny VAE peak VRAM and decode time (CORE-127) by @kijai in #13617
- Cogvideox by @Talmaj in #13402
- Add high quality preview support for Flux2 latents by @blepping in #13496
- Lower peak mem usage for 8 bit formats with pyav. by @comfyanonymous in #13626
- Fix SQLAlchemy version format in requirements.txt (CORE-105) by @Kosinkadink in #13547
- [Partner Nodes] allow custom resolutions for GPTImage2 node by @bigcat88 in #13631
- [Partner Nodes] ByteDance: virtual portrait library for regular images by @bigcat88 in #13638
- Load other jpeg formats without taking so much memory. by @comfyanonymous in #13642
- OneTrainer ERNIE LoRA support by @prookyon in #13640
- Update workflow templates to v0.9.65 by @comfyui-wiki in #13644
- Add alexisrolland and rattus128 as code owners by @Kosinkadink in #13648
- [Partner Nodes] always display the custom width and height in GPTImage2 by @bigcat88 in #13651
- Reformat models variable into multiline array (CORE-59) by @Talmaj in #13513
- chore(api-nodes): remove Moonvalley API nodes by @bigcat88 in #13659
- Update workflow templates to v0.9.66 by @comfyui-wiki in #13662
- chore(api-nodes): increase default timeout for partner API node tasks by @bigcat88 in #13663
- Remove IPEX (Intel Extension for Pytorch) support. by @simonlui in #13653
- SDPose: resize fix (CORE-146) by @kijai in #13656
- Adding kijai to codeowners by @alexisrolland in #13664
- List all the portable downloads in the README section. by @comfyanonymous in #13666
- Add script in AMD portable to launch with dynamic vram. by @comfyanonymous in #13667
- Implement block prefetch + Lora Async load + and adopt in LTX (Speedup!) (CORE-111) by @rattus128 in #13618
- Some cleanups to the load image node (CORE-145) by @comfyanonymous in #13677
- Update workflow templates to v0.9.68 by @comfyui-wiki in #13678
- [Partner Nodes] Topaz Astra 2 model by @bigcat88 in #13672
- feat: Gemma4 text generation support (CORE-30) by @kijai in #13376
- Update README (CORE-144) by @alexisrolland in #13679
- fix: Make ImageBlend and ImageCompositeMasked nodes handle images with different channel counts (CORE-103) by @alexisrolland in #13615
- Update ComfyUI screenshot in README (CORE-144) by @alexisrolland in #13683
- fix: gracefully handle port-in-use error on server startup by @luke-mino-altherr in #13001
- Batch broadcasting in JoinImageWithAlpha node (CORE-143) by @kijai in #13686
- Enable triton comfy kitchen via cli-arg by @silveroxides in #12730
- Refactor LoadImageMask to use LoadImage code (CORE-142) by @comfyanonymous in #13687
- PrimitiveInt: default control_after_generate widget to fixed (CORE-141) by @Kosinkadink in #13690
- fix: Make ColorTransfer node ref_image mandatory (CORE-140) by @alexisrolland in #13691
- Fix a1111 typo in extra_model_paths.yaml by @soof-golan in #2720
- fix: Proper memory estimation for frame interpolation (CORE-150) by @kijai in #13698
- prefetch: guard against no offload (CORE-149) by @rattus128 in #13703
- make control-net load order deterministic (CORE-139) by @rattus128 in #13701
- ops: handle multi-compute of the same weight (CORE-153) by @rattus128 in #13705
- chore: Update display names and categories (CORE-151) by @alexisrolland in #13693
- fix(spec): mark DeviceStats.index and NodeInfo.essentials_category as nullable by @MillerMedia in #13706
- spec: add workflow_id / workflow_version_id to PromptRequest with x-runtime tag by @MillerMedia in #13709
- feat: add generic --feature-flag CLI arg and --list-feature-flags registry by @Kosinkadink in #13685
- Add deploy environment header (Comfy-Env) to partner node API calls by @Kosinkadink in #13425
- Document core stable release frequency is now ~2 weeks. by @comfyanonymous in #13710
- feat: Auto-regressive video generation (CORE-25) by @Talmaj in #13082
- fix: SplitImageToTileList and ImageMergeTileList to use tile_height for vertical stride minimum by @alvinttang in #12882
- [Partner Nodes] add Luma UNI-1 model by @bigcat88 in #13614
- [Partner Nodes] add Gpt 5.5 and 5.5-pro LLM models by @bigcat88 in #13673
- Update workflow templates to v0.9.69 by @comfyui-wiki in #13714
- chore: Update display names and categories for text nodes (CORE-155) by @alexisrolland in #13712
- Fix Content-Disposition header missing attachment prefix by @themachinehf in #13093
- fix: make VAEDecodeAudio usable for LTX-2.x generated audio latents (CORE-157) by @drozbay in #13716
- Add Spectral lint CI gate for openapi.yaml by @MillerMedia in #13410
- fix(api-io): serialize MultiCombo multi_select as object config by @Kosinkadink in #13484
- feat: add cloud-specific fields to OSS openapi.yaml as nullable by @MillerMedia in #13623
- Add temporal_downscale_ratio to LatentFormat (CORE-147) by @drozbay in #13702
- feat: Context windows - add causal_window_fix to improve blending of context windows (CORE-100) by @drozbay in #13563
- First step of supporting save filenames without trailing _ by @comfyanonymous in #13722
- Update language options in nodes_ace.py by @iChristGit in #12578
- fix: return millisecond timestamps from get_file_info() by @luke-mino-altherr in #12996
- Void model - pass 1 & 2 (CORE-38) by @Talmaj in #13403
- Bump comfyui-frontend-package to 1.43.17 by @comfy-pr-bot in #13723
- Revert "Fix Content-Disposition header missing 'attachment;' prefix (#13093)" by @guill in #13733
- Throttle dynamic VRAM prepare logging by @kijai in #13704
- Add .comfy_environment to portable. by @comfyanonymous in #13746
- [Partner Nodes] add grok-imagine-image-quality model by @bigcat88 in #13725
- Update workflow templates to v0.9.72 by @comfyui-wiki in #13732
- [Partner Nodes] fix of price badge for Kling V3 model in the Motion Control by @bigcat88 in #13790
- [Partner Nodes] new NanoBanana2 node with DynamicCombo/Autogrow by @bigcat88 in #13753
- Improve SAM3 large input handling (CORE-174) by @kijai in #13767
- I2V for causal forcing model (CORE-26) by @Talmaj in #13719
- Update warning message for ComfyUI frontend installation. by @comfyanonymous in #13796
- fix: make NodeReplaceManager.register() idempotent (CORE-171) by @Kosinkadink in #13596
- Update nodes categories and display names (CORE-89) by @alexisrolland in #13786
- [Partner Nodes] use "adaptive" aspect ratio for SD2 nodes by @bigcat88 in #13800
- Fix typos by @omahs in #10986
- Add support for BiRefNet background remove model (CORE-46) by @yousef-rafat in #12747
- fix: Make LTXVAddGuide center-crop guide images to match other LTXV nodes (CORE-182) by @drozbay in #13794
- fix: Stop LTXVImgToVideoInplace from mutating input latents and dropping noise_mask (CORE-183) by @drozbay in #13793
- fix: Fix bug when mask not on same device (CORE-181) by @alexisrolland in #13801
- Add cloud-runtime FE-facing operations to spec by @MillerMedia in #13734
- [Partner Nodes] additionally use Baidu to detect the accessibility of internet by @bigcat88 in #13803
- I don't think there was any because nobody complained. by @comfyanonymous in #13807
- Add cloud-runtime experiment node-schema endpoints to spec by @MillerMedia in #13806
- Add description field to blueprint subgraphs by @lin-bot23 in #13797
- [Partner Nodes] Tripo3D 3.1 model by @bigcat88 in #13788
- Bump comfyui-frontend-package to 1.43.18 by @comfy-pr-bot in #13809
- Support Wan-Dancer by @kijai in #13813
- Use LatentCutToBatch instead. by @comfyanonymous in #13815
- Add Boolean support to Math Expression Node by @LaVie024 in #13224
- Update workflow templates to v0.9.73 by @comfyui-wiki in #13822
- Remove advanced flag from layers input in EmptyQwenImageLayeredLatent node by @comfyui-wiki in #13823
- Add New Blueprints by @comfyui-wiki in #13570
- chore: remove extra word in comment by @box4wangjing in #13826
New Contributors
- @gschreiber made their first contribution in #13296
- @prookyon made their first contribution in #13640
- @soof-golan made their first contribution in #2720
- @alvinttang made their first contribution in #12882
- @themachinehf made their first contribution in #13093
- @iChristGit made their first contribution in #12578
- @omahs made their first contribution in #10986
- @lin-bot23 made their first contribution in #13797
- @box4wangjing made their first contribution in #13826
Full Changelog: v0.20.1...v0.21.0