mamba

2025-12-10 0 567

Mamba: The Fast Cross-Platform Package Manager

part of mambaorg
Package Manager mamba Package Server quetz

mamba

mamba is a reimplementation of the conda package manager in C++.

  • parallel downloading of repository data and package files using multi-threading
  • libsolv for much faster dependency solving, a state of the art library used in the RPM package manager of Red Hat, Fedora and OpenSUSE
  • core parts of mamba are implemented in C++ for maximum efficiency

At the same time, mamba utilizes the same command line parser, package installation and deinstallation code and transaction verification routines as conda to stay as compatible as possible.

mamba is part of the conda-forge ecosystem, which also consists of quetz, an open source conda package server.

You can read our announcement blog post.

micromamba

micromamba is the statically linked version of mamba.

It can be installed as a standalone executable without any dependencies, making it a perfect fit for CI/CD pipelines and containerized environments.

See the documentation on micromamba for details.

mamba v.s. micromamba

mamba has to be preferred when:

  • libmambapy or libmamba is used by other software in the same environment.
  • Scenarios where regular updates to libraries are required (especially for security).
  • Environments are focused on reducing disk space usage for dependencies.

micromamba has to be preferred when:

  • Relying a single self-contained executable is required.
  • A miniforge distribution is not present.
  • Usage requires minimal runtime.

Installation

Please refer to the mamba
and micromamba installation guide in the documentation.

Additional features in Mamba and Micromamba

mamba and micromamba come with features on top of stock conda.

repoquery

To efficiently query repositories and query package dependencies you can use mamba repoquery or micromamba repoquery.

See the repoquery documentation for details.

Installing lock files

micromamba can be used to install lock files generated by conda-lock without having to install conda-lock.

Simply invoke micromamba create with the -f option, providing an environment lockfile whose name ends with
-lock.yml or -lock.yaml; for instance:

micromamba create -n my-env -f conda-lock.yml

setup-micromamba (setup-miniconda replacement)

setup-micromamba is a replacement for setup-miniconda that uses micromamba.

It can significantly reduce your CI setup time by:

  • Using micromamba, which takes around 1 s to install.
  • Caching package downloads.
  • Caching entire conda environments.

Differences with conda

While mamba and micromamba are generally a drop-in replacement for conda there are some differences:

  • mamba and micromamba normalize MatchSpec strings to the simplest form, whereas conda use a more verbose form
    This can lead to slight differences in the output of conda env export and mamba env export.

Development installation

Please refer to the instructions given by the official documentation.

API and ABI stability

The Mamba project uses semantic versioning of the form MAJOR.MINOR.PATCH.
While we try to keep things stable for users, we also need to make breaking changes to improve
Mamba and reduce technical debt.
Future versions of Mamba may give stronger guarantees.

libmamba (C++)

We are not aware of consumers of the C++ API, so we give ourselves room for improvements.
For libmamba, the term backward compatible is understood as follows:

  • ABI backward compatible means that you can replace the library binary files without recompiling
    your code with the updated headers.
    The observed behavior will be the same, except for bugs (disappearing, hopefully) and performance.
  • API backward compatible means that you must recompile your code with the new library
    version code, but you won\’t need to change your code, just re-build it.
    This applies as long as you did not use any declaration understood to be private, for instance
    in the detail sub-namespaces.
    The observed behavior will be the same, except for bugs (disappearing, hopefully) and performance.
    When declarations are deprecated but not removed and still functional, we consider it also
    backward compatible, as only the observed behavior during compilation changes.

With this in mind, libmamba offers the following guarantees:

  • PATCH releases are API and ABI backward compatible;
  • MINOR releases are API compatible for declarations in mamba/api,
    They can break API elsewhere and ABI anywhere;
  • MAJOR releases make no guarantees.

libmambapy (Python)

For libmambapy, the term API backward compatible implies that your Python code will work the
same for a newer version of libmambapy as long as you did not use any declaration understood to
be private, for instance accessed with a name starting with an _.
The observed behavior will be the same, except for bugs (disappearing, hopefully) and performance.
When declarations are deprecated but not removed and still functional, we consider it also
backward compatible, as the behavior is only observable when activating Python
DeprecationWarning, which is usually only activated in development.

With this in mind, libmambapy offers the following guarantees:

  • PATCH releases are API backward compatible;
  • MINOR releases are API backward compatible;
  • MAJOR releases make no guarantees.

mamba and micromamba (executables)

For executables, the term backward compatible applies to programmable inputs and outputs and means
that your code (including shell scripts) will work with newer versions of the executable without
modifications.
Programmable inputs/outputs include executable name, command line arguments, configuration files,
environment variables, JSON command line outputs, and files created.
It excludes human-readable output and error messages, and thus deprecation warnings written
in the human-readable output.

With this in mind, mamba and micromamba offer the following guarantees:

  • PATCH releases are backward compatible;
  • MINOR releases are backward compatible;
  • MAJOR releases make no guarantees.

Support us

Only mamba and micromamba 2.0 and later are supported and are actively developed.

The 1.x branch is only maintained for addressing security issues such as CVEs.

For questions, you can also join us on the QuantStack Chat
or on the Conda channel (note that this project is not officially affiliated with conda or Anaconda Inc.).

License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the LICENSE file for details.


Biweekly Dev Meeting

We have videoconference meetings every two weeks where we discuss what we have been working on and get feedback from one another.

Anyone is welcome to attend, if they would like to discuss a topic or just listen in.

  • When: Tuesday 4:00 PM CET (Europe)
  • Where: Mamba jitsi
  • What: Meeting notes

下载源码

通过命令行克隆项目:

git clone https://github.com/mamba-org/mamba.git

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 编程相关 mamba https://www.zuozi.net/33553.html

Semi VB Decompiler
上一篇: Semi VB Decompiler
dooringx
下一篇: dooringx
常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务