I’ve written a basic release script for Metacity following the standard release instructions, since I have to go through them every week or so anyway and I thought it would be better to automate them. Of course, it took about five times longer to write the script than to do a release, but I look on it as an investment.
If you want to use it yourself, it will probably not work for you straight away; I’d appreciate help generalising it if you’re interested, though. There is an lgo page about it.
(Later, Josh suggested that it might be similar or mergeable with ShipIt, which I haven’t looked at yet.)
One question I’m wondering about: a “point release” is when you go from, say, 3.1.x to 3.2.0, right? So what do you call it when you increment the micro version number, say from 3.1.4 to 3.1.5? Is there a special name for that?
Have you seen maintainer.py?
http://developer.imendio.com/projects/misc/maintainer
Oh, goodness– no, I hadn’t. Looking at that page, I don’t think it does quite what release-wrangler does: m.p appears to have a bunch of options for maintaining things at other stages than release time, whereas r-w is just a tool to blast through a release; m.p attempts to figure out the bugs that have been fixed from Bugzilla, whereas r-w just trusts that you kept the ChangeLog up to date. I think both scripts have things that they do differently or better, and I wonder whether they’re close enough that it would be helpful to collaborate. I’ll get in touch with Martyn Russell.