Skip to content

Add pyproject.toml for Custom Node Registry #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

haohaocreates
Copy link

@haohaocreates haohaocreates commented May 23, 2024

We are working with dr.lt.data and comfyanon to build a global registry for custom nodes (similar to PyPI). Eventually, the registry will be used as a backend for the UI-manager. All nodes go through a verification process before being published to users.

The main benefits are that authors can

  • publish nodes by version and users can safely update nodes knowing ahead of time if their workflows will break or not
  • automate testing against new commits in the comfy repo and existing workflows through our CI/CD dashboard

Action Required:

  • Go to the registry. Login and create a publisher id. Add the publisher id into the pyproject.toml file.
  • Write a short description.
  • Merge the separate Github Actions PR and run the workflow.

If you want to publish the node manually, install the cli and run comfy node publish

Check out our docs if you want to know more about the registry. Otherwise, feel free to message me on discord at haohao_81202 or join our server if you have any questions!

@haohaocreates
Copy link
Author

hey @gonzalu, wanted to send a small nudge and ask if you had any questions!

@gonzalu
Copy link
Owner

gonzalu commented Jun 25, 2024

hey @gonzalu, wanted to send a small nudge and ask if you had any questions!

A ton...

I have absolutely NO CLUE what any of this means :D I have barely figured out how to do what I have done so far ...

Sorry, but, is there a step by step detailed set of instructions for non developers, non github experts? I'd love to participate but I am absolutely useless tryign to understand all this on my own with PRs and etc.

Thank you ;)

@haohaocreates
Copy link
Author

haohaocreates commented Jun 26, 2024

hey @gonzalu, wanted to send a small nudge and ask if you had any questions!

A ton...

I have absolutely NO CLUE what any of this means :D I have barely figured out how to do what I have done so far ...

Sorry, but, is there a step by step detailed set of instructions for non developers, non github experts? I'd love to participate but I am absolutely useless tryign to understand all this on my own with PRs and etc.

Thank you ;)

Hey Gonzalu!! Absolutely understandable!

This is a docs page where we also have a short video demo as well as well as step by step instructions here (if that's too fast also feel free to message me on discord at haohao_81202)

@gonzalu
Copy link
Owner

gonzalu commented Jun 26, 2024

OK let me take a look... wish me luck...

First error:

So , I have a portable ComfyUI environment only... I manage my node manually using notepad++

Once it's good, I copy the node.py file into my main ComfyUI folder and using gitHub GUI I push it to gitHub.

Anyway, I tried to follow the video (yes it is too fast :P but I can pause it.) and installed the comfy-cli. Since I have an embedded python, I did

python_embedded\python.exe -m pip install comfy-cli

that went fine... but now, if I run the comfy cli code:

python_embedded\python.exe -m comfy node init

I get the error:

E:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_YFG_Comical>..\..\..\python_embeded\python.exe -m comfy node init
E:\ComfyUI\python_embeded\python.exe: No module named comfy.__main__; 'comfy' is a package and cannot be directly executed

If I then run it like:

python_embedded\python.exe comfy node init

I get another error:

E:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_YFG_Comical>..\..\..\python_embeded\python.exe comfy node init
..\..\..\python_embeded\python.exe: can't open file 'E:\\ComfyUI\\ComfyUI\\custom_nodes\\ComfyUI_YFG_Comical\\comfy': [Errno 2] No such file or directory

@gonzalu
Copy link
Owner

gonzalu commented Jun 26, 2024

OK got past the above.

now getting this when I try to publish node



E:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_YFG_Comical>comfy node publish --token exxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Validating node configuration...
Publishing node version...
{'Failed to publish node version: 400 {"message":"Failed to validate token"}\n'}

E:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_YFG_Comical>

@gonzalu
Copy link
Owner

gonzalu commented Jun 27, 2024

OK all resolved I think so far.

What else am I missing? How do I go about this moving forward?

@haohaocreates
Copy link
Author

OK all resolved I think so far.

What else am I missing? How do I go about this moving forward?

hey @gonzalu ! if your node is on the registry, then you are good to go! you should be able to publish different versions to the registry when you make new bug fixes, versions, patches - on our end, we'll be working to integrate this with the UI-manager in the coming weeks and will make a public announcement once the ball starts rolling!

lmk if you have any other questions in the meantime 😊

@gonzalu
Copy link
Owner

gonzalu commented Jun 29, 2024

Thank you.

One question, is this related to the recent registry work? I just noticed my nodes are showing up on ComfyUI with the wrong icon and the description for one of my nodes instead of the suit description :(

In the image below, the correct icon should be that of a lion and not a brain. Also, the description should be generic for all nodes or at least unique to each node. I use the header on each python file as suggested by Dr.Lt.Data

image

Thanks for all your help!

@ltdrdata
Copy link

ltdrdata commented Jul 1, 2024

Thank you.

One question, is this related to the recent registry work? I just noticed my nodes are showing up on ComfyUI with the wrong icon and the description for one of my nodes instead of the suit description :(

In the image below, the correct icon should be that of a lion and not a brain. Also, the description should be generic for all nodes or at least unique to each node. I use the header on each python file as suggested by Dr.Lt.Data

image

Thanks for all your help!

That is happend by this.

@nickname: 🧠 YFG Smart Checkpoint Loader

That spec is for configuring the node pack, not for configuring a specific node.
If multiple exist, the node pack's settings will be overwritten by the last one scanned.

After removing that, it will be reflected in the my next scan.

@gonzalu
Copy link
Owner

gonzalu commented Jul 1, 2024

OK awesome... so, question remains, does EACH node's description get reflected by each node individually? Or is that section should be the same for all nodes?

Thank you.

@ltdrdata
Copy link

ltdrdata commented Jul 1, 2024

OK awesome... so, question remains, does EACH node's description get reflected by each node individually? Or is that section should be the same for all nodes?

Thank you.

That is not for node description. It's for the node pack description.
If you are willing to add description to node then you need to add descrption into node.

Like this
https://github.com/Amorano/Jovimetrix/blob/6257c8d4eb1e05e963358e73d5f2b149542fd84d/core/create.py#L44

Note that the feature to display a node's description is not currently supported in the core, and it requires installing certain front-end extensions to work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants