You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Are you running pipdeptree in a virtual environment?
Yes
Describe the problem
In my virtualenv I want to see which package is required from where, so that I can remove not needed anymore packages. That is, I want to check only on the top level, if I need the package and if I do not want it, I can assume that no package needs it, and it can be removed. Here a simplified example:
So cmarkgfm is an indirect dependency of postorius, but this is not shown in the graph of pipdeptree. In this case it is a global mandatory dependency, as it as a must to have according to Postorius.
The installed ~/lib/python3.10/site-packages/postorius-1.3.13.dist-info/METADATA does contain Requires-Dist: readme_renderer[md] and the installed ~/lib/python3.10/site-packages/readme_renderer-44.0.dist-info/METADATA has Provides-Extra: md Requires-Dist: cmarkgfm >=0.8.0 ; extra == 'md'. So the dependency information is there, but is not utilized by pipdeptree.
The text was updated successfully, but these errors were encountered:
Thanks for the bug report. Currently pipdeptree does not play well with extras and this particular issue is being tracked in #107. This issue has been up for some time, but (somewhat) recently we now have the capability to actually parse and work with extras due to some internal API changes we made. I am interested in seeing this worked on and will look into it when I get the time.
dilyanpalauzov
changed the title
Graps does not include locally optional, but globally mandatory dependency
Graphs does not include locally optional, but globally mandatory dependency
Sep 29, 2024
What pipdeptree version are you using?
2.23.4
Are you running pipdeptree in a virtual environment?
Yes
Describe the problem
In my virtualenv I want to see which package is required from where, so that I can remove not needed anymore packages. That is, I want to check only on the top level, if I need the package and if I do not want it, I can assume that no package needs it, and it can be removed. Here a simplified example:
I have installed postorius, I have not installed cmarkgm, so the above output suggests, that I can remove cmarkgfm. But I cannot:
postorius’ pyproject.toml contains:
and readme_renderer’s pyproject.toml includes:
So
cmarkgfm
is an indirect dependency of postorius, but this is not shown in the graph ofpipdeptree
. In this case it is a global mandatory dependency, as it as a must to have according to Postorius.The installed ~/lib/python3.10/site-packages/postorius-1.3.13.dist-info/METADATA does contain
Requires-Dist: readme_renderer[md]
and the installed ~/lib/python3.10/site-packages/readme_renderer-44.0.dist-info/METADATA hasProvides-Extra: md Requires-Dist: cmarkgfm >=0.8.0 ; extra == 'md'
. So the dependency information is there, but is not utilized by pipdeptree.The text was updated successfully, but these errors were encountered: