conda-incubator / conda-tree

conda dependency tree helper
MIT License
152 stars 12 forks source link

including build with namespace #25

Closed rootsmusic closed 4 months ago

rootsmusic commented 4 months ago

My environment has two versions of the same package, with the only difference being their channel. I want to investigate why the same package was installed redundantly. However, conda tree doesn't recognize the build when I include it with the namespace. I've tried the following:

rvalieris commented 4 months ago

Hello, can you give me more details as to what are you trying to do exactly ?

My environment has two versions of the same package, with the only difference being their channel.

I'm not sure about this, but I think installing two packages with the same name shouldn't be possible, conda should be replacing one for the other.

conda tree assumes this, so when it builds the package tree it uses the package name as a unique key.

rootsmusic commented 4 months ago

I'm not sure about this, but I think installing two packages with the same name shouldn't be possible, conda should be replacing one for the other.

@rvalieris I thought that conda shouldn't install duplicates too, until discovering the following builds in my environment. So I'd like conda-tree to investigate whether one of these builds can be removed without breaking other packages.

Name                    Version                       Build    Channel
importlib-metadata        6.7.0                pyha770c72_0    intel
importlib_metadata        6.7.0                  hd8ed1ab_0    conda-forge
rvalieris commented 4 months ago

ahh, I just noticed these two package aren't actually duplicates, one uses a dash -, the other uses underline _

I'm not sure why in your case they are coming from different channels but you can check which package depends on those with these commands:

$ conda tree whoneeds -r -t importlib-metadata

$ conda tree whoneeds -r -t importlib_metadata
rootsmusic commented 4 months ago

Sorry, my eyesight overlooked it.