On Jun 28, 2006, at 6:09 PM, Phillip J. Eby wrote:
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.
The docs are rather unclear how to to set this up. In any case, it isn't my intent to have people track subversion
Of course, if you want to provide *built* daily snapshots, then this doesn't help you.
Or to do daily builds.
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. :)
I didn't realize that this information was being broadcast. I imagine I am unintentionally annoying people with all of my experiments. :( It isn't my intention to provide daily builds. I just happen wanted to make quick and dirty releases while stuff is new. These are like alpha release, but I'm leveraging the revision tagging to automate generation of release numbers.
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.
That's not what I'm up to. :) 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