Chad Walters <chad@powerset.com>
-TJSONProtocol for C++ and Java

Nitay <nitayj@gmail.com>
-Support for "make check"

William Morgan <w@adap.tv>
-Miscellaneous Ruby improvements

Ben Maurer <bmaurer@andrew.cmu.edu>
-Restructuring the way Autoconf is used

Patrick Collison <patrick@collison.ie>
-Smalltalk bindings

Dave Simpson <dave@powerset.com>
-Better support for connection tracking in the C++ server
-Miscellaneous fixes

Igor Afanasyev <afan@evernote.com>
-Perl HttpClient and bugfixes

Todd Berman <tberman@imeem.com>
-MinGW port of the compiler
-C# bindings
-MS build task

----------------
Release 20070917
----------------

Dave Engberg <engberg@gmail.com>
-JavaBean/JavaDoc enhancements

Andrew McGeachie <geechorama@gmail.com>
-Cocoa/Objective-C support

Ben Maurer <bmaurer@andrew.cmu.edu>
-Python performance enhancements, fastbinary support

Andrew Lutomirski <andy@luto.us>
-Added optional/required keywords for C++ objects
-Added comparison operators for C++ structs

Johan Oskarsson <johan@oksarsson.nu>
-Java findbugs compliance fixes

Paul Saab <ps@powerset.com>
-IPv6 support for TSocket in C++/Python

Kevin Clark <kevin@powerset.com>
-Significant overhaul of Ruby code generation and servers

Simon Forman <sforman@gmail.com>
-TProcessorFactory abstraction for Java servers

Jake Luciani <jakers@gmail.com>
-Perl code generation, libraries, test code

David Reiss <dreiss@stanford.edu>
-strings.h include fix for bzero
-endianness fixes on TBinaryProtocol double serialization
-improved ntohll,htonll implementation

Dan Li <dto@dev.java.net>
-Java TestServer and Tutorial Fixes

Kevin Ko <kevin.s.ko@gmail.com>
-Fix for unnecessary std::string copy construction in Protocol/Exception

Paul Querna <pquerna@apache.org>
-Autoconf error message fix for libevent detection
-clock_gettime implementation for OSX

----------------
Release 20070401
----------------
