Massenpaket-Updates mit Conda

216

Gibt es eine Möglichkeit (mithilfe des Conda-Updates), veraltete Pakete aufzulisten und (kompatible) Pakete in Anaconda auszuwählen oder in großen Mengen zu aktualisieren?

Es macht wenig Sinn, die Pakete einzeln zu aktualisieren, da es Hunderte davon gibt.

Afloz
quelle

Antworten:

355

Du willst conda update --all.

conda search --outdatedzeigt veraltete Pakete an und conda update --allaktualisiert sie (beachten Sie, dass Letzteres Sie nicht von Python 2 auf Python 3 aktualisiert, Ersteres jedoch Python als veraltet anzeigt, wenn Sie Python 2 verwenden).

asmeurer
quelle
Danke für die Antwort. Ich verwende Python 2. Ist es möglich, das veraltete für eine bestimmte installierte Version (py27_0) zu filtern? tut conda update allUpdates nur kompatible Version für meine py27 Umgebung?
Afloz
Ja, conda update --allinstalliert nur Pakete, die miteinander kompatibel sind, und aktualisiert Sie nicht von Python 2 auf Python 3.
Asmeurer
8
conda search --outdatedzeigt Ihnen alle verfügbaren Versionen jedes installierten UND veralteten Pakets, das ist in vielen Fällen etwas zu viel ,,, Ich persönlich bevorzuge die Verwendung conda update --all, das zeigt, was installiert werden soll, und fordert zur Bestätigung auf: Sie antworten Nund Sie haben einen Vertrag Liste veralteter Pakete.
Gboffi
4
conda update --allunterscheidet sich auch dadurch, conda search --outdateddass es über den Solver ausgeführt wird, was bedeutet, dass einige Pakete mit neueren Versionen möglicherweise nicht aktualisiert werden, wenn andere Pakete Abhängigkeitsbeschränkungen aufweisen (oder beispielsweise conda update --allnicht von Python 2.7 auf Python 3.4 aktualisiert werden).
Asmeurer
1
Ich habe gerade diesen Blog gefunden, in dem der Autor Jake VanderPlas einige Begriffserklärungen zu Anaconda und gibt conda. Es beantwortete viele Fragen, die ich hatte.
Celdor
15

Bevor Sie mit dem conda update --allBefehl fortfahren , aktualisieren Sie zuerst conda mit dem conda update condaBefehl, wenn Sie ihn längere Zeit nicht aktualisiert haben. Es ist mir passiert (Python 2.7.13 auf Anaconda 64 Bit).

thanvaf
quelle
64 Bit, meinst du?
Akarthik10
1
Zumindest hätte dies als Kommentar wahrscheinlich mehr Sinn gemacht als als Antwort.
Chill2Macht
2
"Es ist mir passiert", was ist mit dir passiert?
Gerrit
0
# list packages that can be updated
conda search --outdated

# update all packages prompted(by asking the user yes/no)
conda update --all

# update all packages unprompted
conda update --all -y
Naveen Kumar
quelle