130c57f88b2b2e97ad734b0591586525c434fc35
- Fixed Jinja2 regex pattern to handle spaces around filters ({{ var | filter }})
- Added null safety in IS_CHANGED method for empty/None templates
- Restored dynamic output functionality for variable chaining
- Created 47 comprehensive tests with 78% coverage on format_string.py
- Set up test infrastructure with ComfyUI dependency mocking
- Used importlib to bypass package imports during testing
- Added conditional imports in root __init__.py for test compatibility
- Configured pytest in pyproject.toml (removed outdated pytest.ini)
- Added pytest and pytest-cov to dev dependencies
- Updated .gitignore for test artifacts
- Removed deprecated model_unload.py
comfydv
A collection of workflow efficiency and quality of life nodes that I've created for personal use out of necessity.
- String Formatting: Use either plain python f-strings or more advanced Jinja2 templating to format outputs.
- Random Choice: Add an abitrary number of inputs and then, with seed control, randomly select one for an output.
String Formatting
Python F-String
A simple python f-string dynamically creates the necessary inputs/outputs for the detected keys.
Jinja 2
Switching to Jinja2 allows you to use more advanced control blocks and other filters/features of that templating language. See Jinja documentation for further details.
Random Choice
Ability to take arbitrary length and type of inputs to then output a choice with a controllable seed.
Languages
Python
81.3%
Shell
10.2%
JavaScript
4.3%
Gherkin
3.6%
Just
0.4%
Other
0.2%


