[Distutils] Weird PyPI Behavior

Jim Fulton jim at zope.com
Thu Jun 29 00:27:11 CEST 2006


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 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 Distutils-SIG mailing list