2022-08-31 –, HS 118
Mamba is a fast, cross-platform and language independent package manager that is fully compatible with conda packages.
It has enabled the conda-forge project to scale way beyond what was previously possible.
In this talk we present further innovations in the mamba ecosystem, including boa, a new build tool based on mamba and quetz, an open-source and extensible package server for conda packages.
Mamba is widely used in the conda-forge community, a binary distribution of scienitific open-source packages for Windows, macOS and Linux. Today, mamba powers hundreds of automated builds for Python, C, C++ and many other programming languages every day. In this talk we will go into some of the details that make the conda-forge project and the mamba integration so successful.
Furthermore, we will highlight some interesting new innovations coming to the mamba project. Thanks to a CZI grant we currently work on the sandboxing of environments on Linux and macOS, zchunk support for repodata, package metadata signing, OCI and S3 support and more.
Additionally, we will take a look at a new build tool called boa. Boa comes with a new recipe format that is cleaner and faster to evaluate and makes building new packages a smooth process. It comes with an interactive mode to make packages easily debuggable. We will show how we have used boa to produce an experimental WASM distribution called "emscripten-forge" that builds WebAssembly enabled conda-packages that can readily be used in the web-browser with JupyterLite.
Lastly, we will show recent improvements in quetz, the open-source conda package server. It is fully extensible, both in the front- and backend – something we want to use with the conda-forge project to add more features for users and package maintainers such as fast (metadata) package search.
some
Public link to supporting material: Project Homepage / Git: Domains:General-purpose Python, Open Source Library, Scientific data flow and persistence
Expected audience expertise: Python:some
Abstract as a tweet:The mamba project is working on making package management a pleasant experience for scientists and everyone else.
Wolf studied robotics at ETH Zurich and Stanford University. After completion, he worked on many impactful Open Source projects: xtensor, xsimd, jupyter, jupyterlab and more. Most recently he initiated the mamba package manager alongside the boa and quetz projects and supports conda-forge as a core developer.
Wolf also started the RoboStack project to streamline the installation of robotic software on Windows, OS X and Linux, and pushed the intersection of data science and robotics by bringing Robotics to Project Jupyter.