I decided this year I am going to forego my Pycon dump, and focus on the news that matters most to my readership. There are plenty of reviews of talks, and I went to a bunch of good ones, had a great time at wsgi house, blah, blah, blah. What _you_ probably care about is what’s cutting edge in TurboGears, and the sprints are where it’s at.
We had 12 sprinters on day 1, I think 10 on day 2 and then 8, 4. So yeah, there’s some manpower behind the next-gen TG stuff. And that was our focus. I don’t think anyone lifted a 2.0 finger, all the effort has gone into 2.1. With Luke Macken’s help, we closed 21 tickets. I think we have all the road-blocks out of the way for the forthcoming b2 release, which will likely be the last beta before release candidates. The api is pretty solid now, I don’t expect to expand it an more, so it’s going to be feature frozen in b2. There are only 2 blocker tickets before 2.1rc1.
Mark Ramm and Jenny Steele overhauled the visual components of the 2.1 docs and came up with a better way of updating our public face. Jenny has also put forth an effort in c5t (a new cms based on mongo and tg2) to improve our image library capabilities. She also spent some time updating the TG admin so it looks way better now. I’ll post some screenshots when I do the 2.1b2 release.
C5t got quite a bit of love actually. Rick Copeland added Ming 0.2 support since the api changed a bit from 0.1. Christopher Brown fixed a bunch of the styling. Kevin Mitchell added some tests. Jason Galyon worked on per-page authz, and Jorge Vargas worked on the editor implementation. I created a new c5t.website project so that we can work on the core and the public image independently. This is valuable especially since c5t does not ship with TW1, but we wanted to add mongodb support to the admin on the website, and TW1 is required for Sprox to do it’s magic in the admin presently.
Kai Groner and Eric J (sorry I don’t know your last name) both made some contributions to Sprox. Eric added Ming support after I refactored the database orm later organization in Sprox. Ming is a layer on top of pymongo that allows you to enforce schemata in your collections. This is perfect for selecting validators (the validator in the schema becomes Sprox’s schema), and fairly simple to select widgets with. Eric had every provider test that works with SAORM working, except for one that looks like a pymongo bug on the limit operator. Kai worked on handling inline-forms in Sprox. Looks like most of the provider code is working, we just need to add in tw.dynforms in an intelligent way to hook the rest of the application up. While this is not a trivial task, it looks as if we are about half-way there for supporting inline forms. All of this work will go into sprox 0.7.
I also spent some time with Sprox, and added jquery support, but it’s not ready for release. At the end of the sprints I had a working jquery table with pagination in the TG Admin, but some polish is going to be required to get that fully working. When I’m done, you will be able to easily swap between nothing, dojo, and jquery, and mootools support, or mix and match at any level. You can also switch between mongo, or any rdbms SA supports, and hopefully couchdb soon. It’s kinda scary that’s true.


Speaking at Developer Day was a new experience for me because I was talking to folks that were not necessarily versed in Python,never-mind TurboGears. The conference appeared to be somewhat Rails heavy, but it was refreshing to see organizers reaching out to the greater web community to provide a well rounded conference. The nice thing about speaking to a wider audience was that I was able to expound some of the history of the Python web, as well as describe TurboGears at a high level without worrying about boring the audience. I was quite nervous speaking at first, because I have not done so in a few months, but seemed to settle into a groove by the time I showed an example of how easy it is to inject
After a bit of DD-provided
analyze the results. Zooko immediately installed runsnakerun and tried it on his app. It is always nice to have immediate gratification for having taught someone something, even more so when the person voluntarily tries what you think is “so cool.” I got to show off some of the work I am doing for www.getmvp.com, since much of it is prototypical of the Extension Solution that I hope to provide with a combination of Pylons and TG. Also on display was TW2. It was great to show how simply one could express all MVC elements of a widget in one complete package.

I spent last weekend in Sunnyvale, CA at the GSoC mentor summit. This was a great opportunity to rub elbows with a number of experts in various OSS projects. It was great to make connections with people in and out of the Python community. First off, I just want to thank Google, and Leslie Hawthorne for having us. Google was an excellent host, and I would jump at the chance to attend a Google-hosted event again. Google is using GSoC to promote the open source community. By providing funding for students to work for a summer on software instead of flipping burgers, they hope to save the world, one open source project at a time. I have my own take on what Google’s true intentions are, but I don’t really want to discuss that in this blog entry. That is to say, I don’t think Google’s intentions are in any way evil, but they are definitely self-serving. In any event, it is remarkable the amount of time, energy, and money that goes into this project, which is at this time one of a kind. Here’s hoping that other companies will consider the not-so-small buy in for sponsorship which could lead to even more OSS development.
Mark and I will be attending