Mamba markets itself as a faster direct drop-in replacement for Conda. How could using Mamba instead of Conda as package manager for Anaconda be problematic?
I'm happy to inform you that there essentially are no strict disadvantages to using Mamba! It began in March 2019 as a thin wrapper around Conda, and has grown considerably by progressively rewriting Conda with equivalent new efficient C++ code. They've added Mamba exclusive features such as mamba repoquery
. Both Conda and Mamba use a BSD 3-Clause license, so no difference there. Like Conda, Mambda has good cross-platform support. All that said, there are a few caveats to note:
- Mamba is relatively new and unpopular compared to Conda. That means there are probably more undiscovered bugs, and that new bugs may take longer to be discovered. That said, the agility displayed by the Mamba developers makes me think they'd probably fix newly discovered bugs faster.
-
There are a considerable number of known bugs, although that's also true of Conda.
- Some of the aforementioned bugs are inconsistencies between Mambda and Conda. As Mamba is a rewrite of Conda, you can't be sure that you'll get exactly the same behaviour from it as you would from Conda. You can be the judge of how much this matters to you. Most Mamba users will never run into one of these inconsistencies.
- If you use Mamba, run into a bug, and report it, then those who are handling your bug report might not appreciate you using a package manager that they don't officially support. This will probably become less of an issue as time goes on.
- If you use Mamba inside of scripts (e.g. shell scripts, makefiles, etc.), then users of those scripts may run into problems if they have Conda but not Mamba. For most cases they'll simply be able to replace the command
conda
with mamba
, but if you use exclusive Mamba features, they'll have to install mamba
.
- Some organizations have approved the use of Conda, but not Mamba. In the scenario described above, this would mean users from these organizations would have to rewrite all of the
mamba
commands with conda
(i.e. installing Mamba isn't an option for these users unless they want to wait for their legal team and such to approve the use of Mamba), and if you use exclusive Mamba features, then they're just out of luck, and won't be able to run those commands.
- EDIT (2022-10-30): Previously the relative lack of institutional backing for Mamba was noted here, but in the time since this answer was initially written Mamba has received a great deal more support, and now I would consider this a non-issue.
All in all, these are fairly minor issues. I expect Mamba will continue to grow in popularity as time goes on, and may even have its code integrated into Conda in the future.