Commit Graph

23 Commits

Author SHA1 Message Date
Jedrzej Kosinski
0be8a76c93
V3 Improvements + DynamicCombo + Autogrow exposed in public API (#11345)
* Support Combo outputs in a more sane way

* Remove test validate_inputs function on test node

* Make curr_prefix be a list of strings instead of string for easier parsing as keys get added to dynamic types

* Start to account for id prefixes from frontend, need to fix bug with nested dynamics

* Ensure inputs/outputs/hidden are lists in schema finalize function, remove no longer needed 'is not None' checks

* Add raw_link and extra_dict to all relevant Inputs

* Make nested DynamicCombos work properly with prefixed keys on latest frontend; breaks old Autogrow, but is pretty much ready for upcoming Autogrow keys

* Replace ... usage with a MISSING sentinel for clarity in nodes_logic.py

* Added CustomCombo node in backend to reflect frontend node

* Prepare Autogrow's expand_schema_for_dynamic to work with upcoming frontend changes

* Prepare for look up table for dynamic input stuff

* More progress towards dynamic input lookup function stuff

* Finished converting _expand_schema_for_dynamic to be done via lookup instead of OOP to guarantee working with process isolation, did refactoring to remove old implementation + cleaning INPUT_TYPES definition including v3 hidden definition

* Change order of functions

* Removed some unneeded functions after dynamic refactor

* Make MatchType's output default displayname "MATCHTYPE"

* Fix DynamicSlot get_all

* Removed redundant code - dynamic stuff no longer happens in OOP way

* Natively support AnyType (*) without __ne__ hacks

* Remove stray code that made it in

* Remove expand_schema_for_dynamic left over on DynamicInput class

* get_dynamic() on DynamicInput/Output was not doing anything anymore, so removed it

* Make validate_inputs validate combo input correctly

* Temporarily comment out conversion to 'new' (9 month old) COMBO format in get_input_info

* Remove refrences to resources feature scrapped from V3

* Expose DynamicCombo in public API

* satisfy ruff after some code got commented out

* Make missing input error prettier for dynamic types

* Created a Switch2 node as a side-by-side test, will likely go with Switch2 as the initial switch node

* Figured out Switch situation

* Pass in v3_data in IsChangedCache.get function's fingerprint_inputs, add a from_v3_data helper method to HiddenHolder

* Switch order of Switch and Soft Switch nodes in file

* Temp test node for MatchType

* Fix missing v3_data for v1 nodes in validation

* For now, remove chacking duplicate id's for dynamic types

* Add Resize Image/Mask node that thanks to MatchType+DynamicCombo is 16-nodes-in-1

* Made DynamicCombo references in DCTestNode use public interface

* Add an AnyTypeTestNode

* Make lazy status for specific inputs on DynamicInputs work by having the values of the dictionary for check_lazy_status be a tuple, where the second element is the key of the input that can be returned

* Comment out test logic nodes

* Make primitive float's step make more sense

* Add (and leave commented out) some potential logic nodes

* Change default crop option to "center" on Resize Image/Mask node

* Changed copy.copy(d) to d.copy()

* Autogrow is available in stable  frontend, so exposing it in public API

* Use outputs id as display_name if no display_name present, remove v3 outputs id restriction that made them have to have unique IDs from the inputs

* Enable Custom Combo node as stable frontend now supports it

* Make id properly act like display_name on outputs

* Add Batch Images/Masks/Latents node

* Comment out Batch Images/Masks/Latents node for now, as Autogrow has a bug with MatchType where top connection is disconnected upon refresh

* Removed code for a couple test nodes in nodes_logic.py

* Add Batch Images, Batch Masks, and Batch Latents nodes with Autogrow, deprecate old Batch Images + LatentBatch nodes
2025-12-30 23:09:55 -05:00
Kohaku-Blueleaf
86dbb89fc9
Resolution bucketing and Trainer implementation refactoring (#11117) 2025-12-17 22:15:27 -05:00
Alexander Piskun
2103e39335
convert nodes_post_processing to V3 schema (#9491) 2025-09-26 14:14:42 -07:00
Jodh Singh
1ea8c54064
make kernel of same type as image to avoid mismatch issues (#9932) 2025-09-18 19:51:16 -04:00
catboxanon
8d0661d0ba
Lint instance methods (#7903) 2025-05-01 19:32:04 -04:00
comfyanonymous
3d2e3a6f29 Fix alpha image issue in more nodes. 2025-04-02 19:32:49 -04:00
comfyanonymous
4ee9aad6ca Speed up Sharpen node. 2024-04-21 09:02:06 -04:00
comfyanonymous
133dc3351b Faster blur. 2024-04-19 03:52:02 -04:00
comfyanonymous
8ae1e4d125 Make step on sharpen node smaller. 2024-03-27 01:28:31 -04:00
comfyanonymous
7f4725f6b3 Fix some issues with --gpu-only 2024-01-27 02:51:27 -05:00
comfyanonymous
9ac0b487ac Make --gpu-only put intermediate values in GPU memory instead of cpu. 2023-12-08 02:35:45 -05:00
matt3o
4acfc11a80 add difference blend mode 2023-11-05 19:00:23 +01:00
tsone
23c5d17837 Added Bayer dithering to Quantize node. 2023-10-31 22:22:40 +01:00
MoonRide303
2b6b178173 Added support for lanczos scaling 2023-09-19 10:40:38 +02:00
comfyanonymous
fc99fa56a9 Add node to scale image to a total amount of pixels keeping aspect. 2023-08-18 02:32:39 -04:00
comfyanonymous
94fceb8700 Make Blur node use the image device for processing. 2023-08-14 21:08:45 -04:00
comfyanonymous
71666f248f Fix padding in Blur. 2023-05-20 10:08:47 -04:00
BlenderNeko
36af98d755 improve sharpen and blur nodes 2023-05-20 15:23:28 +02:00
comfyanonymous
871a76b77b Rename and reorganize post processing nodes. 2023-04-04 22:54:33 -04:00
comfyanonymous
af291e6f69 Convert line endings to unix. 2023-04-04 13:56:13 -04:00
EllangoK
56196ab0f7 use common_upcale in blend 2023-04-04 10:57:34 -04:00
EllangoK
fa2febc062 blend supports any size, dither -> quantize 2023-04-03 09:52:04 -04:00
EllangoK
4c7a9dbcb6 adds Blend, Blur, Dither, Sharpen nodes 2023-04-02 18:44:27 -04:00