On Jul 20, 2007, at 4:21 AM, Martin v. Löwis wrote:
I've created and experimental prototype setuptools-specific package index at
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 -- Jim Fulton mailto:jim@zope.com Python Powered! CTO (540) 361-1714 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org