问题
Disclaimer: I am an ignorant Linux + Anaconda noob.
Now, with that out of the way: I am trying to install fuzzywuzzy onto my Anaconda distribution in 64 bit Linux. When I do this, it tries to change my conda
, and conda-env
to conda-forge
channels. As follows:
I search anaconda for fuzzy wuzzy by writing:
anaconda search -t fuzzywuzzy
This showed that the most up to date version available for anaconda on 64 bit Linux is 0.13 provided on the channel conda-forge
.
To install, within the command line, I type:
conda install -c conda-forge fuzzywuzzy=0.13.0
I get the following output:
The following packages will be downloaded:
package | build
---------------------------|-----------------
conda-env-2.6.0 | 0 1017 B conda-forge
python-levenshtein-0.12.0 | py27_0 138 KB conda-forge
conda-4.2.13 | py27_0 375 KB conda-forge
fuzzywuzzy-0.11.0 | py27_0 15 KB conda-forge
------------------------------------------------------------
Total: 528 KB
The following new packages will be INSTALLED:
fuzzywuzzy: 0.11.0-py27_0 conda-forge
python-levenshtein: 0.12.0-py27_0 conda-forge
The following packages will be SUPERCEDED by a higher-priority channel:
conda: 4.2.13-py27_0 --> 4.2.13-py27_0 conda-forge
conda-env: 2.6.0-0 --> 2.6.0-0 conda-forge
Proceed ([y]/n)?
I have no idea what this is telling me: I'm hoping somebody can enlighten me.
What does this mean? Am I right in thinking that this is changing my default package manager channels? Can this be reversed if I go ahead and install it? Is there any way to complete the installation without changing the default channel? Or is favouring the superceding channels something that I should be doing?
I don't want to change my distribution just for one module, or cause further headaches.
This question: https://github.com/conda/conda/issues/2898 sounds like its telling me that I should just let it happen. What do?
As you can see, I have no idea what I am doing; I defer to those with greater knowledge. Many thanks.
(I am using anaconda version: 4.2.13 and Python 2.7.12)
回答1:
When you ask conda to install fuzzywuzzy
from conda-forge, fuzzywuzzy
indicates that it needs conda
and conda-env
. Conda detects that you already have these installed, but it also knows that these were installed from the default channel and not conda-forge.
Now, as a user you might expect that 4.2.13-py27_0
in the default channel and in the conda-forge channel to be exactly the same (and they should) but conda can not guarantee that this is the case. The developers could very well have uploaded different packages to the default and conda-forge channels.
This would cause some really shady bugs, and in order to avoid those conda prefers to install the dependencies from the same channel as the new package. This is what the message indicates, a package getting replaced with the same package, but from a different channel which you gave higher priority by using -c conda-forge
.
来源:https://stackoverflow.com/questions/41461582/what-does-the-following-packages-will-be-superseded-by-a-higher-priority-channe