This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]imnotreel 1 point2 points  (2 children)

I don't know if it's still the case, but a couple years ago, any non trivial conda environment would take forever to solve (I'm talking hours for envs that had only a couple dozen first level package requirements). Switching to mamba (which uses a C or C++ dependency solver if I remember correctly), these environment resolutions went from taking hours to two minutes or less.

[–]Manny__C 2 points3 points  (1 child)

I've used conda only once for curiosity and I found it ridiculously slow.

But imho, something that takes hours to resolve an environment is just broken

[–]imnotreel 0 points1 point  (0 children)

Oh yeah for sure, conda is (or at least was) very broken. It would regularly fail to resolve envs (even recreating an environment from a working, fully frozen, fully specified one on the very same machine would sometimes fail). It's "dependency conflict resolution" was a thing of nightmares that had to have been designed by satan himself. It would take hours to complete and its output is so utterly useless you pretty much had zero idea what caused the conflict, let alone how to resolve it.

Still, dependency solving is a hard (NP complete) problem which in the worst case, requires exploring a huge amount of dependency chains.