At 05:42 PM 6/28/2006 -0400, Jim Fulton wrote:
If I want people to be able to download it, I have to upload it somewhere.
Not necessarily. If you have a pure-Python package, and your target audience has Subversion, you can provide a URL on PyPI that always obtains the most recent possible development snapshot. For example, "easy_install setuptools==dev" will check out the setuptools trunk and install an egg from it, properly tagged as a development release with the subversion revision. "easy_install setuptools==dev06" will check out the head of the 0.6 maintenance branch. Of course, if you want to provide *built* daily snapshots, then this doesn't help you.
I have two choices, upload it to pypi, or create my own download area. I would do one or the other, not both. It seems confusing, to me and to consumers to have two download areas, my own and pypi's. I'd rather use PyPi's because it's integration with setup.py is so convenient.
OTOH, if it is considered bad form to upload dev releases to PyPi, I can just write helper scripts to upload somewhere else.
I don't know if there's a consensus that it's bad form. I do think that it would quickly become annoying to readers of Planet Python or even just the PyPI RSS feed if every Zope project was churning out snapshots of every SVN checkin, every day. :) As it is, there are lots of projects that churn their PyPI releases more often than I'd prefer to see going by, but ah well. Moderation in all things is best, I suppose. :) I won't say you *should* do one thing or the other, but I will note that the "rotate" command of setuptools is meant to help clean up directories containing automated nightly builds or svn snapshots. So, if you have servers whose job it is to do continuous builds, they can do stuff like "bdist_egg -b /output-dir rotate -k5 -m.egg -d /output-dir" to put the built egg in /output-dir and keep the 5 newest eggs. Several projects can safely share the same output directory, and the output directory doesn't need to be served by anything fancy; see e.g. http://peak.telecommunity.com/snapshots/ for an example of such a directory.