124 Commits
Author SHA1 Message Date
cmdicely beb832316c Update power_puter.py
use `ast.Contant.value` instead of `ast.Constant.n` in python 3.14+

`ast.Constant.n` was a compatibility shim for `ast.Num` on `ast.Constant`.

It was removed in python 3.14 along with `ast.Num`.
2026-09-26 13:57:27 -07:00
cmdicely 44eb0cef0b Avoid relying on obsolete ast.Num after its removal
`ast.Num` was deprecated in Python 3.8 and removed in Python 3.14.

Check if `ast.Num` exists; rely only on `ast.Constant`, which replaced it, otherwise.
2026-09-26 13:20:57 -07:00
Regis Gaughan, III 449c58fcdd Merge pull request #769 from stuttlepress/fix-image-comparer-empty-output
Fix Image Comparer never populating its inherited IMAGE output.
2026-09-24 22:34:17 -04:00
stuttlepress 66341c6c8b Fix Image Comparer never populating its inherited IMAGE output.
The images output is never filled, and any link from it fails at runtime.

This also blocks the node inside ComfyUI's native Start Loop / End Loop, where
a node in the loop body must reach End Loop to pass validation and needs a
working output to connect to its terminations input.

Two optional inputs share one socket, so image_a is preferred and image_b is
the fallback.
2026-09-20 21:04:55 -05:00
ussoewwin 17f184820b fix(logo): don't let a non-SVG / proxy error response break the logo route
get_logo_svg() cached whatever LOGO_URL returned without validating it, and get_logo() then ran str.format() over it. Any literal '{' in the payload - an HTML error page from a proxy, captive portal or CDN, e.g. a Cloudflare 523 page whose CSS uses braces - raised ValueError: unexpected '{' in field name and broke the route for every request until restart.

