Commit Graph

5610 Commits

Author SHA1 Message Date
comfyanonymous 5fcf7a4a0f
Always enable cuda malloc on cu130 and higher. (#14381) 2026-06-09 21:39:24 -04:00
Talmaj 5ece24e73c
Depth anything 3 (Core-135) (#13853)
Co-authored-by: Alexis Rolland <alexisrolland@hotmail.com>
2026-06-10 09:28:24 +08:00
Jukka Seppänen f8e51b674c
feat: Add Bernini-R model support (Wan video) (CORE-279) (#14216) 2026-06-10 07:47:34 +08:00
Kohaku-Blueleaf ad564899d3
Ensure conditions are not trainable to avoid bugs (#14368) 2026-06-09 15:55:29 -04:00
rattus 6f01b244a2
mm: dont reset cast buffers in cleanup_models_gc() (#14372)
cleanup_models_gc can be called once per load_models_gpu via
free_memory, which in turn can de-activate an active model via
this reset_cast_buffers.

cleanup_models_gc() could also come via obscure garbage collector
paths so limit reset_cast_buffers to the post-node callsite instead.
2026-06-09 13:57:04 -04:00
Alexis Rolland 9fc6f5f6dd
Move bg_removal_model input socket to first position for nicer display (#14353) 2026-06-09 23:36:56 +08:00
Jukka Seppänen 184009c2f6
feat: Add model support for SCAIL-2 (#14373)
* initial SCAIL2 support
2026-06-09 18:24:09 +03:00
kelseyee 07c53f8f0f
Add LoRA key mapping for LTXV/LTXAV models (#14349) 2026-06-09 09:57:58 -04:00
rattus 1639dc7a70
main/server: Add --debug-hang (#14371)
Add an option to debug a hang with ctrl-C, dumping the backtraces to
see where its stuck or slow.
2026-06-09 09:55:00 -04:00
Jukka Seppänen 8ed7f458d0
Allow custom templates with Ideogram4 TE (#14374) 2026-06-09 21:11:05 +08:00
Alexis Rolland f89999289a
fix: Add back apply_rotary_emb for Qwen Image (#14364) 2026-06-09 11:55:49 +08:00
Comfy Org PR Bot cb9f639416
chore(openapi): sync shared API contract from cloud@5273c30 (#14266) 2026-06-09 11:19:13 +08:00
comfyanonymous 00b633f368
Revert "Add SeedVR2 support (CORE-6) (#14110)" (#14359)
This reverts commit 7863cf0e53.
2026-06-08 18:00:20 -04:00
Matt Miller a0a055bc4e
feat(assets): extract image dimensions at ingest and emit on asset responses (#13991)
* feat(assets): extract image dimensions at ingest and emit on asset responses

Image assets now carry width/height under the existing `metadata` field on
asset responses, shaped as `{"kind": "image", "width": W, "height": H}`.
This lets consumers get original dimensions (e.g. for clients that render
server-side thumbnails and can't recover them from naturalWidth/Height)
without an extra round-trip.

Dimensions are written to AssetReference.system_metadata across three
ingest paths:

- Direct file ingest (upload, in-place registration): Pillow reads the
  image header right after hashing, while the file is still in OS page
  cache. Non-image MIME types are skipped without touching the file.
- From-hash registration: this path never reads the file bytes, so
  dimensions are best-effort copied from any prior sibling reference of
  the same asset that already carries kind=image metadata. Missing
  siblings, non-image siblings, or absent dimension keys leave the new
  reference's metadata unchanged.
- Scanner enrichment: extends the existing system_metadata write in
  enrich_asset so scanner-registered images get the same treatment as
  uploaded ones.

Existing system_metadata keys (e.g. safetensors fields written by the
enricher, download provenance) are preserved through merge. Existing
assets ingested before this change retain their current metadata — no
automatic backfill in this PR.

Tests cover image emission, non-image no-op, merge preservation, and the
from-hash sibling back-fill (including the no-sibling and non-image-sibling
cases).

* fix(assets): validate sibling dimensions before backfilling

Per CodeRabbit review on #13991: the previous loop accepted any sibling
with `kind == "image"` and copied whichever dimension keys happened to
be present, then returned. A partial sibling (kind set but missing or
invalid width/height) could persist incomplete metadata onto the new
reference even when a later sibling had valid dimensions.

Now we validate that the sibling has both width and height as positive
integers before adopting its dimensions, and continue scanning to the
next sibling otherwise.

* fix(assets): reject booleans in sibling dimension validation (use type-is)

Per CodeRabbit follow-up on #13991: bool is a subclass of int in Python,
so isinstance(True, int) is True. The previous strict-int gate would
have accepted width=True (truthy + > 0) as a valid dimension.
Realistic occurrence is low (extract_image_dimensions returns proper
ints, JSON doesn't serialize bools as numbers), but the validation gate
exists for defense-in-depth so it should be actually strict.

---------

Co-authored-by: guill <jacob.e.segal@gmail.com>
2026-06-08 14:27:50 -07:00
Silver a1c434eb65
Improve ResolutionSelector (#14309) 2026-06-09 01:05:10 +08:00
Jukka Seppänen fc258b10e5
Add Color primitive (#14260) 2026-06-09 00:30:28 +08:00
Daxiong (Lin) 38f750d80e
chore: update embedded docs to v0.5.3 (#14350) 2026-06-08 22:58:52 +08:00
John Pollock 7863cf0e53
Add SeedVR2 support (CORE-6) (#14110) 2026-06-08 18:15:05 +08:00
comfyanonymous 739061dd4c
Use windows line endings for windows portable readmes. (#14334) 2026-06-07 23:56:53 -04:00
comfyanonymous 2cdaaf4a25
Update line endings check to ignore .ci files. (#14319) 2026-06-06 19:33:03 -07:00
Terry Jia ea36cb16d6
feat(3d): reorder Preview3DAdvanced / PreviewGaussianSplat / PreviewPointCloud inputs and outputs (#14308) 2026-06-05 19:01:57 -07:00
Terry Jia a65a5464c7
BE-1172 fix(3d): save Preview3DAdvanced / PreviewGaussianSplat / PreviewPointCloud to temp/, rename viewport input (#14294) 2026-06-05 14:18:41 -07:00
comfyanonymous 986ce5b4f0
Update AMD portable readme. (#14303) 2026-06-05 12:41:44 -07:00
Terry Jia 2ef2cf1a7c
feat: add PreviewGaussianSplat + PreviewPointCloud nodes (#14194) 2026-06-05 12:30:58 -07:00
Alexander Piskun aeee53ff6a
[Partner Nodes] feat: add temperature and top_p to NanoBanan node (#14305) 2026-06-05 11:52:15 -07:00
Alexander Piskun 4a00126e9c
[Partner Nodes] feat: add new Gemini text node (#14299) 2026-06-05 10:31:55 -07:00
rattus ec6aa979a6
aimdo 049 (#14300) 2026-06-05 08:40:03 -07:00
rattus 410df27253
Fix interoperation with external source of pinned memory pressure (#14252)
* mm: split off registration helper to doer and headroom calc

* pinned_memory: implement registration comfy side

Move away from Aimdo buffer registrations which seem fraught with
danger and do it comfy side. Just start with the basic move.

* pinned_memory: do registrations as portable memory

* pinned_memory: discard async errors on registration fail

Like the good ol days.

* pinned_memory: implement abs shortfall retry

If pinned registration happens to fail despite the previous budget
ensures, consider the allocation shortfall, ensure it again, and
try again. This allows comfy pins to interoperate with other software
that might be doing substantive pinning.
2026-06-05 08:39:35 -07:00
Jukka Seppänen 5aa71b9bc2
Enable cfg1 optimization for DualModelGuider with CFGGuider (#14290)
* Enable cfg1 optimization for DualModelGuider

* Fix CFG Override tooltip
2026-06-05 10:04:10 +03:00
Alexis Rolland ab0d8a9203
Consolidate audio nodes into SaveAudioAdvanced node (CORE-202) (#13871) 2026-06-04 19:29:41 -07:00
comfyanonymous 514bb8ba21
Fix ideogram if model dtype gets set to fp8. (#14291) 2026-06-04 19:20:22 -07:00
Comfy Org PR Bot 4e1f7cb1db
Bump comfyui-frontend-package to 1.45.15 (#14265) 2026-06-04 11:41:33 -07:00
Daxiong (Lin) 6ecca5f468
chore: update workflow templates to v0.9.98 (#14284) 2026-06-04 09:40:44 -07:00
Alexander Piskun 27b5c423a6
[Partner Nodes] feat: add seed input to Flux Erase node (#14283)
Signed-off-by: bigcat88 <bigcat88@icloud.com>
2026-06-04 19:32:15 +03:00
Alexander Piskun 1f9e7df52a
[Partner Nodes] feat: add Krea 2 Medium Turbo model (#14280) 2026-06-04 08:24:22 -07:00
Alexander Piskun 0a92dd9c09
[Partner Nodes] feat: add Bria Green Background node (#14277) 2026-06-04 07:47:20 -07:00
Alexander Piskun 4d360f9c9d
[Partner Nodes] fix (Seedance 2.0): prevent 1080p first/last-frame stretch jump (#14251)
Signed-off-by: bigcat88 <bigcat88@icloud.com>
2026-06-04 11:23:52 +03:00
Alexander Piskun 4f99ce0f8c
[Partner Nodes] fix SaveWEBM node to save alpha channel; add BriaTransparentVideoBackground Partner node (#14257) 2026-06-03 16:05:48 -07:00
Yousef R. Gamaleldin 7758b9b321
fix: Image grid bug fix (CORE-215) (#14100) 2026-06-03 16:03:32 -07:00
Comfy Org PR Bot bb84c75283
chore(openapi): sync shared API contract from cloud@7c470f0 (#14174) 2026-06-03 13:20:30 -07:00
comfyanonymous f49bdb6557 ComfyUI v0.24.0 2026-06-03 12:42:13 -04:00
comfyanonymous 8e3045a90b
Memory usage factor for ideogram 4 on non dynamic vram. (#14264) 2026-06-03 12:19:18 -04:00
Daxiong (Lin) f0619af659
chore: update workflow templates to v0.9.94 (#14263) 2026-06-03 09:10:26 -07:00
comfyanonymous f69225df24
Mark DualModelGuider as experimental (#14262) 2026-06-03 08:55:18 -07:00
Jukka Seppänen 24f9a020ce
Support Ideogram4 (#14259) 2026-06-03 08:41:44 -07:00
Alexander Piskun c7a22e1b4e
[Partner Nodes] feat: add Ideogram V4 node (#14261)
Signed-off-by: bigcat88 <bigcat88@icloud.com>
2026-06-03 18:13:20 +03:00
rattus bd7da053ae
comfy-aimdo: 0.4.8 (#14244)
Aimdo 0.4.8 fixes a crash in multi-gpu due to contention on the
singleton bounce buffer.
2026-06-02 18:57:16 -07:00
comfyanonymous d4c7ebff9c
Remove old useless no comfy kitchen fallback. (#14245)
* Remove old fallback used when no comfy kitchen.

* Remove unused logging import
2026-06-02 17:52:41 -07:00
Jukka Seppänen dc10c0133e
PiD: Add SDXL and QwenImage (#14240) 2026-06-02 12:40:49 -07:00
Quasar of Mikus e9207aa7cc
fix (MultiGPU): prevent freeze on manual abort when using MultiGPU CFG Split (#14235)
* fix (MultiGPU): prevent freeze on manual abort when using MultiGPU CFG Split

Problem:
Upon manual abort application hangs indefinitely.
`InterruptProcessingException` inherits from `BaseException` and bypasses MultiGPU's worker error handling block so thread dies silently, leaving the main thread waiting forever for `result_q.get()`

Fix:
Catch `comfy.model_management.InterruptProcessingException` instead of `Exception` so it's caught and passed back via `result_q` to unblock the main thread when manual abort signal fires.

* oops
2026-06-02 10:05:24 -07:00