A PyPI resolver library in Rust

This is very cool and seems relevant to some recent packaging discussions [1].

It’s cool that the solver works with both indexes. I’m curious, do you think there’s a way to cross the conda-forge / PyPI boundary while resolving? I’ve been thinking about this lately and it seems doable but there are some potential pitfalls. One obvious one is that the package names aren’t exactly 1-to-1, but I don’t know how often.

I’m thinking of the scenario where I want to install A from PyPI and it requires B which is on both PyPI and conda-forge. conda install A doesn’t work because A isn’t there. pip install A will install B from PyPI (let’s assume I don’t want to do that for some reason).

Right now the solution is conda install B; pip install A but it’d be great if a tool could figure that out on its own. There are a lot of recipes on conda-forge that could be removed[2] if conda knew to install from PyPI when needed.


  1. e.g. this one and this one ↩︎

  2. lessening the small burden of updating versions and so on ↩︎