Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does "the following packages will be superseded by a higher priority channel" mean?

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 do not understand what this is telling 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?

(I am using anaconda version: 4.2.13 and Python 2.7.12)

like image 265
Chuck Avatar asked Jan 04 '17 10:01

Chuck


People also ask

Are conda-forge packages safe?

Is Conda Forge trustworthy? Yes.

What is conda-forge channel?

Conda-forge is community-led channel that provides latest conda packages for a wide-range of software. The defaults channel may not always contain all packages. There could be some missing packages or it may contain outdated packages.

What is conda-forge for?

conda-forge is a community led collection of recipes, build infrastructure and distributions for the conda package manager.

Is conda safe?

So the answer to your question is: yes, it is safe. Go ahead and install it from the official source/website.


1 Answers

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.

like image 118
Jonas Adler Avatar answered Sep 22 '22 10:09

Jonas Adler