The Python Package Index, abbreviated as PyPI () and also known as the Cheese Shop (a reference to the ''
Monty Python's Flying Circus
''Monty Python's Flying Circus'' (also known as simply ''Monty Python'') is a British surreal sketch comedy series created by and starring Graham Chapman, John Cleese, Eric Idle, Terry Jones, Michael Palin and Terry Gilliam, who became known ...
'' sketch "
Cheese Shop"), is the official third-party
software repository
A software repository, or repo for short, is a storage location for software packages. Often a table of contents is also stored, along with metadata. A software repository is typically managed by source control or repository managers. Package ...
for
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
.
It is analogous to the
CPAN
The Comprehensive Perl Archive Network (CPAN) is a repository of over 250,000 software modules and accompanying documentation for 39,000 distributions, written in the Perl programming language by over 12,000 contributors. ''CPAN'' can denote eith ...
repository for
Perl
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was offici ...
and to the
CRAN repository for
R. PyPI is run by the
Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, a charity. Some package managers, including
pip, use PyPI as the default source for packages and their dependencies.
more than 350,000 Python packages can be accessed through PyPI.
PyPI primarily hosts Python packages in the form of archives called (source distributions) or
precompiled "wheels."
PyPI as an index allows users to search for packages by keywords or by filters against their
metadata
Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including:
* Descriptive metadata – the descriptive ...
, such as
free software license
A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder (usually the author) ...
or compatibility with
POSIX
The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system- and user-level application programming interf ...
.
A single entry on PyPI is able to store, aside from just a package and its metadata, previous releases of the package, precompiled wheels (e.g. containing
DLLs on Windows), as well as different forms for different operating systems and Python versions.
History
The ''Python Distribution Utilities'' (') Python module was first added to the Python standard library in the 1.6.1 release, in September 2000, and in the 2.0 release, in October 2000, nine years after first python release in February 1991, with the goal of simplifying the process of installing third-party Python packages.
However, ' only provided the tools for packaging Python code, and no more. It was able to collect and distribute
metadata
Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including:
* Descriptive metadata – the descriptive ...
but did not use it for other purposes.
Python still lacked a centralised catalog for packages on the internet. PEP 241, a proposal to standardize metadata for indexes, was finalized in March 2001.
A proposal to create a comprehensive centralised catalog, hosted at the python.org domain, was later finalized in November 2002.
On 16 April 2018, all PyPI traffic began being served by a more modern website platform: Warehouse. The legacy website was turned off at the end of that month. All existing packages were migrated to the new platform with their histories preserved.
Notes
References
{{reflist
, colwidth=33em
, refs=
[{{cite web, url=http://www.python.org/~jeremy/weblog/030924.html, title=Python Package Index Tutorial, last=Hylton, first=Jeremy, publisher=Jeremy Hylton, date=24 September 2003, access-date=22 April 2012, archive-url=https://web.archive.org/web/20120521221310/http://www.python.org/~jeremy/weblog/030924.html, archive-date=21 May 2012, url-status=dead]
[{{cite web, url=http://pypi.python.org/mirrors, title=PyPI mirrors, work=Python Package Index, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=22 April 2012, archive-url=https://web.archive.org/web/20120503003036/http://pypi.python.org/mirrors, archive-date=3 May 2012, url-status=dead
[{{cite web, url=http://pypi.python.org/pypi, title=PyPI - the Python Package Index, work=Python Package Index, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=1 September 2021
[{{cite web, url=http://www.pip-installer.org/en/latest/usage.html, title=Usage, work=pip 1.1.post1 documentation, publisher=The pip developers, archive-url=https://web.archive.org/web/20120502155303/http://www.pip-installer.org/en/latest/usage.html, archive-date=2 May 2012, url-status=dead]
[{{cite web, url=http://python.org/download/releases/1.6.1/, title=Python 1.6.1, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=24 April 2012
[{{cite web, url=https://docs.python.org/2/whatsnew/2.0.html, title=What's New in Python 2.0, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=2 August 2016
[{{cite web, url=https://www.python.org/dev/peps/pep-0241/, title=PEP 241 -- Metadata for Python Software Packages, date=19 October 2001, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=18 August 2016
[{{cite web, url=https://www.python.org/dev/peps/pep-0301/, title=PEP 301 -- Package Index and Metadata for Distutils, date=24 October 2002, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=3 June 2012
[{{cite web, url=https://pypi.python.org/pypi?:action=browse, title=Browse : Python Package Index, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=2 August 2016
[{{cite web, url=https://www.python.org/dev/peps/pep-0427/, title=PEP 427 -- The Wheel Binary Package Format 1.0, date=15 February 2013, publisher=]Python Software Foundation
The Python Software Foundation (PSF) is an American nonprofit organization devoted to the Python programming language, launched on March 6, 2001. The mission of the foundation is to foster development of the Python community and is responsible for ...
, access-date=28 October 2017
*
Archive networks
Python (programming language)