I don’t really do any release management for Umlaut, just running my own local copy from svn trunk. I’m going to have to start doing that, now that other people are starting to try using Umlaut.
But if I did do release management, somewhere around now would be Umlaut 3.0. Umlaut 2.0alpha was essentially what I inherited from Ross, he had already rewritten the architecture of Umlaut, but hadn’t really finished or deployed “Umlaut 2.0”, and handed it off to me. Since then, I’ve done an awful lot to it. It’s gotten a lot more mature, stable, full-featured, and documented.
Just now, I updated it to use Rails 2.1.2, instead of Rails 1.x it had been using, and that change is probably enough to make me call it ‘Umlaut 3.0’. With the switch to Rails 2, the mechanisms I use for local configuration got a lot more rational and manageable too.
You may note that I haven’t gotten it running on the latest Rails, 2.2.1 yet. Rails 2.2 introduces some improvement in how ActiveRecord handles threading and concurrency. This is good, because we use threads a lot in Umlaut. Before, we were using them, and they were working decently (although some performance issues), but we were kind of doing it in our own special way that I was never sure the Rails developers were intending. With Rails 2.2.1, it’s finally actually an intended use, which is good. But to ensure Umlaut’s threading code plays well with Rails 2.2.1 will take a bit of time, since Rails 2.2.1 changed how threads are dealt with in the underlying ActiveRecord.