[Catalog-sig] [Distutils] Prototype setuptools-specific PyPI index.

Jim Fulton jim at zope.com
Fri Jul 20 13:45:57 CEST 2007

On Jul 20, 2007, at 4:21 AM, Martin v. Löwis wrote:

>> I've created and experimental prototype setuptools-specific package
>> index at
>>    http://download.zope.org/ppix
> Cool! If this proves useful, people are encouraged to contribute the
> proper patches to PyPI to regenerate the page directly on each log
> change.
> There is a slight transactional trickiness to doing so: If you
> regenerate before the commit, it might be that the commit fails;
> then you would have to rollback the page update, too. If you
> regenerate after commit, it might be that you run into race
> conditions if the same package sees two	updates in two
> transactions very quickly, and the second regeneration completes
> before the first one.
> If people would find it easier to make these pages dynamic,
> such patches would also be kindly accepted. Generating the
> pages on access should be fairly cheap; the SQL is
> select filename,md5_digest from release_files where name='setuptools';
> and putting the result of that into an ppix-like HTML page
> should be much faster than invoking ZPT.

A few notes.

It is important to show files from hidden releases as well as  
unhidden releases.  I suspect the select statement above does that.

I parse long descriptions to get #egg= links.  I also give some  
special care to urls that point back to PyPI to avoid having  
setuptools go back to the human interface.

It might be easiest to just trigger the existing ppix sw to poll  
after a change.  Thanks to your xmlrpc addition, polling is quite  
cheap.  Alternatively, we could install the existing software in a  
way that polls more or less continuously.  This would be quite  
trivial.  What you suggest is probably cleaner but requires some  
expertise with the current software. :)  I'd much rather generate  
static files (as I'm doing now) than serve these dynamically.


Jim Fulton			mailto:jim at zope.com		Python Powered!
CTO 				(540) 361-1714			http://www.python.org
Zope Corporation	http://www.zope.com		http://www.zope.org

More information about the Catalog-SIG mailing list