We've been asked what the future holds for TurboGears. Specifically, we've seen people wondering what happens when the current maintenance releases are done. The super short answer is that we keep on developing, adding new options, finding and fixing problems, and generally making web development as easy and productive as possible. The longer answer? Well, that's what this email is for. The one thing I don't want to see in response is somebody saying "TL;DR", okay? :)
First, version 2.2: We're working towards that release right now. We need to revamp our documentation into a full book structure. That's in progress, but it's going to take some time. I believe I might also look for an editor, and that's going to cost some money (unless we have an editor on the list willing to lend their time to making this better). It's worth it to me to do so, though. In addition, we need to complete our testing coverage, and close out as many bugs and feature requests on our tracker as possible. With each release, we're re-evaluating every single open ticket. We're looking to find out if we've already fixed it, or if we're pushing this particular one to the next release. We've also initiated a monthly release process. The release will occur each month on the first Wednesday on or after the 15th of the month. Basically, the plan is to make 2.2 into a platform so solid that it can easily be used and relied upon for a long time to come. We are also taking special care to avoid introducing incompatibilities or even deprecations. Without a solid reason, the code written for 2.0 will be able to moved to 2.2 with great ease and confidence in the results. Next, version 2.3: This release is focused on optimization. We are going to establish baselines for performance (basically, how well we're doing at 2.2), establish performance targets, and then optimize the hell out of the code. 2.0 was acceptable speeds. 2.1 was noticeably better. 2.1.1 feels noticeably (subjectively) better still. 2.2 Should be at least that good, and 2.3 is going to produce unquestionably better speed results. We don't have those numbers yet, and we don't have our targets yet. I can only say that we are going to turn up the speed for 2.3. Version 2.4: This release can be summarized as "extensions extensions extensions". We're going to get several common components made available by default. Right now, if a developer wants to make a site with a blog or two, a CMS, a shopping cart, and then layer his application on top of this, all of those component pieces must be developed first. For version 2.4, we're going to have those (and some others, too, we don't have a comprehensive list as yet) where we standardize on them and incorporate them into our standard release process. A developer will be able to build a feature rich website in very short order. With those extensions, we're going to pull TG out of being just a framework, and closer to being a platform usable for building anything. Between now and 2.4, we are going to work to make TurboGears into a proper abstraction layer. This means making sure that the lower level tools we use don't bleed through. For instance, right now you might find a need to reference something directly from Pylons (response headers, or the current route, or anything else). We are looking to abstract away the details so that our development community will be able to focus on working with TurboGears, instead of needing to know Pylons, or Pyramid, or whatever else may come up even further down the road. Beyond that, we're getting into the very murky future. Pylons has been deprecated, so new releases of it will be very hard to make happen. At some point, we will need to either adopt Pylons ourselves, or migrate to Pyramid as our base, or even something else (we're not sure what that will be). We need to consider adding Python 3 support. We need to evaluate dropping Python 2.4 at some point (some of the packages in our private eggbasket are behind the times because of needing to support Python 2.4, and the new versions of those packages don't do it). We don't have a timeline for any of that, not yet. We know it needs to happen, we just don't have a version or date in mind for it. While we can't say what our plans are after TurboGears 2.4 (because we don't know what they are), we can make a couple of commitments: Between now and then, we're going to work more closely with the Pyramid team: they do excellent work, and it would be foolish to ignore what they offer. We're going to make regular releases a priority. We're going to continue to support our older releases (the TG1.5 line is getting ready for a release in the near future). We're going to produce an ever improving platform for the Python web development community to use. And, personally, I'm in this for the long haul. I'm seeking new work, and I might very well have killed a good chance at a job because of my desire to keep working on TurboGears. I'm okay with that. I want TurboGears to succeed, and I'm willing to make that kind of sacrifice if it will help. I don't ask others to do the same. I do ask that you offer up what you can. Even if all you can offer is questions, that's still enough. It gives me hope that, together, we *can* make TurboGears succeed in the long term. And that's what I want most. -- Michael J. Pedersen My IM IDs: Jabber/[email protected], AIM/pedermj022171 Yahoo/pedermj2002, MSN/[email protected] My LinkedIn Profile: http://www.linkedin.com/in/michaeljpedersen Twitter: pedersentg -- You received this message because you are subscribed to the Google Groups "TurboGears Trunk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/turbogears-trunk?hl=en.
