There are many different tools to manage Python application environments Pip3, Anaconda, Poetry, Mamba, Miniforge and so on… The cool part is that developers have choices to make on how to manage their packages and dependencies. Today I am writing about an issue I encountered during Python environment update with miniforge. First will be a short story about how we were choosing an environment tool with a team. We started with conda as our project is of data science research descent. But It began to overload CPU and network resources on a remote machine so finally, it got stuck. And the next choice we made was mamba (because it is a lightweight conda, Huh!?). It was definitely working better, but the machine was still hanging from time to time. After that we installed and started to use miniforge. It created a significantly improved experience. It started a period of relaxation. Then some time we were expanding our software environment and infrastructure. And we finally got into a new trouble. “Collecting package metadata (repodata.json): | Killed” responded miniforge on the command to update… Which also was quite a bit shocking! The thing is that miniforge could not load packages when Postgresql and MongoDB work in the same time during an environment update. It sounds like a joke! I had to stop Postgresql and MongoDB services to start the environment update with miniforge 😄
The next step is to try micromamba. That means we are still in searches and like in X-Files TV show: The Truth is Out There…