[Distutils] pypi protocol
holger krekel
holger at merlinux.eu
Mon May 27 09:19:29 CEST 2013
Hi Jonas,
On Sun, May 26, 2013 at 22:08 +0200, Jonas Geiregat wrote:
> Hello,
>
> I'm fairly interested in the internals of pypi.
>
> Ultimately pypi is a HTTP interface to a package database.
> I went looking for a document, blog post or anything describing the communication between pypi client and server.
>
> I ended up reading pypiserver's source code to find out the internals.
>
> Is there a reason why there haven't been a PEP describing the pypi interface ?
The protocol pip/easy_install use with pypi.python.org is fairly minimal.
Carl and me described it in PEP438 and a number of people reviewed it
so it should be rather accurate. See particularly
http://www.python.org/dev/peps/pep-0438/#history-and-motivations-for-external-hosting
This does not discuss the XMLRPC/json interfaces and ASFAIK there
are few pypi implementations apart from the main one who implement them.
For implementation of the basic protocol, you can look into pip/index.py
or checkout my tested implementation in devpi-server here:
https://bitbucket.org/hpk42/devpi-server/src/029db81602bccece0f58be9a66cd67f640ac353a/devpi_server/extpypi.py?at=default#cl-44
cheers,
holger
More information about the Distutils-SIG
mailing list