306 votes

Comment puis-je mettre à jour Anaconda ?

J'ai installé Anaconda sur mon ordinateur et j'aimerais le mettre à jour. Dans Navigator, je peux voir qu'il y a plusieurs paquets individuels qui peuvent être mis à jour, mais aussi un anaconda paquet qui parfois a un numéro de version et parfois dit custom . Comment dois-je procéder ?

enter image description here

4 votes

La plupart des réponses suggèrent conda update [-n root] -v anaconda mais il propose de DIMINUER mon revenu. python: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0 . Il semble très cassé.

481voto

IanSR Points 3158

Ce que 95% des gens veulent réellement

Dans la plupart des cas, ce que vous voulez faire lorsque vous dites que vous voulez mettre à jour Anaconda est d'exécuter la commande :

conda update --all

(Mais cela devrait être précédé de par conda update -n root conda pour que vous ayez la dernière conda version installée)

Cela mettra à jour tous les paquets de l'environnement actuel à la dernière version - avec la réserve que cela peut utiliser une version plus ancienne de certains paquets afin de satisfaire les contraintes de dépendance (souvent cela ne sera pas nécessaire et quand cela sera nécessaire, le solveur de plan de paquets fera de son mieux pour minimiser l'impact).

Cette opération doit être exécutée à partir de la ligne de commande, et la meilleure façon d'y parvenir est d'utiliser le navigateur Anaconda, puis l'onglet "Environnements", et de cliquer sur le triangle à côté de l'icône de l'environnement. root en sélectionnant "Open Terminal" :

Open terminal from Navigator

Cette opération ne mettra à jour que le seul environnement sélectionné (dans ce cas, l'environnement root ). Si vous avez d'autres environnements que vous souhaitez mettre à jour, vous pouvez répéter le processus ci-dessus, mais cliquez d'abord sur l'environnement. Lorsqu'il est sélectionné, un marqueur triangulaire apparaît sur la droite (voir l'image ci-dessus, étape 3). Ou à partir de la ligne de commande, vous pouvez fournir le nom de l'environnement ( -n envname ) ou chemin ( -p /path/to/env ), par exemple pour mettre à jour votre dspyr de l'environnement de la capture d'écran ci-dessus :

conda update -n dspyr --all

Mise à jour des paquets individuels

Si vous souhaitez uniquement mettre à jour un paquet individuel, il vous suffit de cliquer sur la flèche bleue ou le numéro de version bleu dans Navigator, par exemple pour astroid ou astropy dans la capture d'écran ci-dessus, et cela marquera ces paquets pour une mise à niveau. Lorsque vous avez terminé, vous devez cliquer sur le bouton "Apply" :

Apply to update individual packages

Ou à partir de la ligne de commande :

conda update astroid astropy

Mise à jour uniquement des paquets de la distribution standard d'Anaconda

Si vous ne vous souciez pas des versions des paquets et que vous voulez juste "le dernier ensemble de tous les paquets de la distribution standard Anaconda, tant qu'ils fonctionnent ensemble" alors vous devriez Jetez un coup d'œil à cette liste .

Pourquoi mettre à jour le paquet Anaconda est presque toujours une mauvaise idée

Dans la plupart des cas, la mise à jour du paquet Anaconda dans la liste des paquets aura un résultat surprenant : vous pouvez en fait déclassement de nombreux paquets (en fait, c'est probable s'il indique la version en tant que custom ). Le résumé ci-dessus fournit des détails.

Exploiter les environnements Conda

Votre root n'est probablement pas un bon endroit pour essayer de gérer un ensemble exact de paquetages : ce sera un espace de travail dynamique avec de nouveaux paquetages installés et des paquetages mis à jour aléatoirement. Si vous avez besoin d'un ensemble exact de paquets, créez un environnement conda pour les contenir. Grâce au cache des paquets de Conda et à la façon dont les liens entre fichiers sont utilisés, cette opération est typiquement i) rapide et ii) ne consomme que très peu d'espace disque supplémentaire. Par exemple

conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk

Le site documentation conda contient plus de détails et d'exemples.

pip, PyPI, et setuptools ?

Rien de tout cela n'aidera à mettre à jour les paquets qui ont été installés à partir de PyPI par l'intermédiaire de pip ou tout paquet installé en utilisant python setup.py install . conda list vous donnera quelques indications sur les paquets Python basés sur pip que vous avez dans un environnement, mais il ne fera rien de spécial pour les mettre à jour.

Utilisation commerciale d'Anaconda ou d'Anaconda Enterprise

C'est à peu près la même chose, à l'exception du fait que vous ne pourrez peut-être pas mettre à jour le site Web de l'entreprise. root s'il a été installé par quelqu'un d'autre (disons pour /opt/anaconda/latest ). Si vous n'êtes pas en mesure de mettre à jour les environnements que vous utilisez, vous devriez pouvoir cloner et ensuite mettre à jour :

