mirror of
https://git.datalinker.icu/ltdrdata/ComfyUI-Manager
synced 2025-12-08 21:54:26 +08:00
Remove package-level caching in cnr_utils and node_package modules to enable proper dynamic custom node installation and version switching without ComfyUI server restarts. Key Changes: - Remove @lru_cache decorators from version-sensitive functions - Remove cached_property from NodePackage for dynamic state updates - Add comprehensive test suite with parallel execution support - Implement version switching tests (CNR ↔ Nightly) - Add case sensitivity integration tests - Improve error handling and logging API Priority Rules (manager_core.py:1801): - Enabled-Priority: Show only enabled version when both exist - CNR-Priority: Show only CNR when both CNR and Nightly are disabled - Prevents duplicate package entries in /v2/customnode/installed API - Cross-match using cnr_id and aux_id for CNR ↔ Nightly detection Test Infrastructure: - 8 test files with 59 comprehensive test cases - Parallel test execution across 5 isolated environments - Automated test scripts with environment setup - Configurable timeout (60 minutes default) - Support for both master and dr-support-pip-cm branches Bug Fixes: - Fix COMFYUI_CUSTOM_NODES_PATH environment variable export - Resolve test fixture regression with module-level variables - Fix import timing issues in test configuration - Register pytest integration marker to eliminate warnings - Fix POSIX compliance in shell scripts (((var++)) → $((var + 1))) Documentation: - CNR_VERSION_MANAGEMENT_DESIGN.md v1.0 → v1.1 with API priority rules - Add test guides and execution documentation (TESTING_PROMPT.md) - Add security-enhanced installation guide - Create CLI migration guides and references - Document package version management 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
71 lines
1.7 KiB
TOML
71 lines
1.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools >= 61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "comfyui-manager"
|
|
license = { text = "GPL-3.0-only" }
|
|
version = "5.0b1"
|
|
requires-python = ">= 3.9"
|
|
description = "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI."
|
|
readme = "README.md"
|
|
keywords = ["comfyui", "comfyui-manager"]
|
|
|
|
maintainers = [
|
|
{ name = "Dr.Lt.Data", email = "dr.lt.data@gmail.com" },
|
|
{ name = "Yoland Yan", email = "yoland@comfy.org" },
|
|
{ name = "James Kwon", email = "hongilkwon316@gmail.com" },
|
|
{ name = "Robin Huang", email = "robin@comfy.org" },
|
|
]
|
|
|
|
classifiers = [
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
|
|
]
|
|
|
|
dependencies = [
|
|
"GitPython",
|
|
"PyGithub",
|
|
# "matrix-nio",
|
|
"transformers",
|
|
"huggingface-hub>0.20",
|
|
"typer",
|
|
"rich",
|
|
"typing-extensions",
|
|
"toml",
|
|
"uv",
|
|
"chardet"
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = ["pre-commit", "pytest", "ruff", "pytest-cov"]
|
|
|
|
[project.urls]
|
|
Repository = "https://github.com/ltdrdata/ComfyUI-Manager"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = ["comfyui_manager*"]
|
|
|
|
[project.scripts]
|
|
cm-cli = "comfyui_manager.cm_cli.__main__:main"
|
|
|
|
[tool.ruff]
|
|
line-length = 120
|
|
target-version = "py39"
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"E4", # default
|
|
"E7", # default
|
|
"E9", # default
|
|
"F", # default
|
|
"I", # isort-like behavior (import statement sorting)
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
markers = [
|
|
"integration: marks tests as integration tests (deselect with '-m \"not integration\"')",
|
|
]
|