At 11:10 AM 2/9/2006 -0500, Kevin Dangoor wrote:
On 2/9/06, Ben Bangert <ben@groovie.org> wrote:
It's mainly because Routes is relied on by quite a few other setuptools-enabled packages, so being able to easy install it was necessary. I didn't have a non-setuptools build mainly because I couldn't see how to setup a setup.py file in such a way that I could make both versions at once. I'm assuming I'd need two setup.py's and to swap them in the build depending on if it was a setuptools build or not.
Could you do something like this:
try: from setuptools import setup except ImportError: from distutils.core import setup
On your system, you'd then be able to build eggs at will. Other people who download an sdist but don't have setuptools will just get normal sdist-like behavior.
Almost. You'll have to use MANIFEST.in or they won't be able to do bdist_rpm or certain other commands from your sdist. That is, you can't use setuptools' revision control features, since they won't have them available. Aside from that minor point, this is the approach I'd recommend to authors who are only using setuptools in order to build eggs and to upload stuff to PyPI, and aren't pointing their users to the docs. You will have to forego all of the normal conveniences of setuptools, however. Personally, however, I think that the short statement somebody else posted about "hey, I use setuptools, and if you're installing anywhere besides your system's site-packages directory you should check out this link" (to the Custom Installation Locations doc) is more than sufficient. I've been keeping setuptools in "alpha" mainly for API-change reasons, but it seems to me that the massive exposure to eggs given by TurboGears has shaken out all but the "new user hasn't read the doc and needs a custom install" problems. What impressed me most about Joe's blog post is not his installation failed, but just how close he was to actual success without even reading the documentation. So, as far as I'm concerned, as soon as it's at the point where he'd have succeeded in what he did, setuptools should qualify as beta quality. And that's just a bit of spit-and-polish away. So even though I'm not thrilled about the blog post, it's actually a pretty positive milestone in two ways: 1. It highlights how little there is left to go to get to a quality installation experience 2. It highlights how popular setuptools has already become.