On 06/03/14 20:10, Marius Gedminas wrote:
On Wed, Mar 05, 2014 at 07:01:49AM -0500, Donald Stufft wrote:
On Mar 5, 2014, at 5:48 AM, anatoly techtonik <techtonik@gmail.com> wrote:
JSON-RPC is a better choice for recommended external API,
because it doesn't rely on memory hungry and potentially unsafe
XML libraries.

On Wed, Mar 5, 2014 at 3:41 AM, Donald Stufft <donald@stufft.io> wrote:
Just a quick FYI that the last missing piece (search) for XMLRPC was merged in
Warehouse today. If you have an application that depends on XMLRPC on PyPI and
you’d like to test it, please try against the url:


Let me know if you find any issues, or you can file a bug at:

XMLRPC is used in order to maintain compatibility with what is already
there. Something better will replace it eventually and XMLRPC will be
This is a bit confusing to me now.

You're reacting as if anatoly suggested a new JSON interface to
replace the legacy XML-RPC one.

But the old PyPI codebase already had a JSON API[1].  I'm using it to keep
track of Python 3 support status of about 800 packages maintained by the
Zope Foundation: http://zope3.pov.lt/py3/

  [1] https://wiki.python.org/moin/PyPIJSON

I assume at some point Warehouse will add support for the JSON API and
you'll issue a call for testing?

Marius Gedminas

Distutils-SIG maillist  -  Distutils-SIG@python.org
A JSON-RPC interface is slightly different from a "normal" 'RESTful JSON' api.

PyPI currently offers some normal JSON REST resources, as well as an XML-RPC interface.

AFAIK Anatoly was suggesting to replace XML-RPC, with JSON-RPC (not just a JSON API, which as you mention already exists), however the former needs to continue to exist because it is an existing feature that many things use.

Also AFAIK, warehouse is currently in the business of gaining feature parity with the current PyPI, after which it will be looked into if or what new APIs will be useful to add to make better clients with.
Of course a prime candidate for that might be expanding the current RESTful JSON api.

Matt Iversen
PGP: 0xc046e8a874522973 // 2F04 3DCC D6E6 D5AC D262  2E0B C046 E8A8 7452 2973