Comfy-Org / Comfy-Org/ComfyUI-Manager

[Feature Request] Poetry + Dynamic Versioning Adoption

Open
#971 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
16.1k
Forks
2.5k
Avg merge
5d 4h
Merged PRs (30d)
13

Description

Heh, its funny because I just saw a thread regarding package versioning and I was thinking about the pain-in-the-ass it'll be for me, just returning from a semi-long sabbatical, to manage to keep all the nodes happy with my PyMods.

Just wanna precaution I shoulda/woulda/coulda got my bearings before this post. I mean, for one, this would be a pretty massive shift, but I imagine it would be a semi-welcomed one (pip -> Poetry) and in the end appreciated by all. Of course, it wouldn't really even change a dang thing, at least just yet. There are nifty capabilities of Poetry that a Custom Node could take advantage of that'd leave pip users SOL.

First 'un is something that's a non-break-y neat enhancement of Poetry's default packaging that is easy enough for anyone to add into their Poetry instance. But with that being said, I've yet to really use it myself! There's a caveat to the "easy" thing, the syntax of the actual written out dynamism is a tad convoluted IMO.

I'm not talking rocket science here, I legitimately just haven't spent the 10-15 mins. to get acclimated with the versioning syntax. This is also a real diamond-in-the-rough plugin because it has very little usage thus far (as to say, documentation, examples, etc. are nil). I'm optimistic with ComfyUI/CUM gushing over it, that this plugin would become very user-friendly. Man, there's just something about ltdrdata's CU-M! All jokes aside, I think pip is pitiful for Custom Node Addiction -- its limited, better for simple projects.

Python Projects that require a lot of modules are really only manageable with Pipenv or Poetry. I used Pipenv for a long while but I just found it bug-ridden, slow as duck and clunky. Poetry can be whatever you want it to be, package manager, build, venv controller and so on. There's also Conda/Mamba I suppose...but I think it doesn't fit the bill with this project's needs (isolating ComfyUI is likely not-so preferable for a large # of users).

Poetry Pros: (Heh)
- Great .venv experience
- Opens up new possibilities with its configuration management, ala scripts-to-trigger in the pyproject.toml
- Fluid, Customizable Sourcing of Packages (Divi up a couple lists, maybe grab Torch/Audio/Vision via Pytorch.org for the dev vers.)
- Doesn't really change diddley squat, I just think it'd be great if it were pushed as the gold standard of CUM or ComfyUI. Would work well with things like the long cherished Pysss/RG-Three type enhancements IMO, no screwing around with some Web Folder, etc.

Cons: ???
_Sry, this was a procrasturbation post, should be doing other things, toodle-looo!!!_

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the proposed Poetry workflow and the existing package configuration, including the pyproject.toml scripts mentioned in the issue. Establish whether Poetry and dynamic versioning fit ComfyUI-Manager, then document the migration scope, compatibility concerns, and a concrete definition of done; the issue currently names no files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.