[Catalog-sig] PyPI improvements

Ian Bicking ianb at colorstudy.com
Tue Jun 15 21:53:05 EDT 2004


Howdy.  I just recently posted some ideas for PyPI 
(http://blog.colorstudy.com/ianb/weblog/2004/06/15.html#P123), but some 
of the basic features I was thinking about should be generally useful:

1. Express relationships between packages.  These are relationships 
like alternative-implementation, fork, part-of, recommends, requires, 
etc.  At the moment I'm thinking purely about displaying this 
information, not any fancy distutils magic installation of 
dependencies.
2. Cache packages.  I.e., download a copy of the package, and if the 
package disappears then we have a backup.

These are both more important when dealing with smaller pieces of code 
-- code that is part of a more interdependent ecosystem (1), and code 
that is more transient (2) -- but these apply just as well to 
full-blown packages.

The other thing that might be useful is some improved categorization of 
code.  The Trove categories are... well, they are stupid.  No fault of 
anyone here.  CPAN's much more coarsely-grained categories are much 
better, in my opinion (Acme, AI, Algorithm, Apache, AppConfig, Archive, 
Array, and so on: http://www.cpan.org/modules/by-module

But even more coarsely-grained than that, there are classes of package. 
  Right now we have libraries and applications.  I'd like to add modules 
-- though the name is vague, I'm thinking of code on the sophisticated 
end of the Python Cookbook entries.  Small, reusable, and not worth 
distutilifying (I just can't imagine making a whole package for one 
100-line module, nor can I imagine using such a package).

When you're looking for code, each of these is quite different from the 
others -- for any search, you will probably be interested in any of 
these (a library to use, or a module or application to borrow from).  
Right now we're neither here nor there, as people don't think to add 
applications to PyPI, and the trove categories are inappropriate for 
libraries.

On top of this is the infrastructure issue, which probably also has to 
be dealt with before moving forward much (i.e., SQLite and CGI).  
Concurrent updates to a SQLite database from multiple processes scares 
the crap out of me.  But it doesn't look like that should be too hard 
to fix.

--
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org




More information about the Catalog-sig mailing list