Per rispondere più precisamente alla domanda:
conda (che è conda per miniconda come per Anaconda) si aggiorna quasi esclusivamente all'interno di una versione specifica di un pacchetto -> maggiore e minore. Questo è il paradigma.
Nella documentazione troverai "NOTA: Conda aggiorna alla versione più alta della sua serie, quindi Python 2.7 aggiorna alla versione più alta disponibile nella serie 2.x e 3.6 alla versione più alta disponibile nella serie 3.x".
doc
Se Wang non fornisce un esempio riproducibile, si può solo aiutare. ad esempio, è davvero l'ambiente virtuale che vuole aggiornare o Wang potrebbe ottenere ciò che desidera
conda update -n ENVIRONMENT --all
* PER FAVORE leggi i documenti prima di eseguire "update --all"! Questo non porta ad un aggiornamento di tutti i pacchetti per natura. Poiché conda tenta di risolvere la relazione di dipendenze tra tutti i pacchetti nel proprio ambiente, ciò può portare a pacchetti DOWNGRADED senza avvisi.
Se vuoi solo aggiornare quasi tutto, puoi creare un file pin
echo "conda ==4.0.0" >> ~/miniconda3/envs/py35/conda-meta/pinned
echo "numpy 1.7.*" >> ~/miniconda3/envs/py35/conda-meta/pinned
prima di eseguire l'aggiornamento.
Se in seguito desideri ignorare il file nel tuo env per un aggiornamento, puoi fare:
conda update --all --no-pin
Non dovresti aggiornare - tutti. Se ne hai bisogno, tuttavia, puoi risparmiare questo test in un ambiente clonato.
Il primo passo dovrebbe sempre essere il backup delle specifiche correnti:
conda list -n py35 --explicit
(ma anche così non c'è sempre un collegamento alla fonte disponibile - come per le estensioni jupyterlab)
Successivamente è possibile clonare e aggiornare:
conda create -n py356 --clone py35
conda activate py356
conda config --set pip_interop_enabled True # for conda>=4.6
conda update --all
conda config
aggiornare:
Perché l'idea di conda è piacevole ma non funziona molto bene per ambienti complessi, personalmente preferisco la combinazione di nix-shell (or lorri) and poetry
[come pip / conda superiore .-)] ( intro poetry2nix ).
Infine, se hai davvero bisogno di lavorare con pacchetti non compatibili a causa delle sue dipendenze, è possibile con tecnologie come NixOS / nix-pkgs .
conda update --all --alt-hint
vedere se dà qualche output ... O semplicemente provare aconda update scipy
vedere cosa succede (forse con la--alt-hint
bandiera)