TL;DR: les conflits de dépendance
Vous avez raison:
conda update --all
est en fait le chemin à parcourir. Conda essaie toujours de mettre à niveau les paquets de la version la plus récente de la série (à dire avec Python 2.x ou 3.x). Mais il est possible qu'il existe des conflits de dépendance (qui de prévenir une nouvelle mise à niveau). Conda généralement avertit très explicitement, si elles se produisent.
par exemple, X implique Y <5.0, donc Y aura jamais de >= 5.0
C'est pourquoi vous 'ne peut pas' upgrate tous.
Compte tenu de votre mise à jour: Vous pouvez mettre à niveau à chacune d'elles séparément, mais cela ne sera pas seulement inclure une mise à niveau, mais aussi un abaissement de la notation d'un autre paquet. Dire, à ajouter à l'exemple ci-dessus:
X > 2.0 requiert Y < 5.0, X < 2.0 requiert Y > 5.0
Si la mise à niveau Y > 5.0 implique le déclassement X < 2.0 et vice versa.
(c'est un exemple pédagogique, bien sûr, mais c'est la même chose dans la réalité, habituellement juste plus compliqué dépendances et sous-dépendances)
Si vous ne pouvez toujours pas de mise à niveau de tous en faisant les mises à jour séparément; les dépendances sont tout simplement pas satisfiable plus tôt ou plus tard, une mise à niveau mise à niveau inférieur déjà mis à niveau package de nouveau. Ou de casser la compatibilité des paquets (qui d'habitude vous ne voulez pas!), ce qui n'est possible que par référence explicitement l' ignorer-dépendances et de la force-commande. Mais c'est seulement à pirater votre chemin autour de questions, certainement pas la normale à l'utilisateur de cas!