Conda (package manager)

Package manager and environment management system

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)

This article may need to be rewritten to comply with Wikipedia's quality standards. You can help. The talk page may contain suggestions. (June 2023)

|

This article contains promotional content. Please help improve it by removing promotional language and inappropriate external links, and by adding encyclopedic text written from a neutral point of view. (June 2023) (Learn how and when to remove this message)

|

This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources.
Find sources: "Conda" package manager – news · newspapers · books · scholar · JSTOR (June 2023) (Learn how and when to remove this message)

|

(Learn how and when to remove this message)

Stable release|

25.1.1[1] / 29 January 2025; 36 days ago (29 January 2025)

Repository|

* github.com/conda/conda

Written in| Python
License| BSD
Website| conda.io

Conda is an open-source,[2] cross-platform,[3] language-agnostic package manager and environment management system. It was originally developed to solve package management challenges faced by Python data scientists, and today is a popular package manager for Python and R.[4][5] At first, Anaconda Python distribution was developed by Anaconda Inc.; later, it was spun out as a separate package,[6] released under the BSD license.[2][7][8][9][10][11] The Conda package and environment manager is included in all versions of Anaconda, Miniconda,[12] and Anaconda Repository.[13] Conda is a NumFOCUS affiliated project.[14]

## Features

[edit]

As a package manager, Conda allows users to install different versions of binary software packages and their required software dependencies appropriate for their computing platform from a software repository.[15] Conda checks everything that has been installed, any version limitations that the user specifies (for example, the user wants a specific package to be at least version 2.1.3), and determines a set of versions for all requested packages and their dependencies that makes the total set compatible with one another. If there is no set of compatible dependencies, it will tell the user that the requested combination of software packages at the requested versions is not possible.

Secondly, Conda allows users to create such a set of software packages in isolation from the rest of the computing platform, in what Conda calls an environment.[16] This allows the user to create various sets of software packages for different projects. When the users switches between those projects, they switch to the relevant environment, thereby avoiding the re-installation or removal of conflicting packages. To further facilitate the setup of such environments, Conda can also install Python, the interpreter for the software packages itself.[17]

Conda is written in the Python programming language, but can manage projects containing code written in any language, including multi-language projects.

A popular Conda channel for bioinformatics software is Bioconda, which provides multiple software distributions for computational biology.[18][19]

## See also

[edit]

* List of software package management systems
* Anaconda (Python distribution)
* Pip
* Dependency hell
* Semantic versioning

## References

[edit]

1. ^ "Release 25.1.1". 29 January 2025. Retrieved 20 February 2025.
2. ^ a b "Conda". conda.io. Retrieved 11 June 2019.
3. ^ "Building Conda Packages for Multiple Operating Systems". Pydannt. 29 January 2015. Retrieved 11 June 2019.
4. ^ Gorelick, Micha; Ozsvald, Ian (September 2014). High Performance Python: Practical Performant Programming for Humans (1st ed.). O'Reilly Media. p. 370\. ISBN 978-1449361594.
5. ^ Jackson, Joab (5 February 2013). "Python gets a big data boost from DARPA". networkworld. Retrieved October 30, 2014.
6. ^ "What's the difference between Anaconda, conda, and Miniconda?". FAQ - Bioconda documentation. Retrieved 22 April 2020.
7. ^ "State of Conda, Oct. 2014". Pen and Pants. 9 October 2014. Retrieved 9 April 2015.
8. ^ Tony Ojeda; Sean Patrick Murphy; Benjamin Bengfort; Abhijit Dasgupta (25 September 2014). Practical Data Science Cookbook. Packt Publishing Ltd. ISBN 978-1783980253. Retrieved 19 March 2015.
9. ^ Langtangen, Hans Petter (2014). A Primer on Scientific Programming with Python. Springer. ISBN 978-3642549595. Retrieved 19 March 2015.
10. ^ Yves Hilpisch (11 December 2014). Python for Finance: Analyze Big Financial Data. O'Reilly Media. ISBN 9781491945391. Retrieved 19 March 2015.
11. ^ "Continuum Analytics Launches Anaconda Server for Enterprise Package Management". Yahoo Finance. 30 January 2014. Retrieved 19 March 2015.
12. ^ "Miniconda". conda.io. Archived from the original on 2018-09-10. Retrieved 2018-07-11.
13. ^ "Anaconda repository". anaconda.org.
14. ^ "NumFOCUS Affiliated Projects". NumFOCUS. Retrieved 2021-10-25.
15. ^ Pugh, David R. (2020-07-14). "Getting Started with Conda". Medium. Retrieved 2024-07-09.
16. ^ "Managing environments — conda 24.3.1.dev40 documentation". conda.io. Retrieved 2024-04-14.
17. ^ "3. Managing Python". 2015. Archived from the original on 16 June 2015. Retrieved 16 Jun 2015. "So now let's say you need Python 3 to learn programming, but you don't want to overwrite your Python 2.7 environment by updating Python. You can create and activate a new environment named snakes, and install the latest version of Python 3 as follows..."
18. ^ Bioconda official website.
19. ^ Grüning, Bjorn; the Bioconda Team (27 October 2017). "Bioconda: A sustainable and comprehensive software distribution for the life sciences". bioRxiv 10.1101/207092.

## Further reading

[edit]

* Grüning, B., Dale, R., Sjödin, A., Chapman, B. A., Rowe, J., Tomkins-Tinch, C. H., Valieris, R., Köster, J., the Bioconda Team (2018), "Bioconda: sustainable and comprehensive software distribution for the life sciences", Nature Methods, 15 (7): 475–476, doi:10.1038/s41592-018-0046-7, PMC 11070151, PMID 29967506, S2CID 196664439475-476&rft.date=2018&rft_id=https://www.ncbi.nlm.nih.gov/pmc/articles/PMC11070151#id-name=PMC&rft_id=https://api.semanticscholar.org/CorpusID:196664439#id-name=S2CID&rft_id=info:pmid/29967506&rft_id=info:doi/10.1038/s41592-018-0046-7&rft.au=Grüning,+B.&rft.au=Dale,+R.&rft.au=Sjödin,+A.&rft.au=Chapman,+B.+A.&rft.au=Rowe,+J.&rft.au=Tomkins-Tinch,+C.+H.&rft.au=Valieris,+R.&rft.au=Köster,+J.&rft.au=the+Bioconda+Team&rft_id=https://doi.org/10.1038/s41592-018-0046-7&rfr_id=info:sid/en.wikipedia.org:Conda+(package+manager)" class="Z3988">

## External links

[edit]

* Official website
* Conda on GitHub