Validate that the fetched markup is SVG, fall back to the bundled web/common/media/rgthree.svg, substitute {bg}/{fg} with str.replace instead of str.format, and never serve non-SVG content from the route.
2026-09-14 20:57:18 +09:00
rgthree 2c5342a8cb Cache head branch for updating extensions from git. 2026-08-31 23:42:17 -04:00
rgthree 65b9521230 Add a warning in the browser and console for ComfyUI_Swwan conflict as many are running into issues. 2026-08-19 23:44:51 -04:00
rgthree 27b4f4cdcf Adds now() strftime() and full datetime support for Power Puter 2026-06-20 00:20:56 -04:00
rgthree 738105af5f Ensure resource look ups exist under their respective directory. Fixes #725 2026-05-08 22:57:14 -04:00
rgthree 683836c46e Power Lora Loader: Add an info badge (and config option to remove); add ability to match selection 2026-04-07 00:17:26 -04:00
rgthree b38092ece9 Handle subgraph generation for seed node when inside a subgraph. Fixes #697 2026-04-06 23:57:09 -04:00
rgthree 1773555c7f Add sha256 function to Power Puter 2026-04-06 23:54:22 -04:00
rgthree 8ff50e4521 Correct operator usage and add some more. Fixed from copying in original source. Fixes #645 2025-12-11 20:53:25 -05:00
rgthree ce6fc334c9 Use the dynamic prompt when looking up nodes in Power Puter. Addresses #644 2025-12-09 21:37:29 -05:00
rgthree b6e0e4b33e Fix index access on lists in Power Puter and add some tests. Fixes #643 2025-12-07 17:18:00 -05:00
rgthree e9d5618188 Add and operators to Power PuPuter. Also, restrict filesystem save methods from numpy.ndarray. 2025-12-06 00:53:18 -05:00
rgthree 42e73c3c48 Add a log message for ComfyUI's Node 2.0 incompatibility. 2025-11-27 08:46:36 -05:00
rgthree eadc24ecc8 Fix cases where a missing lora would result in NPE for abspath lookup. Fixes #620 2025-11-11 19:55:20 -05:00
rgthree 68fe47c0e8 Resolve symlinks (and userdirs) when looking for lora files reported by ComfyUI. Addresses #574 2025-11-10 23:55:04 -05:00
rgthree 9d8164edfc Safety check the Power Lora Loader info lookup, and log if there's an error to help #574 2025-11-09 19:59:33 -05:00
rgthree 67c3ba1b7c Update ComfyUI frontend types and changes needed to accomodate them. Should be a no-op. 2025-11-08 18:14:45 -05:00
rgthree 629c514a68 Ports the widgetInputs.js methods used in reroute to support primitive nodes as ComfyUI is removing the ability to call these soon. Addresses #600. 2025-11-07 21:42:59 -05:00
rgthree 2b9eb36d3e Power Puter: batch() special built-in, and sync triggers() loading and fix invalid svg attrs. Fixes #590 and #592. 2025-10-05 20:58:19 -04:00
rgthree 0fb1e239a9 Power Puter: Add while loops, break, continue (and pass). Cleanup extraneous print debug. 2025-09-09 20:31:18 -04:00
rgthree 26988df02c Fix native 'queue selected nodes'; add random seed range in node properties; fix groups collecting nodes when moving; and other small fixes. Fixes #578 #536 #551 #576 2025-09-06 22:12:40 -04:00
rgthree 944d5353a1 Puter: Add ability to assign dict values using '{}'. 2025-07-11 23:02:21 -04:00
Regis Gaughan, III 784c7d1dab Merge pull request #532 from phazei/power-loader-fixes
Power Lora Loader: make model optional and include full path in get_e…
2025-07-11 22:39:38 -04:00
rgthree 07c5eab7c7 Add slice to power puter abilities. 2025-07-08 00:31:08 -04:00
rgthree 3d0ed3f54c Allow deterministic/cacheable use of random.choice and random.int by using random.seed first. 2025-07-07 23:40:17 -04:00
rgthree 4595787e72 Fix seed to work with string ids (for subgraphs) 2025-07-07 21:30:46 -04:00
Adam 98b16c4a01 Power Lora Loader: make model optional and include full path in get_enabled_loras_from_prompt_node 2025-07-05 23:56:44 -07:00
rgthree f754c47658 Power Puter: Add for loop, and augassign capabilities. 2025-06-23 00:15:18 -04:00
rgthree 51bc089334 Switch Power Puter and Power Primitive to use BOOLEAN, not BOOL. Fixes #520 2025-06-22 22:49:44 -04:00
rgthree 417d485ac8 [Power Puter] Add purge_vram special function. 2025-06-22 22:01:32 -04:00
rgthree 74eeb5472c Remove kw_only for 3.9 compatibility. For #511 2025-06-08 12:09:33 -04:00
rgthree 569f90a7a5 Use typing Union/Optional for python 3.9 support. 2025-06-06 20:38:42 -04:00
rgthree 9a40abd0e0 Power Puter: Add ability to define multiple outputs. Also improve button widget. 2025-06-05 22:47:55 -04:00
rgthree b775441a4c Power Puter: Allow lists and tuples to be used as iters within list comprehension 2025-05-29 00:26:42 -04:00
rgthree 6096e515f2 A bunch of common utils and such; especially around model/lora info. 2025-05-27 21:00:21 -04:00
rgthree 0aa6d0a203 Fix alphabet list. 2025-05-26 07:47:33 -04:00
rgthree dd4c0ca27b Power Puter: Pre-set input vars (a-z) to avoid key errors when muting/bypassing. Add better messages for trigger words. 2025-05-26 07:42:22 -04:00
rgthree 9c01f224a8 Allow CLIP as optional for Power Lora Loader. Fixes #501 2025-05-24 21:29:35 -04:00
rgthree 9774135656 Power Puter: Allow assigning to destructured tuple 2025-05-24 18:35:03 -04:00
rgthree 61b82b068b Fixes regex pattern not annotated. Fixes #428 2025-05-24 16:32:54 -04:00
rgthree e349f57edc Power Puter: Allow passing anything through. Mostuseful to pass the value of an input when it's not a primitive (like model, conditioning, etc.) 2025-05-24 16:17:45 -04:00
rgthree 0cf25c9205 Power Puter: Add len() as available function; opens door for deterministic randomization from external int/seed 2025-05-24 15:59:42 -04:00
rgthree 08fe395114 Power Puter: Better cache handling for connected nodes; Add print method. 2025-05-24 15:34:01 -04:00
rgthree 2aa1a855e8 Power Puter: Add condition support, passing arguments to special functions, and get trigger words for enabled loras, get connected nodes. 2025-05-22 22:49:38 -04:00
rgthree 1b1a7359bf Power Puter: Allow special function calls from list comprehension. 2025-05-21 21:36:59 -04:00
rgthree 8731686ac1 Power Puter: Add re() method for regex compilation; Allow searching for nodes names by regex; better recursive handling of multi-looped list comprehsion; breaking change: nodes() now returns a lit. 2025-05-21 21:10:19 -04:00