So, srichter has asked for a branch from which he can get a stable
(bugfix only, no API changes) twisted and web2. It is not obvious how
this would be done currently. We have, right now, a /branches/
releases/2.1.x branch, for stable releases of twisted core.
When I make a release of twisted.web2, I initially thought I'd give
it a branch off of trunk as of now, say, branches/releases/
web2-0.2.x. However, that makes it difficult to externally track both
the stable web2 release and the stable core release, as you need to
grab parts of both that branch and the 2.1.x branch and mix them
together.
This sort of points towards it being a nice idea if the repo was
reorganized such that each project was in its own directory
hierarchy, as then it would be much easier to mix-n-match different
branches of different projects. But I'm not going to go there, again,
right now. I still think it could be a good idea but it was discussed
before and rejected. Instead, I want to suggest that subproject
releases also be made off of the 2.1.x branch.
This has a few upsides: 1) easier for external parties to track, 2)
easier for *us* to track, in our stable-branch buildbot master (BTW,
warner, can we get one of those?).
The downsides that I can see: 1) before the first release of a
subproject after a release of core, its part of that branch will be
some random trunk version (however, it should at least be passing
tests, so it's not *too* tragic) 2) when making an initial subproject
release, you may need to apply a relatively large diff to the 2.1.x
branch to sync it with trunk.
Please discuss. :) In the meantime, I'm going to be doing web2 off of
2.1.x this way. If we ultimately decide that's a bad idea and to do
it a different way I will happily change and revert the changes to
the 2.1.x branch.
James