Hypothetical situation: env1 created in month1 with pkg-1.2.3 in recipe yml. pkg-1.2.3-buildX is latest build and so that is the one installed and stored in pkgs cache. env2 created in month2 with pkg-1.2.3 in recipe yml. pkg-1.2.3-buildY is latest build and so that is the one installed and stored in pkgs cache. When this happens for many such pkgs, multiple builds installed leads to massive bloat. It’s very frustrating. Does anyone know of an easy way to instruct conda to prioritize installation of builds from the cache, other than the obvious of explicitly stating the build in the yml, instead of installing the latest from a channel?
I don’t think this is currently possible given the current configuration options, but this does sound like a very reasonable feature request.
Just for clarification, are you running into this issue while using “conda” or “conda-build”?
I really appreciate your reply. The situation is what I’ve seen with conda; although, something similar probably happens with conda-build. I’ll go ahead and submit this as a feature request. There’s also something else that leads to bloat for which I may create another post. It’s the situation in which pkg-1.2.3-buildX is in the pkgs cache and also installed to one or several envs. In this situation, they all share the same hardlink. After one cleans the pkgs cache and then later a new env requires pkg-1.2.3-buildX, that package is re-downloaded, and the new env shares a hardlink with the newly cached package; however, those hardlinks are now different than the hardlinks from the initial package in the cache which are those in the initial envs. Obviously the original intention of the conda developers was to use hardlinks to reduce bloat; however, there seem to be several things that sabotage that plan.