If you have ever hosted a project on RubyForge, SourceForge or some other clone such as GForge, you have probably experienced the pain of making a release on these systems.
This is because these systems only offer an ugly form based interface for releases. No web services, no scp. Just these bloody forms. -And most people interact with them manually, uploading files, pasting in release notes and so forth. There is probably some unknown scripts around that automate this, but I haven't seen anything reusable.
I'm a very lazy person and I like to automate as much as my development process as possible - so I can spend more time on more important things. That's why I wrote the XForge library, a little Ruby library that does all of this release form grunt work for you.
Essencially it's a kind of page bot that logs in, keeps a cookie, and then posts some forms with file attachments. -Except that there is no browser or mouse clicks involved.
I had actually had some of this half-baked code lying around since 4 months back, but it wasn't until I came across DHH's Rake script that I found the missing link: Multipart POSTS that actually work!
So I took the best of the 2 and whipped up a little standalone library. It seems to work fine on RubyForge (XForge eats its own dogfood of course). I haven't tried it on SourceForge or anywhere else yet. If you try it, please let me know how it goes.