August 27th, 2008 by Florent Aide
The TurboGears community is pleased to announced that TurboGears 1.0.6 has been released. This version is a maintenance release that fixes bugs & glitches found since the last two months.
We are really active at the moment working on the 1.1 branch which should enter beta tomorrow. The 1.1 release will be fully retro-compatible with the 1.0 branch but will propose important new things:
- SQLAlchemy as the default ORM
- Genshi has the default templating engine
- A new test system that is forward compatible with branch 1.5 & 2.0 (this is an important step toward migrating old applications written in 1.0 to 2.0 without breaking everything in the process)
- Drop the use of RuleDispatch and use Peak Rules instead (no more C compilation)
- Enhanced mod_wsgi compatibility to avoid past hacks that we had to do to deploy on Apache
Once 1.1 is out has a stable version we will encourage all 1.x users to go with this new version and to update their unit tests by following the TestMigration procedure.
A big work is undergoing also in the 1.5 branch to bring you CherryPy 3.1 support and further move TG into the WSGI realm.
Enjoy this new release and give feed-back in our mailing list!
Florent Aide.
July 31st, 2008 by Mark Ramm
We just cut another release for 1.9.7a3, and it’s even more backwards compatable with TG1.
I occasionally get questions about why we are working on version 2.0 of TurboGears and what it means for users.
- The ability to retrieve whole graphs of objects in a single query through the ORM
- Commit entire graphs of object changes back to the database in one step
- The ability to support multiple databases easily
- Out of the box support for a powerful web-based interactive debugger
- Full WSGI support
- Your app is a WSGI app out of the box
- You can run multiple TG2 apps in a single process
- You easily call a any WSGI app from inside TG2
- You can easily create and add middleware to your TG2 app
- Easy access to a large library of helper functions in your templates
- Out of the box support for using Routes to overide object dispatch for unusual URL’s
- Flexible out of the box caching for pages, intermediary data, etc
- Improved object dispatch, to better support resource oriented URL’s
- Support of Dojo, jquery, ext.js, mootools, and other javascript libraries via ToscaWidgets
This means that TG2 apps have more flexibility and can can scale better than TG1, and we’re working on trying to make TurboGears 2 better documented than any other framework. Because we have full WSGI support you can easily mount existing WSGI applications in your TurboGears site, and you can also get things like profiling middleware, middleware that helps you find memory leaks, or any of a whole host of other interesting middleware almost for free.
There’s lots more to be done before we hit 2.0 final, we need to transparently support attomic commits across database boundaries (when the underlying stores support it). We need to make it even easier to build reusable site-components with TG2, and we need to continue to improve the TG2 documentaiton.
But I think we’re making huge progress, and I’m looking forward to the next release. The current plan is to release a 1.9.7 stable release in the next 4-8 weeks, and to release 2.0 (with the above mentioned extra features) later this year.
July 26th, 2008 by Mark Ramm
I think virtualenv is horribly useful, because it is very, very common that I want to use more than one version of a library. Sometimes this is just because I want to test TurboGears 2.0 against some new version of some dependency, sometimes it’s because I’m running some old version of some project with out-dated requirements, and other times it’s just because I want to key my OS’s system python clean. Because there’s lots of virtualenvironments on my machine, and because I’m always switching between them I was very happy to find Doug Helman’s article on how to more easily manage switching between the various virtual environments that I’m working on at any given point in time.
If you use virtualenvs — and if you’re a python developer you should ;) — take a look at this article, it might make your life easier.
July 25th, 2008 by Mark Ramm
Here’s a quick note on how to use IIS to serve up your TurboGears applications. This is something we need to document better, if we want to increase python/turbogears penetration in the windows market.
It’s not like asp.net is so good that they don’t need TurboGears. And TurboGears multi-threaded+multiprocess model works better on windows than many of the other “dynamic language web-frameworks which depend solely on the multi-process model.
July 23rd, 2008 by Mark Ramm
Very useful cache decorator for TG1.
Not sure how I missed this one, but it’s definitely worth a look for anybody trying to scale a TG1 application.