Buildout has become too complex for me to maintain. Two factors in particular have increased it's complexity to the breaking point, the isolation machinery introduced in 1.5 and the code to support the fork of setuptools.
Let me be clear about 1.5: I really *really* appreciate the effort Gary Poster put in to that release. I don't fault his effort, given it's goals, I've just decided that the goals were too ambitious. I recently released 2.0.0a1 for Python 3. Not all tests pass under Python 2 or 3, but enough pass to make this usable with Python 3. The next phase of work will probably involve responding to problems people report with this release. (So far, it's been much quieter than I expected.) After that, I'll get going on the version 2 release in earnest. In the mean time, people will have some time to respond to what I say next, which may be controversial. :) While the current release of buildout 2 has all the features from 1.5, future releases will not. Buildout has to get simpler, or someone else has to take over maintenance. Assuming the former, I plan to eliminate some high maintenance features, including: - Support for multiple Python interpreters within a single buildout - Partial isolation from site packages and site.py Buildout will have an "isolated" mode. In this mode, it will exclude directories from the path that are added by site.py. (I'm not certain what the default should be. I previously thought buildout should switch to being isolated by default, but given the popularity of using buildout with virtualenv, I'm leaning towards making isolation optional.) z3c.recipe.scripts will be spun off to a separate project along with it's support code currently living in the zc.buildout package. I'll to whatever I can, by providing hooks, to support this recipe, but the maintenance of this feature has to move out of buildout. - Support for both setuptools and distribute I'm going to support one, or the other, or neither. I'm in a tough spot. Distribute, which was created because setuptools wasn't being maintained, is no longer being maintained, except there was a recent release. Setuptools, which is being maintained, doesn't work with Python 3. (I was thinking about forking distribute to eliminate the dependency, but after further consideration, I don't think that's a good idea, as one of these is needed to build source releases that depend on them.) My current leaning is toward porting setuptools to 2&3 and supporting only setuptools. Jim -- Jim Fulton http://www.linkedin.com/in/jimfulton _______________________________________________ Distutils-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/distutils-sig
