Compare commits

...

6 Commits

Author SHA1 Message Date
drhead
106c6c45bb
Merge d175cbd315 into 98bdca4cb2 2025-04-10 16:28:35 -04:00
Chenlei Hu
98bdca4cb2
Deprecate InputTypeOptions.defaultInput (#7551)
* Deprecate InputTypeOptions.defaultInput

* nit

* nit
2025-04-10 06:57:06 -04:00
comfyanonymous
a26da20a76 Fix custom nodes not importing when path contains a dot. 2025-04-10 03:37:52 -04:00
drhead
d175cbd315
fix syntax 2025-03-09 19:57:51 -04:00
drhead
8e5f33cc9c
better way of gating non blocking use 2025-03-09 19:45:29 -04:00
drhead
c7b8e7250d
make conds use non-blocking transfers 2025-03-09 19:42:19 -04:00
3 changed files with 18 additions and 4 deletions

View File

@ -102,9 +102,13 @@ class InputTypeOptions(TypedDict):
default: bool | str | float | int | list | tuple
"""The default value of the widget"""
defaultInput: bool
"""Defaults to an input slot rather than a widget"""
"""@deprecated in v1.16 frontend. v1.16 frontend allows input socket and widget to co-exist.
- defaultInput on required inputs should be dropped.
- defaultInput on optional inputs should be replaced with forceInput.
Ref: https://github.com/Comfy-Org/ComfyUI_frontend/pull/3364
"""
forceInput: bool
"""`defaultInput` and also don't allow converting to a widget"""
"""Forces the input to be an input slot rather than a widget even a widget is available for the input type."""
lazy: bool
"""Declares that this input uses lazy evaluation"""
rawLink: bool

View File

@ -1,6 +1,7 @@
import torch
import math
import comfy.utils
from comfy.model_management import device_should_use_non_blocking
class CONDRegular:
@ -10,7 +11,16 @@ class CONDRegular:
def _copy_with(self, cond):
return self.__class__(cond)
def _pin_memory(self, cond):
if cond.device == torch.device('cpu'):
return cond.pin_memory()
else:
return cond
def process_cond(self, batch_size, device, **kwargs):
if device_should_use_non_blocking(device):
return self._copy_with(comfy.utils.repeat_to_batch_size(self._pin_memory(self.cond), batch_size).to(device, non_blocking=True))
else:
return self._copy_with(comfy.utils.repeat_to_batch_size(self.cond, batch_size).to(device))
def can_concat(self, other):

View File

@ -2136,7 +2136,7 @@ def load_custom_node(module_path: str, ignore=set(), module_parent="custom_nodes
module_name = sp[0]
sys_module_name = module_name
elif os.path.isdir(module_path):
sys_module_name = module_path
sys_module_name = module_path.replace(".", "_x_")
try:
logging.debug("Trying to load custom node {}".format(module_path))