TurboGears Joins the Pylons Project

After much debate, discussion, and contemplation, we’ve made an important decision, that will best ensure the future of TurboGears, and of the ideas on which it was based. TurboGears is merging into the Pylons Project.

A bit of background

We built TurboGears 2 on top of a the Pylons framework, and I have been working with Ben and the Pylons folks for a couple of years now.

Pylons is a lightweight framework that is neither full stack noropinionated. The Pylons team has recently joined up with the repoze.bfg folks to create a new low-level non-opinionated web application development library called Pyramid which is based on repoze.bfg and now part of the larger Pylons Project.

Pyramid status

You can use Pyramid to build web applications right now. It has more plug points, and is in many ways more flexible and extendable than the original Pylons and will provide an even better foundation for a full stack framework like TurboGears.

Pyramid has a strong, highly documented, well tested, approach, is already starting to show the fruits of merging in ideas from TurboGears, and Pylons. We expect it to be a great choice for those who want a flexible, non-opinionated and very fast framework for their projects.

The future of “Full Stack” frameworks

Fortunately, that’s not where the story ends. The Pylons Project leaders recognize that a “low level” framework is not enough.

Most web developers need to get things done quickly, and want a full stack setup and ready to go, so they can immediately start developing features rather than infrastructure.

That’s where we come in. TurboGears was the pioneer of the “full stack” set of integrated components approach among the modern Python web frameworks, and we have already developed many full stack tools.

Next Steps

So, our first step will be to add the TurboGears2 package to the legacy support in the Pylons Project. So, the Pylons 1.x and Turbogears2 packages will be maintained side by side as part of a single overall project. This change won’t impact the TG2 code, except that we will be officially acknowledging that both codebases are
tightly linked and now are part of a single project.

Maintaining the existing Pylons1+tg code will only be one part of the larger Pylons Project.

Big Harry Audacious Goal

Ultimately, we will also be working with the Pylons Project folks to create a new generation of rapid application development tools on top of Pyramid, using the TurboGears “Full Stack” philosophy. We will help to pick default templating engines, default session support, default data persistence mechanisms, integrate widget libraries and build high level tools like OAuth or OpenID support.

The main benifits of this merger will come when we reach across framework boundaries, work together with with Repoze, Pylons, and other web framework developers to build a set of high level tools that make building complex, modern web applications easier and faster. There’s a lot we can learn from each-other, and even more that we can do if we work through our differences and find new ways to collaborate.

There is no future but what we make

It’s been a great ride. And, it looks like just when we thought things were settling down, there’s another drop, and the roller coaster ride that is TurboGears isn’t done yet. I am forever grateful for the chance
to work with all the TurboGears developers, to face challenges, and to build something that’s been so valuable to so many. And I’m looking forward to what we can do together with the Pylons and Repoze folks.

10 Responses to “TurboGears Joins the Pylons Project”

  1. 1nes

    Will be the name for the full stack Pyramid environment be called Turbogears 3 or something else?

  2. What is a “non-opinionated web application”? I didn’t know code had opinions anyway…

  3. nes,

    Probably something else. We are looking at all the options, but if we don’t maintain better backwards compatibility than we did in the tg1–>tg2 transition, I’m leaning towards a new name.

  4. Mike,

    Rails is an “opinionated” web framework. It makes decisions for you. It has opinions about how you *should* build things. Pyramid and Pylons before it tried to be flexible instead of opinionated.


  5. This sounds like good news for both projects so congrats. Can you talk a little a bit about the relationship of the new entity to Django which to my unsophisticated eye seems to have won the RoR title for the Python world?

    I’d hope that this new entity would aim not to compete but to try to do something either complementary, or completely different.

  6. This day finally came!
    It is really good to see all the python framework could come together and become something that is really simple and useful.

  7. 7Daniel

    This sounds like good news. How much will change for a Turbogears 2 developer going forward? Will there be a way of getting the ease that Turbogears offered, such that I could be up and running with a full stack with but few commands?

    And what about object dispatch, AdminController etc? Will these be bolted onto pyramid as a sort of TG3? Or are they going away?

  8. Thanks for the update, Mark.

    I’ve noticed Michael Pedersen mentioned ‘Pyramid/Orion’ in his recent message to tg-trunk. And the only meaningful info about Orion that I’ve found is its PyPI page. It says it’s planned and you’re its owner.

    Could you please comment on this?


  1. [...] This post was mentioned on Twitter by Benjamin W. Smith, Henrique Bastos, Wu, News Bloom and others. News Bloom said: TurboGears joins the Pylons Project – http://bit.ly/hI7O2K – [Hacker News Top] [...]

  2. [...] “TurboGears Joins the Pylons Project” (Alt title: TurboGears Becomes TurboPyramid). I think the title says it all…and no, they didn’t really rename the project. [...]

Comments are currently closed.