web-dev-qa-db-ja.com

次のパッケージは、優先度の高いチャネルによって置き換えられます

パッケージを更新しようとすると、常にこのメッセージが表示されます。通常は続行するだけで、通常はすべてうまくいきます。しかし、意図したよりもはるかに複雑なAnaconda環境を誤って作成してしまったのではないかと心配しています。このスレッド( 「次のパッケージはより高い優先度のチャネルに取って代わられる」とはどういう意味ですか? )は、他のチャネルに高い優先度を与えることに言及しています。それが私がしたことである場合、どうすればそれを元に戻すことができますか?

メッセージの例を次に示します。

conda install -c anaconda flask=0.12
Fetching package metadata .............
Solving package specifications: .

Package plan for installation in environment C:\Users\HMGSYS\Anaconda3:

The following packages will be SUPERCEDED by a higher-priority channel:

    conda:     4.3.8-py35_0  --> 4.2.13-py35_0 anaconda
    conda-env: 2.6.0-0       --> 2.6.0-0       anaconda

Proceed ([y]/n)?

ただし、バージョン番号を指定しないと、flask version:

 conda install -c anaconda flask
Fetching package metadata .............
Solving package specifications: .

Package plan for installation in environment C:\Users\HMGSYS\Anaconda3:

The following packages will be UPDATED:

    anaconda:  4.3.0-np111py35_0 --> custom-py35_0 anaconda

The following packages will be SUPERCEDED by a higher-priority channel:

    conda:     4.3.8-py35_0      --> 4.2.13-py35_0 anaconda
    conda-env: 2.6.0-0           --> 2.6.0-0       anaconda
    flask:     0.12-py35_0       --> 0.11.1-py35_0 anaconda

Proceed ([y]/n)?

しかし、私の主な質問はflaskバージョンについてではなく、複数のチャネルになってしまうために何をしたか、そしてどのように単純に1つにまとめるかを尋ねています。 .condarcファイルを変更しますが、(デフォルトの)ファイルがないので、問題が発生しているとは思いません。

これが役立つ場合、conda情報からの私の出力は次のとおりです。

現在のcondaインストール:

           platform : win-64
      conda version : 4.3.8
   conda is private : False
  conda-env version : 4.3.8
conda-build version : 2.1.3
     python version : 3.5.2.final.0
   requests version : 2.12.4
   root environment : C:\Users\HMGSYS\Anaconda3  (writable)
default environment : C:\Users\HMGSYS\Anaconda3
   envs directories : C:\Users\HMGSYS\Anaconda3\envs
      package cache : C:\Users\HMGSYS\Anaconda3\pkgs
       channel URLs : https://repo.continuum.io/pkgs/free/win-64
                      https://repo.continuum.io/pkgs/free/noarch
                      https://repo.continuum.io/pkgs/r/win-64
                      https://repo.continuum.io/pkgs/r/noarch
                      https://repo.continuum.io/pkgs/pro/win-64
                      https://repo.continuum.io/pkgs/pro/noarch
                      https://repo.continuum.io/pkgs/msys2/win-64
                      https://repo.continuum.io/pkgs/msys2/noarch
        config file : None
       offline mode : False
         user-agent : conda/4.3.8 requests/2.12.4 CPython/3.5.2 Windows/10 Windows/10.0.14393
8
jss367

あなたが書いているコマンドは

conda install -c anaconda flask

conda installはCondaにパッケージをインストールするように指示します(明らかに)。flaskはパッケージの名前です。 .condarcファイルにチャネルがリストされていない場合でも、特定のチャネルを使用し、それに最高の優先度を与えるようにcondaに指示しています。そのコマンドの-c anaconda部分で。したがって、conda installはWebにアクセスし、anacondaチャネルからのパッケージを優先するように指示していることを考慮して、可能な限り最適なパッケージを見つけます。ただし、anacondaチャネルにはflask=0.12がありません。(プラットフォーム用に)最も高いバージョンはflask=0.11.1です。そのチャネルで利用可能なすべてのバージョンのリストについては、ここを参照してください: https://anaconda.org/anaconda/flask/files

だからここで何が起こっているのですか

conda install -c anaconda flask=0.12

anacondaチャネルから見つけることができるすべてのパッケージを探しに行きます。プラットフォームのflask=0.12が見つからないため、インストールされているため、何も実行されません。ただし、そのチャネルでcondaconda-envのバージョンが検出されるため、anacondaチャネルからダウンロードすることにします。これは、優先度が最も高いためです。バージョンが低くなっています。

conda install -c anaconda flask

また、anacondaチャネルから見つけることができるすべてのパッケージを探しに行きます。 flaskのバージョンを指定しなかったため、condaは、指定したチャネルで見つけられる最新のバージョンを探します。別のチャネル(この場合はflaskチャネル)からすでにdefaultsがインストールされているため、anacondaチャネルからバージョンをインストールすると現在のバージョンよりも優先されます。

12
darthbith