-
Notifications
You must be signed in to change notification settings - Fork 103
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
Potential package name confusion breaks conda-lock #253
Comments
There's actually logic to fulfill deps through a conda<->pip naming mapping which seems to work internally. Maybe that logic breaks somewhere later in the parser as the key above should have been converted to |
So I simply removed the reassignment of |
okay I think I've found the culprit: it's the |
Also just ran into this, although the issue was a bit flaky for me (would only show on some runs; seemed like a race condition).
which failed with |
I ran into a similar issue. I believe this happens when a single package in pypi maps to more than one package in conda. In my case, an explicit PIP package needed |
A few observations (I was digging into this for the following tiny reproducible example which is similar to the matplotlib one):
What seems to be happening is that:
Still thinking of ways of working around this/fixing it. |
I think I found a fix. I'll open a PR. Not sure it's the correct one but it solves the issue for me. |
I'm rooting for your PR. |
@PanayotisManganaris : thanks. Don't know how to move it forward much though. No developer seems to take it out and it is now out of date (I can probably update easily though). Hopefully your mention of it will get it back on the radar. Not a very heavy user but have been using this patched version internally and it works :) (so far). |
Before this patch, the following would fail: ``` channels: - conda-forge dependencies: - pip - dask - pip: - dask ``` The core issue seems to be that two Conda packages (`dask` and `dask-core`) both map to the `dask` pypi package. This was causing issues later on when assigning categories. This patch properly deals with multiple Conda packages per pip package and addresses the naming issue. I have verified that the above package specification works as well as the others listed in conda#253.
Hi @romain-intel , I confirm that it works for me (see #387 ) Thanks! Best regards |
For completeness, I believe there is some overlap with some of the issues mentioned in #179 |
The following name: test
channels:
- conda-forge
dependencies:
- pandas
- pip:
- sklearn-pandas==1.7.0 NOTE: previous edits mentioning otherwise were because of a |
This package is very old at this point and the pandas functionality has been rolled into scikit learn for a while now so this env should really not need to be created Glad it does work to fix it at least :) |
Hi,
I spent a couple of hours today on creating an environment.yml files that pulls in
pytorch
packages from thepytorch
channel:This seems to create a conda-lock.yml file without an issue. But if I add a pip dependencies section, and list a PIP package that depends on the
torch
package in PyPI, e.g.:I get the following exception:
I believe this is due to the weird fact that:
torch
andpytorch_revgrad
liststorch
as a dependency.pytorch
anaconda channel, the package is calledpytorch
The text was updated successfully, but these errors were encountered: