Mises à jour groupées de packages à l'aide de Conda

216

Existe-t-il un moyen (à l'aide de la mise à jour de conda) de répertorier les packages obsolètes et de sélectionner ou de mettre à jour en bloc les packages (compatibles) dans Anaconda?

Cela n'a pas beaucoup de sens de mettre à jour les packages individuellement car il y en a des centaines.

Afloz
la source

Réponses:

355

Tu veux conda update --all.

conda search --outdatedaffichera les packages obsolètes et les conda update --allmettra à jour (notez que ce dernier ne vous mettra pas à jour de Python 2 vers Python 3, mais le premier montrera Python comme étant obsolète si vous utilisez Python 2).

asmeurer
la source
Merci d'avoir répondu. J'utilise python 2. Est-il possible de filtrer les obsolètes pour une version installée particulière (py27_0)? ne conda update allmet à jour que la version compatible pour mon environnement py27?
Afloz
Oui, conda update --alln'installera que des packages compatibles les uns avec les autres et ne vous mettra pas à jour de Python 2 vers Python 3.
asmeurer
8
conda search --outdatedvous montre toutes les versions disponibles de chaque package installé ET obsolète, c'est un peu trop dans de nombreux cas ,,, Personnellement, je préfère utiliser conda update --all, qui montre ce qui va être installé et invite à la confirmation: vous répondez Net vous avez un compact liste des packages obsolètes.
gboffi
4
conda update --alldiffère également du conda search --outdatedfait qu'il s'exécute via le solveur, ce qui signifie que certains packages qui ont des versions plus récentes peuvent ne pas être mis à jour si d'autres packages ont des restrictions de dépendance (ou, par exemple, conda update --allne seront pas mis à jour de Python 2.7 à Python 3.4).
asmeurer
1
Je viens de trouver ce blog où l'auteur Jake VanderPlas donne quelques explications de termes concernant Anaconda et conda. Il a répondu à de nombreuses questions que j'avais.
Celdor
15

Avant de passer à la conda update --allcommande, mettez d'abord à jour conda avec la conda update condacommande si vous ne l'avez pas mise à jour depuis longtemps. Cela m'est arrivé (Python 2.7.13 sur Anaconda 64 bits).

thanvaf
la source
64 bits, tu veux dire?
akarthik10
1
À tout le moins, cela aurait probablement été plus logique comme commentaire que comme réponse.
Chill2Macht
2
"Ça m'est arrivé", qu'est - ce qui vous est arrivé?
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
la source