All - My apologies for not updating the CHANGES file in the 0.3 release. Here's what I managed to produce by looking at "fix version" in JIRA:
THRIFT-683 Remove profanity from Thrift David Reiss THRIFT-799 Files missing proper Apache license header Bryan Duxbury THRIFT-373 Build "make dist" misses a lot of files and includes some bad files David Reiss THRIFT-473 Compiler constant structs that contain enum fields don't allow use of enums from external thrift files Bryan Duxbury THRIFT-611 Compiler Under Windows when compiling using MinGW, includes are incorrectly resolved due to '/' <-> '\' havoc. Mathias Herberts THRIFT-518 AS3 as3/flash/flex generator Aron Sogor THRIFT-550 Javascript JavaScript language target T Jake Luciani THRIFT-560 Haskell Improvements to the Haskell bindings: (Add THttpClient, move to ByteString, compiler fixes, and a haskell Tutorial) THRIFT-691 Haskell Haskell compiler blocks prelude definition that it needs Sasha Rush THRIFT-678 HTML HTML generator should include per-field docstrings Bryan Duxbury THRIFT-643 Smalltalk Smalltalk generated code don't load on Squeak3.10.2-7179-basic and PharoCore-1.0-10491rc1 images Unassigned THRIFT-592 PHP PhpClient.php expect all the files to be under tutorial/gen-php but the files are in sub-folders David Reiss THRIFT-438 Python Add support for Twisted.web in servers and clients Esteve Fernandez THRIFT-363 Java Maven Deploy Bryan Duxbury THRIFT-601 Java sending random data crashes thrift service David Reiss THRIFT-608 Java Option parameter is ignored for one constructors in THsHaServer Bryan Duxbury THRIFT-632 Java Constants of enum types don't behave well Bryan Duxbury THRIFT-645 Java Java test client and server scripts don't work David Reiss THRIFT-653 Java Fix toString method for enums Bryan Duxbury THRIFT-656 Java TDeserializer.toString is misnamed David Reiss THRIFT-663 Java JavaBean code generator produces incorrect setter methods Bryan Duxbury THRIFT-670 Java Unions don't skip unrecognizable fields correctly Bryan Duxbury THRIFT-674 Java Generated read() should just switch directly on field.id Bryan Duxbury THRIFT-675 Java Generated findByValue() should just switch on value instead of mapping Bryan Duxbury THRIFT-677 Java IntRangeSet.java ignores first element in the constructor array Bryan Duxbury THRIFT-684 Java Add constructor to TNonblockingServerSocket to accept InetSocketAddress Lars Francke THRIFT-685 Java Direct buffer access to improve deserialization performance Bryan Duxbury THRIFT-700 Java Generated Union structs don't skip unknown fields properly Bryan Duxbury THRIFT-701 Java Generated classes take up more space in jar than needed Bryan Duxbury THRIFT-702 Java TUnion's toString method throws NPE if the union is unset Bryan Duxbury THRIFT-703 Java Attempting to hash an unset union struct results in NPE Bryan Duxbury THRIFT-710 Java TBinaryProtocol should access buffers directly when possible Bryan Duxbury THRIFT-711 Java TFramedTransport should support direct buffer access Bryan Duxbury THRIFT-713 Java Java compareTo method throws NPE when any field isn't set. Bryan Duxbury THRIFT-719 Java Update Nonblocking and HsHa server to avoid an extra buffer copy Bryan Duxbury THRIFT-723 Java Thrift buffers with set and map types in Java should implement Comparable Bryan Duxbury THRIFT-725 Java Add partialDeserialize override that takes TFieldIdEnum... instead of int... for the path Bryan Duxbury THRIFT-734 Java Can't use primitive types in service definitions for bean generated code Bryan Duxbury THRIFT-738 Java TCompactProtocol throws RuntimeException when it can't identify a type identifier Bryan Duxbury THRIFT-739 Java TCompactProtocol isn't suitable for reuse in partialDeserialize Bryan Duxbury THRIFT-746 Java Generated services Iface/Client inner classes do not derive from base classes Mathias Herberts THRIFT-752 Java Use a faster Stack implementation in TCompactProtocol Bryan Duxbury THRIFT-753 Java Don't look up TFieldIdEnum values with a map Bryan Duxbury THRIFT-754 Java Improvements to varint reading in Compact Protocol Bryan Duxbury THRIFT-759 Java Make TBase implement Comparable Bryan Duxbury THRIFT-760 Java Generated client code does not set or check the sequence ID in messages James Grant THRIFT-761 Java Include the symbolic name of a typedef field in the field metadata [patch] Bryan Duxbury THRIFT-763 Java Variable capture bug in generated struct compareTo Nathan Marz THRIFT-766 Java Propagate TSocket timeout to connect David Helder THRIFT-776 Java default value for field with enum type generates Java source with compiler error Unassigned THRIFT-553 Ruby thrift structs should be comparable (<=>) Bryan Duxbury THRIFT-604 Ruby nonblocking_server assumes that socket.read returns exactly one message Bryan Duxbury THRIFT-671 Ruby Ruby compact protocol implementation gets mixed up when there are fields that don't fit in the delta space Bryan Duxbury THRIFT-697 Ruby Union support in Ruby Bryan Duxbury THRIFT-707 Ruby Support old-style constructors for Union structs Bryan Duxbury THRIFT-708 Ruby Is set checking methods Bryan Duxbury THRIFT-709 Ruby Print enum value names in Ruby Bryan Duxbury THRIFT-712 Ruby Inspect should print binary fields as hex instead of escaped string Bryan Duxbury THRIFT-715 Ruby Thrift server built with ruby fails to return values of 0 Bryan Duxbury THRIFT-720 Ruby HTTPClientTransport ignores url parameters Tony Kamenick