Releases: pydn/ComfyUI-to-Python-Extension
v2.1.0
Summary
2.1.0 focused on exporter correctness, installation/frontend compatibility, and generated-script runtime lifecycle behavior.
Highlights
Exporter correctness
- Fixed string-seed randomization in generated code.
- Added focused regression coverage for generator edge cases, including:
- string seed nodes
- Windows-style path strings
- trailing backslashes in strings
- unsafe rgthree kwargs
- subgraph/upscaler identifier handling
- Added new fixture coverage so these cases stay locked down.
Compatibility and installation
- Declared official Python support as
3.12+. - Removed the hidden import-time
pipbootstrap behavior and replaced it with explicituv syncguidance. - Updated the Web UI save flow to avoid
prompt(), improving compatibility with ComfyUI Desktop. - Standardized the default downloaded script filename to
workflow_api.py. - Added contract tests covering supported Python metadata and frontend save defaults.
Generated runtime behavior
- Generated scripts now perform best-effort ComfyUI cleanup after workflow execution.
- Exported
main()now runs cleanup in afinallyblock. - Added opt-in aggressive unload support for embedded/repeated-call use cases:
main(unload_models=True)COMFYUI_TOPYTHON_UNLOAD_MODELS=1
- Documented supported ComfyUI runtime / VRAM-related flags for generated scripts.
- Guarded cleanup hooks so teardown errors do not override the real workflow failure.
User-visible changes
- Better behavior when exporting workflows that contain tricky string values or previously fragile node shapes.
- Clearer environment expectations: Python
3.12+anduvare now the supported setup path. - Better Desktop compatibility for
File -> Save As Script. - Generated scripts now clean up ComfyUI runtime state more safely after execution, while still allowing model reuse by
default.
What's Changed
- Make generator codegen regressions explicit and fix string seed rand by @pydn in #151
- Clarify Python support and harden export/install compatibility by @pydn in #152
- Add generated runtime cleanup after workflow execution by @pydn in #153
Full Changelog: v2.0.0...v2.1.0
v2.0.0 Readability Refactor
Overview
v2.0.0 is a major exporter update focused on packaging, runtime correctness, generated-script readability, and frontend
compatibility.
CLI and Packaging
The exporter now has a proper package entrypoint, with uv run python -m comfyui_to_python as the recommended CLI path. The
legacy uv run python comfyui_to_python.py wrapper still works for compatibility.
Generated Script Improvements
Generated scripts were reworked to be easier to read, with clearer structure around imports, workflow data, execution, and
entrypoint flow.
Runtime and Frontend Fixes
Generated scripts now defer ComfyUI bootstrap until main() executes, and ComfyUI startup now happens before torch import,
which improves runtime correctness and avoids import-time side effects. The frontend extension was also updated to avoid
the legacy ui.js import path, improving compatibility with newer ComfyUI frontend behavior.
Export Correctness
This version improves handling for repeated node-class branches, non-zero output selection, hidden metadata kwargs, and
randomized seed synchronization.
Validation
Validation coverage was expanded with stronger unit tests, runtime harness improvements, and additional committed workflow
fixtures, including reused-node-class-branches, secondary-output-selection, text-to-image, and upscale-model-loader.
v1.3.2
Summary
This patch release rolls up compatibility and packaging fixes that are already merged on main.
Included
- fix for
Save As Scriptavailability with newer ComfyUI frontend versions - fixes for runtime/export bootstrap issues around the upscale model loader workflow
- fixes for import/path conflicts affecting generated scripts
- async fix for loading extra nodes
- packaging and publishing workflow updates
- README and setup documentation refreshes
v1.3.1 New UI Update
What's Changed
- Registry/pyproject by @pydn in #76
- Add pyproject.toml for Custom Node Registry by @haohaocreates in #53
- Add Github Action for Publishing to Comfy Registry by @haohaocreates in #52
- Kwargs hotfix by @pydn in #77
- Modification to add menu item in new UI by @swilcock0 in #95
New Contributors
- @haohaocreates made their first contribution in #53
- @swilcock0 made their first contribution in #95
Full Changelog: v1.3.0...v1.3.1
v1.3.0 Save as Script UI Button
What's Changed
Full Changelog: v1.2.1...v1.3.0
Contributions
Huge shoutout to @atmaranto for their incredible work adding the code for the UI button.
v1.2.1 CLI Arguments and Kwargs Hotfix
- Update to allow for CLI arguments to dynamically adjust input file, output file, and queue size
- Hotfix that will make sure all kwargs are passed to generated .py file for any node that allows you to pass kwargs
Special thanks to @Omer-ler for your contribution!
v1.2.0
- Made updates for breaking changes from latest ComfyUI updates
- Renamed utils.py to avoid conflicts with new utils directory in ComfyUI
- Added additional multiple locations to search for load_extra_path_config for backwards compatibility
Special thanks to @albertpurnama for your contribution!
v1.1.0
New Features:
Added ability to load extra models into workflows using the extra_model_paths.yaml file.
Bug Fixes:
Added handling for cases where special characters are used in custom node names.
Credits:
Special thanks to @dimtoneff @rossaai and @FelipeMurguia for your contributions!