conda create -n myenv --clone root
conda update -n myenv --all

4 votes

MattSchmatt, assure-toi de le faire. conda update conda également. Conda a beaucoup évolué l'année dernière, et nous avons notamment eu une version fin septembre 2017 qui a introduit de nombreuses améliorations. Si conda update --all casse des choses (ce qui, historiquement, était presque certain), alors c'est un bogue que vous devez signaler au gestionnaire de problèmes GitHub de conda -- aujourd'hui cette opération ne devrait pas casser tous les composants existants (à condition que conda soit à jour).

7 votes

Je devais faire conda update -n root conda au lieu de ce qui est mentionné ci-dessus pour que cela fonctionne.

13 votes

Le site conda update --all n'est pas ce que 95% des gens veulent. Cela peut conduire à un environnement instable. La réponse de l'utilisateur3056882 est plus sûre.

116voto

Cardin Points 327

Si vous essayez de mettre à jour votre version d'Anaconda vers une nouvelle, vous remarquerez que l'exécution du nouvel installateur ne fonctionnera pas, car il se plaint que le répertoire d'installation n'est pas vide.

Vous devez donc utiliser conda pour effectuer la mise à niveau, comme indiqué dans le document documents officiels :

conda update conda
conda update anaconda

Sous Windows, si vous avez fait une installation "pour tous les utilisateurs", il peut être nécessaire d'exécuter Anaconda à partir d'une invite avec des privilèges d'administrateur.

Simply right click on Anaconda Prompt in the start menu

Cela permet d'éviter l'erreur :

ERROR conda.core.link:_execute(502) : Une erreur s'est produite lors de la désinstallation du paquet 'defaults::conda-4.5.4-py36_0'. PermissionError(13, 'Access is denied')

0 votes

Les docs disent conda install anaconda .

51voto

H.Latte Points 455

Ouvrez "command or conda prompt" et exécutez :

conda update conda
conda update anaconda

Il est bon d'exécuter les deux commandes deux fois (l'une après l'autre) pour être sûr que tous les fichiers de base sont mis à jour.

Cela devrait vous remettre sur les dernières 'releases', qui contiennent des paquets sélectionnés par les gens de Continuum pour fonctionner ensemble.

Si vous souhaitez que la dernière version de chaque paquet soit exécutée (ce qui peut conduire à un problème de type environnement instable ) :

conda update --all 

J'espère que cela vous aidera.

Sources :

11 votes

Si vous préférez un environnement stable plutôt que de disposer de la dernière version de chaque paquet, passez l'étape 4. conda update anaconda devrait vous remettre sur l'une des "versions", qui contient des paquets sélectionnés par les gens de Continuum pour fonctionner ensemble.

0 votes

Merci rudolfbyker. J'ai modifié la réponse pour tenir compte de votre commentaire.

0 votes

Si vous obtenez l'erreur "package not installed", essayez conda install anaconda .

9voto

Full Array Points 383

Voici la meilleure pratique (selon mon humble expérience). En sélectionnant ces quatre mettront également à jour toutes les autres dépendances vers les versions appropriées, ce qui vous aidera à maintenir la cohérence de votre environnement. Ce dernier point est un problème commun que d'autres ont exprimé dans des réponses précédentes. Cette solution n'a pas besoin du terminal.

Updating and upgrading Anaconda3 or Anaconda2 best practice

6voto

InLaw Points 578

Si vous avez des difficultés à passer, par exemple, de la version 3.3.x à la version 4.x (conda update conda "ne fonctionne pas" pour passer à la version suivante), essayez d'être plus spécifique comme ceci :

conda install conda=4.0 (or conda install anaconda=4.0)

https://www.anaconda.com/blog/developer-blog/anaconda-4-release/

0 votes

Peut-être, mais ne considéreriez-vous pas que c'est complètement cassé, comme un gadget ?

0 votes

La "continuité" des versions est un standard, par exemple dans le développement (web). Comme toujours, si vous voulez que tout soit aligné et réévalué, vous devez tout reconstruire avec les versions mises à jour. En général, un "conda update --all" avec les mises à jour du fichier ../conda/../pinned devrait également fonctionner correctement (attention aux installations supplémentaires de pip !).

2 votes

Lorsque nous devons indiquer manuellement à l'outil de mise à jour la version spécifique à mettre à jour, il ne s'agit plus d'un outil de mise à jour, mais d'un installateur défectueux doté d'une jolie interface graphique. En général conda update --all casse tout, comme le dit leur propre FAQ, et dans mon cas, il propose allègrement de rétrograder mon python de 3.7.0 à 3.6.6 (bien qu'il sache que 3.7.1 est disponible).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X