A good long time ago, I announced that we'd begun work on a massive re-engineering effort to update and improve RT, replacing large parts of the internals with a new web framework, overhauling the UI and numerous subsystems inside the RT core. I told you that we'd be releasing this as "RT 4" as quickly as we could, though it was a pretty serious development effort. While we were always circumspect about release dates, I hinted to a few of you that you might see RT 4 in early 2008.
If you've ever come to one of our public RT developer/administrator training classes, you'll have heard me warn you never to trust a vendor when they promise a release date, even if that vendor is me.
It should go without saying that we missed our original early-2008 target date. As we worked, we discovered just how much bigger the project was than we'd originally intended. At the same time, the RT 4 codebase was different enough that users would probably have to completely rewrite their local customizations and changes.
We've put a number of engineer-years into RT 3.999. It's been difficult to accept, but over the past six months we've come to the conclusion that the RT 3.999 codebase isn't going to be the next step in RT's evolution. That's the bad news. There's some good news, too. Since we first branched RT 4 development in late 2007 (before we released RT 3.8), we've remained committed to RT 3. RT 3.8 has seen almost 2000 commits and approximately 250,000 lines of changes. Those changes run the gamut from bug fixes to security improvements and major new features.
Over the past four months, we've been hard at work on RT 3.9, a new development branch based on RT 3.8. Many of the features we've been working on in RT 3.9 are driven by a generous and supportive customer, but we've also been able to backport a number of features from our original RT 4 effort. As of today, some of the bigger features you can find in RT 3.9 are:
- A new access-control editing UI
- Performance improvement
- Date custom fields
- Timestamp custom fields
- IP Address custom fields
- IP Address Range custom fields
- A new "ticket lifecycle" state engine
- A mobile-optimized web interface
- Browser-based theme and logo customization
We expect fast full-text searching on Postgres and Oracle, as well some other cool features, to land in RT 3.9 within the next few weeks. Later today, we will release RT 3.9.4, the first beta version on the new road to RT 4.0.0. This is a DEVELOPMENT SNAPSHOT and not intended for production deployment. It should be possible to upgrade your test databases from RT 3.8.8 to RT 3.9.4. If you run into trouble, please report it to rt-devel at lists.bestpractical.com.
Before you do anything with RT 3.9, you should _definitely_ read the UPGRADING document, as it describes some fairly substantial changes. We're not yet promising that the APIs in 3.9 are stable or that we've documented every problem and upgrade headache. That said, we do want to hear about what you like (and what you don't). Again, rt-devel at lists.bestpractical.com is the right place to report such things.
You'll have RT 4.0.0RC1 by December 25, 2010.