Opened 14 years ago
Last modified 14 years ago
#25182 new enhancement
add a way to exclude build dependencies from pseudo-portname "leaves"
Reported by: | swebster@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | base | Version: | 1.9.0 |
Keywords: | Cc: | ||
Port: |
Description
It seems to me that a primary purpose of the pseudo-portname "leaves" is to enable users to find ports that they no longer require so that they can be removed from their system. These ports could come into existence in a variety of ways, such as a requested port changing its dependencies.
Unfortunately the command "port list leaves" shows ports which are build dependencies of other installed ports. If these dependencies are removed then when those ports are next updated the build-deps will have to be reinstalled, wasting time and resources. Ideally "port list leaves" would separately identify build dependencies in its output.
This ticket is an outgrowth of #25179; sorry if this new ticket is inappropriate. I almost marked it as "enhancement" but per the guidelines it seems to me that this is a feature that is not working as intended. Feel free to switch the type.
Change History (4)
comment:1 Changed 14 years ago by swebster@…
comment:2 Changed 14 years ago by jmroot (Joshua Root)
Summary: | pseudo-portname "leaves" should show build dependencies → add a way to exclude build dependencies from pseudo-portname "leaves" |
---|---|
Type: | defect → enhancement |
Both ways are useful. The way it works now happens to be easier to implement. You can use the -b option to port_cutleaves to achieve this currently BTW.
comment:3 Changed 14 years ago by swebster@…
Thanks for fixing the ticket title. -b doesn't work (seems to be assigned to binary only mode), but --no-build excludes build dependencies from the rdeps output, which is I think what you meant. I guess that could help people resolve some ambiguity. However, I don't think it actually helps me find what I was considering "true leaves." To do that I figure what I would do is:
port rdeps requested | grep -v '^The' | sed -E 's/ +//' | sort | uniq > alldeps port installed leaves | grep -v '^The' | awk '{print $1}' > supposedleaves comm -1 -3 alldeps supposedleaves
This would give me a list of what I would consider "true leaves."
comment:4 Changed 14 years ago by jmroot (Joshua Root)
Sorry, I meant port_cutleaves, not port-rdeps (edited).
Adding to the possible confusion is the fact that the "rdeps" command lists build dependencies.