-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Add uv workspace metadata
#16516
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
Add uv workspace metadata
#16516
Conversation
|
I was looking exactly for this sort of functionality today. It would be great if alongside with names of workspace packages, this command could return their dependencies (I'm specifically interested in dependency relations between workspace members) |
|
I actually have that implemented locally — I need the exact same feature :) it's just more complicated so I was going to open a separate pull request. |
| members: Vec<WorkspaceMemberReport>, | ||
| } | ||
|
|
||
| /// Display package metadata. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Project metadata, maybe?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or, "workspace metadata"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shameful AI slop, thanks!
This adds the scaffolding for a
uv workspace metadatacommand, as an equivalent tocargo metadata, for integration with downstream tools. I didn't do much here beyond emit the workspace root path and the paths of the workspace members. I explored doing a bit more in #16638, but I think we're actually going to want to come up with a fairly comprehensive schema likecargo metadatahas. I've started exploring that too, but I don't have a concrete proposal to share yet.I don't want this to be a top-level command because I think people would expect
uv metadata <PACKAGE>to show metadata about arbitrary packages (this has been requested several times). I also think we can do other things in the workspace namespace to make trivial integrations simpler, likeuv workspace list(enumerate members) anduv workspace dir(show the path to the workspace root).I don't expect this to be stable at all to start. I've both gated it with preview and hidden it from the help. The intent is to merge so we can iterate on it as we figure out what integrations need.