Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENH] - Integrate with conda-pypi for safer pip installs #845

Open
jaimergp opened this issue Jul 5, 2024 · 1 comment
Open

[ENH] - Integrate with conda-pypi for safer pip installs #845

jaimergp opened this issue Jul 5, 2024 · 1 comment

Comments

@jaimergp
Copy link
Member

jaimergp commented Jul 5, 2024

Feature description

With the first alphas of conda-pypi being published to conda-forge and PyPI, we are in a position to start experimenting with the integrations in conda-store.

I see two strategies possible:

  • The long-term, native support in conda-env
  • The short-term, hacked-together in conda-store

The long-term approach would be to wait for the native, plugin-based integrations in conda env directly, as described in this conda/conda issue. This won't be available in the upcoming 23.7.0, so the earliest would be 23.9.0.

In the meantime, we can experiment with how conda-pypi could replace the direct calls to pip in conda env. Assuming this is the action that gets called, the idea would be to parse the environment.yml ourselves and run the conda solves and the pip solves separately. conda-pypi should be able to provide a list of conda and PyPI packages to install after analyzing the pip section.

If we are currently running everything through conda-lock, then we need to reassess whether to:

  • Integrate with conda-lock (we would replace the poetry business upstream)
  • Stop relying on conda-lock for locks directly (but still provide the same kind of output file)

Value and/or benefit

conda-pypi centralizes the PyPI/conda ecosystem interfaces and aims to provide a better integration between the two. conda-pypi runs the pip solves and then saturates the conda solve with those packages found in the PyPI solve that are also available in the configured conda channels. It will also provide ways to identify file clobbering, incompatible compiled bits, and so on.

Anything else?

Comes from #661 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: New 🚦
Development

No branches or pull requests

2 participants