At 01:15 PM 8/10/2005 -0500, Ian Bicking wrote:
I have a custom package index that lists some Subversion repositories at http://pythonpaste.org/package_index.html ; I'm just looking for a little feedback on best practices. For instance, here is a link:
http://svn.colorstudy.com/trunk/SQLObject#egg=SQLObject
(note that there's a small bug in setuptools that'll keep these from working at the moment, but putting that aside...)
Does urllib2 barf on fragment identifiers? I'm surprised.
Should that look like #egg=SQLObject-DEV ?
Yes.
Or something else?
No. I like these easy questions. :) See also the CVS version of setuptools.txt, which touches on these matters under the heading "Making your package available for EasyInstall".
I think that tag will get ignored later in the process; should I modify setup.py (or setup.cfg) in some way to install the subversion checkout with an appropriate version number?
Well, you can put this in setup.cfg to do that: [egg_info] tag_svn_revision = 1
If that package_index.html is added with --find-links (or added to ~/.pydistutils.cfg or elsewhere) then the subversion version will always be installed when no version is given in the package specifier ("easy_install.py SQLObject"). I don't know if that's right.
'DEV' is a lower version number than zero, in pkg_resources' versioning scheme, so if there's a better version available via --find-links, it will get picked unless you express a preference for source (--editable) or you specify DEV as the version you want. However, if you don't include any binary links in --find-links, then yes, you'll always end up with the development version. Simple solution: make your package index page also include binary links or a source package link. These take precedence over checkout links.