I'm not a committer on the project, but here's my two cents. There is a fine balance between opening the flood gates and having a potentially constantly broken trunk, and having a trunk where folks know that once they have run a sufficient test suite that they have not broken things. There is no such comprehensive test suite in Thrift today, and given the cross-platform, cross-language nature of the project it will take a good amount of time and energy to make that happen. In fact, a comprehensive build of the project requires at least a linux and a windows machine, since you cannot create the C# runtime and test it on anything else. Moving to something like cmake for cross-platform make management would also be a good idea.
Once such a test suite is in place, it would make much more sense to allow global commits then. Until that time, some controls are needed, and whomever is committing something does need to make sure they have not broken something by actually running all the various tests that exist. I submitted a major architecture update into Jira this week for two-way communication, multiple services on a connection, multiple outstanding requests on either end, and tight certificate based authentication to the C# runtime and compiler. Moving those concepts into other languages is also a task, but again requires a good testing framework to build on. So that's the theme of my message; beef up the test suite (and perhaps the build suite) so we all have better verification of changes. This opens up the door to the other things that have been discussed. Thanks, Jim