For m, on OS X, conda update --all
often downgrades libraries - along with updating many.
Is this usual? Or something possibly in my setup?
Earlier this year, it was pillow for many months.
Surprisingly, today it was several of the HDF5 related libraries, numba and llvmlite.
So conda update numba
brings numba back to the most recent version, and so on with the other 8 libraries, but why doesn't conda update --all
do this anyway?
Updates conda packages to the latest compatible version. This command accepts a list of package names and updates them to the latest versions that are compatible with all other packages in the environment. Conda attempts to install the newest versions of the requested packages.
tldr: It is not safe to do so unless you know for certain none of the other packages you have installed do not depend on those dependencies, or any other programs that use those packages will error out. thanks for the tip.
Update Conda Environments Using a YAML File Once you have created a conda environment, you can update it anytime by first activating the environment and then running the conda env update command. The example below updates the earth-analytics-python environment using the environment. yml file.
(Q) The feedstock for a package from conda-forge is updated, how long should it take to update on Anaconda Cloud? It depends on the queue, but a good rule of thumb is to wait at least 30 mins - 2 hours. If you don't see it after 24 hrs, please raise an issue.
It's a compatibility issue. Anaconda is a stable set of packages. When you update Anaconda, you update to this stable list.
However, when you update individual packages, they might cause incompatibility issues with the rest of the Anaconda distribution so they aren't considered stable. That's why when you use conda update --all
, it gets you to the latest stable Anaconda distribution, which might or might not have the version of the individual package you wanted.
See here: https://github.com/ContinuumIO/anaconda-issues/issues/39
Edit: This behavior has changed. It now tries to increase the version of all packages (except Python between major/minor version) such that no packages will be incompatible with each other.
See here: http://continuum.io/blog/advanced-conda-part-1#conda-update-all
Some libraries depend on specific lower versions for compatibility purposes. conda update --all
will try to update packages as much as possible, but it always maintains compatibility with the version restrictions in each package's metadata. Note that the anaconda
package does not come into play here (assuming you have a recent version of conda), because conda update --all
ignores it.
Unfortunately, it's not always easy to see what depends on what, but there are some tricks. One way is to pin each package to a version you want and running conda update --all
. It should generate an unsatisfiability hint that will give you an idea of what is causing the problem. Another way is to search through the package metadata.
For numba, I can suggest that the problem is likely related to numbapro. There are a few packages that depend on hdf5. You can use conda info <package>
to see the dependencies of a package (like conda info h5py
).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With