tweag / FawltyDeps

Python dependency checker
Other
188 stars 14 forks source link

Conda support #447

Open jab opened 1 month ago

jab commented 1 month ago

I noticed that "What about Conda?" appeared in #195 a while ago, but found no other mentions since then. It seemed worth having a dedicated issue for this, if only to close as "not planned", though hopefully there is still interest and it wouldn't end up being too hard.

Thanks for maintaining FawltyDeps! ❤️

mknorps commented 1 month ago

Thank you @jab for raising this matter. We were waiting with Conda support for exactly the issue like you raised - we wanted to see if people need the Conda support. We will create a separate issue and discuss its prioritization this week.

Would you find it useful for your workflow? Or do you know other groups that would benefit from Conda support in FawltyDeps?

Thanks for maintaining FawltyDeps! ❤️

❤️ Thank you! I hope it helps you save time and you enjoy using it :)

All contributions of all kinds are warmly welcomed :)

jab commented 1 month ago

Thank you @mknorps, fantastic you're open to this. Yes, I would find this useful and I know many other groups that would too. For example, in the past I worked on the SDLC team of a large organization that used Conda, and I was responsible for providing code quality tooling, including standardized pre-commit hooks. FawltyDeps would provide a lot of value in that sort of solution, and I know there are lots of other Conda users and organizations that use Conda that would benefit from FawltyDeps.

jherland commented 1 week ago

I've started trying to map out what it would mean to support Conda in FawltyDeps. See issues #450, #451, #452 for details on each of the aspects I've researched so far. I would be thrilled if someone with Conda experience would have a look at these and provide feedback on what is/isn't necessary to support, and if there are obvious things we've overlooked.

ctcjab commented 1 week ago

(Hi from my work account.) I would propose to start with support for just some environment.yml that the user can specify (#452).

(And while we're listing related issues, maybe worth mentioning that pixi allows users to declare conda dependencies in pyproject.toml, especially in light of https://github.com/conda/conda-lock/issues/615.)

Also interested in feedback from other users here.

jherland commented 1 week ago

Thanks for bringing Pixi to our attention. I've created a couple more issues to explore how Pixi fits into the Conda picture, and what effect it might have on FawltyDeps.

Whether or not Pixi is (yet) a prominent alternative to Conda, I'm starting to see that it might benefit us to begin with adding support for Pixi before we try to tackle the rest of the Conda issues:

ctcjab commented 1 week ago

Thanks, sounds good. FWIW, I think you can consider #450 out of scope. That should hopefully simplify things significantly.