v2.5.7: Legacy Node Removal (NunchakuQwenImageLoraStack)
| EN | 中文 |
v2.5.7 Technical Documentation: Legacy Node Removal (NunchakuQwenImageLoraStack)
Baseline commit:
a3c2ed1(v2.5.6)
Commits:88ed1a3(feature & docs) /7ae12b7(version & changelog)
① Purpose
Remove the legacy node NunchakuQwenImageLoraStack ("Nunchaku Qwen Image LoRA Stack (Legacy)") from the node registration mappings (NODE_CLASS_MAPPINGS, NODE_DISPLAY_NAME_MAPPINGS) and documentation.
With the maturity and widespread adoption of modern stacker implementations (NunchakuQwenImageLoraStackV1, V2, and V3), the early legacy implementation has been phased out to streamline the node library, prevent workflow confusion, and eliminate maintenance overhead.
Requirements & Scope
- Unregister Legacy Node:
NunchakuQwenImageLoraStackis removed fromNODE_CLASS_MAPPINGSandNODE_DISPLAY_NAME_MAPPINGSin__init__.py. - Zero Impact on Other Nodes: Single loader (
NunchakuQwenImageLoraLoader), modern stackers (NunchakuQwenImageLoraStackV1,V2,V3), Z-Image-Turbo stackers (V1,V4), Krea2 ControlNet loader (Krea2ControlNetLoraLoader), and DiffSynth ControlNet node (NunchakuQI&ZITDiffsynthControlnet) remain completely unaffected. - Documentation Cleanup: Remove legacy node references, preview images, and setup instructions from
README.mdandzhmd/README.md. - Encoding & Integrity: Ensure 100% UTF-8 preservation with zero Mojibake across all modified files.
② Modified Files
| File | Type | Change |
|---|---|---|
__init__.py |
modified | Removed NunchakuQwenImageLoraStack import, __version__ assignment, NODE_CLASS_MAPPINGS entry, and NODE_DISPLAY_NAME_MAPPINGS entry; bumped __version__ to 2.5.7 |
README.md |
modified | Removed legacy stack node entry and image, updated basic usage instructions, and cleaned up AMD/ROCm disabled node list |
zhmd/README.md |
modified | Removed legacy stack node entry and image, updated Chinese basic usage instructions and AMD/ROCm disabled node list |
RELEASE_NOTES/changelog.md |
modified | Added v2.5.7 release entry |
zhmd/changelogzh.md |
modified | Added v2.5.7 Chinese release entry |
③ Key Code Changes (Diffs)
3.1 __init__.py — Node Registration Cleanup
@@ -72,7 +72,7 @@ except Exception as e:
if _NUNCHAKU_AVAILABLE:
try:
- from .nodes.lora.qwenimage import NunchakuQwenImageLoraLoader, NunchakuQwenImageLoraStack
+ from .nodes.lora.qwenimage import NunchakuQwenImageLoraLoader
from .nodes.lora.qwenimage_v2 import GENERATED_NODES as QWEN_V2_NODES, GENERATED_DISPLAY_NAMES as QWEN_V2_NAMES
from .nodes.lora.qwenimage_v3 import GENERATED_NODES as QWEN_V3_NODES, GENERATED_DISPLAY_NAMES as QWEN_V3_NAMES
from .nodes.lora.qwenimage_v1 import GENERATED_NODES as QWEN_V1_NODES, GENERATED_DISPLAY_NAMES as QWEN_V1_NAMES
@@ -83,7 +83,6 @@ if _NUNCHAKU_AVAILABLE:
NunchakuQwenImageLoraLoader.__version__ = __version__
- NunchakuQwenImageLoraStack.__version__ = __version__
for node_class in QWEN_V2_NODES.values():
node_class.__version__ = __version__
for node_class in QWEN_V3_NODES.values():
@@ -99,7 +98,6 @@ if _NUNCHAKU_AVAILABLE:
NODE_CLASS_MAPPINGS["NunchakuQwenImageLoraLoader"] = NunchakuQwenImageLoraLoader
- NODE_CLASS_MAPPINGS["NunchakuQwenImageLoraStack"] = NunchakuQwenImageLoraStack
NODE_CLASS_MAPPINGS.update(QWEN_V2_NODES)
NODE_CLASS_MAPPINGS.update(QWEN_V3_NODES)
NODE_CLASS_MAPPINGS.update(QWEN_V1_NODES)
@@ -132,7 +130,6 @@ except Exception as e:
NODE_DISPLAY_NAME_MAPPINGS = {
**({} if not _NUNCHAKU_AVAILABLE else {
"NunchakuQwenImageLoraLoader": "Nunchaku Qwen Image LoRA Loader",
- "NunchakuQwenImageLoraStack": "Nunchaku Qwen Image LoRA Stack (Legacy)",
}),
**QWEN_V2_NAMES,
**QWEN_V3_NAMES,3.2 README.md & zhmd/README.md — Documentation Alignment
- Removed
NunchakuQwenImageLoraStack: Multi LoRA stacker with dynamic UI (Legacy)from Available Nodes list and preview screenshots. - Updated Basic Usage:
**For Nunchaku Qwen Image models:** 1. Load your Nunchaku Qwen Image model using `Nunchaku Qwen Image DiT Loader` 2. Add `NunchakuQwenImageLoraLoader` or `NunchakuQwenImageLoraStackV1` / `V2` / `V3` node 3. Select your LoRA file and set the strength 4. Connect to your workflow
- Removed
NunchakuQwenImageLoraStackfrom the AMD/ROCm disabled node list.
④ Detailed Technical Explanation
4.1 Node Registration Architecture (Post v2.5.7)
After this release, the active registered node set is structured as follows:
| Category | Registered Nodes | Target Models | UI Type |
|---|---|---|---|
| Single Loader | NunchakuQwenImageLoraLoader |
Nunchaku Qwen Image | Standard dropdown |
| Qwen Image Stackers | NunchakuQwenImageLoraStackV1 |
Nunchaku Qwen Image | rgthree-style row layout |
NunchakuQwenImageLoraStackV2 |
Nunchaku Qwen Image | Dynamic slot UI (AWQ Mod toggle) | |
NunchakuQwenImageLoraStackV3 |
Nunchaku Qwen Image | Dynamic slot UI (Auto AWQ Mod) | |
| Z-Image-Turbo Stackers | NunchakuZImageTurboLoraStackV1 |
Nunchaku Z-Image-Turbo | rgthree-style row layout |
NunchakuZImageTurboLoraStackV4 |
Nunchaku Z-Image-Turbo | Dynamic slot UI (CLIP pass-through) | |
| ControlNet & Adapters | Krea2ControlNetLoraLoader |
Krea2 / SingleStreamDiT | Depth / OpenPose auto-detection |
NunchakuQI&ZITDiffsynthControlnet |
Qwen Image, Z-ImageTurbo, Krea2 | Unified ControlNet conditioning |
4.2 Migration Guide
Workflows that previously referenced NunchakuQwenImageLoraStack (Legacy) should be updated to one of the following alternatives:
- For standard canvas / rgthree-style compact UI: Use
NunchakuQwenImageLoraStackV1. - For dynamic slot adjustment & Nodes 2.0 (Beta) compatibility: Use
NunchakuQwenImageLoraStackV3(recommended for automatic AWQ modulation support) orNunchakuQwenImageLoraStackV2. - For single LoRA loading: Use
NunchakuQwenImageLoraLoader.
⑤ Verification & Testing
- Syntax & Import Validation:
python -m py_compile __init__.pypassed with exit code 0. - Registration Verification: Confirmed that
NODE_CLASS_MAPPINGSandNODE_DISPLAY_NAME_MAPPINGScontain only active nodes without legacy entries. - Diff Isolation: Verified that no changes were made to underlying LoRA fusion algorithms, wrapper layers (
wrappers/), monkey patches (patches/), or ControlNet routing logic. - UTF-8 & Formatting: Preserved full UTF-8 encoding across all documentation and release files.