blob: 4f9ee3e50b8c4da821278ed40ed342ec7a33eeed [file] [log] [blame]
Kevin Clark38919c52009-04-07 19:12:01 +00001Thrift Changelog
2
Jake Farrell9c762582011-08-13 21:29:36 +00003Version 0.7.0
4
5THRIFT-1252 Ruby Segfault in Ruby deserializer
6THRIFT-940 Build 'make check' fails if boost is not in the std include and link paths (Christian Lavoie)
7THRIFT-1038 Java Generated Java code for structures containing binary fields are not serializable correctly
8THRIFT-1098 PHP Undefined properties in TBinaryProtocolFactory
9THRIFT-1076 Erlang Erlang Thrift socket server causes java framed client to throw ""out of sequence"" exception"
10THRIFT-1171 Perl Perl write/readDouble assumes little-endian platform
11THRIFT-151 C TSSLServerSocket and TSSLSocket implementation
12THRIFT-1068 Python Python SSL Socket Support
13THRIFT-1011 AS3 Error generating package imports when using classes from other packages
14THRIFT-1069 Compiler (General) Add command line option to prevent thrift from inserting gen-* directories
15THRIFT-1055 C# csharp TServerSocket and TSocket do not disable Nagle via Socket.NoDelay = true like cpp and java do
16THRIFT-638 PHP BufferedTransport + C extensions block until recv timeout is reached on last fread call
17THRIFT-867 PHP PHP accelerator module's output transport is incompatible with TFramedTransport
18THRIFT-1054 explicit call to PKG_PROG_PKG_CONFIG is missing and first use of PKG_CHECK_MODULES may not happen
19THRIFT-125 OCaml OCaml libraries don't compile with 32-bit ocaml
20THRIFT-1200 JavaScript JS compiler generates code that clobbers existing namespaces
21THRIFT-1102 Build "typo in configure.ac: ""=="" operator in 'test' (instead of""'="")"
22THRIFT-994 Build Don't try to invoke phpize if we don't have it
23THRIFT-864 Compiler (General) default value fails if identifier is a struct
24THRIFT-1021 OCaml Framed transport support for OCaml
25THRIFT-1032 make dist fails due to c_glib problem
26THRIFT-1057 C++ casts in TBinaryProtocol.tcc causing dereferencing type-punned pointer will break strict-aliasing rules
27THRIFT-1053 Java Make remote client's IP address available for all socket related transports
28THRIFT-1036 C++ "Auto-generated C++ code fails to compile with ""-Werror -Wextra -Wall"" g++ compiler flags"
29THRIFT-1063 Tutorial Fix Erlang Tutorial Files
30THRIFT-625 Go Add support for 'Go'
31THRIFT-1093 Python several bugs in python TCompactProtocol
32THRIFT-1101 Java bytebuffer length calculation in TBinaryProtocol writeBinary
33THRIFT-1094 Python bug in TCompactProto python readMessageEnd method and updated test cases
34THRIFT-1100 Python python TSSLSocket improvements, including certificate validation
35THRIFT-1104 Build INSTALLDIRS should be included in configure script
36THRIFT-1103 Python TZlibTransport for python, a zlib compressed transport
37THRIFT-1105 OCaml OCaml generator does not prefix methods of included structs with their type
38THRIFT-1107 Python improvement for compiler-generated python for 'None' object comparisons
39THRIFT-1109 Java Deploy fb303 along side libthrift to maven repo
40THRIFT-1111 Compiler (General) The HTML generator does not distinguish between string and binary types
41THRIFT-1074 Java .keystore and .truststore are missing from the 0.6.0 distribution
42THRIFT-1119 C# TJSONProtocol fails to UTF8 decode strings
43THRIFT-1120 C# - Compiler proto.WriteListEnd being called in the wrong place
44THRIFT-1126 Erlang Extending struct_info for erlang bindings
45THRIFT-1132 C# Deserialization error in TApplicationException C#
46THRIFT-1131 C# C# JSON Protocol is unable to decode escaped characters in string
47THRIFT-1133 Tutorial Java and JavaScript tutorial is broken since we have Java maven deployment
48THRIFT-1140 GlibC Framed Transport Client using C (Glib) Library hangs when connecting to Ruby Server
49THRIFT-342 PHP PHP: can't have sets of complex types
50THRIFT-1149 Ruby Nonblocking server fails when client connection is reset
51THRIFT-363 Java Maven Deploy
52THRIFT-1155 Java Remove log4j dependency from java client
53THRIFT-1170 Java Thrift Generated Code and Java 5
54THRIFT-835 AS3 Bad AS3 syntax in constructors that set default values
55THRIFT-1174 Build Publish as3 client implementation via Maven for use by flex-mojos users
56THRIFT-1178 Java Java: TBase signature should be T extends TBase<?,?>
57THRIFT-1067 PHP Tons of bugs in php implementation
58THRIFT-1182 Ruby Native deserializer segfaults on incorrect list element type
59THRIFT-1190 Java readBufferBytesAllocated in TNonblockingServer.java should be AtomicLong to fix FD leakage
60THRIFT-1183 Ruby Pure-ruby CompactProtocol raises ArgumentError when deserializing under Ruby 1.9
61THRIFT-1192 Typo: TProtocol.h tests for HAVE_SYS_PARAM_H_
62THRIFT-1194 Java Java lib does not install artifacts to local dir correctly
63THRIFT-1208 Python python TCompactProtocol.py writeBool and readBool not follow the compact-proto-spec-2.txt spec
64THRIFT-1211 Java When using THttpClient, non 200 responses leave the connection open
65THRIFT-627 C++ should c++ have setters for optional fields?
66THRIFT-1218 GLibC c_glib uses wrong name in pkg-config
67THRIFT-1189 Ruby Ruby deserializer speed improvements
68THRIFT-1225 PHP TCompactProtocol for PHP
69THRIFT-1227 Erlang Erlang implementation of thrift JSON protocol
70THRIFT-1228 PHP The php accelerator module calls flush incorrectly
71THRIFT-1234 Python thrift --help is missing doc on py:utf8strings
72THRIFT-1237 Java Java fb303 missing some methods
73THRIFT-1248 C++ pointer subtraction in TMemoryBuffer relies on undefined behavior
74THRIFT-1253 Java Code generated for maps is not compiling
75THRIFT-1255 Java Mismatch of method name between JavaME's lib and generated code (compareTo/compareObjects)
76THRIFT-1238 JavaScript Thrift JS client cannot read map of structures
77THRIFT-1213 Membuffer should provide a way to get back the buffer
78THRIFT-1117 JavaScript JavaScript Unit Test does not work anymore because libthrift*.jar where moved by Maven Deployment
79THRIFT-1164 JavaScript Segmentation fault on NULL pointer in t_js_generator::generate_const
80THRIFT-788 PHP thrift_protocol.so: multiget/multiget_slice does not handle more than 17 keys correctly
81THRIFT-1222 C++ Unhandled exception for TEvhttpServer request
82THRIFT-1241 PHP php namespace generation
83THRIFT-1236 Erlang Erlang Reconnecting Thrift Client
84THRIFT-1151 Erlang Produce more informative runtime error in case of schema and data mismatch during serialization
85THRIFT-1146 Java Android Incompatibility : in Android < 2.3 java.io.IOException doesn't support for Throwable
86THRIFT-826 PHP PHP TSocket Write Timeout
87THRIFT-27 Erlang Generated erlang types don't contain default values for records
88THRIFT-1153 C++ HttpClient does not specify the connection close parameter
89THRIFT-1154 Cocoa HttpClient does not specify the connection close parameter
90THRIFT-1081 PHP PHP tests broken and somewhat incomplete
91THRIFT-1078 Test Suite ThriftTest.thrift generates invalid PHP library
92THRIFT-447 Java Make an abstract base Client class so we can generate less code
93THRIFT-1181 AS3 AS3 compiler generates incorrect code for setting default values in constructor
94THRIFT-997 Java Using valueOf for base types in getFieldValue
95THRIFT-999 PHP Add TForkingServer
96THRIFT-1041 Java TDeserializer holds onto a reference of the array it reads after it is done deserializing
97THRIFT-1065 JavaScript Unexpected exceptions not proper handled on JS
98THRIFT-993 C++ Some improvements in C++ stubs for oneway operations
99THRIFT-1083 Python Preforking python process pool server
100THRIFT-1092 Python generated validate() method has wrong indentation
101THRIFT-1050 Java "Declaring an argument named ""manager"" to a service method produces code that fails compile
102THRIFT-1106 C++ C++ code TAsyncProtocolProcessor.h & TAsyncBufferProcessor.h dont have virtual functions
103THRIFT-1080 Erlang erlang test's 'make' fails on Mac OSX
104THRIFT-731 Java configure doesn't check for ant >= 1.7
105THRIFT-1180 AS3 AS3 compiler generates uncompilable code for binary types.
106THRIFT-1187 Ruby nonblocking_server shutdown race under Ruby 1.9
107THRIFT-1193 Ruby Potential infinite loop in nonblocking_server
108THRIFT-891 Compiler (General) Comments are not properly handled in some cases
109THRIFT-1216 Java build Java Library behind a proxy
110THRIFT-1177 Go Update thrift to reflect changes in Go's networking libraries
111THRIFT-1220 C++ TProcessor::process never returns false
112THRIFT-1231 C++ Remove bogus include
113THRIFT-1217 C++ Use evutil_socketpair instead of pipe (Windows port)
114THRIFT-1215 JavaScript Undefined property Thirft in lib/js/thrift.js
115THRIFT-418 Ruby Don't do runtime sorting of struct fields
116THRIFT-1244 C++ 'using' to disambiguate between functions in different bases does not conform to C++ standard
117THRIFT-892 Erlang Refactor erlang build system with rebar
118THRIFT-690 Compiler (General) Update TApplicationException codes
119THRIFT-1199 Java Union structs should have generated methods to test whether a specific field is currently set
120THRIFT-113 Compiler (General) to-string methods should omit optional null fields from output
121THRIFT-1049 Python Allow for TServerSocket python library to bind to a specific host
122THRIFT-1152 PHP THRIFT-1144 Attributes from private to protected
123THRIFT-1207 Ruby "Support DESTDIR on ""make install"" of ruby libs"
124THRIFT-1123 C++ Patch to compile Thrift server and client for vc++ 9.0 and 10.0
125THRIFT-1031 C++ Patch to compile Thrift for vc++ 9.0 and 10.0
126THRIFT-1221 C++ Remove SimpleCallback.h
127THRIFT-1233 C++ Remove unused include in generated C++ code
128THRIFT-1246 Java Improve logging: Change TNonblockingServer internalRead to trace from warn
129THRIFT-1251 Java Generated java code should indicate which fields are required and which are optional
130
131
Bryan Duxburyf54f4cb2011-01-07 18:39:54 +0000132Version 0.6.0
133
134THRIFT-940 Build 'make check' fails if boost is not in the std include and link paths (Christian Lavoie)
Bryan Duxburyc7cd68e2011-01-20 17:47:28 +0000135THRIFT-1032 Build "make dist" fails due to c_glib problem (Michael Lum)
Bryan Duxburyf54f4cb2011-01-07 18:39:54 +0000136THRIFT-1002 C glib CodeStyle: t_c_glib_generator.cc (Anatol Pomozov)
137THRIFT-975 C glib lib/c_glib/README is missing => breaks make dist (Michael Lum)
138THRIFT-1003 C glib Polishing c_glib code (Anatol Pomozov)
139THRIFT-582 C glib C implementation of Thrift (Anatol Pomozov)
140THRIFT-992 C# Naming convention in C# constructor is not consistent with other fields causes compile errors (Roger Meier)
141THRIFT-977 C++ Hex Conversion Bug in C++ TJSONProtocol (Aravind Narayanan)
142THRIFT-922 C++ Templatized [de]serialization code for C++ (David Reiss)
143THRIFT-923 C++ Event-driven client and server support for C++ (David Reiss)
144THRIFT-925 C++ Provide name<->value map for enums in C++ (David Reiss)
145THRIFT-926 C++ Miscellaneous C++ improvements (David Reiss)
146THRIFT-928 C++ Make more statistics available in C++ servers (David Reiss)
147THRIFT-929 C++ Improvements to the C++ test suite (David Reiss)
148THRIFT-868 Compiler (General) Referencing constant values doesn't work with with typedef types (David Reiss)
149THRIFT-1006 General Impossible to correctly qualify an enum constant in an external thrift file (Bryan Duxbury)
150THRIFT-932 Haskell Haskell tests need to be run through 'make check' (and probably 'cabal check') too (Christian Lavoie)
151THRIFT-933 Haskell Haskell's Thrift.cabal has warnings (Christian Lavoie)
152THRIFT-943 Haskell Silly readme typo fix. (Christian Lavoie)
153THRIFT-944 Haskell Support all version-4s of base (Christian Lavoie)
154THRIFT-950 Haskell Haskell bindings treat 'byte' as unsigned 8-bit int (Data.Word.Word8), java/cpp as signed (byte/int8_t). (Christian Lavoie)
155THRIFT-1009 Java TUnion does not correctly deep copy a ByteBuffer (Takashi Yonebayashi)
156THRIFT-1013 Java generated java code may have name clashes with thrift library (Peter Schuller)
157THRIFT-1015 Java TUnion does not handle ByteBuffer in toString (Takashi Yonebayashi)
Bryan Duxbury65ad14c2011-01-26 22:43:43 +0000158THRIFT-1038 Java Generated Java code for structures containing binary fields (or collections thereof) are not serializable (in the Java sense) even though they implement java.io.Serializable (Mathias Herberts)
Bryan Duxburyf54f4cb2011-01-07 18:39:54 +0000159THRIFT-106 Java TSSLServerSocket (Nirmal Ranganathan)
160THRIFT-377 Java TFileTransport port in Java (Joydeep Sen Sarma)
161THRIFT-745 Java Make it easier to instantiate servers (Bryan Duxbury)
162THRIFT-862 Java Async client issues / improvements (Ning Liang)
163THRIFT-903 Java custom ThreadFactory in THsHaServer (Bryan Duxbury)
164THRIFT-939 Java optional binary fields throw NPE on default byte[] getters (Bryan Duxbury)
165THRIFT-947 Java Provide a helper method to determine the TProtocol used to serialize some data. (Mathias Herberts)
166THRIFT-951 Java Add a new isServing() method to TServer (Bryan Duxbury)
167THRIFT-957 Java THsHaServer: Change access modifier of the invoker field. (Benjamin Coverston)
168THRIFT-958 Java Change accessmodifer on trans_ field in the FrameBuffer class to public. (Benjamin Coverston)
169THRIFT-959 Java TSocket seems to do its own buffering inefficiently (Bryan Duxbury)
170THRIFT-970 Java Under heavy load, THttpClient may fail with "too many open files" (Mathias Herberts)
171THRIFT-971 Java java module can't be compiled without ivy and network connection (Roger Meier)
172THRIFT-807 JavaScript JavaScript: Initialization of Base Types with 0 instead of null (Roger Meier)
173THRIFT-913 JavaScript Test Case for Url encoded strings + simple enhancement to lib/js/test/RunTestServer.sh (Roger Meier)
174THRIFT-961 JavaScript JavaScript TestSuite using ant/ivy and Java's ServerTestBase Handler (Roger Meier)
175THRIFT-1005 Java Give unions byte[] signature methods to go along with their ByteBuffer counterparts (Bryan Duxbury)
176THRIFT-1008 Java byte[] accessors throw NPE on unset field (Bryan Duxbury)
177THRIFT-517 Java TExceptions thrown by server result in cryptic error message on client - Tried to read 4 bytes, but only got 0 bytes (Bryan Duxbury)
178THRIFT-946 Java Augment FieldValueMetaData so it differentiates 'string' and 'binary' fields. (Mathias Herberts)
179THRIFT-949 Java Modify the TEnum interface so it defines a method similar to findByValue (Mathias Herberts)
180THRIFT-960 Java add TestServer, TestNonblockingServer and TestClient again (Roger Meier)
181THRIFT-969 Java Java Tutorial broken, move CalculatorHandler to a separate file (Roger Meier)
182THRIFT-71 Misc Debian packaging for thrift (Roger Meier)
183THRIFT-1020 OCaml OCaml compiler generates invalid OCaml (Richard Low)
184THRIFT-347 PHP PHP TSocket Timeout Issues (Tyler Hobbs)
185THRIFT-924 PHP Fix generated php structure constants (David Reiss)
186THRIFT-927 PHP Add option to modify the PHP include path (David Reiss)
187THRIFT-935 PHP PHP Extension aborts the build if php-config is not installed (David Reiss)
188THRIFT-941 PHP Make PHP C Extension use the defined Protocol writeMessageBegin function (Chris Goffinet)
189THRIFT-955 PHP Thrift compiler for Windows uses lowercase names and directories which is inconsistent with compiling on other platforms (Roger Meier)
190THRIFT-979 Ruby ruby bindings used to work on jruby (Jeff Hodges)
191THRIFT-581 Test Suite Add a testsuite for txThrift (Twisted) (Esteve Fernandez)
192THRIFT-1024 Tutorial Add Python Twisted example to the Tutorial (Roger Meier)
193THRIFT-893 Tutorial add JavaScript to the tutorial examples (Roger Meier)
194
195
Bryan Duxburyf0755e92010-09-28 15:06:38 +0000196Version 0.5.0
197
198THRIFT-505 Build Make configure give a summary of the enabled components (David Reiss)
199THRIFT-506 Build Allow Thrift to be built without the C++ library (David Reiss)
200THRIFT-844 Build Build Requirements state autoconf 2.59+ is required, but 2.60+ is needed (Harlan Lieberman-Berg)
201THRIFT-850 Build Perl runtime requires Bit::Vector which may not be installed by default, but configure does not fail (Michael Lum)
202THRIFT-854 Build Provide configure option and make rules to build/install php extension (Anthony Molinaro)
203THRIFT-858 Build Have bootstrap.sh check for a suitable autoconf version before running (David Reiss)
204THRIFT-871 Build Thrift compiler for WIndows (binary distribution) (David Reiss)
205THRIFT-323 C# TJSONProtocol (Roger Meier)
206THRIFT-634 C# C# Compiler Generates Incorrect Code For Fields which begin with an uppercase letter (Jon S Akhtar)
207THRIFT-881 C# add csharp to the tutorial (Roger Meier)
208THRIFT-856 C++ Building cpp library fails on OS X with malloc and free not being declared in scope (James Clarke)
209THRIFT-865 C++ C++ compiler build depends on libfl even when flex/lex not detected (David Reiss)
210THRIFT-900 C++ Unix domain socket (Roger Meier)
211THRIFT-920 C++ C++ Test and Tutorial does not compile anymore due to the change within Enum handling (Roger Meier)
212THRIFT-567 C++ Can't immediately stop a TSimpleServer thread that is idle (Rush Manbert)
213THRIFT-756 C++ Exposing TSocket(int) constructor to public (Rajat Goel)
214THRIFT-798 C++ TNonblockingServer leaks resources when destroyed (David Reiss)
215THRIFT-812 C++, Python Demo of Thrift over ZeroMQ (David Reiss)
216THRIFT-629 Cocoa Unused Field In TSocketServer Appears To Break iPhone Build (Jon S Akhtar)
217THRIFT-838 Cocoa Generated Cocoa classes have useless @dynamic declarations (Kevin Ballard)
218THRIFT-805 Cocoa Don't generate process_XXXX methods for oneway methods (Brad Taylor)
219THRIFT-507 Compiler Remove the compiler's dependency on Boost (David Reiss)
220THRIFT-895 Compiler (General) Thrift compiler does not allow two different enumerations to have the same key name for one of the enum values (David Reiss)
221THRIFT-852 Compiler (General) Missing newline causes many compiler warnings (Anthony Molinaro)
222THRIFT-877 Compiler (General) smalltalk namespace doesn't work (Bruce Lowekamp)
223THRIFT-897 Compiler (General) Don't allow unqualified constant access to enum values (Bryan Duxbury)
224THRIFT-9 Compiler (General) Add a default namespace declaration for all languages (David Reiss)
225THRIFT-599 Erlang Don't use unnecessary processes in the Erlang transports and clients (David Reiss)
226THRIFT-646 Erlang Erlang library is missing install target (David Reiss)
227THRIFT-698 Erlang Generated module list should contain atoms, not strings (Anthony Molinaro)
228THRIFT-866 Erlang term() in spec definitions seems to not work in erlang R12 (Anthony Molinaro)
229THRIFT-886 Erlang Dialyzer warning (Anthony Molinaro)
230THRIFT-785 Erlang Framed transport server problems (Anthony Molinaro)
231THRIFT-884 HTML HTML Generator: add Key attribute to the Data Types Tables (Roger Meier)
232THRIFT-652 Haskell Generated field name for strut is not capitalized correctly (Christian Lavoie)
233THRIFT-743 Haskell compile error with GHC 6.12.1 (Christian Lavoie)
234THRIFT-901 Haskell Allow the bindings to compile without -fglasgow-exts and with -Wall -Werror (Christian Lavoie)
235THRIFT-905 Haskell Make haskell thrift bindings use automake to compile and install (Christian Lavoie)
236THRIFT-906 Haskell Improve type mappings (Christian Lavoie)
237THRIFT-914 Haskell Make haskell bindings 'easily' compilable (Christian Lavoie)
238THRIFT-918 Haskell Make haskell tests run again (Christian Lavoie)
239THRIFT-919 Haskell Update Haskell bindings README (Christian Lavoie)
240THRIFT-787 Haskell Enums are not read correctly (Christian Lavoie)
241THRIFT-250 Java ExecutorService as a constructor parameter for TServer (Ed Ceaser)
242THRIFT-693 Java Thrift compiler generated java code that throws compiler warnings about deprecated methods. (Bryan Duxbury)
243THRIFT-843 Java TNonblockingSocket connects without a timeout (Bryan Duxbury)
244THRIFT-845 Java async client does not respect timeout (Ning Liang)
245THRIFT-870 Java Java constants don't get Javadoc comments (Bryan Duxbury)
246THRIFT-873 Java Java tests fail due to Too many open files (Todd Lipcon)
247THRIFT-876 Java Add SASL support (Aaron T. Myers)
248THRIFT-879 Java Remove @Override from TUnion.clear (Dave Engberg)
249THRIFT-882 Java deep copy of binary fields does not copy ByteBuffer characteristics (arrayOffset, position) (Bryan Duxbury)
250THRIFT-888 Java async client should also have nonblocking connect (Eric Jensen)
251THRIFT-890 Java Java tutorial doesn't work (Todd Lipcon)
252THRIFT-894 Java Make default accessors for binary fields return byte[]; provide new accessors to get ByteBuffer version (Bryan Duxbury)
253THRIFT-896 Java TNonblockingSocket.isOpen() returns true even after close() (Eric Jensen)
254THRIFT-907 Java libfb303 doesn't compile in 0.4.0 (Todd Lipcon)
255THRIFT-912 Java Improvements and bug fixes to SASL implementation (Todd Lipcon)
256THRIFT-917 Java THsHaServer should not accept an ExecutorService without catching RejectedExecutionException (Ed Ceaser)
257THRIFT-931 Java Use log4j for Java tests (Todd Lipcon)
258THRIFT-880 JavaME JavaME code generator and runtime library (Dave Engberg)
259THRIFT-846 JavaScript JavaScript Test Framwork: extended Testcases (Roger Meier)
260THRIFT-885 JavaScript Url encoded strings never get decoded? How do we fix this? (T Jake Luciani)
261THRIFT-911 JavaScript (JavaScript compiler) Const structs, maps, sets, and lists generate a trailing comma (T Jake Luciani)
262THRIFT-860 OCaml copy method and reset method (Lev Walkin)
263THRIFT-682 PHP PHP extension doesn't compile on Mac OS X (Bryan Duxbury)
264THRIFT-851 PHP php extension fails to compile on centos 5.x (Todd Lipcon)
265THRIFT-840 Perl Perl protocol handler could be more robust against unrecognised types (Conrad Hughes)
266THRIFT-758 Perl incorrect deference in exception handling (Yann Kerherve)
267THRIFT-257 Python Support validation of required fields (Esteve Fernandez)
268THRIFT-335 Python Compact Protocol for Python (David Reiss)
269THRIFT-596 Python Make Python's TBufferedTransport use a configurable input buffer (David Reiss)
270THRIFT-597 Python Python THttpServer performance improvements (David Reiss)
271THRIFT-598 Python Allow Python's threading servers to use daemon threads (David Reiss)
272THRIFT-666 Python Allow the handler to override HTTP responses in THttpServer (David Reiss)
273THRIFT-673 Python Generated Python code has whitespace issues (Ian Eure)
274THRIFT-721 Python THttpClient ignores url parameters (Thomas Kho)
275THRIFT-824 Python TApplicationException.__str__() refers to class constants as globals (Peter Schuller)
276THRIFT-855 Python Include optimized compiled python objects in install (Anthony Molinaro)
277THRIFT-859 Python Allow py:twisted to be generated in different namespace than py (Bruce Lowekamp)
278THRIFT-869 Python TSocket.py on Mac (and FreeBSD) doesn't handle ECONNRESET from recv() (Steven Knight)
279THRIFT-875 Python Include python setup.cfg in dist (Anthony Molinaro)
280THRIFT-610 Ruby binary_protocol.rb segfaults [line 86] (Unassigned)
281THRIFT-899 Ruby Ruby read timeouts can sometimes be 2x what they should be (Ryan King)
282THRIFT-909 Ruby allow block argument to struct constructor (Michael Stockton)
283THRIFT-456 Test Suite Bad IP address string in test/cpp/src/main.cpp (Rush Manbert)
284
285
Bryan Duxburyd7042702010-08-13 04:28:13 +0000286Version 0.4.0
287
288THRIFT-650 Build Make Check fails on Centos/OSX with 0.2.0 tarball (Anthony Molinaro)
289THRIFT-770 Build Get 'make dist' to work without first compiling source code (Anthony Molinaro)
290THRIFT-160 C# Created THttpTransport for the C# library based on WebHttpRequest (Michael Greene)
291THRIFT-834 C# THttpClient resends contents of message after transport errors (Anatoly Fayngelerin)
292THRIFT-247 C++ THttpServer Transport (Unassigned)
293THRIFT-676 C++ Change C++ code generator so that generated classes can be wrapped with SWIG (Unassigned)
294THRIFT-570 Compiler Thrift compiler does not error when duplicate method names are present (Bruce Simpson)
295THRIFT-808 Compiler Segfault when constant declaration references a struct field that doesn't exist (Bryan Duxbury)
296THRIFT-646 Erlang Erlang library is missing install target (Anthony Molinaro)
297THRIFT-544 General multiple enums with the same key generate invalid code (Ben Taitelbaum)
298THRIFT-434 General ruby compiler should warn when a reserved word is used (Michael Stockton)
299THRIFT-799 General Files missing proper Apache license header (Bryan Duxbury)
300THRIFT-832 HTML HTML generator shows unspecified struct fields as 'required' (Bryan Duxbury)
301THRIFT-226 Java Collections with binary keys or values break equals() (Bryan Duxbury)
302THRIFT-484 Java Ability to use a slice of a buffer instead of a direct byte[] for binary fields (Bryan Duxbury)
303THRIFT-714 Java maxWorkerThreads parameter to THsHaServer has no effect (Bryan Duxbury)
304THRIFT-751 Java Add clear() method to TBase (Bryan Duxbury)
305THRIFT-765 Java Improved string encoding and decoding performance (Bryan Duxbury)
306THRIFT-768 Java Async client for Java (Bryan Duxbury)
307THRIFT-774 Java TDeserializer should provide a partialDeserialize method for primitive types (Piotr Kozikowski)
308THRIFT-783 Java .equals java method is broken on structs containing binary-type fields (Unassigned)
309THRIFT-804 Java CompareTo is broken for unions set to map, set, or list (Bryan Duxbury)
310THRIFT-814 Java Include a TServlet in the standard Thrift distribution (Mathias Herberts)
311THRIFT-818 Java Async client doesn't send method args (Bryan Duxbury)
312THRIFT-830 Java Switch binary field implementation from byte[] to ByteBuffer (Bryan Duxbury)
313THRIFT-831 Java FramedTransport implementation that reuses its buffers (Bryan Duxbury)
314THRIFT-833 Java build.xml in lib/java is missing a classpathref attribute for the javadoc task (Bryan Duxbury)
315THRIFT-836 Java Race condition causes CancelledKeyException in TAsyncClientManager (Bryan Duxbury)
316THRIFT-842 Java Upgrade to current version of commons-lang (2.5 instead of 2.4) and/or change dependency in ivy.xml to not be exact (Bryan Duxbury)
317THRIFT-815 JavaScript Deserialization of lists is critically broken. (T Jake Luciani)
318THRIFT-827 OCaml OCaml generator to take default values into account (Lev Walkin)
319THRIFT-647 PHP PHP library is missing install target (Anthony Molinaro)
320THRIFT-682 PHP PHP extension doesn't compile on Mac OS X (Bryan Duxbury)
321THRIFT-718 PHP Thrift PHP library includes closing tags and extraneous whitespace (Nicholas Telford)
322THRIFT-778 PHP PHP socket listening server (Nick Jones)
323THRIFT-780 PHP PHP extension sometimes causes an abort with two exceptions at the same time (David Reiss)
324THRIFT-837 PHP PHP accelerator bug for writes > 8k (Thomas Kho)
325THRIFT-782 Perl Perl code for writing containers doesn't count length of write*Begin or write*End (Conrad Hughes)
326THRIFT-395 Python Python library + compiler does not support unicode strings (Unassigned)
327THRIFT-133 Ruby 'namespace ruby' should error out, or be an alias to 'namespace rb' (Bryan Duxbury)
328THRIFT-664 Ruby Ruby extension fails to build with Ruby 1.9.1 (Rajesh Malepati)
329THRIFT-699 Ruby Excise unused "native protocol method table" stuff from thrift_native (Bryan Duxbury)
330THRIFT-767 Ruby ruby compiler does not keep comments for enum values (Bryan Duxbury)
331THRIFT-811 Ruby http_client_transport.rb: allow custom http headers (Tony Kamenick)
332THRIFT-459 Ruby Ruby installation always tries to write to /Library/Ruby/site (Matthieu Imbert)
333
334
Kevin Clark50e030a2009-05-05 00:53:01 +0000335Version 0.1.0 RC1 / Unreleased
Kevin Clark38919c52009-04-07 19:12:01 +0000336
337Compatibility Breaking Changes:
David Reiss7d64c0a2009-04-08 20:46:13 +0000338 C++:
David Reissc42485a2009-04-07 23:44:01 +0000339 * It's quite possible that regenerating code and rebuilding will be
340 required. Make sure your headers match your libs!
341
David Reiss7d64c0a2009-04-08 20:46:13 +0000342 Java:
David Reissc42485a2009-04-07 23:44:01 +0000343
David Reiss7d64c0a2009-04-08 20:46:13 +0000344 Python:
David Reissc42485a2009-04-07 23:44:01 +0000345
David Reiss7d64c0a2009-04-08 20:46:13 +0000346 Ruby:
Kevin Clark38919c52009-04-07 19:12:01 +0000347 * Generated files now have underscored names [THRIFT-421]
348 * The library has been rearranged to be more Ruby-like [THRIFT-276]
349
David Reiss7d64c0a2009-04-08 20:46:13 +0000350 Erlang:
David Reissc42485a2009-04-07 23:44:01 +0000351 * Generated code will have to be regenerated, and the new code will
352 have to be deployed atomically with the new library code [THRIFT-136]
Kevin Clark38919c52009-04-07 19:12:01 +0000353
354
355New Features and Bug Fixes:
David Reiss7d64c0a2009-04-08 20:46:13 +0000356 C++:
David Reissc42485a2009-04-07 23:44:01 +0000357 * Support for TCompactProtocol [THRIFT-333]
Kevin Clark38919c52009-04-07 19:12:01 +0000358
David Reiss7d64c0a2009-04-08 20:46:13 +0000359 Java:
Kevin Clark38919c52009-04-07 19:12:01 +0000360 * Support for TCompactProtocol [THRIFT-110]
361
David Reiss7d64c0a2009-04-08 20:46:13 +0000362 Python:
David Reissc42485a2009-04-07 23:44:01 +0000363 * Support for Twisted [THRIFT-148]
364
David Reiss7d64c0a2009-04-08 20:46:13 +0000365 Ruby:
David Reissc42485a2009-04-07 23:44:01 +0000366 * Support for TCompactProtocol [THRIFT-332]
367