summaryrefslogtreecommitdiff
path: root/CHANGES
blob: e3e50b6bc857ce0fbfd48ca8574bd66ca45c4d1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
Apache Thrift Changelog

================================================================================
Thrift 0.12.0
--------------------------------------------------------------------------------
## New Languages
    * Common LISP (cl)
    * Swift
    * Typescript (nodets)

## Deprecated Languages
    * Cocoa

## Breaking Changes (since 0.11.0)
    * [THRIFT-4529] - Rust enum variants are now camel-cased instead of uppercased to conform to Rust naming conventions
    * [THRIFT-4448] - Support for golang 1.6 and earlier has been dropped.
    * [THRIFT-4474] - PHP now uses the PSR-4 loader by default instead of class maps.
    * [THRIFT-4532] - method signatures changed in the compiler's t_oop_generator.
    * [THRIFT-4648] - The C (GLib) compiler's handling of namespaces has been improved.

## Known Issues (Blocker or Critical)
    * [THRIFT-4037] - build: use a single build system for thrift
    * [THRIFT-4119] - build: bootstrap.sh is missing from source tarball
    * [THRIFT-3289] - csharp: socket exhaustion in csharp implementation
    * [THRIFT-3029] - cocoa: Getters for fields defined with uppercase names do not work
    * [THRIFT-3325] - cocoa: Extended services aren't subclasses in generated Cocoa
    * [THRIFT-4116] - cocoa: Thrift de-capitalizes the name of IsSet property in Cocoa
    * [THRIFT-3877] - cpp: the http implementation is not standard; interop with other languages is spotty at best
    * [THRIFT-4180] - cpp: Impossible to build Thrift C++ library for Android (NDK)
    * [THRIFT-4384] - cpp: Using multiple async services simultaneously is not thread-safe
    * [THRIFT-3108] - haskell: Defaulted struct parameters on a service generates invalid Haskell
    * [THRIFT-3990] - nodejs: Exception swallowed by deserialization function
    * [THRIFT-4214] - nodejs: map<i64,value> key treated as hex value in JavaScript
    * [THRIFT-4602] - nodejs: ERROR in ./node_modules/thrift/lib/nodejs/lib/thrift/connection.js Module not found: Error: Can't resolve 'child_process'
    * [THRIFT-4639] - nodejs: Sequence numbering for multiplexed protocol broken
    * [THRIFT-1310] - php: sequence and reconnection management issues
    * [THRIFT-1538] - php: Error during deserialization int64 on 32-bit architecture
    * [THRIFT-1580] - php: thrift type i64 java to php serialize/deserealize not working
    * [THRIFT-1950] - php: PHP gets stuck in infinite loop
    * [THRIFT-2954] - python: sending int or float in a double field breaks the connection
    * [THRIFT-4080] - python: unix sockets can get stuck forever
    * [THRIFT-4281] - python: generated code is out of order and causes load issues
    * [THRIFT-4677] - py3: UnicodeDecideError in Python3

## Build Process
    * [THRIFT-4308] - D language docker images need demios for libevent and openssl fixed to re-enable make cross on dlang
    * [THRIFT-4579] - Use Ubuntu Bionic (18.04 LTS) for CI builds instead of Artful (17.10)
    * [THRIFT-4508] - Define CI operating system coverage rules for the project and (hopefully) simplify CI a little more
    * [THRIFT-4397] - ubuntu install instructions broken on 16.04
    * [THRIFT-4545] - Appveyor builds are failing due to a haskell / cabal update in chocolatey
    * [THRIFT-4452] - optimize Dockerfile (only onetime apt-get update)
    * [THRIFT-4440] - rm `build/docker/ubuntu-trusty/Dockerfile.orig`
    * [THRIFT-4352] - Ubuntu Artful doesn't appear to be compatible with Thrift and Haxe 3.4.2
    * [THRIFT-4666] - DLang Client Pool Test fails sporadically
    * [THRIFT-4676] - CL tutorial build fails sporadically
    * [THRIFT-4456] - Make haxelib download quiet so it doesn't blow up the build log
    * [THRIFT-4605] - bootstrap.sh fails if automake=1.16.1

## c_glib
    * [THRIFT-4648] - The C (GLib) compiler's handling of namespaces has been improved.
    * [THRIFT-4622] - glibC compilation issue
    * [THRIFT-4671] - c glib is unable to handle client close unexpectedly

## cl (new language support in 0.12.0)
    * [THRIFT-82] - Common Lisp support

## csharp
    * [THRIFT-4558] - reserved Csharp keywords are not escaped in some cases
    * [THRIFT-4637] - C# async mode generates incorrect code with inherited services
    * [THRIFT-4672] - IAsyncResult style methods not being supported by certain transports leads to issues in mixed ISync/IAsync use cases
    * [THRIFT-4539] - Allow TBufferedTransport to be used as base class
    * [THRIFT-4535] - XML docs; code cleanup (tabs->spaces; String->string)
    * [THRIFT-4492] - protected ExceptionType type member of TApplicationException cannot be accessed
    * [THRIFT-4446] - JSONProtocol Base64 Encoding Trims Padding
    * [THRIFT-4455] - Missing dispose calls in ThreadedServer & ThreadpoolServer
    * [THRIFT-4609] - keep InnerException wherever appropriate
    * [THRIFT-4673] - IAsyncResult not supported by layered transports (buffered/framed)

## cpp
    * [THRIFT-4476] - Typecasting problem on list items
    * [THRIFT-4465] - TNonblockingServer throwing THRIFT LOGGER: TConnection::workSocket(): THRIFT_EAGAIN (unavailable resources)
    * [THRIFT-4680] - TBufferTransports.h does not compile under Visual Studio 2017
    * [THRIFT-4618] - TNonblockingServer crash because of limitation of select()
    * [THRIFT-4620] - TZlibTransport.cpp doesn't ensure that there is enough space for the zlib flush marker in the buffer.
    * [THRIFT-4571] - ZeroMQ contrib library needs a refresh
    * [THRIFT-4559] - TSSLServerSocket incorrectly prints errors
    * [THRIFT-4578] - Move `TAsyncProtocolProcessor` into main thrift library
    * [THRIFT-4418] - evhttp_connection_new is deprecated; use evhttp_connection_base_new

## compiler
    * [THRIFT-4644] - Compiler cannot be compiled on macOS(maybe also on other platforms with clang)
    * [THRIFT-4531] - Thrift generates wrong Python code for immutable structures with optional members
    * [THRIFT-4513] - thrift generated code is not stable for constants
    * [THRIFT-4532] - Avoid updating Thrift compiler generated code if the output has not changed
    * [THRIFT-4400] - Visual Studio Compiler project should link runtime statically in release builds
    * [THRIFT-4399] - plugin.thrift t_const_value is not used as a union in C++ code -- fix this
    * [THRIFT-4496] - Dealing with language keywords in Thrift (e.g. service method names)
    * [THRIFT-4393] - repeated runs of compiler produce different binary output at plugin interface

## dlang
    * [THRIFT-4478] - Thrift will not build with dlang 2.078 or later
    * [THRIFT-4503] - dlang servers logError on normal client disconnection
    * [THRIFT-4308] - D language docker images need demios for libevent and openssl fixed to re-enable make cross on dlang

## dart
    * [THRIFT-4646] - Effective Dart and Exceptions
    * [THRIFT-4439] - Shouldn't download dart.deb directly.

## delphi
    * [THRIFT-4562] - Calling wrong exception CTOR leads to "call failed: unknown result" instead of the real exception being thrown
    * [THRIFT-4554] - uncompileable code with member names that are also types under specific conditions
    * [THRIFT-4422] - Add Async implementation via IFuture
    * [THRIFT-4485] - Possible invalid ptr AV with overlapped read/write on pipes
    * [THRIFT-4549] - Thrift exceptions should derive from TException
    * [THRIFT-4540] - buffered transport broken when trying to re-open a formerly closed transport
    * [THRIFT-4473] - Move Thrift.Console.pas out of the Library
    * [THRIFT-4490] - Allow a default service as fallback for multiplex processors connected by old clients
    * [THRIFT-4454] - Large writes/reads may cause range check errors in debug mode
    * [THRIFT-4461] - Compiler directive should match Delphi XE4
    * [THRIFT-4462] - First line in Console duplicated
    * [THRIFT-4642] - FPU ctrl word settings may cause an unexpected "denormalized" error

## erlang
    * [THRIFT-4497] - Erlang records should use map() for map type
    * [THRIFT-4495] - Erlang records should allow 'undefined' for non-required fields
    * [THRIFT-4580] - Fix erlang tutorial unpack on Windows
    * [THRIFT-4582] - Ubuntu Xenial erlang 18.3 "make check" fails

## golang
    * [THRIFT-4448] - Support for golang 1.6 and earlier has been dropped.
    * [THRIFT-4253] - Go generator assigns strings to field in const instead of pointers.
    * [THRIFT-4573] - Unions Field Count Does Not Consider Binary
    * [THRIFT-4447] - Golang: Panic on p.c.Call when using deprecated initializers
    * [THRIFT-4650] - Required field incorrectly marked as set when fieldType does not match
    * [THRIFT-4486] - Golang: -remote.go client cleanup
    * [THRIFT-4537] - TSimpleServer can exit Accept loop with lock still acquired
    * [THRIFT-4516] - Add support for go 1.10
    * [THRIFT-4421] - golang tests rely on gomock, which has change behaviour, causing tests to fail
    * [THRIFT-4626] - Communication crash when using binary/compact protocol and zlib transport
    * [THRIFT-4659] - golang race detected when closing listener socket

## haskell
    * [THRIFT-4634] - Haskell builds with older cabal cannot reconcile complex version requirements

## java
    * [THRIFT-4259] - Thrift does not compile due to Ant Maven task errors
    * [THRIFT-1418] - Compiling Thrift from source: Class org.apache.tools.ant.taskdefs.ConditionTask doesn't support the nested "typefound" element
    * [THRIFT-4530] - proposal: add nullability annotations to generated Java code
    * [THRIFT-4614] - Generate missing @Nullable annotations for Java iterator getters
    * [THRIFT-4555] - Getter of binary field in Java creates unnecessary copy
    * [THRIFT-3983] - libthrift is deployed on central with pom packaging instead of jar
    * [THRIFT-4294] - Java Configure Fails for Ant >= 1.10
    * [THRIFT-4178] - Java libraries missing from package when using cmake
    * [THRIFT-4120] - pom files are not generated or provided in the build
    * [THRIFT-1507] - Maven can't download resource from central when behind a proxy and won't use local repository
    * [THRIFT-4556] - Optional rethrow of unhandled exceptions in java processor
    * [THRIFT-4337] - Able to set keyStore and trustStore as InputStream in the TSSLTransportFactory.TSSLTransportParameters
    * [THRIFT-4566] - Pass message of unhandled exception to optional rethrow.
    * [THRIFT-4506] - Remove assertion in Java SASL code that would be ignored in release builds
    * [THRIFT-4470] - Include popular IDE file templates to gitignore
    * [THRIFT-4429] - Make TThreadPoolServer.executorService_ available in inherited classes and refactor methods to be able customization
    * [THRIFT-3769] - Fix logic of THRIFT-2268
    * [THRIFT-4494] - Increase Java Socket Buffer Size
    * [THRIFT-4499] - Remove Magic Number In TFIleTransport

## js
    * [THRIFT-4406] - JavaScript: Use modern Promise implementations
    * [THRIFT-4625] - let / const variable decorators for es6 compiler
    * [THRIFT-4653] - ES6 Classes
    * [THRIFT-4592] - JS: readI32 performance on large arrays is very poor in Chrome
    * [THRIFT-4509] - js and nodejs libraries need to be refreshed with current libraries
    * [THRIFT-4403] - thrift.js: Incorrect usage of 'this' in TWebSocketTransport.__onOpen
    * [THRIFT-4436] - Deserialization of nested list discards content
    * [THRIFT-4437] - JS WebSocket client callbacks invoked twice on parallel requests
    * [THRIFT-4679] - Duplicate declaration of InputBufferUnderrunError in lib/nodejs/lib/thrift/json_protocol.js
    * [THRIFT-4551] - Add prettier for consistent JS code formatting

## lua
    * [THRIFT-4591] - lua client uses two write() calls per framed message send
    * [THRIFT-3863] - Can't "make install" Lua Library

## netcore
    * [THRIFT-4524] - .NET Core Server doesn't close properly when cancelled
    * [THRIFT-4434] - Update .NET Core components, add tests for .Net Core library and .Net Core compiler, fix bugs and build process
    * [THRIFT-4446] - JSONProtocol Base64 Encoding Trims Padding

## node.js
    * [THRIFT-4225] - Error handling malformed arguments leaks memory, corrupts transport buffers causing next RPC to fail
    * [THRIFT-3950] - Memory leak while calling oneway method
    * [THRIFT-3143] - add typescript directory support
    * [THRIFT-4564] - TBufferedTransport can leave corrupt data in the buffer
    * [THRIFT-4647] - Node.js Fileserver webroot path
    * [THRIFT-4489] - Unix domain socket support for NodeJS client
    * [THRIFT-4443] - node.js json_protocol throws error in skip function
    * [THRIFT-4604] - NodeJS: Expose Int64 from browser.js for consumption by browser
    * [THRIFT-4480] - NodeJS warning on binary_protocol writeMessageEnd when seqid = 0

## perl
    * [THRIFT-4382] - Replace the use of Perl Indirect Object Syntax calls to new()
    * [THRIFT-4471] - Thrift CPAN release is missing Makefile.PL and the clients are unable to build the module
    * [THRIFT-4416] - Perl CPAN Packaging Improvements

## php
    * [THRIFT-4474] - PHP generator use PSR-4 default
    * [THRIFT-4463] - PHP generated code match PSR-2
    * [THRIFT-4373] - Extending Thrift class results in "Attempt serialize from non-Thrift object"
    * [THRIFT-4354] - TSocket block on read
    * [THRIFT-4423] - migrate php library to psr-4
    * [THRIFT-4656] - infinite loop in latest PHP library
    * [THRIFT-4477] - TBufferedTransport must have underlying transport
    * [THRIFT-4475] - lib/php/test should be checked for PSR-2
    * [THRIFT-4498] - add phpcs back
    * [THRIFT-4460] - php library use PSR-2
    * [THRIFT-4641] - TCurlClient doesn't check for HTTP status code
    * [THRIFT-4645] - TCurlClient: show actual error message when throwing TTransportException
    * [THRIFT-4674] - Add stream context support into PHP/THttpClient
    * [THRIFT-4459] - reduce php library directory depth

## python
    * [THRIFT-4670] - Twisted, slots, and void method fails with "object has no attribute 'success'"
    * [THRIFT-4464] - Potentially server-crashing typo in Python TNonblockingServer
    * [THRIFT-4548] - Supporting TBinaryProtocolAccelerated protocol when using TMultiplexedProcessor in Python
    * [THRIFT-4577] - Outdated cipher string in python unit test
    * [THRIFT-4505] - python build on Vagrant Windows boxes fails
    * [THRIFT-4621] - THeader for Python
    * [THRIFT-4668] - make socket backlog configurable for python
    * [THRIFT-4561] - Python: cleanup socket timeout settings

## ruby
    * [THRIFT-4289] - Thrift RSpec test suite fails with Ruby 2.4.x due to Fixnum deprecation
    * [THRIFT-4342] - Support ruby rspec 3
    * [THRIFT-4525] - Add ssl socket option to ruby cross tests
    * [THRIFT-4450] - Add seek support to TCompactInputProtocol in Rust
    * [THRIFT-4631] - Codegen Creates Invalid Ruby for Recursive Structs
    * [THRIFT-4472] - Fix the genspec for ruby so it does not complain about an invalid license

## rust
    * [THRIFT-4662] - Rust const string calls function at compile time
    * [THRIFT-4661] - Rust enum name wrong case in generated structs
    * [THRIFT-4617] - Avoid generating conflicting struct names in Rust code
    * [THRIFT-4529] - Rust generation should include #![allow(non_snake_case)] or force conform to Rust style guidelines
    * [THRIFT-4390] - Rust binary protocol and buffered transport cannot handle writes above 4096 bytes
    * [THRIFT-4419] - Rust framed transport cannot handle writes above 4096 bytes
    * [THRIFT-4658] - Rust's TBinaryInputProtocol fails when strict is false
    * [THRIFT-4187] - Dart -> Rust Framed cross tests fail
    * [THRIFT-4664] - Rust cannot create ReadHalf/WriteHalf to implement custom tranports

## swift (new language support in 0.12.0)
    * [THRIFT-3773] - Swift Library

## test suite
    * [THRIFT-4515] - Gracefully shutdown cross-test servers to fully test teardown
    * [THRIFT-4085] - Add .NET Core to the make cross standard test suite
    * [THRIFT-4358] - Add unix domain sockets in ruby to cross test - code exists

## typescript (new language support in 0.12.0)
    * [THRIFT-3143] - add typescript directory support

================================================================================
Thrift 0.11.0
--------------------------------------------------------------------------------
## Sub-task
    * [THRIFT-2733] - Erlang coding standards
    * [THRIFT-2740] - Perl coding standards
    * [THRIFT-3610] - Streamline exception handling in Python server handler
    * [THRIFT-3686] - Java processor should report internal error on uncaught exception
    * [THRIFT-4049] - Skip() should throw TProtocolException.INVALID_DATA on unknown data types
    * [THRIFT-4053] - Skip() should throw TProtocolException.INVALID_DATA on unknown data types
    * [THRIFT-4136] - Align is_binary() method with is_string() to simplify those checks
    * [THRIFT-4137] - Fix remaining undefined behavior invalid vptr casts in Thrift Compiler
    * [THRIFT-4138] - Fix remaining undefined behavior invalid vptr casts in C++ library
    * [THRIFT-4296] - Fix Ubuntu Xenial build environment for the python language
    * [THRIFT-4298] - Fix Ubuntu Xenial build environment for the go 1.6 language
    * [THRIFT-4299] - Fix Ubuntu Xenial build environment for the D language
    * [THRIFT-4300] - Fix make cross in Ubuntu Xenial docker environment, once all language support issues are fixed
    * [THRIFT-4302] - Fix Ubuntu Xenial make cross testing for lua and php7
    * [THRIFT-4398] - Update EXTRA_DIST for "make dist"

## Bug
    * [THRIFT-381] - Fail fast if configure detects C++ problems
    * [THRIFT-1677] - MinGW support broken
    * [THRIFT-1805] - Thrift should not swallow ALL exceptions
    * [THRIFT-2026] - Fix TCompactProtocol 64 bit builds
    * [THRIFT-2642] - Recursive structs don't work in python
    * [THRIFT-2889] - stable release 0.9.2, erlang tutorial broken
    * [THRIFT-2913] - Ruby Server Thrift::ThreadPoolServer should serve inside a thread
    * [THRIFT-2998] - Node.js: Missing header from http request
    * [THRIFT-3000] - .NET implementation has trouble with mixed IP modes
    * [THRIFT-3281] - Travis CI build passed but the log says BUILD FAILED
    * [THRIFT-3358] - Makefile:1362: *** missing separator. Stop.
    * [THRIFT-3600] - Make TTwisted server send exception on unexpected handler error
    * [THRIFT-3602] - Make Tornado server send exception on unexpected handler error
    * [THRIFT-3657] - D TFileWriterTransport close should use non-priority send
    * [THRIFT-3700] - Go Map has wrong default value when optional
    * [THRIFT-3703] - Unions Field Count Does Not Consider Map/Set/List Fields
    * [THRIFT-3730] - server log error twice
    * [THRIFT-3778] - go client can not pass method parameter to server of other language if no field_id is given
    * [THRIFT-3784] - thrift-maven-plugin generates invalid include directories for IDL in dependency JARs
    * [THRIFT-3801] - Node Thrift client throws exception with multiplexer and responses that are bigger than a single buffer
    * [THRIFT-3821] - TMemoryBuffer buffer may overflow when resizing
    * [THRIFT-3832] - Thrift version 0.9.3 example on Windows, Visual Studio, linking errors during compiling
    * [THRIFT-3847] - thrift/config.h includes a #define for VERSION which will likely conflict with existing user environment or code
    * [THRIFT-3873] - Fix various build warnings when using Visual Studio
    * [THRIFT-3891] - TNonblockingServer configured with more than one IO threads does not always return from serve() upon stop()
    * [THRIFT-3892] - Thrift uses TLS SNI extension provided by OpenSSL library. Older version of OpenSSL(< 0.9.8f) may create problem because they do not support 'SSL_set_tlsext_host_name()'.
    * [THRIFT-3895] - Build fails using Java 1.8 with Ant < 1.9
    * [THRIFT-3896] - map<string,string> data with number string key cannot access that deserialized by php extension
    * [THRIFT-3938] - Python TNonblockingServer does not work with SSL
    * [THRIFT-3944] - TSSLSocket has dead code in checkHandshake
    * [THRIFT-3946] - Java 1.5 compatibility broken for binary fields (java5 option)
    * [THRIFT-3960] - Inherited services in Lua generator are not named correctly
    * [THRIFT-3962] - Ant build.xml broken on Windows for Java library
    * [THRIFT-3963] - Thrift.cabal filename does not match module name
    * [THRIFT-3967] - gobject/gparam.h:166:33: warning: enumerator value for ‘G_PARAM_DEPRECATED’ is not an integer constant expression
    * [THRIFT-3968] - Deserializing empty string/binary fields
    * [THRIFT-3974] - Using clang-3.8 and ThreadSanitizer on the concurrency_test claims bad PThread behavior
    * [THRIFT-3984] - PHP7 extension causes segfault
    * [THRIFT-4008] - broken ci due to upstream dependency versioning break
    * [THRIFT-4009] - Use @implementer instead of implements in TTwisted.py
    * [THRIFT-4010] - Q.fcall messing up with *this* pointer inside called function
    * [THRIFT-4011] - Sets of Thrift structs generate Go code that can't be serialized to JSON
    * [THRIFT-4012] - Python Twisted implementation uses implements, not compatible with Py3
    * [THRIFT-4014] - align C# meta data in AssemblyInfo.cs
    * [THRIFT-4015] - Fix wrongly spelled "Thirft"s
    * [THRIFT-4016] - testInsanity() impl does not conform to test spec in ThriftTest.thrift
    * [THRIFT-4023] - Skip unexpected field types on read/write
    * [THRIFT-4024] - Skip() should throw on unknown data types
    * [THRIFT-4026] - TSSLSocket doesn't work with Python < 2.7.9
    * [THRIFT-4029] - Accelerated protocols do not build from thrift-py 0.10.0 on PyPI
    * [THRIFT-4031] - Go plugin generates invalid code for lists of typedef'ed built-in types
    * [THRIFT-4033] - Default build WITH_PLUGIN=ON for all builds results in packaging errors
    * [THRIFT-4034] - CMake doesn't work to build compiler on MacOS
    * [THRIFT-4036] - Add .NET Core environment/build support to the docker image
    * [THRIFT-4038] - socket check: checking an unsigned number against >= 0 never fails
    * [THRIFT-4042] - ExtractionError when using accelerated thrift in a multiprocess test
    * [THRIFT-4043] - thrift perl debian package is placing files in the wrong place
    * [THRIFT-4044] - Build job 17 failing on every pull request; hspec core (haskell) 2.4 issue
    * [THRIFT-4046] - MinGW with gcc 6.2 does not compile on Windows
    * [THRIFT-4060] - Thrift printTo ostream overload mechanism breaks down when types are nested
    * [THRIFT-4062] - Remove debug print from TServiceClient
    * [THRIFT-4065] - Document Perl ForkingServer signal restriction imposed by THRIFT-3848 and remove unnecessary code
    * [THRIFT-4068] - A code comment in Java ServerSocket is wrong around accept()
    * [THRIFT-4073] - enum files are still being generated with unused imports
    * [THRIFT-4076] - Appveyor builds failing because ant 1.9.8 was removed from apache servers
    * [THRIFT-4077] - AI_ADDRCONFIG redefined after recent change to PlatformSocket header
    * [THRIFT-4079] - Generated perl code that returns structures from included thrift files is missing a necessary use clause
    * [THRIFT-4087] - Spurious exception destroying TThreadedServer because of incorrect join() call
    * [THRIFT-4102] - TBufferedTransport performance issue since 0.10.0
    * [THRIFT-4106] - concurrency_test fails randomly
    * [THRIFT-4108] - c_glib thrift ssl has multiple bugs and deprecated functions
    * [THRIFT-4109] - Configure Script uses string comparison for versions
    * [THRIFT-4129] - C++ TNonblockingServer fd leak when failing to dispatch new connections
    * [THRIFT-4131] - Javascript with WebSocket handles oneway methods wrong
    * [THRIFT-4134] - Fix remaining undefined behavior invalid vptr casts
    * [THRIFT-4140] - Use of non-thread-safe function gmtime()
    * [THRIFT-4141] - Installation of haxe in docker files refers to a redirect link and fails
    * [THRIFT-4147] - Rust: protocol should accept transports with non-static lifetime
    * [THRIFT-4148] - [maven-thrift-plugin] compile error while import a thrift in dependency jar file.
    * [THRIFT-4149] - System.out pollutes log files 
    * [THRIFT-4154] - PHP close() of a TSocket needs to close any type of socket
    * [THRIFT-4158] - minor issue in README-MSYS2.md
    * [THRIFT-4159] - Building tests fails on MSYS2 (MinGW64) due to a (small?) linker error
    * [THRIFT-4160] - TNonblocking server fix use of closed/freed connections
    * [THRIFT-4161] - TNonBlocking server using uninitialized event in error paths
    * [THRIFT-4162] - TNonBlocking handling of TSockets in error state is incorrect after fd is closed
    * [THRIFT-4164] - Core in TSSLSocket cleanupOpenSSL when destroying a mutex used by openssl
    * [THRIFT-4165] - C++ build has many warnings under c++03 due to recent changes, cmake needs better platform-independent language level control
    * [THRIFT-4166] - Recent fix to remove boost::lexical_cast usage broke VS2010
    * [THRIFT-4167] - Missing compile flag
    * [THRIFT-4170] - Support lua 5.1 or earlier properly for object length determination
    * [THRIFT-4172] - node.js tutorial client does not import assert, connection issues are not handled properly
    * [THRIFT-4177] - Java compiler produces deep copy constructor that could make shallow copy instead
    * [THRIFT-4184] - Building on Appveyor: invalid escape sequence \L
    * [THRIFT-4185] - fb303 counter encoding fix
    * [THRIFT-4189] - Framed/buffered transport Dispose() does not dispose the nested transport
    * [THRIFT-4193] - Lower the default maxReadBufferBytes for non-blocking servers
    * [THRIFT-4195] - Compilation to GO produces broken code
    * [THRIFT-4196] - Cannot generate recursive Rust types
    * [THRIFT-4204] - typo in compact spec
    * [THRIFT-4206] - Strings in container fields are not decoded properly with py:dynamic and py:utf8strings
    * [THRIFT-4208] - C# NamedPipesServer not really working in some scenarios
    * [THRIFT-4211] - Fix GError glib management under Thrift
    * [THRIFT-4212] - c_glib flush tries to close SSL even if socket is invalid
    * [THRIFT-4213] - Travis build fails at curl -sSL https://www.npmjs.com/install.sh | sh
    * [THRIFT-4215] - Golang TTransportFactory Pattern Squelches Errors
    * [THRIFT-4216] - Golang Http Clients Do Not Respect User Options
    * [THRIFT-4218] - Set TCP_NODELAY for PHP client socket
    * [THRIFT-4219] - Golang HTTP clients created with Nil buffer
    * [THRIFT-4231] - TJSONProtocol throws unexpected non-Thrift-exception on null strings
    * [THRIFT-4232] - ./configure does bad ant version check
    * [THRIFT-4234] - Travis build fails cross language tests with "Unsupported security protocol type"
    * [THRIFT-4237] - Go TServerSocket Race Conditions
    * [THRIFT-4240] - Go TSimpleServer does not close properly
    * [THRIFT-4243] - Go TSimpleServer race on wait in Stop() method
    * [THRIFT-4245] - Golang TFramedTransport's writeBuffer increases if writes to transport failed
    * [THRIFT-4246] - Sequence number mismatch on multiplexed clients
    * [THRIFT-4247] - Compile fails with openssl 1.1
    * [THRIFT-4248] - Compile fails - strncpy, memcmp, memset not declared in src/thrift/transport/TSSLSocket.cpp
    * [THRIFT-4251] - Java Epoll Selector Bug
    * [THRIFT-4257] - Typescript async callbacks do not provide the correct types
    * [THRIFT-4258] - Boost/std thread wrapping faultiness
    * [THRIFT-4260] - Go context generation issue. Context is parameter in Interface not in implementation
    * [THRIFT-4261] - Go context generation issue: breaking change in generated code regarding thrift.TProcessorFunction interface
    * [THRIFT-4262] - Invalid binding to InterlockedCompareExchange64() with 64-bit targets
    * [THRIFT-4263] - Fix use after free bug for thrown exceptions
    * [THRIFT-4266] - Erlang library throws during skipping fields of composite type (maps, lists, structs, sets)
    * [THRIFT-4268] - Erlang library emits debugging output in transport layer
    * [THRIFT-4273] - erlang:now/0: Deprecated BIF. 
    * [THRIFT-4274] - Python feature tests for SSL/TLS failing
    * [THRIFT-4279] - Wrong path in include directive in generated Thrift sources
    * [THRIFT-4283] - TNamedPipeServer race condition in interrupt
    * [THRIFT-4284] - File contains a NBSP: lib/nodejs/lib/thrift/web_server.js
    * [THRIFT-4290] - C# nullable option generates invalid code for non-required enum field with default value
    * [THRIFT-4292] - TimerManager::remove() is not implemented
    * [THRIFT-4307] - Make ssl-open timeout effective in golang client
    * [THRIFT-4312] - Erlang client cannot connect to Python server: exception error: econnrefused
    * [THRIFT-4313] - Program code of the Erlang tutorial files contain syntax errors
    * [THRIFT-4316] - TByteBuffer.java will read too much data if a previous read returns fewer bytes than requested
    * [THRIFT-4319] - command line switch for "evhttp" incorrectly resolved to anon pipes
    * [THRIFT-4323] - range check errors or NPE in edge cases
    * [THRIFT-4324] - field names can conflict with local vars in generated code
    * [THRIFT-4328] - Travis CI builds are timing out (job 1) and haxe builds are failing since 9/11
    * [THRIFT-4329] - c_glib Doesn't have a multiplexed processor
    * [THRIFT-4331] - C++: TSSLSockets bug in handling huge messages, bug in handling polling
    * [THRIFT-4332] - Binary protocol has memory leaks
    * [THRIFT-4334] - Perl indentation incorrect when defaulting field attribute to a struct
    * [THRIFT-4339] - Thrift Framed Transport in Erlang crashes server when client disconnects
    * [THRIFT-4340] - Erlang fix a crash on client close
    * [THRIFT-4355] - Javascript indentation incorrect when defaulting field attribute to a struct
    * [THRIFT-4356] - thrift_protocol call Transport cause Segmentation fault
    * [THRIFT-4359] - Haxe compiler looks like it is producing incorrect code for map or set key that is binary type
    * [THRIFT-4362] - Missing size-check can lead to huge memory allocation
    * [THRIFT-4364] - Website contributing guide erroneously recommends submitting patches in JIRA
    * [THRIFT-4365] - Perl generated code uses indirect object syntax, which occasionally causes compilation errors.
    * [THRIFT-4367] - python TProcessor.process is missing "self"
    * [THRIFT-4370] - Ubuntu Artful cppcheck and flake8 are more stringent and causing SCA build job failures
    * [THRIFT-4372] - Pipe write operations across a network are limited to 65,535 bytes per write. 
    * [THRIFT-4374] - cannot load thrift_protocol due to undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE
    * [THRIFT-4376] - Coverity high impact issue resolution
    * [THRIFT-4377] - haxe. socket handles leak in TSimpleServer
    * [THRIFT-4381] - Wrong isset bitfield value after transmission
    * [THRIFT-4385] - Go remote client -u flag is broken
    * [THRIFT-4392] - compiler/..../plugin.thrift structs mis-ordered blows up ocaml generator
    * [THRIFT-4395] - Unable to build in the ubuntu-xenial docker image: clap 2.28 requires Rust 1.20
    * [THRIFT-4396] - inconsistent (or plain wrong) version numbers in master/trunk 

## Documentation
    * [THRIFT-4157] - outdated readme about Haxe installation on Linux

## Improvement
    * [THRIFT-105] - make a thrift_spec for a structures with negative tags
    * [THRIFT-281] - Cocoa library code needs comments, badly
    * [THRIFT-775] - performance improvements for Perl
    * [THRIFT-2221] - Generate c++ code with std::shared_ptr instead of boost::shared_ptr.
    * [THRIFT-2364] - OCaml: Use Oasis exclusively for build process
    * [THRIFT-2504] - TMultiplexedProcessor should allow registering default processor called if no service name is present
    * [THRIFT-3207] - Enable build with OpenSSL 1.1.0 series
    * [THRIFT-3272] - Perl SSL Authentication Support
    * [THRIFT-3357] - Generate EnumSet/EnumMap where elements/keys are enums
    * [THRIFT-3369] - Implement SSL/TLS support on C with c_glib
    * [THRIFT-3467] - Go Maps for Thrift Sets Should Have Values of Type struct{} 
    * [THRIFT-3580] - THeader for Haskell
    * [THRIFT-3627] - Missing basic code style consistency of JavaScript.
    * [THRIFT-3706] - There's no support for Multiplexed protocol on c_glib library
    * [THRIFT-3766] - Add getUnderlyingTransport() to TZlibTransport
    * [THRIFT-3776] - Go code from multiple thrift files with the same namespace
    * [THRIFT-3823] - Escape documentation while generating non escaped documetation
    * [THRIFT-3854] - allow users to clear read buffers
    * [THRIFT-3859] - Unix Domain Socket Support in Objective-C
    * [THRIFT-3921] - C++ code should print enums as strings
    * [THRIFT-3926] - There should be an error emitted when http status code is not 200 
    * [THRIFT-4007] - Micro-optimization of TTransport.py
    * [THRIFT-4040] - Add real cause of TNonblockingServerSocket error to exception
    * [THRIFT-4064] - Update node library dependencies
    * [THRIFT-4069] - All perl packages should have proper namespace, version syntax, and use proper thrift exceptions
    * [THRIFT-4071] - Consolidate the Travis CI jobs where possible to put less stress on the Apache Foundation's allocation of CI build slaves
    * [THRIFT-4072] - Add the possibility to send custom headers in TCurlClient
    * [THRIFT-4075] - Better MinGW support for headers-only boost (without thread library)
    * [THRIFT-4081] - Provide a MinGW 64-bit Appveyor CI build for better pull request validation
    * [THRIFT-4084] - Improve SSL security in thrift by adding a make cross client that checks to make sure SSLv3 protocol cannot be negotiated
    * [THRIFT-4095] - Add multiplexed protocol to Travis CI for make cross
    * [THRIFT-4099] - Auto-derive Hash for generated Rust structs
    * [THRIFT-4110] - The debian build files do not produce a "-dbg" package for debug symbols of libthrift0
    * [THRIFT-4114] - Space after '///' in doc comments
    * [THRIFT-4126] - Validate objects in php extension
    * [THRIFT-4130] - Ensure Apache Http connection is released back to pool after use
    * [THRIFT-4151] - Thrift Mutex Contention Profiling (pthreads) should be disabled by default
    * [THRIFT-4176] - Implement a threaded and threadpool server type for Rust
    * [THRIFT-4183] - Named pipe client blocks forever on Open() when there is no server at the other end
    * [THRIFT-4190] - improve C# TThreadPoolServer defaults
    * [THRIFT-4197] - Implement transparent gzip compression for HTTP transport
    * [THRIFT-4198] - Ruby should log Thrift internal errors to global logger
    * [THRIFT-4203] - thrift server stop gracefully
    * [THRIFT-4205] - c_glib is not linking against glib + gobject
    * [THRIFT-4209] - warning CS0414 in T[TLS]ServerSocket.cs
    * [THRIFT-4210] - include Thrift.45.csproj into CI runs 
    * [THRIFT-4217] - HttpClient should support gzip and deflate
    * [THRIFT-4222] - Support Unix Domain Sockets in Golang TServerSocket
    * [THRIFT-4233] - Make THsHaServer.invoker available (get method only) in inherited classes
    * [THRIFT-4236] - Support context in go generated code.
    * [THRIFT-4238] - JSON generator: make annotation-aware
    * [THRIFT-4269] - Don't append '.' to Erlang namespace if it ends in '_'.
    * [THRIFT-4270] - Generate Erlang mapping functions for const maps and lists
    * [THRIFT-4275] - Add support for zope.interface only, apart from twisted support.
    * [THRIFT-4285] - Pull generated send/recv into library to allow behaviour to be customised
    * [THRIFT-4287] - Add c++ compiler "no_skeleton" flag option
    * [THRIFT-4288] - Implement logging levels properly for node.js
    * [THRIFT-4295] - Refresh the Docker image file suite for Ubuntu, Debian, and CentOS
    * [THRIFT-4305] - Emit ddoc for generated items
    * [THRIFT-4306] - Thrift imports not replicated to D service output
    * [THRIFT-4315] - Add default message for TApplicationException
    * [THRIFT-4318] - Delphi performance improvements
    * [THRIFT-4325] - Simplify automake cross compilation by relying on one global THRIFT compiler path
    * [THRIFT-4327] - Improve TimerManager API to allow removing specific task
    * [THRIFT-4330] - Allow unused crates in Rust files
    * [THRIFT-4333] - Erlang tutorial examples are using a different port (9999)
    * [THRIFT-4343] - Change CI builds to use node.js 8.x LTS once available
    * [THRIFT-4345] - Create a docker build environment that uses the minimum supported language levels
    * [THRIFT-4346] - Allow Zlib transport factory to wrap other transports
    * [THRIFT-4348] - Perl HTTP Client custom HTTP headers
    * [THRIFT-4350] - Update netcore build for dotnet 2.0 sdk and make cross validation
    * [THRIFT-4351] - Use Travis CI Build Stages to optimize the CI build
    * [THRIFT-4353] - cannot read via thrift_protocol at server side
    * [THRIFT-4378] - add set stopTimeoutUnit method to TThreadPoolServer

## New Feature
    * [THRIFT-750] - C++ Compiler Virtual Function Option
    * [THRIFT-2945] - Implement support for Rust language
    * [THRIFT-3857] - thrift js:node complier support an object as parameter not an instance of struct
    * [THRIFT-3933] - Port official C# .NET library for Thrift to C# .NET Core libary
    * [THRIFT-4039] - Update of Apache Thrift .Net Core lib 
    * [THRIFT-4113] - Provide a buffer transport for reading/writing in memory byte stream

## Question
    * [THRIFT-2956] - autoconf - possibly undefined macro - AC_PROG_BISON
    * [THRIFT-4223] - Add support to the isServing() method for the C++ library

## Task
    * [THRIFT-3622] - Fix deprecated uses of std::auto_ptr
    * [THRIFT-4028] - Please remove System.out.format from the source code
    * [THRIFT-4186] - Build and test rust client in Travis

## Test
    * [THRIFT-4264] - PHP - Support both shared & static linking of sockets library

## Wish
    * [THRIFT-4344] - Define and maintain the minimum language level for all languages in one place

	
Thrift 0.10.0
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1840] - Thrift Generated Code Causes Global Variable Leaks
    * [THRIFT-1828] - moc_TQTcpServer.cpp was removed from source tree but is in thrift-0.9.0.tar.gz
    * [THRIFT-1790] - cocoa: Duplicate interface definition error
    * [THRIFT-1776] - TPipeServer should implement "listen", so that TServerEventHandler preServe will work right
    * [THRIFT-1351] - Compiler does not care about binary strings
    * [THRIFT-1229] - Python fastbinary.c can not handle unicode as generated python code
    * [THRIFT-749] - C++ TBufferedTransports do not flush their buffers on delete
    * [THRIFT-747] - C++ TSocket->close calls shutdown breaking forked parent process
    * [THRIFT-732] - server exits abnormally when client calls send_xxx function without calling recv_xxx function
    * [THRIFT-3942] - TSSLSocket does not honor send and receive timeouts
    * [THRIFT-3941] - WinXP version of thrift_poll() relies on undefined behavior by passing a destructed variable to select()
    * [THRIFT-3940] - Visual Studio project file for compiler is broken
    * [THRIFT-3943] - Coverity Scan identified some high severity defects
    * [THRIFT-3929] - PHP "nsglobal" Option Results in Syntax Error in Generated Code (Trailing Backslash)
    * [THRIFT-3936] - Cannot compile 0.10.0 development tip with VS2013 and earlier (snprintf, uint32_t)
    * [THRIFT-3935] - Incorrect skipping of map and set
    * [THRIFT-3920] - Ruby: Ensuring that HTTP failures will clear the http transport outbuf var
    * [THRIFT-3919] - C# TTLSServerSocket does not use clientTimeout
    * [THRIFT-3917] - Check backports.ssl_match_hostname module version
    * [THRIFT-3909] - Fix c_glib static lib CMake build
    * [THRIFT-3904] - Typo in node tutorial leads to wrong transport being used
    * [THRIFT-3848] - As an implementer of a perl socket server, I do not want to have to remember to ignore SIGCHLD for it to work properly
    * [THRIFT-3844] - thrift_protocol cannot compile in 7.0.7
    * [THRIFT-3843] - integer issues with Haxe PHP targets cause ZigZag encoding to fail
    * [THRIFT-3842] - Dart generates incorrect code for a const struct
    * [THRIFT-3841] - dart compact protocol incorrectly serializes/deserialized doubles
    * [THRIFT-3708] - NameError: global name 'TProtocol' is not defined
    * [THRIFT-3704] - "TConnectedClient died: Could not refill buffer" message shown when using HTTP Server
    * [THRIFT-3678] - Fix javadoc errors on JDK 8
    * [THRIFT-3014] - AppVeyor support
    * [THRIFT-2994] - Node.js TJSONProtocol cannot be used for object serialization.
    * [THRIFT-2974] - writeToParcel throws NPE for optional enum fields
    * [THRIFT-2948] - Python TJSONProtocol doesn't handle structs with binary fields containing invalid unicode.
    * [THRIFT-2845] - ChildService.Plo: No such file or directory
    * [THRIFT-3276] - Binary data does not decode correctly using the TJSONProtocol when the base64 encoded data is padded.
    * [THRIFT-3253] - Using latest version of D gives deprecation notices
    * [THRIFT-2883] - TTwisted.py, during ConnectionLost processing: exceptions.RuntimeError: dictionary changed size during iteration
    * [THRIFT-2019] - Writing on a disconnected socket on Mac causes SIG PIPE
    * [THRIFT-2020] - Thrift library has some empty files that haven't really been deleted
    * [THRIFT-2049] - Go compiler doesn't build on native Windows
    * [THRIFT-2024] - TServer.cpp warns on 64-bit platforms about truncating an rlim_t into an int
    * [THRIFT-2023] - gettimeofday implementation on Windows errors when no time zone is passed in.
    * [THRIFT-2022] - CoB and dense code generation still uses TR1 bind, even though that doesn't work with clang
    * [THRIFT-2027] - Minor 64-bit and NOMINMAX issues in C++ library
    * [THRIFT-2156] - TServerSocket::listen() is throwing exceptions with misleading information
    * [THRIFT-2154] - Missing <operator body
    * [THRIFT-2148] - TNonblockingMultiFetchClient imports log4j
    * [THRIFT-2103] - [python] Support for SSL certificates with Subject Alternative Names
    * [THRIFT-1931] - Sending a frame size of zero to a TNonblockingServer causes an assertion failure
    * [THRIFT-1751] - definition of increase_max_fds doesn't compile when HAVE_SYS_RESOURCE_H is not defined
    * [THRIFT-1522] - TServerSocket potential memory leak with addrinfo *res0
    * [THRIFT-1547] - Problems building against static libevent
    * [THRIFT-1545] - Generated javascript code uses "for in" for looping over arrays
    * [THRIFT-1487] - Namespace problem, compile fails on generated code
    * [THRIFT-1472] - Configuration conflicts with boost platform include header
    * [THRIFT-6] - Thrift libraries and compiler lack version number
    * [THRIFT-1680] - make install requires GNU make
    * [THRIFT-3869] - Dart Tutorial build fails with Error 65 at "pub get"
    * [THRIFT-3861] - Travis CI builds are timing out - C++TServerIntegrationTest appears to be hanging
    * [THRIFT-3855] - In the go simple server, if Stop() is called multiple times it hangs
    * [THRIFT-3885] - PHP: Error when readI64 in TCompactProtocol
    * [THRIFT-3883] - Go TestAllConnection can fail with port 9090 collision
    * [THRIFT-3884] - Fix Erlang compact protocol double endianess and boolean list
    * [THRIFT-3880] - Erlang Compact protocol - boolean values inverted
    * [THRIFT-3879] - Undefined evaluation order causes incorrect processing in the C++ library JSON protocol
    * [THRIFT-3851] - Golang thrift continually adds the x/thrift content type 
    * [THRIFT-3850] - All apache builds are failing when initiated from a github pull request
    * [THRIFT-3837] - Thift 0.9.3 can't be build with QuickCheck 2.8.2 and unordered-containers 0.2.6
    * [THRIFT-3831] - build of test/cpp/src/TestClient.cpp fails with newer gcc on platforms with unsigned char due to narrowing conversions
    * [THRIFT-3827] - php CompactProtocol readI64 function has bug, when value has 32bit ~64bit, Example:value=1461563457000 
    * [THRIFT-3825] - Javascript test dependency is no longer available
    * [THRIFT-3814] - Fix contention in TNonblockingServerTest
    * [THRIFT-3793] - Appveyor builds reference an ant version that is no longer there
    * [THRIFT-3786] - Node.js TLS emits 'connect' before connection is ready
    * [THRIFT-3780] - Fix dart int64 usage when compiled to js
    * [THRIFT-3789] - Node.js lacks ability to destroy connection
    * [THRIFT-3796] - There's no --dbg for dh_strip, maybe someone has mistaken this for --dbg-package.
    * [THRIFT-3795] - Generated hashValue method in Swift will overflow
    * [THRIFT-3790] - Fix Delphi named pipe client to use timeout even when pipe doesn't yet exist
    * [THRIFT-3787] - Node.js Connection object doesn't handle errors correctly
    * [THRIFT-3791] - Delphi pipe client may fail even in a non-error condition
    * [THRIFT-3771] - TBufferedTransport gets in invalid state on read/write errors
    * [THRIFT-3764] - PHP "make install" does not install TMultiplexedProtocol.php nor TSimpleJSONProtocol.php
    * [THRIFT-3768] - TThreadedServer may crash if it is destroyed immediately after it returns from serve(); TThreadedServer disconnects clients
    * [THRIFT-3765] - memory leak in python compact protocol extension
    * [THRIFT-3758] - TApplicationException::getType and TProtocolException::getType should be const
    * [THRIFT-3763] - Fix serialization of i64 larger than 2^53 for browserify
    * [THRIFT-3759] - required fields that are nil are silently ignored on write
    * [THRIFT-3753] - TServerFramework::stop may fail to interrupt connected clients
    * [THRIFT-3755] - TDebugProtocol::writeString hits assert in isprint on Windows with debug CRT
    * [THRIFT-3751] - Compiler allows field ids that are too large for generated code
    * [THRIFT-3748] - Node.js Deserialization of lists of lists is broken
    * [THRIFT-3760] - Fix install paths etc of debian packages for py and perl
    * [THRIFT-3757] - Fix various build warnings on Windows with VS2015 compiler
    * [THRIFT-3750] - NSCopying copyWithZone: implementation does not check isSet
    * [THRIFT-3747] - Duplicate node.js build on Travis-CI
    * [THRIFT-3744] - The precision should be 17 (16 bits need after dot) after dot for double type.
    * [THRIFT-3741] - haxe test is broken
    * [THRIFT-3739] - Deprecation warning in codegen/base.d
    * [THRIFT-3735] - JSON protocol left in incorrect state when an exception is thrown during read or write operations
    * [THRIFT-3734] - To compare two string as lowercase.
    * [THRIFT-3743] - Java JSON protocol left in incorrect state when an exception is thrown during read or write operations
    * [THRIFT-3731] - Perl multiplex test is flaky
    * [THRIFT-3729] - Restrict rake version
    * [THRIFT-3727] - Incorrect require paths in Node.js tutorial
    * [THRIFT-3723] - Fix Lua include path
    * [THRIFT-3722] - Fix cert path in C++ cross tests for non-Linux platform
    * [THRIFT-3726] - Fix incorrect conditional in TMultiplexedProcessor.py
    * [THRIFT-3725] - Skip a flaky cross test entry (d-dart compact framed-ip)
    * [THRIFT-3724] - Fix incorrect timeval conversion in libevent.d
    * [THRIFT-3721] - CLONE - why not add unicode strings support to python directly?
    * [THRIFT-3720] - TTcpSocketStreamImpl.Read() returns 0 if not all requested bytes could be read
    * [THRIFT-3719] - Dart generator should use lowerCamelCase for service names
    * [THRIFT-3902] - TSocket.open throws NullPointerException
    * [THRIFT-3901] - TFramedTransport.open throws NullPointerException
    * [THRIFT-3893] - Command injection in format_go_output
    * [THRIFT-3807] - Swift compiler does not escape reserved words
    * [THRIFT-3798] - THttpClient does not use proxy from http_proxy, https_proxy environment variables
    * [THRIFT-3809] - wrong/unused BINARY type code
    * [THRIFT-3806] - Swift generator does not handle self-referring structs
    * [THRIFT-3805] - Golang server susceptible to memory spike from malformed message
    * [THRIFT-3797] - Generated Delphi processor shouldn't error out on timed out exceptions
    * [THRIFT-3813] - Appveyor builds reference an openssl version that is no longer there
    * [THRIFT-3658] - Missing file in THRIFT-3599
    * [THRIFT-3649] - Python TSaslClientTransport initializes TTransportException incorrectly
    * [THRIFT-3650] - incorrect union serialization 
    * [THRIFT-3713] - lib/d/test/thrift_test_runner.sh is flaky on Jenkins
    * [THRIFT-3668] - range check error in compact protocol
    * [THRIFT-3663] - CMake cpp test fails to build on system without zlib
    * [THRIFT-3712] - TTornadoServer cannot handle IPv6 address
    * [THRIFT-3710] - Dart generator does not camel case Constants class names
    * [THRIFT-3697] - Dart generator does not name imports
    * [THRIFT-3690] - Work around docker image build failures on Travis-CI
    * [THRIFT-3689] - thrift_reconnecting_client start failed when server is not available
    * [THRIFT-3695] - Fix D test scripts
    * [THRIFT-3675] - Union is not serialized correctly by Thrift C Glib
    * [THRIFT-3673] - API fails with std::exception after a timeout occured in earlier any API call
    * [THRIFT-3709] - Comment syntax can produce broken code
    * [THRIFT-3705] - Go map has incorrect types when used with forward-defined types
    * [THRIFT-3702] - Fix cross tests for Dart compact protocol (3 failing)
    * [THRIFT-3683] - BadYieldError in thrift py:tornado server
    * [THRIFT-3682] - Do not reuse refused sockets in test scripts
    * [THRIFT-3681] - Fix Dart tutorial build
    * [THRIFT-3680] - Java async processor fails to notify errors to clients
    * [THRIFT-3714] - Thrift.TProtocolException is not defined in js/src/thrift.js
    * [THRIFT-3688] - Fix socket bind failure detection of cross test
    * [THRIFT-3641] - Ruby client should try to connect to every result of getaddrinfo
    * [THRIFT-3635] - D transport_test is flaky on Jenkins and Travis
    * [THRIFT-3618] - Python TSSLSocket deprecation message should print caller's location
    * [THRIFT-3145] - JSON protocol does not handle bool and empty containers correctly
    * [THRIFT-3158] - TBase<T,F>#deepCopy should return T
    * [THRIFT-3157] - TBase signature should be TBase<T extends TBase<T,F>, F extends TFieldIdEnum>
    * [THRIFT-3156] - Node TLS: server executes processing logic two full times
    * [THRIFT-3154] - tutorial/py.tornado throw EOF exception
    * [THRIFT-3063] - C++ build -Wunused-parameter warnings on processor_test, TransportTest
    * [THRIFT-3056] - Add string/collection length limits for Python protocol readers
    * [THRIFT-3237] - Fix TNamedPipeServer::createNamedPipe memory leak
    * [THRIFT-3233] - Fix C++ ThreadManager::Impl::removeWorker worker join
    * [THRIFT-3232] - Cannot deserialize json messages created with fieldNamesAsString 
    * [THRIFT-3206] - Fix Visual Studio build failure due 'pthread_self': identifier not found
    * [THRIFT-3200] - JS and nodejs do not encode JSON protocol binary fields as base64
    * [THRIFT-3199] - Exception field has basic metadata
    * [THRIFT-3182] - TFramedTransport is in an invalid state after frame size exception
    * [THRIFT-2536] - new TSocket, uninitialised value reported by valgrind
    * [THRIFT-2527] - Apache Thrift IDL Compiler code generated for Node.js should be jshint clean
    * [THRIFT-2519] - "processor" class is not being generated
    * [THRIFT-2431] - TFileTransportTest fails with "check delta < XXX failed"
    * [THRIFT-2708] - Erlang library does not support "oneway" message type
    * [THRIFT-3377] - Deep copy is actually shallow when using typedef members
    * [THRIFT-3376] - C# and Python JSON protocol double values lose precision
    * [THRIFT-3373] - Various fixes for cross test servers and clients
    * [THRIFT-3370] - errno extern variable redefined. Not compiling for Android
    * [THRIFT-3379] -  Potential out of range panic in Go JSON protocols
    * [THRIFT-3371] - Abstract namespace Unix domain sockets broken in C++
    * [THRIFT-3380] - nodejs: 0.9.2 -> 0.9.3 upgrade breaks Protocol and Transport requires
    * [THRIFT-3367] - Fix bad links to coding_standards.md #634 
    * [THRIFT-3401] - Nested collections emit Objective-C code that cannot compile
    * [THRIFT-3403] - JSON String reader doesn't recognize UTF-16 surrogate pairs
    * [THRIFT-3362] - make check fails for C++ at the SecurityTest
    * [THRIFT-3395] - Cocoa compiler produces corrupt code when boxing enums inside map.
    * [THRIFT-3394] - compiler generates uncompilable code
    * [THRIFT-3388] - hash doesn't work on set/list
    * [THRIFT-3391] - Wrong bool formatting in test server
    * [THRIFT-3390] - TTornado server doesn't handle closed connections properly
    * [THRIFT-3382] - TBase class for C++ Library
    * [THRIFT-3392] - Java TZlibTransport does not close its wrapper streams upon close()
    * [THRIFT-3383] - i64 related warnings 
    * [THRIFT-3386] - misc. warnings with make check
    * [THRIFT-3385] - warning: format ‘%lu’ expects ‘long unsigned int’, but has type ‘std::basic_string<char>::size_type {aka unsigned int}
    * [THRIFT-3355] - npm WARN package.json thrift@1.0.0-dev No license field.
    * [THRIFT-3360] - Improve cross test servers and clients further
    * [THRIFT-3359] - Binary field incompatibilities
    * [THRIFT-3354] - Fix word-extraction substr bug in initialism code
    * [THRIFT-3350] - Python JSON protocol does not encode binary as Base64
    * [THRIFT-3577] - assertion failed at line 512 of testcontainertest.c
    * [THRIFT-3576] - Boost test --log_format arg does not accept lowercase
    * [THRIFT-3575] - Go compiler tries to use unexported library methods when using read_write_private
    * [THRIFT-3574] - Cocoa generator makes uncompilable imports
    * [THRIFT-3570] - Remove duplicate instances that are added by upstream
    * [THRIFT-3571] - Make feature test result browsable
    * [THRIFT-3569] - c_glib protocols do not check number of bytes read by transport
    * [THRIFT-3568] - THeader server crashes on readSlow
    * [THRIFT-3567] - GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
    * [THRIFT-3566] - C++/Qt: TQTcpServerTest::test_communicate() is never executed
    * [THRIFT-3564] - C++/Qt: potential core dump in TQTcpServer in case an exception occurs in TAsyncProcessor::process()
    * [THRIFT-3558] - typos in c_glib tests
    * [THRIFT-3559] - Fix awkward extra semi-colons with Cocoa container literals
    * [THRIFT-3555] - 'configure' script does not honor --with-openssl=<path> for libcrypto for BN_init
    * [THRIFT-3554] - Constant decls may lead to "Error: internal error: prepare_member_name_mapping() already active for different struct"
    * [THRIFT-3552] - glib_c Memory Leak
    * [THRIFT-3551] - Thrift perl library missing package declaration
    * [THRIFT-3549] - Exceptions are not properly stringified in Perl library
    * [THRIFT-3546] - NodeJS code should not be namespaced (and is currently not strict-mode compliant)
    * [THRIFT-3545] - Container type literals do not compile
    * [THRIFT-3538] - Remove UnboundMethodType in TProtocolDecorator
    * [THRIFT-3536] - Error 'char' does not contain a definition for 'IsLowSurrogate' for WP7 target
    * [THRIFT-3534] - Link error when building with Qt5
    * [THRIFT-3533] - Can not send nil pointer as service method argument
    * [THRIFT-3507] - THttpClient does not use proxy from http_proxy, https_proxy environment variables
    * [THRIFT-3502] - C++ TServerSocket passes small buffer to getsockname
    * [THRIFT-3501] - Forward slash in comment causes compiler error
    * [THRIFT-3498] - C++ library assumes optional function pthread_attr_setschedpolicy is available
    * [THRIFT-3497] - Build fails with "invalid use of incomplete type"
    * [THRIFT-3496] - C++: Cob style client fails when sending a consecutive request
    * [THRIFT-3493] - libthrift does not compile on windows using visual studio
    * [THRIFT-3488] - warning: unused variable 'program'
    * [THRIFT-3489] - warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
    * [THRIFT-3487] - Full support for newer Delphi versions
    * [THRIFT-3528] - Fix warnings in thrift.ll
    * [THRIFT-3527] - -gen py:dynamic,utf8strings ignores utf8strings option
    * [THRIFT-3526] - Code generated by py:utf8strings does not work for Python3
    * [THRIFT-3524] - dcc32 warning "W1000 Symbol 'IsLowSurrogate' is deprecated: 'Use TCharHelper'" in Thrift.Protocol.JSON.pas
    * [THRIFT-3525] - py:dynamic fails to handle binary list/set/map element
    * [THRIFT-3521] - TSimpleJSONProtocolTest is not deterministic (fails when run on JDK 8)
    * [THRIFT-3520] - Dart TSocket onError stream should be typed as Object
    * [THRIFT-3519] - fastbinary does not work with -gen py:utf8strings
    * [THRIFT-3518] - TConcurrentClientSyncInfo files were missing for Visual Studio
    * [THRIFT-3512] - c_glib: Build fails due to missing features.h
    * [THRIFT-3483] - Incorrect empty binary handling introduced by THRIFT-3359
    * [THRIFT-3479] - Oneway calls should not return exceptions to clients
    * [THRIFT-3478] - Restore dropped method to THsHaServer.java
    * [THRIFT-3477] - Parser fails on enum item that starts with 'E' letter and continues with number 
    * [THRIFT-3476] - Missing include in ./src/thrift/protocol/TJSONProtocol.cpp
    * [THRIFT-3474] - Docker: thrift-compiler
    * [THRIFT-3473] - When "optional' is used with a struct member, C++ server seems to not return it correctly
    * [THRIFT-3468] - Dart TSocketTransport onError handler is too restrictive
    * [THRIFT-3451] - thrift_protocol PHP extension missing config.m4 file
    * [THRIFT-3456] - rounding issue in static assert
    * [THRIFT-3455] - struct write method's return value is incorrect
    * [THRIFT-3454] - Python Tornado tutorial is broken
    * [THRIFT-3463] - Java can't be disabled in CMake build
    * [THRIFT-3450] - NPE when using SSL
    * [THRIFT-3449] - TBaseAsyncProcessor fb.responseReady() never called for oneway functions
    * [THRIFT-3471] - Dart generator does not handle uppercase argument names
    * [THRIFT-3470] - Sporadic timeouts with pipes
    * [THRIFT-3465] - Go Code With Complex Const Initializer Compilation Depends On Struct Order
    * [THRIFT-3464] - Fix several defects in c_glib code generator
    * [THRIFT-3462] - Cocoa generates Incorrect #import header names
    * [THRIFT-3453] - remove rat_exclude
    * [THRIFT-3418] - Use of ciphers in ssl.wrap_socket() breaks python 2.6 compatibility
    * [THRIFT-3417] - "namespace xsd" is not really working
    * [THRIFT-3413] - Thrift code generation bug in Go when extending service
    * [THRIFT-3420] - C++: TSSLSockets are not interruptable
    * [THRIFT-3415] - include unistd.h conditionally
    * [THRIFT-3414] - #include <pwd.h> in THeaderTransport.h breaks windows build
    * [THRIFT-3411] - Go generates remotes with wrong package qualifiers when including
    * [THRIFT-3430] - Go THttpClient does not read HTTP response body to completion when closing
    * [THRIFT-3423] - First call to thrift_transport:read_exact fails to dispatch correct function
    * [THRIFT-3422] - Go TServerSocket doesn't close on Interrupt
    * [THRIFT-3421] - rebar as dependency instead of bundling (was:  rebar fails if PWD contains Unicode)
    * [THRIFT-3428] - Go test fails when running make check
    * [THRIFT-3445] - Throwable messages are hidden from JVM stack trace output
    * [THRIFT-3443] - Thrift include can generate uncompilable code
    * [THRIFT-3444] - Large 64 bit Integer does not preserve value through Node.js JSONProtocol 
    * [THRIFT-3436] - misc. cross test issues with UTF-8 path names
    * [THRIFT-3435] - Put generated Java code for fullcamel tests in a separate package/namespace
    * [THRIFT-3433] - Doubles aren't interpreted correctly
    * [THRIFT-3437] - Mingw-w64 build fail
    * [THRIFT-3434] - Dart generator produces empty name in pubspec.yaml for includes without namespaces
    * [THRIFT-3408] - JSON generator emits incorrect types
    * [THRIFT-3406] - Cocoa client should not schedule streams on main runloop
    * [THRIFT-3404] - JSON String reader doesn't recognize UTF-16 surrogate pair
    * [THRIFT-3636] - Double precision is not fully preserved in C++ TJSONProtocol
    * [THRIFT-3632] - c_glib testserialization fails with glib assertion
    * [THRIFT-3619] - Using Thrift 0.9.3 with googletest on Linux gcc 4.9 / C++11
    * [THRIFT-3617] - CMake does not build gv/xml generators
    * [THRIFT-3615] - Fix Python SSL client resource leak on connection failure
    * [THRIFT-3616] - lib/py/test/test_sslsocket.py is flaky
    * [THRIFT-3643] - Perl SSL server crushes if a client disconnect without handshake
    * [THRIFT-3639] - C# Thrift library forces TLS 1.0, thwarting TLS 1.2 usage
    * [THRIFT-3633] - Travis "C C++ - GCC" build was using clang
    * [THRIFT-3634] - Fix Python TSocket resource leak on connection failure
    * [THRIFT-3630] - Debian/Ubuntu install docs need an update
    * [THRIFT-3629] - Parser sets exitcode on errors, but generator does not
    * [THRIFT-3608] - lib/cpp/test/SecurityTest is flaky in jenkins Thrift-precommit build.
    * [THRIFT-3601] - Better conformance to PEP8 for generated code
    * [THRIFT-3599] - Validate client IP address against cert's SubjectAltName
    * [THRIFT-3598] - TBufferedTransport doesn't instantiate client connection
    * [THRIFT-3597] - `make check` hangs in go tests
    * [THRIFT-3589] - Dart generator uses wrong name in constructor for uppercase arguments with defaults
    * [THRIFT-3588] - Using TypeScript with --noImplicitAny fails
    * [THRIFT-3584] - boolean false value cannot be transferred
    * [THRIFT-3578] - Make THeaderTransport detect TCompact framed and unframed
    * [THRIFT-3323] - Python library does not handle escaped forward slash ("/") in JSON
    * [THRIFT-3322] - CMake generated "make check" failes on python_test
    * [THRIFT-3321] - Thrift can't be added as a subdirectory of another CMake-based project
    * [THRIFT-3314] - Dots in file names of includes causes dots in javascript variable names
    * [THRIFT-3307] - Segfault in Ruby serializer
    * [THRIFT-3309] - Missing TConstant.php in /lib/php/Makefile.am
    * [THRIFT-3810] - unresolved external symbol public: virtual void __cdecl apache::thrift::server::TServerFramework::serve(void)
    * [THRIFT-3736] - C++ library build fails if OpenSSL does not surrpot SSLv3
    * [THRIFT-3878] - Compile error in TSSLSocket.cpp with new OpenSSL [CRYPTO_num_locks]
    * [THRIFT-3949] - missing make dist entry for compiler/cpp/test
    * [THRIFT-449] - The wire format of the JSON Protocol may not always be valid JSON if it contains non-UTF8 encoded strings
    * [THRIFT-162] - Thrift structures are unhashable, preventing them from being used as set elements
    * [THRIFT-3961] - TConnectedClient does not terminate the connection to the client if an exception while processing the received message occures.
    * [THRIFT-3881] - Travis CI builds are failing due to docker failures (three retries, and gives up)
    * [THRIFT-3937] - Cannot compile 0.10.0 development tip with gcc-4.6.x
    * [THRIFT-3964] - Unsupported mechanism type ????? due to dependency on default OS-dependent charset
    * [THRIFT-3038] - Use of volatile in cpp library
    * [THRIFT-3301] - Java generated code uses imports that can lead to class name collisions with IDL defined types
    * [THRIFT-3348] - PHP TCompactProtocol bool&int64 readvalue bug
    * [THRIFT-3955] - TThreadedServer Memory Leak
    * [THRIFT-3829] - Thrift does not install Python Libraries if Twisted is not installed
    * [THRIFT-3932] - C++ ThreadManager has a rare termination race
    * [THRIFT-3828] - cmake fails when Boost_INCLUDE_DIRS (and other variables passed to include_directories()) is empty 
    * [THRIFT-3958] - CMake WITH_MT option for windows static runtime linking does not support the cmake build type RelWithDebInfo
    * [THRIFT-3957] - TConnectedClient does not disconnect from clients when their timeout is reached.
    * [THRIFT-3953] - TSSLSocket::close should handle exceptions from waitForEvent because it is called by the destructor.
    * [THRIFT-3977] - PHP extension creates undefined values when deserializing sets
    * [THRIFT-3947] - sockaddr type isn't always large enough for the return of getsockname
    * [THRIFT-2755] - ThreadSanitizer reports data race in ThreadManager::Impl::addWorker
    * [THRIFT-3948] - errno is not the correct method of getting the error in windows
    * [THRIFT-4008] - broken ci due to upstream dependency versioning break
    * [THRIFT-3999] - Fix Debian & Ubuntu package dependencies
    * [THRIFT-3886] - PHP cross test client returns 0 even when failing
    * [THRIFT-3997] - building thrift libs does not support new openssl

## Documentation
    * [THRIFT-3867] - Specify BinaryProtocol and CompactProtocol

## Epic
    * [THRIFT-3049] - As an iOS developer, I want a generator and library that produces Swift code
    * [THRIFT-2336] - UTF-8 sent by PHP as JSON is not understood by TJsonProtocol

## Improvement
    * [THRIFT-1867] - Python client/server should support client-side certificates.
    * [THRIFT-1313] - c_glib compact support
    * [THRIFT-1385] - make install doesn't install java library in the setted folder
    * [THRIFT-1437] - Update RPM spec
    * [THRIFT-847] - Test Framework harmonization across all languages
    * [THRIFT-819] - add Enumeration for protocol, transport and server types
    * [THRIFT-3927] - Emit an error instead of throw an error in the async callback
    * [THRIFT-3931] - TSimpleServer: If process request encounter UNKNOWN_METHOD, don't close transport.
    * [THRIFT-3934] - Automatically resolve OpenSSL binary version on Windows CI
    * [THRIFT-3918] - Run subset of make cross
    * [THRIFT-3908] - Remove redundant dependencies from Dockerfile
    * [THRIFT-3907] - Skip Docker image build on CI when unchanged
    * [THRIFT-3868] - Java struct equals should do identity check before field comparison
    * [THRIFT-3849] - Port Go serializer and deserializer to dart
    * [THRIFT-2989] - Complete CMake build for Apache Thrift
    * [THRIFT-2980] - ThriftMemoryBuffer doesn't have a constructor option to take an existing buffer
    * [THRIFT-2856] - refactor erlang basic transports and unify interfaces
    * [THRIFT-2877] - Optimize generated hashCode
    * [THRIFT-2869] - JSON: run schema validation from tests
    * [THRIFT-3112] - [Java] AsyncMethodCallback should be typed in generated AsyncIface
    * [THRIFT-3263] - PHP jsonSerialize() should cast scalar types
    * [THRIFT-2905] - Cocoa compiler should have option to produce "modern" Objective-C
    * [THRIFT-2821] - Enable the use of custom HTTP-Header in the Transport
    * [THRIFT-2093] - added the ability to set compression level in C++ zlib transport
    * [THRIFT-2089] - Compiler ignores duplicate typenames
    * [THRIFT-2056] - Moved all #include config.h statements to #include <thrift/config.h>
    * [THRIFT-2031] - Make SO_KEEPALIVE configurable for C++ lib
    * [THRIFT-2021] - Improve large binary protocol string performance
    * [THRIFT-2028] - Cleanup threading headers / libraries
    * [THRIFT-2014] - Change C++ lib includes to use <namespace/> style throughout
    * [THRIFT-2312] - travis.yml: build everything
    * [THRIFT-1915] - Multiplexing Services
    * [THRIFT-1736] - Visual Studio top level project files within msvc
    * [THRIFT-1735] - integrate tutorial into regular build
    * [THRIFT-1533] - Make TTransport should be Closeable
    * [THRIFT-35] - Move language tests into their appropriate library directory
    * [THRIFT-1079] - Support i64 in AS3
    * [THRIFT-1108] - SSL support for the Ruby library 
    * [THRIFT-3856] - update debian package deependencies
    * [THRIFT-3833] - haxe http server implementation (by embeding into php web server)
    * [THRIFT-3839] - Performance issue with big message deserialization using php extension
    * [THRIFT-3820] - Erlang: Detect OTP >= 18 to use new time correction
    * [THRIFT-3816] - Reduce docker build duration on Travis-CI
    * [THRIFT-3815] - Put appveyor dependency versions to one place
    * [THRIFT-3788] - Compatibility improvements and Win64 support
    * [THRIFT-3792] - Timeouts for anonymous pipes should be configurable
    * [THRIFT-3794] - Split Delphi application, protocol and transport exception subtypes into separate exceptions
    * [THRIFT-3774] - The generated code should have exception_names meta info
    * [THRIFT-3762] - Fix build warnings for deprecated Thrift "byte" fields
    * [THRIFT-3756] - Improve requiredness documentation
    * [THRIFT-3761] - Add debian package for Python3
    * [THRIFT-3742] - haxe php cli support
    * [THRIFT-3733] - Socket timeout improvements
    * [THRIFT-3728] - http transport for thrift-lua
    * [THRIFT-3905] - Dart compiler does not initialize bool, int, and double properties
    * [THRIFT-3911] - Loosen Ruby dev dependency version requirements
    * [THRIFT-3906] - Run C# tests with make check
    * [THRIFT-3900] - Add Python SSL flags
    * [THRIFT-3897] - Provide meaningful exception type based on WebExceptionStatus in case of timeout
    * [THRIFT-3808] - Missing `DOUBLE` in thrift type enumeration
    * [THRIFT-3803] - Remove "file" attribute from XML generator
    * [THRIFT-3660] - Add V4 mapped address to test client cert's altname
    * [THRIFT-3661] - Use https to download meck in erlang test build
    * [THRIFT-3659] - Check configure result of CMake on CI
    * [THRIFT-3667] - Add TLS SNI support to clients
    * [THRIFT-3651] - Make backports.match_hostname and ipaddress optional
    * [THRIFT-3666] - Build D tutorial as part of Autotools build
    * [THRIFT-3665] - Add D libevent and OpenSSL to docker images
    * [THRIFT-3664] - Remove md5.c
    * [THRIFT-3662] - Add Haskell to debian docker image
    * [THRIFT-3711] - Add D to cross language test
    * [THRIFT-3691] - Run flake8 Python style check on Travis-CI
    * [THRIFT-3692] - (Re)enable Appveyor C++ and Python build
    * [THRIFT-3677] - Improve CMake Java build
    * [THRIFT-3679] - Add stdout log to testBinary in Java test server
    * [THRIFT-3718] - Reduce size of docker image for build environment
    * [THRIFT-3698] - [Travis-CI] Introduce retry to apt commands
    * [THRIFT-3127] - switch -recurse to --recurse and reserve -r
    * [THRIFT-3087] - Pass on errors like "connection closed"
    * [THRIFT-3240] - Thrift Python client should support subjectAltName and wildcard certs in TSSLSocket
    * [THRIFT-3213] - make cross should indicate when it skips a known failing test
    * [THRIFT-3208] - Fix Visual Studio solution build failure due to missing source
    * [THRIFT-3186] - Add TServerHTTP to Go library
    * [THRIFT-2342] - Add __FILE__ and __LINE__ to Thrift C++ excpetions
    * [THRIFT-3372] - Add dart generator to Visual Studio project
    * [THRIFT-3366] - ThriftTest to implement standard return values 
    * [THRIFT-3402] - Provide a perl Unix Socket implementation
    * [THRIFT-3361] - Improve C# library
    * [THRIFT-3393] - Introduce i8 to provide consistent set of Thrift IDL integer types
    * [THRIFT-3339] - Support for database/sql
    * [THRIFT-3565] - C++: T[Async]Processor::getEventHandler() should be declared as const member functions
    * [THRIFT-3563] - C++/Qt: removed usage of macro QT_PREPEND_NAMESPACE as it isn't consequently used for all references to Qt types.
    * [THRIFT-3562] - Removed unused TAsyncProcessor::getAsyncServer()
    * [THRIFT-3561] - C++/Qt: make use of Q_DISABLE_COPY() to get rid of copy ctor and assignment operator
    * [THRIFT-3556] - c_glib file descriptor transport
    * [THRIFT-3544] - Make cross test fail when server process died unexpectedly
    * [THRIFT-3540] - Make python tutorial more in line with PEP8
    * [THRIFT-3535] - Dart generator argument to produce a file structure usable in parent library
    * [THRIFT-3505] - Enhance Python TSSLSocket
    * [THRIFT-3506] - Eliminate old style classes from library code
    * [THRIFT-3503] - Enable py:utf8string by default
    * [THRIFT-3499] - Add package_prefix to python generator
    * [THRIFT-3495] - Minor enhancements and fixes for cross test
    * [THRIFT-3486] - Java generated `getFieldValue` is incompatible with `setFieldValue` for binary values.
    * [THRIFT-3484] - Consolidate temporary buffers in Java's TCompactProtocol
    * [THRIFT-3516] - Add feature test for THeader TBinaryProtocol interop
    * [THRIFT-3515] - Python 2.6 compatibility and test on CI
    * [THRIFT-3514] - PHP 7 compatible version of binary protocol
    * [THRIFT-3469] - Docker: Debian support
    * [THRIFT-3416] - Retire old "xxx_namespace" declarations from the IDL
    * [THRIFT-3426] - Align autogen comment in XSD
    * [THRIFT-3424] - Add CMake android build option
    * [THRIFT-3439] - Run make cross using Python3 when available
    * [THRIFT-3440] - Python make check takes too much time
    * [THRIFT-3441] - Stabilize Travis-CI builds
    * [THRIFT-3431] - Avoid "schemes" HashMap lookups during struct reads/writes
    * [THRIFT-3432] - Add a TByteBuffer transport to the Java library
    * [THRIFT-3438] - Enable py:new_style by default
    * [THRIFT-3405] - Go THttpClient misuses http.Client objects
    * [THRIFT-3614] - Improve logging of test_sslsocket.py
    * [THRIFT-3647] - Fix php extension build warnings
    * [THRIFT-3642] - Speed up cross test runner
    * [THRIFT-3637] - Implement compact protocol for dart
    * [THRIFT-3613] - Port Python C extension to Python 3
    * [THRIFT-3612] - Add Python C extension for compact protocol
    * [THRIFT-3611] - Add --regex filter to cross test runner
    * [THRIFT-3631] - JSON protocol implementation for Lua
    * [THRIFT-3609] - Remove or replace TestPortFixture.h
    * [THRIFT-3605] - Have the compiler complain about invalid arguments and options
    * [THRIFT-3596] - Better conformance to PEP8
    * [THRIFT-3585] - Compact protocol implementation for Lua
    * [THRIFT-3582] - Erlang libraries should have service metadata
    * [THRIFT-3579] - Introduce retry to make cross
    * [THRIFT-3306] - Java: TBinaryProtocol: Use 1 temp buffer instead of allocating 8
    * [THRIFT-3910] - Do not invoke pip as part of build process
    * [THRIFT-1857] - Python 3.X Support
    * [THRIFT-1944] - Binding to zero port
    * [THRIFT-3954] - Enable the usage of structs called "Object" in Java
    * [THRIFT-3981] - Enable analyzer strong mode in Dart library
    * [THRIFT-3998] - Document ability to add custom tags to thrift structs
    * [THRIFT-4006] - Add a removeEventListener method on TSocket

## New Feature
    * [THRIFT-640] - Support deprecation
    * [THRIFT-948] - SSL socket support for PHP
    * [THRIFT-764] - add Support for Vala language
    * [THRIFT-3046] - Allow PSR4 class loading for generated classes (PHP)
    * [THRIFT-2113] - Erlang SSL Socket Support
    * [THRIFT-1482] - Unix domain socket support under PHP
    * [THRIFT-519] - Support collections of types without having to explicitly define it
    * [THRIFT-468] - Rack Middleware Application for Rails
    * [THRIFT-1708] - Add event handlers for processor events
    * [THRIFT-3834] - Erlang namespacing and exception metadata
    * [THRIFT-2510] - Implement TNonblockingServer's ability to listen on unix domain sockets
    * [THRIFT-3397] - Implement TProcessorFactory in C# to enable per-client processors
    * [THRIFT-3523] - XML Generator
    * [THRIFT-3510] - Add HttpTaskAsyncHandler implementation
    * [THRIFT-3318] - PHP: SimpleJSONProtocol Implementation
    * [THRIFT-3299] - Dart language bindings in Thrift
    * [THRIFT-2835] - Add possibility to distribute generators separately from thrift core, and load them dynamically
    * [THRIFT-184] - Add OSGi Manifest headers to the libthrift java library to be able to use Thrift in the OSGi runtime
    * [THRIFT-141] - If a required field is not present on serialization, throw an exception
    * [THRIFT-1891] - Add Windows ALPC transport which is right counterpart of Unix domain sockets

## Question
    * [THRIFT-1808] - The Thrift struct should be considered self-contained?
    * [THRIFT-2895] - Tutorial cpp
    * [THRIFT-3860] - Elephant-bird application Test fails for Thrift
    * [THRIFT-3811] - HTTPS Support for C++ applications
    * [THRIFT-3509] - "make check" error

## Story
    * [THRIFT-3452] - .travis.yml: Migrating from legacy to container-based infrastructure

## Sub-task
    * [THRIFT-1811] - ruby tutorial as part of the regular build
    * [THRIFT-2779] - PHP TJSONProtocol encode unicode into UCS-4LE which can't be parsed by other language bindings
    * [THRIFT-2110] - Erlang: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-3852] - A Travis-CI job fails with "write error"
    * [THRIFT-3740] - Fix haxelib.json classpath 
    * [THRIFT-3653] - incorrect union serialization
    * [THRIFT-3652] - incorrect serialization of optionals
    * [THRIFT-3655] - incorrect union serialization
    * [THRIFT-3654] - incorrect serialization of optionals
    * [THRIFT-3656] - incorrect serialization of optionals
    * [THRIFT-3699] - Fix integer limit symbol includes in Python C extension
    * [THRIFT-3693] - Fix include issue in C++ TSSLSocketInterruptTest on Windows
    * [THRIFT-3694] - [Windows] Disable tests of a few servers that are not supported
    * [THRIFT-3696] - Install pip to CentOS Docker images to fix Python builds
    * [THRIFT-3638] - Fix haxelib.json
    * [THRIFT-3251] - Add http transport for server to Go lib
    * [THRIFT-2424] - Recursive Types
    * [THRIFT-2423] - THeader
    * [THRIFT-2413] - Python: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2409] - Java: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2412] - D: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2411] - C++: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2410] - JavaMe: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2668] - TestSuite: detailed result on passed tests by feature
    * [THRIFT-2659] - python Test Server fails when throwing TException
    * [THRIFT-3398] - Add CMake build  for Haskell library and tests
    * [THRIFT-3396] - DART: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-3364] -   Fix ruby binary field encoding in TJSONProtocol
    * [THRIFT-3381] - Fix for misc. codegen issues with THRIFT-2905
    * [THRIFT-3573] - No rule to make target `../../../test/c_glib/src/.deps/testthrifttest-thrift_test_handler.Po'.
    * [THRIFT-3572] - "Unable to determine the behavior of a signed right shift"
    * [THRIFT-3542] - Add length limit support to Java test server
    * [THRIFT-3537] - Remove the (now obsolete) csharp:asyncctp flag 
    * [THRIFT-3532] - Add configurable string and container read size limit to Python protocols
    * [THRIFT-3531] - Create cross lang feature test for string and container read length limit
    * [THRIFT-3482] - Haskell JSON protocol does not encode binary field as Base64
    * [THRIFT-3425] - Minor fixes + simplification for CentOS Dockerfile
    * [THRIFT-3442] - Run CMake tests on Appveyor
    * [THRIFT-3409] - NodeJS binary field issues
    * [THRIFT-3621] - Fix lib/cpp/test/SecurityTest.cpp to use ephemeral ports
    * [THRIFT-3628] - Fix lib/cpp/test/TServerIntegrationTest.cpp to use ephemeral ports
    * [THRIFT-3625] - Kill unused #include "TestPortFixture.h" in lib/cpp/test/TServerTransportTest.cpp.
    * [THRIFT-3646] - Fix Python extension build warnings
    * [THRIFT-3626] - Fix lib/cpp/test/TSocketInterruptTest.cpp to use ephemeral ports.
    * [THRIFT-3624] - Fix lib/cpp/test/TServerSocketTest.cpp to use ephemeral ports
    * [THRIFT-3623] - Fix Fix cpp/lib/test/TSSLSocketInterruptTest.cpp to use ephemeral ports
    * [THRIFT-3592] - Add basic test client
    * [THRIFT-3980] - add TExtendedBinaryProtocol.java

## Task
    * [THRIFT-1801] - Sync up TApplicationException codes across languages and thrift implementations
    * [THRIFT-1259] - Automate versioning 

## Test
    * [THRIFT-3400] - Add Erlang to cross test
    * [THRIFT-3504] - Fix FastbinaryTest.py

## Wish
    * [THRIFT-3923] - Maybe remove Aereo from the "Powered by" list
    * [THRIFT-2149] - Add an option to disable the generation of default operators



Thrift 0.9.3
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-2441] - Cannot shutdown TThreadedServer when clients are still connected
    * [THRIFT-2465] - TBinaryProtocolT breaks if copied/moved
    * [THRIFT-2474] - thrift.h causes a compile failure
    * [THRIFT-2540] - Running configure from outside the source directory fails
    * [THRIFT-2598] - Add check for minimum Go version to configure.ac
    * [THRIFT-2647] - compiler-hs: don't decapitalize field names, do decapitalize argument bindings
    * [THRIFT-2773] - Generated Java code for 'oneway' methods is incorrect.
    * [THRIFT-2789] - TNonblockingServer leaks socket FD's under load
    * [THRIFT-2682] - TThreadedServer leaks per-thread memory
    * [THRIFT-2674] - JavaScript: declare Accept: and Content-Type: in request
    * [THRIFT-3078] - TNonblockingServerSocket's logger is not named after TNonblockingServerSocket
    * [THRIFT-3077] - C++ TFileTransport ignores return code from ftruncate
    * [THRIFT-3067] - C++ cppcheck performance related warnings
    * [THRIFT-3066] - C++ TDenseProtocol assert modifies instead of checks
    * [THRIFT-3071] - bootstrap.sh on Ubuntu 12.04 (Precise) automake error
    * [THRIFT-3069] - C++ TServerSocket leaks socket on fcntl get or set flags error
    * [THRIFT-3079] - TNonblockingServerSocket's logger is not named after TNonblockingServerSocket
    * [THRIFT-3080] - C++ TNonblockingServer connection leak while accept huge number connections.
    * [THRIFT-3086] - C++ Valgrind Error Cleanup
    * [THRIFT-3085] - thrift_reconnecting_client never try to reconnect
    * [THRIFT-3123] - Missing include in compiler/cpp/src/main.h breaks build in some environments
    * [THRIFT-3125] - Fix the list of exported headers in automake input
    * [THRIFT-3126] - PHP JSON serializer converts empty or int-indexed maps to lists
    * [THRIFT-3132] - Properly format date in Java @Generated annotations
    * [THRIFT-3137] - Travis build hangs after failure
    * [THRIFT-3138] - "make check" parallel execution is underministic
    * [THRIFT-3139] - JS library test is flaky
    * [THRIFT-3140] - ConcurrentModificationException is thrown by JavaScript test server
    * [THRIFT-3124] - Some signed/unsigned warnings while building compiler
    * [THRIFT-3128] - Go generated code produces name collisions between services
    * [THRIFT-3146] - Graphviz generates function name collisions between services
    * [THRIFT-3147] - Segfault while receiving data
    * [THRIFT-3148] - Markdown links to coding_standards are dead
    * [THRIFT-3090] - cmake build is broken on MacOSX
    * [THRIFT-3097] - cmake targets unconditionally depend on optional libraries
    * [THRIFT-3094] - master as of 2015-APR-13 fails -DBOOST_THREADS cmake build
    * [THRIFT-3099] - cmake build is broken on FreeBSD
    * [THRIFT-3089] - Assigning default ENUM values results in non-compilable java code if java namespace is not defined
    * [THRIFT-3093] - mingw compile fixes for c++ library 0.9.2
    * [THRIFT-3098] - Thrift does not pretty print binary typedefs the way it does binary fields
    * [THRIFT-3091] - c_glib service method should return result from handler method
    * [THRIFT-3088] - TThreadPoolServer with Sasl auth may leak CLOSE_WAIT socket
    * [THRIFT-3109] - Cross test log file cannot be browsed when served in HTTP server
    * [THRIFT-3113] - m4 C++11 macro issue
    * [THRIFT-3105] - C++ libthriftnb library on Windows build failure
    * [THRIFT-3115] - Uncompileable code due to name collision with predefined used types
    * [THRIFT-3117] - Java TSSLTransportFactory can't load certificates within JAR archive
    * [THRIFT-3102] - could not make check for Go Library
    * [THRIFT-3120] - Minor spelling errors and an outdated URL
    * [THRIFT-3121] - Librt does not exist on OS X
    * [THRIFT-3152] - Compiler error on Mac OSX (missing #include <cstdlib>)
    * [THRIFT-3162] - make fails for dmd 2.067
    * [THRIFT-3164] - Thrift C++ library SSL socket by default allows for unsecure SSLv3 negotiation
    * [THRIFT-3168] - Fix Maven POM
    * [THRIFT-3170] - Initialism code in the Go compiler causes chaos
    * [THRIFT-3169] - Do not export thrift.TestStruct and thrift.TestEnum in thrift Go library 
    * [THRIFT-3191] - Perl compiler does not add support for unexpected exception handling
    * [THRIFT-3178] - glib C does not compile
    * [THRIFT-3189] - Perl ServerSocket should allow a specific interface to be listened to
    * [THRIFT-3252] - Missing TConcurrentClientSyncInfo.h in cpp Makefile, so doesn't install
    * [THRIFT-3255] - Thrift generator doesn't exclude 'package' keyword for thrift property names breaking java builds
    * [THRIFT-3260] - multiple warnings in c_glib tutorial
    * [THRIFT-3256] - Some D test timings are too aggressive for slow machines
    * [THRIFT-3257] - warning: extra tokens at end of #endif directive
    * [THRIFT-3184] - Thrift Go leaves file descriptors open
    * [THRIFT-3203] - DOAP - please fix "Ocaml" => "OCaml"
    * [THRIFT-3210] - (uncompileable) code generated for server events while are events not enabled
    * [THRIFT-3215] - TJSONProtocol '(c++) uses "throw new" to throw exceptions instead of "throw"
    * [THRIFT-3202] - Allow HSHAServer to configure min and max worker threads separately.
    * [THRIFT-3205] - TCompactProtocol return a wrong error when the io.EOF happens
    * [THRIFT-3209] - LGPL mentioned in license file
    * [THRIFT-3197] - keepAliveTime is hard coded as 60 sec in TThreadPoolServer
    * [THRIFT-3196] - Misspelling in lua TBinaryProtocol (stirctWrite => strictWrite)
    * [THRIFT-3198] - Allow construction of TTransportFactory with a specified maxLength
    * [THRIFT-3192] - Go import paths changed in 1.4, and expired June 1
    * [THRIFT-3271] - Could not find or load main class configtest_ax_javac_and_java on some non-english systems
    * [THRIFT-3273] - c_glib: Generated code tries to convert between function and void pointers
    * [THRIFT-3264] - Fix Erlang 16 namespaced types
    * [THRIFT-3270] - reusing TNonblockingServer::TConnection cause dirty TSocket
    * [THRIFT-3267] - c_glib: "Critical" failure during unit tests
    * [THRIFT-3277] - THttpClient leaks connections if it's used for multiple requests
    * [THRIFT-3278] - NodeJS: Fix exception stack traces and names
    * [THRIFT-3279] - Fix a bug in retry_max_delay (NodeJS)
    * [THRIFT-3280] - Initialize retry variables on construction
    * [THRIFT-3283] - c_glib: Tutorial server always exits with warning
    * [THRIFT-3284] - c_glib: Empty service produces unused-variable warning
    * [THRIFT-1925] - c_glib generated code does not compile
    * [THRIFT-1849] - after transport->open() opens isOpen returns true and next open() goes thru when it shall not
    * [THRIFT-1866] - java compiler generates non-compiling code with const's defined in a thrift when name includes non-identifier chars
    * [THRIFT-1938] - FunctionRunner.h -- uses wrong path for Thread.h when installed
    * [THRIFT-1844] - Password string not cleared
    * [THRIFT-2004] - Thrift::Union violates :== method contract and crashes
    * [THRIFT-2073] - Thrift C++ THttpClient error: cannot refill buffer
    * [THRIFT-2127] - Autoconf scripting does not properly account for cross-compile
    * [THRIFT-2180] - Integer types issues in Cocoa lib on ARM64
    * [THRIFT-2189] - Go needs "isset" to fully support "union" type (and optionals)
    * [THRIFT-2192] - autotools on Redhat based systems
    * [THRIFT-2546] - cross language tests fails at 'TestMultiException' when using nodejs server
    * [THRIFT-2547] - nodejs servers and clients fails to connect with cpp using compact protocol
    * [THRIFT-2548] - Nodejs servers and clients does not work properly with  -ssl
    * [THRIFT-1471] - toString() does not print ByteBuffer values when nested in a List
    * [THRIFT-1201] - getaddrinfo resource leak
    * [THRIFT-615] - TThreadPoolServer doesn't call task_done after pulling tasks from it's clients queue
    * [THRIFT-162] - Thrift structures are unhashable, preventing them from being used as set elements
    * [THRIFT-810] - Crashed client on TSocket::close under loads
    * [THRIFT-557] - charset problem with file Autogenerated by Thrift
    * [THRIFT-233] - IDL doesn't support negative hex literals
    * [THRIFT-1649] - contrib/zeromq does not build in 0.8.0
    * [THRIFT-1642] - Miscalculation lead to throw unexpected "TTransportException::TIMED_OUT"(or called "EAGAIN (timed out)") exception
    * [THRIFT-1587] - TSocket::setRecvTimeout error
    * [THRIFT-1248] - pointer subtraction in TMemoryBuffer relies on undefined behavior
    * [THRIFT-1774] - Sasl Transport client would hang when trying to connect non-sasl transport server
    * [THRIFT-1754] - RangeError in buffer handling
    * [THRIFT-1618] - static structMap in FieldMetaData is not thread safe and can lead to deadlocks
    * [THRIFT-2335] - thrift incompatibility with py:tornado as server, java as client
    * [THRIFT-2803] - TCP_DEFER_ACCEPT not supported with domain sockets
    * [THRIFT-2799] - Build Problem(s): ld: library not found for -l:libboost_unit_test_framework.a
    * [THRIFT-2801] - C++ test suite compilation warnings
    * [THRIFT-2802] - C++ tutorial compilation warnings
    * [THRIFT-2795] - thrift_binary_protocol.c: 'dereferencing type-punned pointer will break strict-aliasing rules'
    * [THRIFT-2817] - TSimpleJSONProtocol reads beyond end of message
    * [THRIFT-2826] - html:standalone sometimes ignored
    * [THRIFT-2829] - Support haxelib installation via github
    * [THRIFT-2828] - slightly wrong help screen indent
    * [THRIFT-2831] - Removes dead code in web_server.js introduced in THRIFT-2819
    * [THRIFT-2823] - All JS-tests are failing when run with grunt test
    * [THRIFT-2827] - Thrift 0.9.2 fails to compile on Yosemite due to tr1/functional include in ProcessorTest.cpp
    * [THRIFT-2843] - Automake configure.ac has possible typo related to Java
    * [THRIFT-2813] - multiple haxe library fixes/improvements
    * [THRIFT-2825] - Supplying unicode to python Thrift client can cause next request arguments to get overwritten
    * [THRIFT-2840] - Cabal file points to LICENSE file outside the path of the Haskell project.
    * [THRIFT-2818] - Trailing commas in array
    * [THRIFT-2830] - Clean up ant warnings in tutorial dir
    * [THRIFT-2842] - Erlang thrift client has infinite timeout
    * [THRIFT-2810] - Do not leave the underlying ServerSocket open if construction of TServerSocket fails
    * [THRIFT-2812] - Go server adding redundant buffering layer
    * [THRIFT-2839] - TFramedTransport read bug
    * [THRIFT-2844] - Nodejs support broken when running under Browserify
    * [THRIFT-2814] - args/result classes not found when no namespace is set
    * [THRIFT-2847] - function IfValue() is a duplicate of System.StrUtils.IfThen
    * [THRIFT-2848] - certain Delphi tests do not build if TypeRegistry is used
    * [THRIFT-2854] - Go Struct writer and reader looses important error information
    * [THRIFT-2858] - Enable header field case insensitive match in THttpServer
    * [THRIFT-2857] - C# generator creates uncompilable code for struct constants
    * [THRIFT-2860] - Delphi server closes connection on unexpected exceptions
    * [THRIFT-2868] - Enhance error handling in the Go client 
    * [THRIFT-2879] - TMemoryBuffer: using lua string in wrong way
    * [THRIFT-2851] - Remove strange public Peek() from Go transports
    * [THRIFT-2852] - Better Open/IsOpen/Close behavior for StreamTransport.
    * [THRIFT-2871] - Missing semicolon in thrift.js
    * [THRIFT-2872] - ThreadManager deadlock for task expiration
    * [THRIFT-2881] - Handle errors from Accept() correctly
    * [THRIFT-2849] - Spell errors reported by codespell tool
    * [THRIFT-2870] - C++ TJSONProtocol using locale dependent formatting
    * [THRIFT-2882] - Lua Generator: using string.len funtion to get struct(map,list,set) size
    * [THRIFT-2864] - JSON generator missing from Visual Studio build project 
    * [THRIFT-2878] - Go validation support of required fields
    * [THRIFT-2873] - TPipe and TPipeServer don't compile on Windows with UNICODE enabled
    * [THRIFT-2888] - import of <limits> is missing in JSON generator
    * [THRIFT-2900] - Python THttpClient does not reset socket timeout on exception
    * [THRIFT-2907] - 'ntohll' macro redefined
    * [THRIFT-2884] - Map does not serialize correctly for JSON protocol in Go library
    * [THRIFT-2887] - --with-openssl configure flag is ignored
    * [THRIFT-2894] - PHP json serializer skips maps with int/bool keys
    * [THRIFT-2904] - json_protocol_test.go fails
    * [THRIFT-2906] - library not found for -l:libboost_unit_test_framework.a
    * [THRIFT-2890] - binary data may lose bytes with JSON transport under specific circumstances
    * [THRIFT-2891] - binary data may cause a failure with JSON transport under specific circumstances
    * [THRIFT-2901] - Fix for generated TypeScript functions + indentation of JavaScript maps
    * [THRIFT-2916] - make check fails for D language
    * [THRIFT-2918] - Race condition in Python TProcessPoolServer test
    * [THRIFT-2920] - Erlang Thrift test uses wrong IDL file
    * [THRIFT-2922] - $TRIAL is used with Python tests but not tested accordingly
    * [THRIFT-2912] - Autotool build for C++ Qt library is invalid
    * [THRIFT-2914] - explicit dependency to Lua5.2 fails on some systems
    * [THRIFT-2910] - libevent is not really optional
    * [THRIFT-2911] - fix c++ version zeromq transport, the old version cannot work
    * [THRIFT-2915] - Lua generator missing from Visual Studio build project
    * [THRIFT-2917] - "make clean" breaks test/c_glib
    * [THRIFT-2919] - Haxe test server timeout too large
    * [THRIFT-2923] - JavaScript client assumes a message being written
    * [THRIFT-2924] - TNonblockingServer crashes when user-provided event_base is used
    * [THRIFT-2925] - CMake build does not work with OpenSSL nor anything installed in non-system location
    * [THRIFT-2931] - Access to undeclared static property: Thrift\Protocol\TProtocol::$TBINARYPROTOCOLACCELERATED
    * [THRIFT-2893] - CMake build fails with boost thread or std thread
    * [THRIFT-2902] - Generated c_glib code does not compile with clang
    * [THRIFT-2903] - Qt4 library built with CMake does not work
    * [THRIFT-2942] - CSharp generate invalid code for property named read or write
    * [THRIFT-2932] - Node.js Thrift connection libraries throw Exceptions into event emitter
    * [THRIFT-2933] - v0.9.2: doubles encoded in node with compact protocol cannot be decoded by python
    * [THRIFT-2934] - createServer signature mismatch
    * [THRIFT-2981] - IDL with no namespace produces unparsable PHP
    * [THRIFT-2999] - Addition of .gitattributes text auto in THRIFT-2724 causes modified files on checkout
    * [THRIFT-2949] - typo in compiler/cpp/README.md
    * [THRIFT-2957] - warning: source file %s is in a subdirectory, but option 'subdir-objects' is disabled
    * [THRIFT-2953] - TNamedPipeServerTransport is not Stop()able
    * [THRIFT-2962] - Docker Thrift env for development and testing
    * [THRIFT-2971] - C++ test and tutorial parallel build is unstable
    * [THRIFT-2972] - Missing backslash in lib/cpp/test/Makefile.am
    * [THRIFT-2951] - Fix Erlang name conflict test
    * [THRIFT-2955] - Using list of typedefs does not compile on Go
    * [THRIFT-2960] - namespace regression for Ruby
    * [THRIFT-2959] - nodejs: fix binary unit tests
    * [THRIFT-2966] - nodejs: Fix bad references to TProtocolException and TProtocolExceptionType
    * [THRIFT-2970] - grunt-jsdoc fails due to dependency issues
    * [THRIFT-3001] - C# Equals fails for binary fields (byte[])
    * [THRIFT-3003] - Missing LICENSE file prevents package from being installed
    * [THRIFT-3008] - Node.js server does not fully support exception
    * [THRIFT-3007] - Travis build is broken because of directory conflict
    * [THRIFT-3009] - TSSLSocket does not use the correct hostname (breaks certificate checks)
    * [THRIFT-3011] - C# test server testException() not implemented according to specs
    * [THRIFT-3012] - Timing problems in NamedPipe implementation due to unnecessary open/close
    * [THRIFT-3019] - Golang generator missing docstring for structs
    * [THRIFT-3021] - Service remote tool does not import stub package with package prefix
    * [THRIFT-3026] - TMultiplexedProcessor does not have a constructor
    * [THRIFT-3028] - Regression caused by THRIFT-2180
    * [THRIFT-3017] - order of map key/value types incorrect for one CTOR
    * [THRIFT-3020] - Cannot compile thrift as C++03
    * [THRIFT-3024] - User-Agent "BattleNet" used in some Thrift library files
    * [THRIFT-3047] - Uneven calls to indent_up and indent_down in Cocoa generator
    * [THRIFT-3048] - NodeJS decoding of I64 is inconsistent across protocols
    * [THRIFT-3043] - go compiler generator uses non C++98 code
    * [THRIFT-3044] - Docker README.md paths to Dockerfiles are incorrect
    * [THRIFT-3040] - bower.json wrong "main" path
    * [THRIFT-3051] - Go Thrift generator creates bad go code
    * [THRIFT-3057] - Java compiler build is broken
    * [THRIFT-3061] - C++ TSSLSocket shutdown delay/vulnerability
    * [THRIFT-3062] - C++ TServerSocket invalid port number (over 999999) causes stack corruption
    * [THRIFT-3065] - Update libthrift dependencies (slf4j, httpcore, httpclient)
    * [THRIFT-3244] - TypeScript: fix namespace of included types
    * [THRIFT-3246] - Reduce the number of trivial warnings in Windows C++ CMake builds
    * [THRIFT-3224] - Fix TNamedPipeServer unpredictable behavior on accept
    * [THRIFT-3230] - Python compiler generates wrong code if there is function throwing a typedef of exception with another namespace
    * [THRIFT-3236] - MaxSkipDepth never checked
    * [THRIFT-3239] - Limit recursion depth
    * [THRIFT-3241] - fatal error: runtime: cannot map pages in arena address space
    * [THRIFT-3242] - OSGi Import-Package directive is missing the Apache HTTP packages
    * [THRIFT-3234] - Limit recursion depth
    * [THRIFT-3222] - TypeScript: Generated Enums are quoted
    * [THRIFT-3229] - unexpected Timeout exception when desired bytes are only partially available
    * [THRIFT-3231] - CPP: Limit recursion depth to 64
    * [THRIFT-3235] - Limit recursion depth
    * [THRIFT-3175] - fastbinary.c python deserialize can cause huge allocations from garbage
    * [THRIFT-3176] - Union incorrectly implements ==
    * [THRIFT-3177] - Fails to run rake test
    * [THRIFT-3180] - lua plugin: framed transport do not work
    * [THRIFT-3179] - lua plugin cant connect to remote server because function l_socket_create_and_connect always bind socket to localhost
    * [THRIFT-3248] - TypeScript: additional comma in method signature without parameters
    * [THRIFT-3302] - Go JSON protocol should encode Thrift byte type as signed integer string
    * [THRIFT-3297] - c_glib: an abstract base class is not generated
    * [THRIFT-3294] - TZlibTransport for Java does not write data correctly
    * [THRIFT-3296] - Go cross test does not conform to spec
    * [THRIFT-3295] - C# library does not build on Mono 4.0.2.5 or later
    * [THRIFT-3293] - JavaScript: null values turn into empty structs in constructor
    * [THRIFT-3310] - lib/erl/README.md has incorrect formatting
    * [THRIFT-3319] - CSharp tutorial will not build using the *.sln
    * [THRIFT-3335] - Ruby server does not handle processor exception
    * [THRIFT-3338] - Stray underscore in generated go when service name starts with "New"
    * [THRIFT-3324] - Update Go Docs for pulling all packages
    * [THRIFT-3345] - Clients blocked indefinitely when a java.lang.Error is thrown
    * [THRIFT-3332] - make dist fails on clean build
    * [THRIFT-3326] - Tests do not compile under *BSD
    * [THRIFT-3334] - Markdown notation of protocol spec is malformed
    * [THRIFT-3331] - warning: ‘etype’ may be used uninitialized in this function
    * [THRIFT-3349] - Python server does not handle processor exception
    * [THRIFT-3343] - Fix haskell README
    * [THRIFT-3340] - Python: enable json tests again
    * [THRIFT-3311] - Top level README.md has incorrect formmating
    * [THRIFT-2936] - Minor memory leak in SSL
    * [THRIFT-3290] - Using from in variable names causes the generated Python code to have errors
    * [THRIFT-3225] - Fix TPipeServer unpredictable behavior on interrupt()
    * [THRIFT-3354] - Fix word-extraction substr bug in initialism code
    * [THRIFT-2006] - TBinaryProtocol message header call name length is not validated and can be used to core the server
    * [THRIFT-3329] - C++ library unit tests don't compile against the new boost-1.59 unit test framework
    * [THRIFT-2630] - windows7 64bit pc. ipv4 and ipv6 pc.can't use
    * [THRIFT-3336] - Thrift generated streaming operators added in 0.9.2 cannot be overridden
    * [THRIFT-2681] - Core of unwind_cleanup
    * [THRIFT-3317] - cpp namespace org.apache issue appears in 0.9

## Documentation
    * [THRIFT-3286] - Apache Ant is a necessary dependency

## Improvement
    * [THRIFT-227] - Byte[] in collections aren't pretty printed like regular binary fields
    * [THRIFT-2744] - Vagrantfile for Centos 6.5
    * [THRIFT-2644] - Haxe support
    * [THRIFT-2756] - register Media Type @ IANA
    * [THRIFT-3076] - Compatibility with Haxe 3.2.0
    * [THRIFT-3081] - C++ Consolidate client processing loops in TServers
    * [THRIFT-3083] - C++ Consolidate server processing loops in TSimpleServer, TThreadedServer, TThreadPoolServer
    * [THRIFT-3084] - C++ add concurrent client limit to threaded servers
    * [THRIFT-3074] -     Add compiler/cpp/lex.yythriftl.cc to gitignore.
    * [THRIFT-3134] - Remove use of deprecated "phantom.args"
    * [THRIFT-3133] - Allow "make cross" and "make precross" to run without building all languages
    * [THRIFT-3142] - Make JavaScript use downloaded libraries
    * [THRIFT-3141] - Improve logging of JavaScript test
    * [THRIFT-3144] - Proposal: make String representation of enums in generated go code less verbose
    * [THRIFT-3130] - Remove the last vestiges of THRIFT_OVERLOAD_IF from THRIFT-1316
    * [THRIFT-3131] - Consolidate suggested import path for go thrift library to git.apache.org in docs and code
    * [THRIFT-3092] - Generated Haskell types should derive Generic
    * [THRIFT-3110] -  Print error log after cross test failures on Travis
    * [THRIFT-3114] - Using local temp variables to not pollute the global table
    * [THRIFT-3106] - CMake summary should give more information why a library is set to off
    * [THRIFT-3119] - Java's TThreadedSelectorServer has indistinguishable log messages in run()
    * [THRIFT-3122] - Javascript struct constructor should properly initialize struct and container members from plain js arguments
    * [THRIFT-3151] - Fix links to git-wip* - should be git.apache.org
    * [THRIFT-3167] - Windows build from source instructions need to be revised
    * [THRIFT-3155] - move contrib/mingw32-toolchain.cmake to build/cmake/
    * [THRIFT-3160] - Make generated go enums implement TextMarshaller and TextUnmarshaller interfaces
    * [THRIFT-3150] - Add an option to thrift go generator to make Read and Write methods private
    * [THRIFT-3149] - Make ReadFieldN methods in generated Go code private
    * [THRIFT-3172] - Add tutorial to Thrift web site
    * [THRIFT-3214] - Add Erlang option for using maps instead of dicts
    * [THRIFT-3201] - Capture github test artifacts for failed builds
    * [THRIFT-3266] - c_glib: Multiple compiler warnings building unit tests
    * [THRIFT-3285] - c_glib: Build library with all warnings enabled, no warnings generated
    * [THRIFT-1954] - Allow for a separate connection timeout value 
    * [THRIFT-2098] - Add support for Qt5+
    * [THRIFT-2199] - Remove Dense protocol (was: move to Contrib)
    * [THRIFT-406] - C++ Test suite cleanup
    * [THRIFT-902] - socket and connect timeout in TSocket should be distinguished
    * [THRIFT-388] - Use a separate wire format for async calls
    * [THRIFT-727] - support native C++ language specific exception message
    * [THRIFT-1784] - pep-3110 compliance for exception handling 
    * [THRIFT-1025] - C++ ServerSocket should inherit from Socket with the necessary Ctor to listen on connections from a specific host
    * [THRIFT-2269] - Can deploy libthrift-source.jar to maven center repository
    * [THRIFT-2804] - Pull an interface out of TBaseAsyncProcessor
    * [THRIFT-2806] - more whitespace fixups
    * [THRIFT-2811] - Make remote socket address accessible
    * [THRIFT-2809] - .gitignore update for compiler's visual project
    * [THRIFT-2846] - Expose ciphers parameter from ssl.wrap_socket()
    * [THRIFT-2859] - JSON generator: output complete descriptors
    * [THRIFT-2861] - add buffered transport
    * [THRIFT-2865] - Test case for Go: SeqId out of sequence
    * [THRIFT-2866] - Go generator source code is hard to read and maintain
    * [THRIFT-2880] - Read the network address from the listener if available.
    * [THRIFT-2875] - Typo in TDenseProtocol.h comment
    * [THRIFT-2874] - TBinaryProtocol  member variable "string_buf_" is never used.
    * [THRIFT-2855] - Move contributing.md to the root of the repository
    * [THRIFT-2862] - Enable RTTI and/or build macros for generated code
    * [THRIFT-2876] -  Add test for THRIFT-2526 Assignment operators and copy constructors in c++ don't copy the __isset struct
    * [THRIFT-2897] - Generate -isEqual: and -hash methods
    * [THRIFT-2909] - Improve travis build
    * [THRIFT-2921] - Make Erlang impl ready for OTP 18 release (dict/0 and set/0 are deprecated)
    * [THRIFT-2928] - Rename the erlang test_server module
    * [THRIFT-2940] - Allow installing Thrift from git as NPM module by providing package.json in top level directory
    * [THRIFT-2937] - Allow setting a maximum frame size in TFramedTransport
    * [THRIFT-2976] - nodejs: xhr and websocket support for browserify
    * [THRIFT-2996] - Test for Haxe 3.1.3 or better 
    * [THRIFT-2969] - nodejs: DRY up library tests
    * [THRIFT-2973] - Update Haxe lib readme regarding Haxe 3.1.3
    * [THRIFT-2952] - Improve handling of Server.Stop() 
    * [THRIFT-2964] - nodejs: move protocols and transports into separate files
    * [THRIFT-2963] - nodejs - add test coverage
    * [THRIFT-3006] - Attach 'omitempty' json tag for optional fields in Go
    * [THRIFT-3027] - Go compiler does not ensure common initialisms have consistent case
    * [THRIFT-3030] - TThreadedServer: Property for number of clientThreads
    * [THRIFT-3023] - Go compiler is a little overly conservative with names of attributes
    * [THRIFT-3018] - Compact protocol for Delphi
    * [THRIFT-3025] - Change pure Int constants into @enums (where possible)
    * [THRIFT-3031] - migrate "shouldStop" flag to TServer
    * [THRIFT-3022] - Compact protocol for Haxe
    * [THRIFT-3041] - Generate asynchronous clients for Cocoa
    * [THRIFT-3053] - Perl SSL Socket Support (Encryption)
    * [THRIFT-3247] - Generate a C++ thread-safe client
    * [THRIFT-3217] - Provide a little endian variant of the binary protocol in C++
    * [THRIFT-3223] - TypeScript: Add initial support for Enum Maps
    * [THRIFT-3220] - Option to suppress @Generated Annotation entirely
    * [THRIFT-3300] - Reimplement TZlibTransport in Java using streams
    * [THRIFT-3288] - c_glib: Build unit tests with all warnings enabled, no warnings generated
    * [THRIFT-3347] - Improve cross test servers and clients
    * [THRIFT-3342] - Improve ruby cross test client and server compatibility
    * [THRIFT-2296] - Add C++ Base class for service
    * [THRIFT-3337] - Add testBool method to cross tests
    * [THRIFT-3303] - Disable concurrent cabal jobs on Travis to avoid GHC crash
    * [THRIFT-2623] - Docker container for Thrift
    * [THRIFT-3298] - thrift endian converters may conflict with other libraries
    * [THRIFT-1559] - Provide memory pool for TBinaryProtocol to eliminate memory fragmentation
    * [THRIFT-424] - Steal ProtocolBuffers' VarInt implementation for C++

## New Feature
    * [THRIFT-3070] - Add ability to set the LocalCertificateSelectionCallback
    * [THRIFT-1909] - Java: Add compiler flag to use the "option pattern" for optional fields
    * [THRIFT-2099] - Stop TThreadPoolServer with alive connections.
    * [THRIFT-123] - implement TZlibTransport in Java
    * [THRIFT-2368] - New option: reuse-objects for Java generator
    * [THRIFT-2836] - Optionally generate C++11 MoveConstructible types
    * [THRIFT-2824] - Flag to disable html escaping doctext
    * [THRIFT-2819] - Add WebsSocket client to node.js
    * [THRIFT-3050] - Client certificate authentication for non-http TLS in C#
    * [THRIFT-3292] - Implement TZlibTransport in Go

## Question
    * [THRIFT-2583] - Thrift on xPC target (SpeedGoat)
    * [THRIFT-2592] - thrift server using c_glib
    * [THRIFT-2832] - c_glib: Handle string lists correctly
    * [THRIFT-3136] - thrift installation problem on mac
    * [THRIFT-3346] - c_glib: Tutorials example crashes saying Calculator.ping implementation returned FALSE but did not set an error

## Sub-task
    * [THRIFT-2578] - Moving 'make cross' from test.sh to test.py
    * [THRIFT-2734] - Go coding standards
    * [THRIFT-2748] - Add Vagrantfile for Centos 6.5
    * [THRIFT-2753] - Misc. Haxe improvements
    * [THRIFT-2640] - Compact Protocol in Cocoa
    * [THRIFT-3262] - warning: overflow in implicit constant conversion in DenseProtoTest.cpp
    * [THRIFT-3194] - Can't build with go enabled.  gomock SCC path incorrect.
    * [THRIFT-3275] - c_glib tutorial warnings in generated code
    * [THRIFT-1125] - Multiplexing support for the Ruby Library
    * [THRIFT-2807] - PHP Code Style
    * [THRIFT-2841] - Add comprehensive integration tests for the whole Go stack
    * [THRIFT-2815] - Haxe: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-2886] - Integrate binary type in standard Thrift cross test
    * [THRIFT-2946] - Enhance usability of cross test framework
    * [THRIFT-2967] - Add .editorconfig to root
    * [THRIFT-3033] - Perl: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-3174] - Initialism code in the Go compiler doesn't check first word
    * [THRIFT-3193] - Option to supress date value in @Generated annotation
    * [THRIFT-3305] - Missing dist files for 0.9.3 release candidate
    * [THRIFT-3341] - Add testBool methods
    * [THRIFT-3308] - Fix broken test cases for 0.9.3 release candidate

## Task
    * [THRIFT-2834] - Remove semi-colons from python code generator
    * [THRIFT-2853] - Adjust comments not applying anymore after THRIFT-2852

## Test
    * [THRIFT-3211] - Add make cross support for php TCompactProtocol

## Wish
    * [THRIFT-2838] - TNonblockingServer can bind to port 0 (i.e., get an OS-assigned port) but there is no way to get the port number



Thrift 0.9.2
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-2793] - Go compiler produces uncompilable code
    * [THRIFT-1481] - Unix domain sockets in C++ do not support the abstract namespace
    * [THRIFT-1455] - TBinaryProtocolT<Transport_>::writeString casts from size_t to uint32_t, which is not safe on 64-bit platforms
    * [THRIFT-1579] - PHP Extention - function thrift_protocol_read_binary not working from TBinarySerializer::deserialize
    * [THRIFT-1584] - Error: could not SetMinThreads in ThreadPool on single-core machines
    * [THRIFT-1614] - Thrift build from svn repo sources fails with automake-1.12
    * [THRIFT-1047] - rb_thrift_memory_buffer_write treats arg as string without check, segfaults if you pass non-string
    * [THRIFT-1639] - Java/Python: Serialization/Deserialization of double type using CompactProtocol
    * [THRIFT-1647] - NodeJS BufferedTransport does not work beyond the hello-world example
    * [THRIFT-2130] - Thrift's D library/test: parts of "make check" code do not compile with recent dmd-2.062 through dmd-2.064alpha
    * [THRIFT-2140] - Error compiling cpp tutorials
    * [THRIFT-2139] - MSVC 2012 Error - Cannot compile due to BoostThreadFactory
    * [THRIFT-2138] - pkgconfig file created with wrong include path
    * [THRIFT-2160] - Warning in thrift.h when compiling with -Wunused and NDEBUG
    * [THRIFT-2158] - Compact, JSON, and SimpleJSON protocols are not working correctly
    * [THRIFT-2167] - nodejs lib throws error if options argument isn't passed
    * [THRIFT-2288] - Go impl of Thrift JSON protocol wrongly writes/expects true/false for bools
    * [THRIFT-2147] - Thrift IDL grammar allows for dotted identifier names
    * [THRIFT-2145] - Rack and Thin are not just development dependencies
    * [THRIFT-2267] - Should be able to choose socket family in Python TSocket
    * [THRIFT-2276] - java path in spec file needs updating
    * [THRIFT-2281] - Generated send/recv code ignores errors returned by the underlying protocol
    * [THRIFT-2280] - TJSONProtocol.Flush() does not really flush the transport
    * [THRIFT-2274] - TNonblockingServer and TThreadedSelectorServer do not close their channel selectors on exit and leak file descriptors
    * [THRIFT-2265] - php library doesn't build
    * [THRIFT-2232] - IsSet* broken in Go
    * [THRIFT-2246] - Unset enum value is printed by ToString()
    * [THRIFT-2240] - thrift.vim (contrib) does not correctly handle 'union'
    * [THRIFT-2243] - TNonblockingServer in thrift crashes when TFramedTransport opens
    * [THRIFT-2230] - Cannot Build on RHEL/Centos/Amazon Linux 6.x
    * [THRIFT-2247] - Go generator doesn't deal well with map keys of type binary
    * [THRIFT-2253] - Python Tornado TTornadoServer base class change
    * [THRIFT-2261] - java: error: unmappable character for encoding ASCII
    * [THRIFT-2259] - C#: unexpected null logDelegate() pointer causes AV in TServer.serve()
    * [THRIFT-2225] - SSLContext destroy before cleanupOpenSSL
    * [THRIFT-2224] - TSSLSocket.h and TSSLServerSocket.h should use the platfromsocket too
    * [THRIFT-2229] - thrift failed to build on OSX 10.9 GM
    * [THRIFT-2227] - Thrift compiler generates spurious warnings with Xlint
    * [THRIFT-2219] - Thrift gem fails to build on OS X Mavericks with 1.9.3 rubies
    * [THRIFT-2226] - TServerSocket - keepAlive wrong initialization order
    * [THRIFT-2285] - TJsonProtocol implementation for Java doesn't allow a slash (/) to be escaped (\/)
    * [THRIFT-2216] - Extraneous semicolon in TProtocolUtil.h makes clang mad
    * [THRIFT-2215] - Generated HTML/Graphviz lists referenced enum identifiers as UNKNOWN.
    * [THRIFT-2211] - Exception constructor does not contain namespace prefix.
    * [THRIFT-2210] - lib/java TSimpleJSONProtocol can emit invalid JSON
    * [THRIFT-2209] - Ruby generator -- please namespace classes
    * [THRIFT-2202] - Delphi TServerImpl.DefaultLogDelegate may stop the server with I/O-Error 105
    * [THRIFT-2201] - Ternary operator returns different types (build error for some compilers)
    * [THRIFT-2200] - nested structs cause generate_fingerprint() to slow down at excessive CPU load
    * [THRIFT-2197] - fix jar output directory in rpm spec file
    * [THRIFT-2196] - Fix invalid dependency in Makefile.am
    * [THRIFT-2194] - Node: Not actually prepending residual data in TFramedTransport.receiver
    * [THRIFT-2193] - Java code generator emits spurious semicolon when deep copying binary data
    * [THRIFT-2191] - Fix charp JSONProtocol.ReadJSONDouble (specify InvariantCulture)
    * [THRIFT-2214] - System header sys/param.h is included inside the Thrift namespace
    * [THRIFT-2178] - Thrift generator returns error exit code on --version
    * [THRIFT-2171] - NodeJS implementation has extremely low test coverage
    * [THRIFT-2183] - gem install fails on zsh
    * [THRIFT-2182] - segfault in regression tests (GC bug in rb_thrift_memory_buffer_write)
    * [THRIFT-2181] - oneway calls don't work in NodeJS
    * [THRIFT-2169] - JavaME Thrift Library causes "java.io.IOException: No Response Entries Available" after using the Thrift client for some time
    * [THRIFT-2168] - Node.js appears broken (at least, examples don't work as intended)
    * [THRIFT-2293] - TSSLTransportFactory.createSSLContext() leaves files open
    * [THRIFT-2279] - TSerializer only returns the first 1024 bytes serialized
    * [THRIFT-2278] - Buffered transport doesn't support writes > buffer size
    * [THRIFT-2275] - Fix memory leak in golang compact_protocol.
    * [THRIFT-2282] - Incorect code generated for some typedefs
    * [THRIFT-2009] - Go redeclaration error
    * [THRIFT-1964] - 'Isset' causes problems with C#/.NET serializers
    * [THRIFT-2026] - Fix TCompactProtocol 64 bit builds
    * [THRIFT-2108] - Fix TAsyncClientManager timeout race
    * [THRIFT-2068] - Multiple calls from same connection are not processed in node
    * [THRIFT-1750] - Make compiler build cleanly under visual studio 10
    * [THRIFT-1755] - Comment parsing bug
    * [THRIFT-1771] - "make check" fails on x64 for libboost_unit_test_framework.a
    * [THRIFT-1841] - NodeJS Thrift incorrectly parses non-UTF8-string types
    * [THRIFT-1908] - Using php thrift_protocol accelerated transfer causes core dump
    * [THRIFT-1892] - Socket timeouts are declared in milli-seconds, but are actually set in micro-seconds
    * [THRIFT-2303] - TBufferredTransport not properly closing underlying transport
    * [THRIFT-2313] - nodejs server crash after processing the first request when using MultiplexedProcessor/FramedBuffer/BinaryProtocol
    * [THRIFT-2311] - Go: invalid code generated when exception name is a go keyword
    * [THRIFT-2308] - node: TJSONProtocol parse error when reading from buffered message
    * [THRIFT-2316] - ccp: TFileTransportTest
    * [THRIFT-2352] - msvc failed to compile thrift tests
    * [THRIFT-2337] - Golang does not report TIMED_OUT exceptions
    * [THRIFT-2340] - Generated server implementation does not send response type EXCEPTION on the Thrift.TApplicationExceptionType.UNKNOWN_METHOD exception
    * [THRIFT-2354] - Connection errors can lead to case_clause exceptions
    * [THRIFT-2339] - Uncaught exception in thrift c# driver
    * [THRIFT-2356] - c++ thrift client not working with ssl (SSL_connect hangs)
    * [THRIFT-2331] - Missing call to ReadStructBegin() in TApplicationException.Read()
    * [THRIFT-2323] - Uncompileable Delphi code generated for typedef'd structs
    * [THRIFT-2322] - Correctly show the number of times ExecutorService (java) has rejected the client.
    * [THRIFT-2389] - namespaces handled wrongly in acrionscript 3.0 implementation
    * [THRIFT-2388] - GoLang - Fix data races in simple_server and server_socket
    * [THRIFT-2386] - Thrift refuses to link yylex
    * [THRIFT-2375] - Excessive <br>'s in generated HTML
    * [THRIFT-2373] - warning CS0414 in THttpClient.cs: private field 'Thrift.Transport.THttpClient.connection' assigned but never used
    * [THRIFT-2372] - thrift/json_protocol.go:160: function ends without a return statement
    * [THRIFT-2371] - ruby bundler version fails on ~1.3.1, remove and take latest avail
    * [THRIFT-2370] - Compiler SEGFAULTs generating HTML documentation for complex strucre
    * [THRIFT-2384] - Binary map keys produce uncompilable code in go
    * [THRIFT-2380] - unreachable code (CID 1174546, CID 1174679)
    * [THRIFT-2378] - service method arguments of binary type lead to uncompileable Go code
    * [THRIFT-2363] - Issue with character encoding of Success returned from Login using Thrift Proxy and NodeJS
    * [THRIFT-2359] - TBufferedTransport doesn't clear it's buffer on a failed flush call
    * [THRIFT-2428] - Python 3 setup.py support
    * [THRIFT-2367] - Build failure: stdlib and boost both define uint64_t
    * [THRIFT-2365] - C# decodes too many binary bytes from JSON
    * [THRIFT-2402] - byte count of FrameBuffer in AWAITING_CLOSE state is not subtracted from readBufferBytesAllocated
    * [THRIFT-2396] - Build Error on MacOSX
    * [THRIFT-2395] - thrift Ruby gem requires development dependency 'thin' regardless of environment
    * [THRIFT-2414] - c_glib fix several bug.
    * [THRIFT-2420] - Go argument parser for methods without arguments does not skip fields
    * [THRIFT-2439] - Bug in TProtocolDecorator Class causes parsing errors
    * [THRIFT-2419] - golang - Fix fmt.Errorf in generated code
    * [THRIFT-2418] - Go handler function panics on internal error
    * [THRIFT-2405] - Node.js Multiplexer tests fail (silently)
    * [THRIFT-2581] - TFDTransport destructor should not throw
    * [THRIFT-2575] - Thrift includes siginfo_t within apache::thrift::protocol namespace
    * [THRIFT-2577] - TFileTransport  missuse of closesocket on windows platform
    * [THRIFT-2576] - Implement Thrift.Protocol.prototype.skip method in JavaScript library
    * [THRIFT-2588] - Thrift compiler is not buildable in Visual Studio 2010
    * [THRIFT-2594] - JS Compiler: Single quotes are not being escaped in constants.
    * [THRIFT-2591] - TFramedTransport does not handle payloads split across packets correctly
    * [THRIFT-2599] - Uncompileable Delphi code due to naming conflicts with IDL
    * [THRIFT-2590] - C++ Visual Studio solution doesn't include Multiplexing support
    * [THRIFT-2595] - Node.js: Fix global leaks and copy-paste errors
    * [THRIFT-2565] - autoconf fails to find mingw-g++ cross compiler on travis CI
    * [THRIFT-2555] - excessive "unused field" comments
    * [THRIFT-2554] - double initialization in generated Read() method
    * [THRIFT-2551] - OutOfMemoryError "unable to create new native thread" kills serve thread
    * [THRIFT-2543] - Generated enum type in haskell should be qualified
    * [THRIFT-2560] - Thrift compiler generator tries to concat ints with strings using +
    * [THRIFT-2559] - Centos 6.5 unable to "make" with Thrift 0.9.1
    * [THRIFT-2526] - Assignment operators and copy constructors in c++ don't copy the __isset struct
    * [THRIFT-2454] - c_glib: There is no gethostbyname_r() in some OS.
    * [THRIFT-2451] - Do not use pointers for optional fields with defaults. Do not write such fields if its value set to default. Also, do not use pointers for any optional fields mapped to go map or slice. generate Get accessors
    * [THRIFT-2450] - include HowToContribute in the src repo
    * [THRIFT-2448] - thrift/test/test.sh has incorrect Node.js test path
    * [THRIFT-2460] - unopened socket fd must be less than zero.
    * [THRIFT-2459] - --version should not exit 1
    * [THRIFT-2468] - Timestamp handling
    * [THRIFT-2467] - Unable to build contrib/fb303 on OSX 10.9.2
    * [THRIFT-2466] - Improper error handling for SSL/TLS connections that don't complete a handshake
    * [THRIFT-2463] - test/py/RunClientServer.py fails sometimes
    * [THRIFT-2458] - Generated golang server code for "oneway" methods is incorrect
    * [THRIFT-2456] - THttpClient fails when using async support outside Silverlight
    * [THRIFT-2524] - Visual Studio project is missing TThreadedServer files
    * [THRIFT-2523] - Visual Studio project is missing OverlappedSubmissionThread files
    * [THRIFT-2520] - cpp:cob_style generates incorrect .tcc file
    * [THRIFT-2508] - Uncompileable C# code due to language keywords in IDL
    * [THRIFT-2506] - Update TProtocolException error codes to be used consistently throughout the library
    * [THRIFT-2505] - go: struct should always be a pointer to avoid copying of potentially size-unbounded structs
    * [THRIFT-2515] - TLS Method error during make
    * [THRIFT-2503] - C++: Fix name collision when a struct has a member named "val"
    * [THRIFT-2477] - thrift --help text with misplaced comma
    * [THRIFT-2492] - test/cpp does not compile on mac
    * [THRIFT-2500] - sending random data crashes thrift(golang) service
    * [THRIFT-2475] - c_glib: buffered_transport_write function return always TRUE.
    * [THRIFT-2495] - JavaScript/Node string constants lack proper escaping
    * [THRIFT-2491] - unable to import generated ThriftTest service
    * [THRIFT-2490] - c_glib: if fail to read a exception from server, client may be occurred double free
    * [THRIFT-2470] - THttpHandler swallows exceptions from processor
    * [THRIFT-2533] - Boost version in requirements should be updated
    * [THRIFT-2532] - Java version in installation requirements should be updated
    * [THRIFT-2529] - TBufferedTransport split  Tcp data bug in nodeJs
    * [THRIFT-2537] - Path for "go get" does not work (pull request 115)
    * [THRIFT-2443] - Node fails cross lang tests
    * [THRIFT-2437] - Author fields in Python setup.py must be strings not lists.
    * [THRIFT-2435] - Java compiler doesn't like struct member names that are identical to an existing enum or struct type
    * [THRIFT-2434] - Missing namespace import for php TMultiplexedProcessor implementation
    * [THRIFT-2432] - Flaky parallel build
    * [THRIFT-2430] - Crash during TThreadPoolServer shutdown
    * [THRIFT-667] - Period should not be allowed in identifier names
    * [THRIFT-1212] - Members capital case conflict
    * [THRIFT-2584] - Error handler not listened on javascript client
    * [THRIFT-2294] - Incorrect Makefile generation
    * [THRIFT-2601] - Fix vagrant to work again for builds again
    * [THRIFT-2092] - TNonblocking server should release handler as soon as connection closes
    * [THRIFT-2557] - CS0542 member names cannot be the same as their enclosing type
    * [THRIFT-2605] - TSocket warning on gcc 4.8.3
    * [THRIFT-2607] - ThreadManager.cpp warning on clang++ 3.4
    * [THRIFT-1998] - TCompactProtocol.tcc - one more warning on Visual 2010
    * [THRIFT-2610] - MSVC warning in TSocket.cpp
    * [THRIFT-2614] - TNonblockingServer.cpp warnings on MSVC
    * [THRIFT-2608] - TNonblockingServer.cpp warnings on clang 3.4
    * [THRIFT-2606] - ThreadManager.h warning in clang++ 3.4
    * [THRIFT-2609] - TFileTransport.h unused field warning (clang 3.4)
    * [THRIFT-2416] - Cannot use TCompactProtocol with MSVC
    * [THRIFT-1803] - Ruby Thrift 0.9.0 tries to encode UUID to UTF8 and crashes
    * [THRIFT-2385] - Problem with gethostbyname2 during make check
    * [THRIFT-2262] - thrift server 'MutateRow' operation gives no indication of success / failure
    * [THRIFT-2048] - Prefer boolean context to nullptr_t conversion
    * [THRIFT-2528] - Thrift Erlang Library: Multiple thrift applications in one bundle
    * [THRIFT-1999] - warning on gcc 4.7 while compiling BoostMutex.cpp
    * [THRIFT-2104] - Structs lose binary data when transferred from server to client in Java
    * [THRIFT-2184] - undefined method rspec_verify for Thrift::MemoryBufferTransport
    * [THRIFT-2351] - PHP TCompactProtocol has fails to decode messages
    * [THRIFT-2016] - Resource Leak in thrift struct under compiler/cpp/src/parse/t_function.h
    * [THRIFT-2273] - Please delete old releases from mirroring system
    * [THRIFT-2270] - Faulty library version numbering at build or documentation
    * [THRIFT-2203] - Tests keeping failing on Jenkins and Travis CI
    * [THRIFT-2399] - thrift.el: recognize "//"-style comments in emacs thrift-mode
    * [THRIFT-2582] - "FileTransport error" exception is raised when trying to use Java's TFileTransport
    * [THRIFT-1682] - Multiple thread calling a Service function unsafely causes message corruption and terminates with Broken Pipe
    * [THRIFT-2357] - recurse option has no effect when generating php
    * [THRIFT-2248] - Go generator doesn't deal well with map keys of type binary
    * [THRIFT-2426] - clarify IP rights and contributions from fbthrift
    * [THRIFT-2041] - TNonblocking server compilation on windows (ARITHMETIC_RIGHT_SHIFT)
    * [THRIFT-2400] - thrift.el: recognize "//"-style comments in emacs thrift-mode
    * [THRIFT-1717] - Fix deb build in jenkins
    * [THRIFT-2266] - ThreadManager.h:24:10: fatal error: 'tr1/functional' file not found on Mac 10.9 (Mavericks)
    * [THRIFT-1300] - Test failures with parallel builds (make -j)
    * [THRIFT-2487] - Tutorial requires two IDL files but only one is linked from the Thrift web site
    * [THRIFT-2329] - missing release tags within git
    * [THRIFT-2306] - concurent client calls with nodejs
    * [THRIFT-2222] - ruby gem cannot be compiled on OS X mavericks
    * [THRIFT-2381] - code which generated by thrift2/hbase.thrift compile error
    * [THRIFT-2390] - no close event when connection lost
    * [THRIFT-2146] - Unable to pass multiple "--gen" options to the thrift compiler
    * [THRIFT-2438] - Unexpected readFieldEnd call causes JSON Parsing errors
    * [THRIFT-2498] - Error message "Invalid method name" while trying to call HBase Thrift API
    * [THRIFT-841] - Build cruft
    * [THRIFT-2570] - Wrong URL given in http://thrift.apache.org/developers
    * [THRIFT-2604] - Fix debian packaging
    * [THRIFT-2618] - Unignore /aclocal files required for build
    * [THRIFT-2562] - ./configure create MakeFile in lib/d with errors
    * [THRIFT-2593] - Unable to build thrift on ubuntu-12.04 (Precise)
    * [THRIFT-2461] - Can't install thrift-0.8.0 on OS X 10.9.2
    * [THRIFT-2602] - Fix missing dist files
    * [THRIFT-2620] - Fix python packaging
    * [THRIFT-2545] - Test CPP fails to build (possibly typo)

## Documentation
    * [THRIFT-2155] - Adding one liner guide to rename the version.h.in and rename thrifty.cc.h
    * [THRIFT-1991] - Add exceptions to examples
    * [THRIFT-2334] - add a tutorial for node JS
    * [THRIFT-2392] - Actionscript tutorial
    * [THRIFT-2383] - contrib: sample for connecting Thrift with Rebus
    * [THRIFT-2382] - contrib: sample for connecting Thrift with STOMP

## Improvement
    * [THRIFT-1457] - Capacity of TframedTransport write buffer is never reset
    * [THRIFT-1135] - Node.js tutorial
    * [THRIFT-1371] - Socket timeouts (SO_RCVTIMEO and SO_SNDTIMEO) not supported on Solaris
    * [THRIFT-2142] - Minor tweaks to thrift.el for better emacs package compatibility
    * [THRIFT-2268] - Modify TSaslTransport to ignore TCP health checks from loadbalancers
    * [THRIFT-2264] - GitHub page incorrectly states that Thrift is still incubating
    * [THRIFT-2263] - Always generate good hashCode for Java
    * [THRIFT-2233] - Java compiler should defensively copy its binary inputs
    * [THRIFT-2239] - Address FindBugs errors
    * [THRIFT-2249] - Add SMP Build option to thrift.spec (and three config defines)
    * [THRIFT-2254] - Exceptions generated by Go compiler should implement error interface
    * [THRIFT-2260] - Thrift imposes unneeded dependency on commons-lang3
    * [THRIFT-2258] - Add TLS v1.1/1.2 support to TSSLSocket.cpp
    * [THRIFT-2205] - Node.js Test Server to support test.js JavaScript Browser test and sundry fixes
    * [THRIFT-2204] - SSL client for the cocoa client
    * [THRIFT-2172] - Java compiler allocates optionals array for every struct with an optional field
    * [THRIFT-2185] - use cabal instead of runhaskell in haskell library
    * [THRIFT-1926] - PHP Constant Generation Refactoring
    * [THRIFT-2029] - Port C++ tests to Windows
    * [THRIFT-2054] - TSimpleFileTransport - Java Lib has no straight forward TTransport based file transport
    * [THRIFT-2040] - "uninitialized variable" warnings on MSVC/windows
    * [THRIFT-2034] - Give developers' C++ code direct access to socket FDs on server side
    * [THRIFT-2095] - Use print function for Python 3 compatiblity
    * [THRIFT-1868] - Make the TPC backlog configurable in the Java servers
    * [THRIFT-1813] - Add @Generated annotation to generated classes
    * [THRIFT-1815] - Code generators line buffer output
    * [THRIFT-2305] - TFramedTransport empty constructor should probably be private
    * [THRIFT-2304] - Move client assignments from construtor in method
    * [THRIFT-2309] - Ruby (gem) & PHP RPM subpackages
    * [THRIFT-2318] - perl: dependency Class::Accessor not checked
    * [THRIFT-2317] - exclude tutorial from build
    * [THRIFT-2320] - Program level doctext does not get attached by parser
    * [THRIFT-2349] - Golang - improve tutorial
    * [THRIFT-2348] - PHP Generator: add array typehint to functions
    * [THRIFT-2344] - configure.ac: compiler-only option
    * [THRIFT-2343] - Golang - Return a single error for all exceptions instead of multiple return values
    * [THRIFT-2341] - Enable generation of Delphi XMLDoc comments (a.k.a. "Help Insight")
    * [THRIFT-2355] - Add SSL and Web Socket Support to Node and JavaScript
    * [THRIFT-2350] - Add async calls to normal JavaScript
    * [THRIFT-2330] - Generate PHPDoc comments
    * [THRIFT-2332] - RPMBUILD: run bootstrap (if needed)
    * [THRIFT-2391] - simple socket transport for actionscript 3.0
    * [THRIFT-2376] - nodejs: allow Promise style calls for client and server
    * [THRIFT-2369] - Add ssl support for nodejs implementation
    * [THRIFT-2401] - Haskell tutorial compiles
    * [THRIFT-2417] - C# Union classes are not partial
    * [THRIFT-2415] - Named pipes server performance & message mode
    * [THRIFT-2404] - emit warning on (typically inefficient) list<byte>
    * [THRIFT-2398] - Improve Node Server Library
    * [THRIFT-2397] - Add CORS and CSP support for JavaScript and Node.js libraries
    * [THRIFT-2407] - use markdown (rename README => README.md)
    * [THRIFT-2300] - D configure info output should follow same format as other languages
    * [THRIFT-2579] - Windows CE support
    * [THRIFT-2574] - Compiler option to generate namespace directories for Ruby
    * [THRIFT-2571] - Simplify cross compilation using CMake
    * [THRIFT-2569] - Introduce file to specify third party library locations on Windows
    * [THRIFT-2568] - Implement own certificate handler
    * [THRIFT-2552] - eliminate warning from configure.ac
    * [THRIFT-2549] - Generate json tag for struct members. use go.tag annotation to override the default generated tag.
    * [THRIFT-2544] - Add support for socket transport for c# library when using Windows Phone projects
    * [THRIFT-2453] - haskell tutorial: fix up division by 0 example
    * [THRIFT-2449] - Enhance typedef structure to distinguish between forwards and real typedefs
    * [THRIFT-2446] - There is no way to handle server stream errors
    * [THRIFT-2455] - Allow client certificates to be used with THttpClient
    * [THRIFT-2511] - Node.js needs the compact protocol
    * [THRIFT-2493] - Node.js lib needs HTTP client
    * [THRIFT-2502] - Optimize go implementations of binary and compact protocols for speed
    * [THRIFT-2494] - Add enum toString helper function in c_glib
    * [THRIFT-2471] - Make cpp.ref annotation language agnostic
    * [THRIFT-2497] - server and client for test/go, also several fixes and improvements
    * [THRIFT-2535] - TJSONProtocol when serialized yields TField ids rather than names
    * [THRIFT-2220] - Add a new struct structv?
    * [THRIFT-1352] - Thrift server
    * [THRIFT-989] - Push boost m4 macros upstream
    * [THRIFT-1349] - Remove unnecessary print outs
    * [THRIFT-2496] - server and client for test/go, also several fixes and improvements
    * [THRIFT-1114] - Maven publish shouldn't require passwords hardcoded in settings.xml
    * [THRIFT-2043] - visual 2010 warnings - unreachable code
    * [THRIFT-1683] - Implement alternatives to Javascript Client side Transport protocol, just as NPAPI and WebSocket.
    * [THRIFT-1746] - provide a SPDX file
    * [THRIFT-1772] - Serialization does not check types of embedded structures.
    * [THRIFT-2387] - nodejs: external imports should be centralized in index.js
    * [THRIFT-2037] - More general macro THRIFT_UNUSED_VARIABLE

## New Feature
    * [THRIFT-1012] - Transport for DataInput DataOutput interface
    * [THRIFT-2256] - Using c++11/c++0x std library  replace boost library
    * [THRIFT-2250] - JSON and MemoryBuffer for JavaME
    * [THRIFT-2114] - Python Service Remote SSL Option
    * [THRIFT-1719] - SASL client support for Python
    * [THRIFT-1894] - Thrift multi-threaded async Java Server using Java 7 AsynchronousChannelGroup
    * [THRIFT-1893] - HTTP/JSON server/client for node js
    * [THRIFT-2347] - C# TLS Transport based on THRIFT-181
    * [THRIFT-2377] - Allow addition of custom HTTP Headers to an HTTP Transport
    * [THRIFT-2408] - Named Pipe Transport Option for C#
    * [THRIFT-2572] - Add string/collection length limit checks (from C++) to java protocol readers
    * [THRIFT-2469] - "java:fullcamel" option to automatically camel-case underscored attribute names
    * [THRIFT-795] - Importing service functions (simulation multiple inheritance)
    * [THRIFT-2164] - Add a Get/Post Http Server to Node along with examples
    * [THRIFT-2255] - add Parent Class for generated Struct class

## Question
    * [THRIFT-2539] - Tsocket.cpp addrinfo ai_flags = AI_ADDRCONFIG
    * [THRIFT-2440] - how to connect as3 to java by thrift ,
    * [THRIFT-2379] - Memmory leaking while using multithreading in C++ server.
    * [THRIFT-2277] - Thrift: installing fb303 error
    * [THRIFT-2567] - Csharp slow ?
    * [THRIFT-2573] - thrift 0.9.2 release

## Sub-task
    * [THRIFT-981] - cocoa: add version Info to the library
    * [THRIFT-2132] - Go: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-2299] - TJsonProtocol implementation for Ruby does not allow for both possible slash (solidus) encodings
    * [THRIFT-2298] - TJsonProtocol implementation for C# does not allow for both possible slash (solidus) encodings
    * [THRIFT-2297] - TJsonProtocol implementation for Delphi does not allow for both possible slash (solidus) encodings
    * [THRIFT-2271] - JavaScript: Support for Multiplexing Services
    * [THRIFT-2251] - go test for compact protocol is not running
    * [THRIFT-2195] - Delphi: Add event handlers for server and processing events
    * [THRIFT-2176] - TSimpleJSONProtocol.ReadFieldBegin() does not return field type and ID
    * [THRIFT-2175] - Wrong field type set for binary
    * [THRIFT-2174] - Deserializing JSON fails in specific cases
    * [THRIFT-2053] - NodeJS: Support for Multiplexing Services
    * [THRIFT-1914] - Python: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-1810] - add ruby to test/test.sh
    * [THRIFT-2310] - PHP: Client-side support for Multiplexing Services
    * [THRIFT-2346] - C#: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2345] - Delphi: UTF-8 sent by PHP as JSON is not understood by TJsonProtocol
    * [THRIFT-2338] - First doctext wrongly interpreted as program doctext in some cases
    * [THRIFT-2325] - SSL test certificates
    * [THRIFT-2358] - C++: add compact protocol to cross language test suite
    * [THRIFT-2425] - PHP: Server-side support for Multiplexing Services
    * [THRIFT-2421] - Tree/Recursive struct support in thrift
    * [THRIFT-2290] - Update Go tutorial to align with THRIFT-2232
    * [THRIFT-2558] - CSharp compiler generator tries to concat ints with strings using +
    * [THRIFT-2507] - Additional LUA TProtocolException error code needed?
    * [THRIFT-2499] - Compiler: allow annotations without "= value"
    * [THRIFT-2534] - Cross language test results should recorded to a status.md or status.html file automatically
    * [THRIFT-66] - Java: Allow multiplexing multiple services over a single TCP connection
    * [THRIFT-1681] - Add Lua Support
    * [THRIFT-1727] - Ruby-1.9: data loss: "binary" fields are re-encoded
    * [THRIFT-1726] - Ruby-1.9: "binary" fields are represented by string whose encoding is "UTF-8"
    * [THRIFT-988] - perl: add version Info to the library via configure
    * [THRIFT-334] - Compact Protocol for PHP
    * [THRIFT-2444] - pull request 88: thrift: clean up enum value assignment

## Task
    * [THRIFT-2223] - Spam links on wiki
    * [THRIFT-2566] - Please create a DOAP file for your TLP
    * [THRIFT-2237] - Update archive to contain all versions
    * [THRIFT-962] - Tutorial page on our website is really unhelpful

## Test
    * [THRIFT-2327] - nodejs: nodejs test suite should be bundled with the library
    * [THRIFT-2445] - THRIFT-2384 (code generation for go maps with binary keys) should be tested
    * [THRIFT-2501] - C# The test parameters from the TestServer and TestClient are different from the http://thrift.apache.org/test/

## Wish
    * [THRIFT-2190] - Add the JavaScript thrift.js lib to the Bower registry
    * [THRIFT-2076] - boost::optional instead of __isset



Thrift 0.9.1
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1440] - debian packaging: minor-ish policy problems
    * [THRIFT-1402] - Generated Y_types.js does not require() X_types.js when an include in the IDL file was used
    * [THRIFT-1551] - 2 thrift file define only struct (no service), one include another, the gen nodejs file didn't have "requires" at the top
    * [THRIFT-1264] - TSocketClient is queried by run loop after deallocation in Cocoa
    * [THRIFT-1600] - Thrift Go Compiler and Library out of date with Go 1 Release.
    * [THRIFT-1603] - Thrift IDL allows for multiple exceptions, args or struct member names to be the same
    * [THRIFT-1062] - Problems with python tutorials
    * [THRIFT-864] - default value fails if identifier is a struct
    * [THRIFT-930] - Ruby and Haskell bindings don't properly support DESTDIR (makes packaging painful)
    * [THRIFT-820] - The readLength attribute of TBinaryProtocol is used as an instance variable and is decremented on each call of checkReadLength
    * [THRIFT-1640] - None of the tutorials linked on the website contain content
    * [THRIFT-1637] - NPM registry does not include version 0.8
    * [THRIFT-1648] - NodeJS clients always receive 0 for 'double' values.
    * [THRIFT-1660] - Python Thrift library can be installed with pip but not easy_install
    * [THRIFT-1657] - Chrome browser sending OPTIONS method before POST in xmlHttpRequest
    * [THRIFT-2118] - Certificate error handling still incorrect
    * [THRIFT-2137] - Ruby test lib fails jenkins build #864
    * [THRIFT-2136] - Vagrant build not compiling java, ruby, php, go libs due to missing dependencies
    * [THRIFT-2135] - GO lib leaves behind test files that are auto generated
    * [THRIFT-2134] - mingw-cross-compile script failing with strip errors
    * [THRIFT-2133] - java TestTBinaryProtocol.java test failing
    * [THRIFT-2126] - lib/cpp/src/thrift/concurrency/STD* files missing from DIST
    * [THRIFT-2125] - debian missing from DIST
    * [THRIFT-2124] - .o, .so, .la, .deps, .libs, gen-* files left tutorials, test and lib/cpp when making DIST
    * [THRIFT-2123] - GO lib missing files in DIST build
    * [THRIFT-2121] - Compilation bug for Node.js
    * [THRIFT-2129] - php ext missing from dist
    * [THRIFT-2128] - lib GO tests fail with funct ends without a return statement
    * [THRIFT-2286] - Failed to compile Thrift0.9.1 with boost1.55 by VS2010 if select Debug-mt&x64 mode.
    * [THRIFT-1973] - TCompactProtocol in C# lib does not serialize and deserialize negative int32 and int64 number correctly
    * [THRIFT-1992] - casts in TCompactProtocol.tcc causing "dereferencing type-punned pointer will break strict-aliasing rules" warnings from gcc
    * [THRIFT-1930] - C# generates unsigned byte for Thrift "byte" type
    * [THRIFT-1929] - Update website to use Mirrors for downloads
    * [THRIFT-1928] - Race may still exist in TFileTransport::flush()
    * [THRIFT-1934] - Tabs in Example section on main page are not working
    * [THRIFT-1933] - Delphi generator crashes when a typedef references another typedef from an included file
    * [THRIFT-1942] - Binary accelerated cpp extension does not use Thrift namespaces for Exceptions
    * [THRIFT-1959] - C#: Add Union TMemoryBuffer support
    * [THRIFT-1958] - C#: Use static Object.Equals instead of .Equals() calls in equals
    * [THRIFT-1957] - NodeJS TFramedTransport and TBufferedTransport read bytes as unsigned
    * [THRIFT-1955] - Union Type writer generated in C# does not WriteStructBegin
    * [THRIFT-1952] - Travis CI
    * [THRIFT-1949] - WP7 build broken
    * [THRIFT-1943] - docstrings for enum values are ignored
    * [THRIFT-2070] - Improper `HexChar' and 'HexVal' implementation in TJSONProtocol.cs
    * [THRIFT-2017] - Resource Leak in thrift struct under compiler/cpp/src/parse/t_program.h
    * [THRIFT-2032] - C# client leaks sockets/handles
    * [THRIFT-1996] - JavaME Constants generation is broken / inconsistent with regular Java generation
    * [THRIFT-2002] - Haskell: Test use Data.Maybe instead of Maybe
    * [THRIFT-2051] - Vagrant fails to build erlang
    * [THRIFT-2050] - Vagrant C# lib compile fails with TException missing
    * [THRIFT-1978] - Ruby: Thrift should allow for the SSL verify mode to be set
    * [THRIFT-1984] - namespace collision in python bindings
    * [THRIFT-1988] - When trying to build a debian package it fails as the file NEWS doesn't exist
    * [THRIFT-1975] - TBinaryProtocol CheckLength can't be used for a client
    * [THRIFT-1995] - '.' allowed at end of identifier generates non-compilable code
    * [THRIFT-2112] - Error in Go generator when using typedefs in map keys
    * [THRIFT-2088] - Typos in Thrift compiler help text
    * [THRIFT-2080] - C# multiplex processor does not catch IOException
    * [THRIFT-2082] - Executing "gmake clean" is broken
    * [THRIFT-2102] - constants are not referencing to correct type when included from another thrift file
    * [THRIFT-2100] - typedefs are not correctly referenced when including from other thrift files
    * [THRIFT-2066] - 'make install' does not install two headers required for C++ bindings
    * [THRIFT-2065] - Not valid constants filename in Java
    * [THRIFT-2047] - Thrift.Protocol.TCompactProtocol, intToZigZag data lost (TCompactProtocol.cs)
    * [THRIFT-2036] - Thrift gem warns about class variable access from top level
    * [THRIFT-2057] - Vagrant fails on php tests
    * [THRIFT-2105] - Generated code for default values of collections ignores t_field::T_REQUIRED
    * [THRIFT-2091] - Unnecessary 'friend' declaration causes warning in TWinsockSingleton
    * [THRIFT-2090] - Go generator, fix including of other thrift files
    * [THRIFT-2106] - Fix support for namespaces in GO generator
    * [THRIFT-1783] - C# doesn't handle required fields correctly
    * [THRIFT-1782] - async only defined in silverlight
    * [THRIFT-1779] - Missing process_XXXX method in generated TProcessor implementation for all 'oneway' service functions
    * [THRIFT-1692] - SO_REUSEADDR allows for socket hijacking on Windows
    * [THRIFT-1720] - JRuby times out on successful connection
    * [THRIFT-1713] - Named and Anonymous Pipe transport (Delphi)
    * [THRIFT-1699] - Native Union#read has extra read_field_end call
    * [THRIFT-1749] - Python TSSLSocket error handling obscures actual error
    * [THRIFT-1748] - Guard and RWGuard macros defined in global namespace
    * [THRIFT-1734] - Front webpage is still advertising v0.8 as current release
    * [THRIFT-1729] - C glib refactor left empty folders in svn
    * [THRIFT-1767] - unions can't have required fields (Delphi)
    * [THRIFT-1765] - Incorrect error message printed for null or negative keys
    * [THRIFT-1778] - Configure requires manual intervention due to tar failure
    * [THRIFT-1777] - TPipeServer is UNSTOPPABLE
    * [THRIFT-1753] - Multiple C++ Windows, OSX, and iOS portability issues
    * [THRIFT-1756] - 'make -j 8' fails with "unterminated #ifdef" error
    * [THRIFT-1773] - Python library should run on python 2.4
    * [THRIFT-1769] - unions can't have required fields (C++)
    * [THRIFT-1768] - unions can't have required fields (Compiler)
    * [THRIFT-1666] - htonll usage in TBinaryProtocol.tcc generates warning with MSVC2010
    * [THRIFT-1919] - libthrift depends on httpcore-4.1.3 (directly) and httpcore-4.1.4 (transitively)
    * [THRIFT-1864] - implement event handler for non-blocking server
    * [THRIFT-1859] - Generated error c++ code with -out and include_prefix param
    * [THRIFT-1869] - TThreadPoolServer (java) dies when threadpool is consumed
    * [THRIFT-1842] - Memory leak with Pipes
    * [THRIFT-1838] - Can't build compiler on OS X because of missing thrifty.h
    * [THRIFT-1846] - Restore socket.h header to support builds with Android NDK
    * [THRIFT-1850] - make check hangs on TSocket tests in TransportTest.cpp
    * [THRIFT-1873] - Binary protocol factory ignores struct read/write flags
    * [THRIFT-1872] - issues with TBufferedTransport buffer
    * [THRIFT-1904] - Incorrect code is generated for typedefs which use included types
    * [THRIFT-1903] - PHP namespaces cause binary protocols to not be used
    * [THRIFT-1895] - Delphi: reserved variable name "result" not detected properly
    * [THRIFT-1881] - TNonblockingServer does not release open connections or threads on shutdown
    * [THRIFT-1888] - Java Thrift client can't connect to Python Thrift server on same host
    * [THRIFT-1831] - Bug in list deserializer
    * [THRIFT-1824] - many compile warning, becase Thread.h includes config.h
    * [THRIFT-1823] - Missing parenthesis breaks "IS_..." macro in generated code
    * [THRIFT-1806] - Python generation always truncates __init__.py files
    * [THRIFT-1795] - Race condition in TThreadedServerPool java implementation
    * [THRIFT-1794] - C# asyncctp broken
    * [THRIFT-1804] - Binary+compact protocol single byte error in Ruby library (ARM architecture): caused by different char signedness
    * [THRIFT-1800] - Documentation text not always escaped correctly when rendered to HTML
    * [THRIFT-1788] - C#: Constants static constructor does not compile
    * [THRIFT-1816] - Need "require" included thrift files in "xxx_types.js"
    * [THRIFT-1907] - Compiling namespace and sub-namespace directives for unrecognized generators should only be a warning
    * [THRIFT-1913] - skipping unknown fields in java unions
    * [THRIFT-2553] - C++ linker error - transport/TSocket
    * [THRIFT-274] - Towards a working release/versioning process

## Documentation
    * [THRIFT-1971] - [Graphviz] Adds tutorial/general description documentation
    * [THRIFT-2001] - http://thrift.apache.org/ Example "C++ Server" tab is broken

## Improvement
    * [THRIFT-1574] - Apache project branding requirements: DOAP file [PATCH]
    * [THRIFT-1347] - Unify the exceptions returned in generated Go code
    * [THRIFT-1353] - Switch to performance branch, get rid of BinaryParser
    * [THRIFT-1629] - Ruby 1.9 Compatibility during Thrift configure, make, install
    * [THRIFT-991] - Refactor Haskell code and generator
    * [THRIFT-990] - Sanify gettimeofday usage codebase-wide
    * [THRIFT-791] - Let C++ TSimpleServer be driven by an external main loop
    * [THRIFT-2117] - Cocoa TBinaryProtocol strictWrite should be set to true by default
    * [THRIFT-2014] - Change C++ lib includes to use <namespace/> style throughout
    * [THRIFT-1972] - Add support for async processors
    * [THRIFT-1970] - [Graphviz] Adds option to render exceptions relationships
    * [THRIFT-1966] - Support different files for SSL certificates and keys
    * [THRIFT-1965] - Adds Graphviz (graph description language) generator
    * [THRIFT-1956] - Switch to Apache Commons Lang 3
    * [THRIFT-1962] - Multiplex processor should send any TApplicationException back to client
    * [THRIFT-1960] - main() declares 22 unused gen bools
    * [THRIFT-1951] - libthrift.jar has source files in it
    * [THRIFT-1997] - Add accept backlog configuration method to  TServerSocket
    * [THRIFT-2003] - Deprecate senum
    * [THRIFT-2052] - Vagrant machine image defaults to only 384MB of RAM
    * [THRIFT-1980] - Modernize Go tooling, fix go client libary.
    * [THRIFT-1977] - C# compiler should generate constant files prefixed with thrift file name
    * [THRIFT-1985] - add a Vagrantfile to build and test Apache Thrift fully reproducable
    * [THRIFT-1994] - Deprecate slist
    * [THRIFT-1993] - Factory to create instances from known (generated) interface types with Delphi
    * [THRIFT-2081] - Specified timeout should be used in TSocket.Open()
    * [THRIFT-2084] - Delphi: Ability to create entity Thrift-generated instances based on TypeInfo
    * [THRIFT-2083] - Improve the go lib: buffered Transport, save memory allocation, handle concurrent request
    * [THRIFT-2109] - Secure connections should be supported in Go
    * [THRIFT-2107] - minor Go generator fixes
    * [THRIFT-1695] - allow warning-free compilation in VS 2012 and GNU 4.6
    * [THRIFT-1735] - integrate tutorial into regular build
    * [THRIFT-1716] - max allowed connections should be PIPE_UNLIMITED_INSTANCES
    * [THRIFT-1715] - Allow excluding python parts when building contrib/fb303
    * [THRIFT-1733] - Fix RPM build issues on RHEL6/OL6 systems
    * [THRIFT-1728] - Upgradation of httpcomponents
    * [THRIFT-1876] - Use enum names instead of casted integers in assignments
    * [THRIFT-1874] - timeout for the server-side end of a named pipe
    * [THRIFT-1897] - Support validation of required fields
    * [THRIFT-1896] - Add TBase protocol for Cocoa
    * [THRIFT-1880] - Make named pipes server work asynchronously (overlapped) to allow for clean server stops
    * [THRIFT-1878] - Add the possibility to send custom headers
    * [THRIFT-1882] - Use single include
    * [THRIFT-1793] - C#: Use static read instead of instance read
    * [THRIFT-1799] - Option to generate HTML in "standalone mode"
    * [THRIFT-1815] - Code generators line buffer output
    * [THRIFT-1890] - C++: Make named pipes server work asynchronously
    * [THRIFT-474] - Generating Ruby on Rails friendly code

## New Feature
    * [THRIFT-801] - Provide an interactive shell (irb) when generating ruby bindings
    * [THRIFT-2292] - Android Library Project
    * [THRIFT-2012] - Modernizing Go
    * [THRIFT-1969] - C#: Tests not properly linked from the solution
    * [THRIFT-1785] - C#: Add TMemoryBuffer serializer/deserializer
    * [THRIFT-1780] - Add option to generate nullable values
    * [THRIFT-1786] - C# Union Typing
    * [THRIFT-591] - Make the C++ runtime library be compatible with Windows and Visual Studio
    * [THRIFT-514] - Add option to configure compiler output directory

## Question
    * [THRIFT-1764] - how to get the context of client when on a rpc call in server side?
    * [THRIFT-1791] - thrift's namespace directive when generating haskell code

## Sub-task
    * [THRIFT-1594] - Java test clients should have a return codes that reflect whether it succeeds or not.
    * [THRIFT-1595] - Java test server should follow the documented behavior as of THRIFT-1590
    * [THRIFT-986] - st: add version Info to the library
    * [THRIFT-985] - php: add version Info to the library
    * [THRIFT-984] - ocaml: add version Info to the library
    * [THRIFT-1924] - Delphi: Inconsistency in serialization of optional fields
    * [THRIFT-1922] - C#: Inconsistency in serialization of optional fields
    * [THRIFT-1961] - C# tests should be in lib/csharp/test/...
    * [THRIFT-1822] - PHP unit test does not work
    * [THRIFT-1902] - C++: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-1901] - C#: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-1899] - Delphi: Support for Multiplexing Services on any Transport, Protocol and Server
    * [THRIFT-563] - Support for Multiplexing Services on any Transport, Protocol and Server



Thrift 0.9
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1438] - lib/cpp/src/windows/config.h should read version from configure.ac rather than a #define
    * [THRIFT-1446] - Compile error with Delphi 2009 in constant initializer
    * [THRIFT-1450] - Problems building thrift 0.8.0 for Python and Ruby
    * [THRIFT-1449] - Ruby client does not work on solaris (?)
    * [THRIFT-1447] - NullpointerException in ProcessFunction.class :in "oneway" method
    * [THRIFT-1433] - TServerSocket fix for MSVC
    * [THRIFT-1429] - The nonblocking servers is supposed to use TransportFactory to read the data
    * [THRIFT-1427] - PHP library uses non-multibyte safe functions with mbstring function overloading
    * [THRIFT-1421] - Debian Packages can not be built
    * [THRIFT-1394] - Treatment of optional fields is not consistent between C++ and Java
    * [THRIFT-1511] - Server with oneway support ( JAVA )
    * [THRIFT-1496] - PHP compiler not namespacing enums
    * [THRIFT-1495] - PHP TestClient fatals on missing class
    * [THRIFT-1508] - TServerSocket does not allow for the user to specify the IP address to bind to
    * [THRIFT-1504] - Cocoa Generator should use local file imports for base Thrift headers
    * [THRIFT-1512] - Thrift socket support for Windows XP
    * [THRIFT-1502] - TSimpleServer::serve(): Do not print out error message if server was stopped.
    * [THRIFT-1501] - PHP old namespaces not generated for enums
    * [THRIFT-1483] - java compiler does not generate type parameters for services in extended clauses
    * [THRIFT-1479] - Compiled PHP process functions missing writeMessageEnd()
    * [THRIFT-1492] - enabling c_glib render thrift unusable (even for C++ code)
    * [THRIFT-1491] - Uninitialize processorFactory_ member in TServer.h
    * [THRIFT-1475] - Incomplete records generation for Erlang
    * [THRIFT-1486] - Javascript manual testserver not returning content types
    * [THRIFT-1488] - src/concurrency/Thread.h:91:58: error: invalid conversion from 'pthread_t {aka _opaque_pthread_t*}' to 'apache::thrift::concurrency::Thread::id_t {aka long long unsigned int}' [-fpermissive]
    * [THRIFT-1490] - Windows-specific header files - fixes & tweaks
    * [THRIFT-1526] - Union TupleSchemeFactory returns StandardSchemes
    * [THRIFT-1527] - Generated implementation of tupleReadStruct in unions return null when the setfield is unrecognized
    * [THRIFT-1524] - TNonBlockingServer does not compile in Visual Studio 2010
    * [THRIFT-1529] - TupleProtocol can unintentionally include an extra byte in bit vectors when number of optional fields is an integral of 8
    * [THRIFT-1473] - JSON context stack may be left in an incorrect state when an exception is thrown during read or write operations
    * [THRIFT-1456] - System.Net.HttpWebRequest' does not contain a definition for 'Proxy'
    * [THRIFT-1468] - Memory leak in TSaslServerTransport
    * [THRIFT-1461] - Recent TNonblockingServer changes broke --enable-boostthreads=yes, Windows
    * [THRIFT-1460] - why not add unicode strings support to python directly?
    * [THRIFT-1464] - AbstractNonblockingServer.FrameBuffer TNonblockingTransport accessor changed from public to private
    * [THRIFT-1467] - Possible AV with empty strings when using JSON protocol
    * [THRIFT-1523] - clientTimeout not worked as expected in TServerSocket created by TSSLTransportFactory
    * [THRIFT-1537] - TFramedTransport issues
    * [THRIFT-1519] - Thirft Build Failure referencing rb_intern2 symbol
    * [THRIFT-1518] - Generated C++ code only sends the first optional field in the write() function for a struct.
    * [THRIFT-1515] - NameError: global name 'TApplicationException' is not defined
    * [THRIFT-1554] - Inherited service methods are not resolved in derived service implementations
    * [THRIFT-1553] - thrift nodejs service side can't read map structure, key as enum, value as Object
    * [THRIFT-1575] - Typo in server/TThreadPoolServer.h
    * [THRIFT-1327] - Fix Spec Suite under Ruby-1.8.7 (works for MRI Ruby-1.9.2)
    * [THRIFT-1326] - on some platforms, #include <stdint.h> is necessary to be included in Thrift.h
    * [THRIFT-1159] - THttpClient->Flush() issue (connection thru proxy)
    * [THRIFT-1277] - Node.js serializes false booleans as null
    * [THRIFT-1224] - Cannot insert UTF-8 text
    * [THRIFT-1267] - Node.js can't throw exceptions.
    * [THRIFT-1338] - Do not use an unpatched autoconf 2.65 to generate release tarball
    * [THRIFT-1128] - MAC OS X: thrift.h incompatibility with Thrift.h
    * [THRIFT-1631] - Fix C++ server constructor typos
    * [THRIFT-1602] - PHP C Extension is not Compatible with PHP 5.4
    * [THRIFT-1610] - IWebProxy not available on WP7 platform
    * [THRIFT-1606] - Race condition in BoostThreadFactory.cpp
    * [THRIFT-1604] - Python exception handeling for changes from PEP 3110
    * [THRIFT-1607] - Incorrect file modes for several source files
    * [THRIFT-1583] - c_glib leaks memory
    * [THRIFT-1582] - Bad includes of nested thrift files in c_glib
    * [THRIFT-1578] - C_GLib generated code does not compile
    * [THRIFT-1597] - TJSONProtocol.php is missing from Makefile.am
    * [THRIFT-1591] - Enable TCP_NODELAY for ruby gem
    * [THRIFT-1624] - Isset Generated differently on different platforms
    * [THRIFT-1622] - Incorrect size returned on read
    * [THRIFT-1621] - Memory leaks
    * [THRIFT-1612] - Base64 encoding is broken
    * [THRIFT-1627] - compiler built using compilers.vcxproj cannot be used to build some test .thrift files
    * [THRIFT-1571] - Update Ruby HTTP transport for recent Ruby versions
    * [THRIFT-1023] - Thrift encoding  (UTF-8) issue with Ruby 1.9.2
    * [THRIFT-1090] - Document the generation of a file called "Constants.java"
    * [THRIFT-1082] - Thrift::FramedTransport sometimes calls close() on an undefined value
    * [THRIFT-956] - Python module's version meta-data should be updated
    * [THRIFT-973] - Cocoa library won't compile using clang
    * [THRIFT-1632] - ruby: data corruption in thrift_native implementation of MemoryBufferTransport
    * [THRIFT-1665] - TBinaryProtocol: exceeded message length raises generic TException
    * [THRIFT-1664] - Reference to non-existing variable in build script
    * [THRIFT-1663] - Java Thrift server is not throwing exceptions
    * [THRIFT-1662] - "removeObject:" should be "removeObserver:" in [-TSocketServer dealloc]?
    * [THRIFT-1643] - Denial of Service attack in TBinaryProtocol.readString
    * [THRIFT-1674] - Update Thrift D library to be compatible with 2.060
    * [THRIFT-1673] - Ruby compile flags for extension for multi arch builds (os x)
    * [THRIFT-1655] - Configure still trying to use thrift_generators in output
    * [THRIFT-1654] - c_glib thrift_socket_read() returns corrupted data
    * [THRIFT-1653] - TThreadedSelectorServer leaks CLOSE_WAIT sockets
    * [THRIFT-1658] - Java thrift server is not throwing TApplicationException
    * [THRIFT-1656] - Setting proper headers in THttpServer.cpp so that "Cross-Origin Resource Sharing" on js client can work.
    * [THRIFT-1652] - TSaslTransport does not log the error when kerberos auth fails
    * [THRIFT-2272] - CLONE - Denial of Service attack in TBinaryProtocol.readString
    * [THRIFT-2086] - Invalid generated code for Node.JS when using namespaces
    * [THRIFT-1686] - t_php_generator.cc uses "and" instead of "&&", and causes compiler errors with Visual Studio
    * [THRIFT-1693] - libthrift has dependency on two different versions of httpcore
    * [THRIFT-1689] - don't exit(-1) in TNonblockingServer
    * [THRIFT-1679] - NodeJS: protocol readString() should treat string as utf8, not binary
    * [THRIFT-1721] - Dist broken due to 0.8.0 to 0.9.0 changes
    * [THRIFT-1710] - Minor issues in test case code
    * [THRIFT-1709] - Warning "Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first" in TBinaryProtocol.cs at ReadInt64()
    * [THRIFT-1707] - [ruby] Adjust server_spec.rb for RSpec 2.11.x and Ruby 1.9.3
    * [THRIFT-1671] - Cocoa code generator does not put keywords into generated method calls
    * [THRIFT-1670] - Incompatibilities between different versions of a Thrift interface
    * [THRIFT-1669] - NameError: global name 'TApplicationException' is not defined
    * [THRIFT-1668] - Compile error in contrib/fb303, thrift/TDispatchProcessor.h: No such file or directory
    * [THRIFT-1845] - Fix compiler warning caused by implicit string conversion with Xcode 4.6
    * [THRIFT-304] - Building the Python library requires development headers
    * [THRIFT-369] - sets and maps break equality
    * [THRIFT-556] - Ruby compiler does not correctly referred to top-level modules when a submodule masks the top-level name
    * [THRIFT-481] - indentation of ruby classes is off by a few

## Improvement
    * [THRIFT-1498] - Allow TThreadedPoolServer.Args to pass a ExecutorService
    * [THRIFT-1444] - FunctionRunner - add syntactic sugar to create shared_ptrs
    * [THRIFT-1443] - define a TProcessor helper class to implement process()
    * [THRIFT-1441] - Generate constructor with parameters for exception class to let it update message property automatically.
    * [THRIFT-1520] - Embed version number in erlang .app file
    * [THRIFT-1480] - python: remove tabs, adjust whitespace and address PEP8 warnings
    * [THRIFT-1485] - Performance: pass large and/or refcounted arguments as "const"
    * [THRIFT-1484] - Introduce phpunit test suite
    * [THRIFT-1532] - The type specifications in the generated Erlang code should include "undefined" where it's used as a default value
    * [THRIFT-1534] - Required fields in the Delphi code generator.
    * [THRIFT-1469] - Java isset space optimization
    * [THRIFT-1465] - Visibility of methods in generated java code
    * [THRIFT-1453] - Don't change types of arguments when serializing with thrift php extension
    * [THRIFT-1452] - generate a swap() method for all generated structs
    * [THRIFT-1451] - FramedTransport: Prevent infinite loop when writing
    * [THRIFT-1521] - Two patches for more Performance
    * [THRIFT-1555] - Delphi version of the tutorial code
    * [THRIFT-1535] - Why thrift don't use wrapped class for optional fields ?
    * [THRIFT-1204] - Ruby autogenerated files should require 'thrift' gem
    * [THRIFT-1344] - Using the httpc module directly rather than the deprecated http layer
    * [THRIFT-1343] - no_auto_import min/2 to avoid compile warning
    * [THRIFT-1340] - Add support of ARC to Objective-C
    * [THRIFT-1611] - Improved code generation for typedefs
    * [THRIFT-1593] - Pass on errors like "connection closed" to the handler module
    * [THRIFT-1615] - PHP Namespace
    * [THRIFT-1567] - Thrift/cpp: Allow alternate classes to be used for
    * [THRIFT-1072] - Missing - (id) initWithSharedProcessor in TSharedProcessorFactory.h
    * [THRIFT-1650] - [ruby] Update clean items and svn:ignore entries for OS X artifacts
    * [THRIFT-1661] - [PATCH] Add --with-qt4 configure option
    * [THRIFT-1675] - Do we have any plan to support scala?
    * [THRIFT-1645] - Replace Object#tee with more conventional Object#tap in specs
    * [THRIFT-1644] - Upgrade RSpec to 2.10.x and refactor specs as needed
    * [THRIFT-1672] - MonoTouch (and Mono for Android) compatibility
    * [THRIFT-1702] - a thrift manual
    * [THRIFT-1694] - Re-Enable serialization for WP7 Silverlight
    * [THRIFT-1691] - Serializer/deserializer support for Delphi
    * [THRIFT-1688] - Update IDL page markup
    * [THRIFT-1725] - Tutorial web pages for Delphi and C#
    * [THRIFT-1714] - [ruby] Explicitly add CWD to Ruby test_suites.rb
    * [THRIFT-317] - Issues with Java struct validation
    * [THRIFT-164] - Build web tutorial on Incubator web site
    * [THRIFT-541] - Cocoa code generator doesn't put keywords before all arguments.
    * [THRIFT-681] - The HTML generator does not handle JavaDoc style comments very well

## New Feature
    * [THRIFT-1500] - D programming language support
    * [THRIFT-1510] - There should be an implementation of the JsonProtocol for ruby
    * [THRIFT-1115] - python TBase class for dynamic (de)serialization, and __slots__ option for memory savings
    * [THRIFT-1953] - support for asp.net mvc 3

## Question
    * [THRIFT-1235] - How could I use THttpServerTransportFactory withTNonBlockingServer
    * [THRIFT-1368] - TNonblockingServer usage
    * [THRIFT-1061] - Read an invalid frame size of 0. Are you using TFramedTransport on the client side?
    * [THRIFT-491] - Ripping raw pthreads out of TFileTransport and associated test issues

## Sub-task
    * [THRIFT-1596] - Delphi: Test clients should have a return codes that reflect whether they succeeded or not
    * [THRIFT-982] - javame: add version Info to the library
    * [THRIFT-1722] - C# WP7 Assembly addition beaks mono build
    * [THRIFT-336] - Compact Protocol in C#

## Test
    * [THRIFT-1613] - Add code back into empty source file ToStringTest.java
    * [THRIFT-1718] - Incorrect check in TFileTransportTest

## Wish
    * [THRIFT-1463] - Decouple Thrift IDL from generators
    * [THRIFT-1466] - Proper Documentation for Thrift C Glib
    * [THRIFT-1539] - Build and distribute the fb303 python libraries along with thrift
    * [THRIFT-1685] - Please add "aereo.com" to "Powered by Apache Thrift" list in about page
    * [THRIFT-330] - TProcessor - additional method to called when connection is broken



Thrift 0.8
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1436] - pip install thrift fails on Windows with "Unable to find vcvarsall.bat"
    * [THRIFT-1432] - Javascript struct constants declared in the same file as their struct definition will cause an error
    * [THRIFT-1428] - shared.thrft does not include namespace for php, so thrift compiler generate incorrect name
    * [THRIFT-1426] - Dist package missing files for release 0.8
    * [THRIFT-1425] - The Node package is incompatible with latest node (0.6) & npm (1.0.27)
    * [THRIFT-1416] - Python Unit test is broken on ci
    * [THRIFT-1419] - AbstractNonBlockingServer does not catch errors when invoking the processor
    * [THRIFT-1424] - Ruby specs fail when run with rake
    * [THRIFT-1420] - Nonblocking and HsHa server should make sure to close all their socket connections when the selector exits
    * [THRIFT-1413] - Generated code does not read MapEnd / ListEnd / SetEnd
    * [THRIFT-1409] - Name conflict check does not work properly for exception object(Delphi).
    * [THRIFT-1408] - Delphi Test Server: Exception test case fails due to naming conflict with e.message
    * [THRIFT-1407] - Typo in Python socket server causes Thrift to fail when we enable a global socket timout
    * [THRIFT-1397] - CI server fails during build due to unused parameters in delphi generator
    * [THRIFT-1404] - Delphi compiler generates struct reader code with problem.
    * [THRIFT-1400] - Ruby native extension aborts with __stack_chk_fail in OSX
    * [THRIFT-1399] - One of the TServerImpl.Create CTORs lacks implementation
    * [THRIFT-1390] - Debian packages build fix for Squeeze (build from the official  0.7.0 tarball)
    * [THRIFT-1393] - TTransportException's thrown from THttpClient contain superfluous slashes in the Exception message
    * [THRIFT-1392] - Enabling both namespaces and autoloading in generated PHP code won't work.
    * [THRIFT-1406] - Build error after applying THRIFT-1395
    * [THRIFT-1405] - Delphi compiler does not generates container serializer properly.
    * [THRIFT-1411] - java generator does not provide type parameter for TBaseProcessor
    * [THRIFT-1473] - JSON context stack may be left in an incorrect state when an exception is thrown during read or write operations
    * [THRIFT-1331] - Ruby library deserializes an empty map to nil
    * [THRIFT-1330] - PHP Namespaces no longer generated
    * [THRIFT-1328] - TBaseHelper.toString(...) appends ByteBuffer data outside of valid buffer range
    * [THRIFT-1322] - OCaml lib fail to compile: Thrift.ml line 305, int vs int32 mismatch
    * [THRIFT-1143] - Build doesn't detect correct architecture type on 64bit osx
    * [THRIFT-1205] - port server unduly fragile with arbitrary input
    * [THRIFT-1279] - type set is handled incorrectly when writing object
    * [THRIFT-1298] - Standard scheme doesn't read or write metadata along with field values
    * [THRIFT-1265] - C++ container deserialize
    * [THRIFT-1263] - publish ruby client to rubygems
    * [THRIFT-1384] - Java help menu missing newline near javame flag
    * [THRIFT-1382] - Bundle install doesnot work because thrift crashes
    * [THRIFT-1381] - Thrift C++ libs have incorrectly versioned names
    * [THRIFT-1350] - Go library code does not build as of r60 (most recent release)
    * [THRIFT-1365] - TupleProtocol#writeBitSet unintentionally writes a variable length byte array
    * [THRIFT-1359] - --gen-cob cpp:cob_style does not compile anymore
    * [THRIFT-1319] - Mismatch between how a union reads and writes a container
    * [THRIFT-1309] - libfb303-0.7.0.jar missing in maven repository
    * [THRIFT-1238] - Thrift JS client cannot read map of structures
    * [THRIFT-1254] - Code can't be compiled against a regular JRE: Object.clone() override has a different return type
    * [THRIFT-1367] - Mac OSX build fails with "no such file to load -- spec/rake/spectask"
    * [THRIFT-1355] - Running make in lib/rb doesn't build the native extensions
    * [THRIFT-1370] - Debian packaging should Build-Depend on libglib2.0-dev
    * [THRIFT-1342] - Compilation problem on Windows of fastbinary.c
    * [THRIFT-1341] - TProtocol.h endian detection wrong with boost
    * [THRIFT-1583] - c_glib leaks memory
    * [THRIFT-1582] - Bad includes of nested thrift files in c_glib
    * [THRIFT-1578] - C_GLib generated code does not compile
    * [THRIFT-1027] - 'make -j 16' fails with "unterminated #ifdef" error
    * [THRIFT-1121] - Java server performance regression in 0.6
    * [THRIFT-857] - tests run by "make install" fail if generators are disabled
    * [THRIFT-380] - Use setuptools for python build

## Dependency upgrade
    * [THRIFT-1257] - thrift's dependency scope on javax.servlet:servlet-api should be 'provided'

## Improvement
    * [THRIFT-1445] - minor C++ generator variable cleanup
    * [THRIFT-1435] - make TException.Message property conformant to the usual expectations
    * [THRIFT-1431] - Rename 'sys' module to 'util'
    * [THRIFT-1396] - Dephi generator has dependacy on boost 1.42 later.
    * [THRIFT-1395] - Patch to prevent warnings for integer types in some cases
    * [THRIFT-1275] -  thrift: always prefix namespaces with " ::"
    * [THRIFT-1274] -  thrift: fail compilation if an unexpected token is
    * [THRIFT-1271] -  thrift: fix missing namespace in generated local
    * [THRIFT-1270] -  thrift: add --allow-neg-keys argument to allow
    * [THRIFT-1345] - Allow building without tests
    * [THRIFT-1286] - Modernize the Thrift Ruby Library Dev Environment
    * [THRIFT-1284] -  thrift: fix processor inheritance
    * [THRIFT-1283] -  thrift: wrap t_cpp_generator::generate_process_function() to 80
    * [THRIFT-1282] - Upgrade httpclient to 4.1.2 (from 4.0.1)
    * [THRIFT-1281] -  add @generated to the docblock
    * [THRIFT-1280] -  Thrift: Improve Monitor exception-free interfaces
    * [THRIFT-1278] - javadoc warnings - compilation
    * [THRIFT-1227] - Erlang implementation of thrift JSON protocol
    * [THRIFT-1295] - Duplicate include in TSocket.cpp
    * [THRIFT-1294] -  thrift: fix log message typos in TSimpleServer
    * [THRIFT-1293] -  thrift: improve handling of exceptions thrown by
    * [THRIFT-1292] -  thrift: silence log spew from TThreadedServer
    * [THRIFT-1288] -  Allow typedefed exceptions in throws clauses
    * [THRIFT-1290] -  thrift: TNonblockingServer: clean up state in the
    * [THRIFT-1287] -  thrift: start refactoring some of the C++ processor
    * [THRIFT-1289] -  thrift: implement TNonblockingServer::stop()
    * [THRIFT-1305] -  thrift: make TConnection a private inner class of
    * [THRIFT-1304] -  TNonblockingServer: pass in the connection context to
    * [THRIFT-1302] -  thrift: raise an exception if send() times out in
    * [THRIFT-1301] -  thrift: consolidate common code in TNonblockingServer
    * [THRIFT-1377] - abort PHP deserialization on unknown field type
    * [THRIFT-1379] - fix uninitialized enum values in thrift C++ objects
    * [THRIFT-1376] - Make port specification option in thrift remote
    * [THRIFT-1375] - fixed a hex char conversion bug in TJSONProtocol
    * [THRIFT-1373] - Fix user-defined exception generation in thrift (python)
    * [THRIFT-1361] - Optional replacement of pthread by boost::thread
    * [THRIFT-1320] - Consistency of configure generated config.h
    * [THRIFT-1317] -  Remove copy constructibility from
    * [THRIFT-1316] -  thrift: update server classes to accept
    * [THRIFT-1315] -  thrift: generate server interface factory classes
    * [THRIFT-1314] -  thrift: add TProcessorFactory
    * [THRIFT-1335] -  Add accept timeout to TServerSocket
    * [THRIFT-1334] -  Add more info to IllegalStateException
    * [THRIFT-1333] -  Make RWGuard not copyable
    * [THRIFT-1332] - TSSLTransportParameters class uses hard coded value keyManagerType: SunX509
    * [THRIFT-1251] - Generated java code should indicate which fields are required and which are optional
    * [THRIFT-1387] - Build MSVC libraries with Boost Threads instead of Pthreads
    * [THRIFT-1339] - Extend Tuple Protocol to TUnions
    * [THRIFT-1031] - Patch to compile Thrift for vc++ 9.0 and 10.0
    * [THRIFT-1130] - Add the ability to specify symbolic default value for optional boolean
    * [THRIFT-1123] - Patch to compile Thrift server and client for vc++ 9.0 and 10.0
    * [THRIFT-386] - Make it possible to build the Python library without the extension

## New Feature
    * [THRIFT-1401] - JSON-protocol for Delphi XE Libraries
    * [THRIFT-1167] - Java nonblocking server with more than one thread for select and handling IO
    * [THRIFT-1366] - Delphi generator, lirbrary and unit test.
    * [THRIFT-1354] - Add rake task to build just the gem file
    * [THRIFT-769] - Pluggable Serializers

## Sub-task
    * [THRIFT-1415] - delphi: add version Info to the library
    * [THRIFT-1391] - Improved Delphi XE test cases



Thrift 0.7
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1140] - Framed Transport Client using C (Glib) Library hangs when connecting to Ruby Server
    * [THRIFT-1154] - HttpClient does not specify the connection close parameter
    * [THRIFT-1153] - HttpClient does not specify the connection close parameter
    * [THRIFT-1149] - Nonblocking server fails when client connection is reset
    * [THRIFT-1146] - Android Incompatibility : in Android < 2.3 java.io.IOException doesn't support for Throwable parameter in constructor
    * [THRIFT-1133] - Java and JavaScript tutorial is broken since we have Java maven deployment
    * [THRIFT-1132] - Deserialization error in TApplicationException C#
    * [THRIFT-1131] - C# JSON Protocol is unable to decode escaped characters in string
    * [THRIFT-1208] - python TCompactProtocol.py writeBool and readBool not follow the compact-proto-spec-2.txt spec for CONTAINER_WRITE, CONTAINER_READ
    * [THRIFT-1200] - JS compiler generates code that clobbers existing namespaces
    * [THRIFT-1183] - Pure-ruby CompactProtocol raises ArgumentError when deserializing under Ruby 1.9
    * [THRIFT-1182] - Native deserializer segfaults on incorrect list element type
    * [THRIFT-1181] - AS3 compiler generates incorrect code for setting default values in constructor
    * [THRIFT-1234] - thrift --help is missing doc on py:utf8strings
    * [THRIFT-1180] - AS3 compiler generates uncompilable code for binary types.
    * [THRIFT-1194] - Java lib does not install artifacts to local dir correctly
    * [THRIFT-1193] - Potential infinite loop in nonblocking_server
    * [THRIFT-1192] - Typo: TProtocol.h tests for HAVE_SYS_PARAM_H_
    * [THRIFT-1190] - readBufferBytesAllocated in TNonblockingServer.java should be AtomicLong to fix FD leakage and general server malfunction
    * [THRIFT-1187] - nonblocking_server shutdown race under Ruby 1.9
    * [THRIFT-1178] - Java: TBase signature should be T extends TBase<?,?>
    * [THRIFT-1164] - Segmentation fault on NULL pointer in t_js_generator::generate_const
    * [THRIFT-1171] - Perl write/readDouble assumes little-endian platform
    * [THRIFT-1222] - Unhandled exception for TEvhttpServer request
    * [THRIFT-1220] - TProcessor::process never returns false
    * [THRIFT-1285] - Stable 0.7.0 Windows compiler exe available on the webside is not the good one
    * [THRIFT-1218] - c_glib uses wrong name in pkg-config
    * [THRIFT-1215] - Undefined property Thirft in lib/js/thrift.js
    * [THRIFT-1211] - When using THttpClient, non 200 responses leave the connection open
    * [THRIFT-1228] - The php accelerator module calls flush incorrectly
    * [THRIFT-1308] - libfb303-0.7.0.jar missing in maven repository
    * [THRIFT-1255] - Mismatch of method name between JavaME's lib and generated code (compareTo/compareObjects)
    * [THRIFT-1253] - Code generated for maps is not compiling
    * [THRIFT-1252] - Segfault in Ruby deserializer
    * [THRIFT-1094] - bug in TCompactProto python readMessageEnd method and updated test cases
    * [THRIFT-1093] - several bugs in python TCompactProtocol
    * [THRIFT-1092] - generated validate() method has wrong indentation
    * [THRIFT-1011] - Error generating package imports when using classes from other packages
    * [THRIFT-1050] - Declaring an argument named "manager" to a service method produces code that fails compile due to name conflicts with protected ivars in TAsyncClient
    * [THRIFT-1074] - .keystore and .truststore are missing from the 0.6.0 distribution
    * [THRIFT-1067] - Tons of bugs in php implementation
    * [THRIFT-1065] - Unexpected exceptions not proper handled on JS
    * [THRIFT-1076] - Erlang Thrift socket server has a bug that causes java thrift client of framed binary client to throw "out of sequence" exception
    * [THRIFT-1057] - casts in TBinaryProtocol.tcc causing "dereferencing type-punned pointer will break strict-aliasing rules" warnings from gcc
    * [THRIFT-1055] - csharp TServerSocket and TSocket do not disable Nagle via Socket.NoDelay = true like cpp and java do
    * [THRIFT-1054] - explicit call to PKG_PROG_PKG_CONFIG is missing and first use of PKG_CHECK_MODULES may not happen, causes mono detection to fail
    * [THRIFT-1117] - JavaScript Unit Test does not work anymore because libthrift*.jar where moved by Maven Deployment
    * [THRIFT-1111] - The HTML generator does not distinguish between string and binary types
    * [THRIFT-1032] - "make dist" fails due to c_glib problem
    * [THRIFT-1036] - Auto-generated C++ code fails to compile with "-Werror -Wextra -Wall" g++ compiler flags
    * [THRIFT-1041] - TDeserializer holds onto a reference of the array it reads after it is done deserializing
    * [THRIFT-1106] - C++ code TAsyncProtocolProcessor.h & TAsyncBufferProcessor.h dont have virtual functions but no virtual destructor. Causes warnings on -Wall
    * [THRIFT-1105] - OCaml generator does not prefix methods of included structs with their type
    * [THRIFT-1104] - INSTALLDIRS should be included in configure script
    * [THRIFT-1102] - typo in configure.ac: "==" operator in 'test' (instead of"'=")
    * [THRIFT-1101] - bytebuffer length calculation in TBinaryProtocol writeBinary
    * [THRIFT-1098] - Undefined properties in TBinaryProtocolFactory
    * [THRIFT-1081] - PHP tests broken and somewhat incomplete
    * [THRIFT-1080] - erlang test's 'make' fails on Mac OSX
    * [THRIFT-1078] - ThriftTest.thrift generates invalid PHP library
    * [THRIFT-1120] - proto.WriteListEnd being called in the wrong place
    * [THRIFT-1119] - TJSONProtocol fails to UTF8 decode strings
    * [THRIFT-867] - PHP accelerator module's output transport is incompatible with TFramedTransport
    * [THRIFT-826] - PHP TSocket Write Timeout
    * [THRIFT-835] - Bad AS3 syntax in constructors that set default values
    * [THRIFT-788] - thrift_protocol.so: multiget/multiget_slice does not handle more than 17 keys correctly
    * [THRIFT-125] - OCaml libraries don't compile with 32-bit ocaml
    * [THRIFT-342] - PHP: can't have sets of complex types
    * [THRIFT-731] - configure doesn't check for ant >= 1.7
    * [THRIFT-690] - Update TApplicationException codes
    * [THRIFT-638] - BufferedTransport + C extensions block until recv timeout is reached on last fread call

## Dependency upgrade
    * [THRIFT-1177] - Update thrift to reflect changes in Go's networking libraries

## Improvement
    * [THRIFT-1155] - Remove log4j dependency from java client
    * [THRIFT-1151] - Produce more informative runtime error in case of schema and data mismatch during serialization
    * [THRIFT-1207] - Support DESTDIR on "make install" of ruby libs
    * [THRIFT-1199] - Union structs should have generated methods to test whether a specific field is currently set
    * [THRIFT-1233] - Remove unused include in generated C++ code
    * [THRIFT-1189] - Ruby deserializer speed improvements
    * [THRIFT-1170] - Thrift Generated Code and Java 5
    * [THRIFT-1174] - Publish as3 client implementation via Maven for use by flex-mojos users
    * [THRIFT-1225] - TCompactProtocol for PHP
    * [THRIFT-1221] - Remove SimpleCallback.h
    * [THRIFT-1217] - Use evutil_socketpair instead of pipe (Windows port)
    * [THRIFT-1216] - build Java Library behind a proxy
    * [THRIFT-1231] - Remove bogus include
    * [THRIFT-1213] - Membuffer should provide a way to get back the buffer
    * [THRIFT-1237] - Java fb303 missing some methods
    * [THRIFT-1063] - Fix Erlang Tutorial Files
    * [THRIFT-1053] - Make remote client's IP address available for all socket related transports
    * [THRIFT-1109] - Deploy fb303 along side libthrift to maven repo
    * [THRIFT-1107] - improvement for compiler-generated python for 'None' object comparisons
    * [THRIFT-1069] - Add command line option to prevent thrift from inserting gen-* directories
    * [THRIFT-1049] - Allow for TServerSocket python library to bind to a specific host
    * [THRIFT-1126] - Extending struct_info for erlang bindings
    * [THRIFT-1100] - python TSSLSocket improvements, including certificate validation
    * [THRIFT-994] - Don't try to invoke phpize if we don't have it
    * [THRIFT-993] - Some improvements in C++ stubs for oneway operations
    * [THRIFT-997] - Using valueOf for base types in getFieldValue
    * [THRIFT-418] - Don't do runtime sorting of struct fields
    * [THRIFT-151] - TSSLServerSocket and TSSLSocket implementation
    * [THRIFT-27] - Generated erlang types don't contain default values for records
    * [THRIFT-113] - to-string methods should omit optional null fields from output
    * [THRIFT-363] - Maven Deploy
    * [THRIFT-447] - Make an abstract base Client class so we can generate less code
    * [THRIFT-627] - should c++ have setters for optional fields?

## New Feature
    * [THRIFT-1236] - Erlang Reconnecting Thrift Client
    * [THRIFT-1021] - Framed transport support for OCaml
    * [THRIFT-1068] - Python SSL Socket Support
    * [THRIFT-1103] - TZlibTransport for python, a zlib compressed transport
    * [THRIFT-1083] - Preforking python process pool server
    * [THRIFT-999] - Add TForkingServer

## Sub-task
    * [THRIFT-1152] - Attributes from private to protected
    * [THRIFT-1038] - 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

## Task
    * [THRIFT-892] - Refactor erlang build system with rebar

## Wish
    * [THRIFT-625] - Add support for 'Go'



Thrift 0.6.1
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1133] - Java and JavaScript tutorial is broken since we have Java maven deployment
    * [THRIFT-1131] - C# JSON Protocol is unable to decode escaped characters in string
    * [THRIFT-1074] - .keystore and .truststore are missing from the 0.6.0 distribution

## Improvement
    * [THRIFT-1109] - Deploy fb303 along side libthrift to maven repo
    * [THRIFT-363] - Maven Deploy

## Question
    * [THRIFT-1206] - did the THRIFT 0.6.1 merge THRIFT-563 ?

## Sub-task
    * [THRIFT-1163] - How can i use multi service in one program?

## Task
    * [THRIFT-1112] - Apply THRIFT-363 to 0.6 branch
    * [THRIFT-1113] - Apply THRIFT-1074 to 0.6 branch



Thrift 0.6
--------------------------------------------------------------------------------
## Bug
    * [THRIFT-1020] - OCaml compiler generates invalid OCaml
    * [THRIFT-1015] - TUnion does not handle ByteBuffer in toString
    * [THRIFT-1013] - generated java code may have name clashes with thrift library
    * [THRIFT-1009] - TUnion does not correctly deep copy a ByteBuffer
    * [THRIFT-1032] - "make dist" fails due to c_glib problem
    * [THRIFT-868] - Referencing constant values doesn't work with with typedef types
    * [THRIFT-971] - java module can't be compiled without ivy and network connection
    * [THRIFT-970] - Under heavy load, THttpClient may fail with "too many open files"
    * [THRIFT-969] - Java Tutorial broken, move CalculatorHandler to a separate file
    * [THRIFT-807] - JavaScript: Initialization of Base Types with 0 instead of null
    * [THRIFT-955] - Thrift compiler for Windows uses lowercase names and directories which is inconsistent with compiling on other platforms
    * [THRIFT-992] - Naming convention in C# constructor is not consistent with other fields causes compile errors
    * [THRIFT-1008] - byte[] accessors throw NPE on unset field
    * [THRIFT-1006] - Impossible to correctly qualify an enum constant in an external thrift file
    * [THRIFT-950] - Haskell bindings treat 'byte' as unsigned 8-bit int (Data.Word.Word8), java/cpp as signed (byte/int8_t).
    * [THRIFT-975] - lib/c_glib/README is missing => breaks make dist
    * [THRIFT-944] - Support all version-4s of base
    * [THRIFT-939] - optional binary fields throw NPE on default byte[] getters
    * [THRIFT-935] - PHP Extension aborts the build if php-config is not installed
    * [THRIFT-933] - Haskell's Thrift.cabal has warnings
    * [THRIFT-932] - Haskell tests need to be run through 'make check' (and probably 'cabal check') too
    * [THRIFT-904] - C# TSocket should disable nagle and linger
    * [THRIFT-941] - Make PHP C Extension use the defined Protocol writeMessageBegin function
    * [THRIFT-940] - 'make check' fails if boost is not in the std include and link paths
    * [THRIFT-924] - Fix generated php structure constants
    * [THRIFT-979] - ruby bindings used to work on jruby
    * [THRIFT-977] - Hex Conversion Bug in C++ TJSONProtocol
    * [THRIFT-347] - PHP TSocket Timeout Issues
    * [THRIFT-517] - TExceptions thrown by server result in cryptic error message on client - Tried to read 4 bytes, but only got 0 bytes

## Improvement
    * [THRIFT-1024] - Add Python Twisted example to the Tutorial
    * [THRIFT-958] - Change accessmodifer on trans_ field in the FrameBuffer class to public.
    * [THRIFT-957] - THsHaServer: Change access modifier of the invoker field.
    * [THRIFT-1002] - CodeStyle: t_c_glib_generator.cc
    * [THRIFT-1005] - Give unions byte[] signature methods to go along with their ByteBuffer counterparts
    * [THRIFT-951] - Add a new isServing() method to TServer
    * [THRIFT-943] - Silly readme typo fix.
    * [THRIFT-961] - JavaScript TestSuite using ant/ivy and Java's ServerTestBase Handler
    * [THRIFT-960] - add TestServer, TestNonblockingServer and TestClient again
    * [THRIFT-949] - Modify the TEnum interface so it defines a method similar to findByValue
    * [THRIFT-946] - Augment FieldValueMetaData so it differentiates 'string' and 'binary' fields.
    * [THRIFT-903] - custom ThreadFactory in THsHaServer
    * [THRIFT-913] - Test Case for Url encoded strings + simple enhancement to lib/js/test/RunTestServer.sh
    * [THRIFT-926] - Miscellaneous C++ improvements
    * [THRIFT-929] - Improvements to the C++ test suite
    * [THRIFT-893] - add JavaScript to the tutorial examples
    * [THRIFT-1003] - Polishing c_glib code
    * [THRIFT-71] - Debian packaging for thrift

## New Feature
    * [THRIFT-1033] - Node.js language target
    * [THRIFT-947] - Provide a helper method to determine the TProtocol used to serialize some data.
    * [THRIFT-928] - Make more statistics available in C++ servers
    * [THRIFT-922] - Templatized [de]serialization code for C++
    * [THRIFT-923] - Event-driven client and server support for C++
    * [THRIFT-925] - Provide name<->value map for enums in C++
    * [THRIFT-927] - Add option to modify the PHP include path
    * [THRIFT-377] - TFileTransport port in Java
    * [THRIFT-106] - TSSLServerSocket
    * [THRIFT-582] - C implementation of Thrift
    * [THRIFT-745] - Make it easier to instantiate servers

## Sub-task
    * [THRIFT-1038] - 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

## Task
    * [THRIFT-862] - Async client issues / improvements

## Test
    * [THRIFT-581] - Add a testsuite for txThrift (Twisted)



Thrift 0.5.0 - Incubating
--------------------------------------------------------------------------------
THRIFT-505   Build                Make configure give a summary of the enabled components (David Reiss)
THRIFT-506   Build                Allow Thrift to be built without the C++ library (David Reiss)
THRIFT-844   Build                Build Requirements state autoconf 2.59+ is required, but 2.60+ is needed (Harlan Lieberman-Berg)
THRIFT-850   Build                Perl runtime requires Bit::Vector which may not be installed by default, but configure does not fail (Michael Lum)
THRIFT-854   Build                Provide configure option and make rules to build/install php extension (Anthony Molinaro)
THRIFT-858   Build                Have bootstrap.sh check for a suitable autoconf version before running (David Reiss)
THRIFT-871   Build                Thrift compiler for WIndows (binary distribution) (David Reiss)
THRIFT-323   C#                   TJSONProtocol (Roger Meier)
THRIFT-634   C#                   C# Compiler Generates Incorrect Code For Fields which begin with an uppercase letter (Jon S Akhtar)
THRIFT-881   C#                   add csharp to the tutorial (Roger Meier)
THRIFT-856   C++                  Building cpp library fails on OS X with malloc and free not being declared in scope (James Clarke)
THRIFT-865   C++                  C++ compiler build depends on libfl even when flex/lex not detected (David Reiss)
THRIFT-900   C++                  Unix domain socket (Roger Meier)
THRIFT-920   C++                  C++ Test and Tutorial does not compile anymore due to the change within Enum handling (Roger Meier)
THRIFT-567   C++                  Can't immediately stop a TSimpleServer thread that is idle (Rush Manbert)
THRIFT-756   C++                  Exposing TSocket(int) constructor to public (Rajat Goel)
THRIFT-798   C++                  TNonblockingServer leaks resources when destroyed (David Reiss)
THRIFT-812   C++, Python          Demo of Thrift over ZeroMQ (David Reiss)
THRIFT-629   Cocoa                Unused Field In TSocketServer Appears To Break iPhone Build (Jon S Akhtar)
THRIFT-838   Cocoa                Generated Cocoa classes have useless @dynamic declarations (Kevin Ballard)
THRIFT-805   Cocoa                Don't generate process_XXXX methods for oneway methods (Brad Taylor)
THRIFT-507   Compiler             Remove the compiler's dependency on Boost (David Reiss)
THRIFT-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)
THRIFT-852   Compiler (General)   Missing newline causes many compiler warnings (Anthony Molinaro)
THRIFT-877   Compiler (General)   smalltalk namespace doesn't work (Bruce Lowekamp)
THRIFT-897   Compiler (General)   Don't allow unqualified constant access to enum values (Bryan Duxbury)
THRIFT-9     Compiler (General)   Add a default namespace declaration for all languages (David Reiss)
THRIFT-599   Erlang               Don't use unnecessary processes in the Erlang transports and clients (David Reiss)
THRIFT-646   Erlang               Erlang library is missing install target (David Reiss)
THRIFT-698   Erlang               Generated module list should contain atoms, not strings (Anthony Molinaro)
THRIFT-866   Erlang               term() in spec definitions seems to not work in erlang R12 (Anthony Molinaro)
THRIFT-886   Erlang               Dialyzer warning (Anthony Molinaro)
THRIFT-785   Erlang               Framed transport server problems (Anthony Molinaro)
THRIFT-884   HTML                 HTML Generator: add Key attribute to the Data Types Tables (Roger Meier)
THRIFT-652   Haskell              Generated field name for strut is not capitalized correctly (Christian Lavoie)
THRIFT-743   Haskell              compile error with GHC 6.12.1 (Christian Lavoie)
THRIFT-901   Haskell              Allow the bindings to compile without -fglasgow-exts and with -Wall -Werror (Christian Lavoie)
THRIFT-905   Haskell              Make haskell thrift bindings use automake to compile and install (Christian Lavoie)
THRIFT-906   Haskell              Improve type mappings (Christian Lavoie)
THRIFT-914   Haskell              Make haskell bindings 'easily' compilable (Christian Lavoie)
THRIFT-918   Haskell              Make haskell tests run again (Christian Lavoie)
THRIFT-919   Haskell              Update Haskell bindings README (Christian Lavoie)
THRIFT-787   Haskell              Enums are not read correctly (Christian Lavoie)
THRIFT-250   Java                 ExecutorService as a constructor parameter for TServer (Ed Ceaser)
THRIFT-693   Java                 Thrift compiler generated java code that throws compiler warnings about deprecated methods. (Bryan Duxbury)
THRIFT-843   Java                 TNonblockingSocket connects without a timeout (Bryan Duxbury)
THRIFT-845   Java                 async client does not respect timeout (Ning Liang)
THRIFT-870   Java                 Java constants don't get Javadoc comments (Bryan Duxbury)
THRIFT-873   Java                 Java tests fail due to Too many open files (Todd Lipcon)
THRIFT-876   Java                 Add SASL support (Aaron T. Myers)
THRIFT-879   Java                 Remove @Override from TUnion.clear (Dave Engberg)
THRIFT-882   Java                 deep copy of binary fields does not copy ByteBuffer characteristics (arrayOffset, position) (Bryan Duxbury)
THRIFT-888   Java                 async client should also have nonblocking connect (Eric Jensen)
THRIFT-890   Java                 Java tutorial doesn't work (Todd Lipcon)
THRIFT-894   Java                 Make default accessors for binary fields return byte[]; provide new accessors to get ByteBuffer version (Bryan Duxbury)
THRIFT-896   Java                 TNonblockingSocket.isOpen() returns true even after close() (Eric Jensen)
THRIFT-907   Java                 libfb303 doesn't compile in 0.4.0 (Todd Lipcon)
THRIFT-912   Java                 Improvements and bug fixes to SASL implementation (Todd Lipcon)
THRIFT-917   Java                 THsHaServer should not accept an ExecutorService without catching RejectedExecutionException (Ed Ceaser)
THRIFT-931   Java                 Use log4j for Java tests (Todd Lipcon)
THRIFT-880   JavaME               JavaME code generator and runtime library (Dave Engberg)
THRIFT-846   JavaScript           JavaScript Test Framwork: extended Testcases (Roger Meier)
THRIFT-885   JavaScript           Url encoded strings never get decoded? How do we fix this? (T Jake Luciani)
THRIFT-911   JavaScript           (JavaScript compiler) Const structs, maps, sets, and lists generate a trailing comma (T Jake Luciani)
THRIFT-860   OCaml                copy method and reset method (Lev Walkin)
THRIFT-682   PHP                  PHP extension doesn't compile on Mac OS X (Bryan Duxbury)
THRIFT-851   PHP                  php extension fails to compile on centos 5.x (Todd Lipcon)
THRIFT-840   Perl                 Perl protocol handler could be more robust against unrecognised types (Conrad Hughes)
THRIFT-758   Perl                 incorrect deference in exception handling (Yann Kerherve)
THRIFT-257   Python               Support validation of required fields (Esteve Fernandez)
THRIFT-335   Python               Compact Protocol for Python (David Reiss)
THRIFT-596   Python               Make Python's TBufferedTransport use a configurable input buffer (David Reiss)
THRIFT-597   Python               Python THttpServer performance improvements (David Reiss)
THRIFT-598   Python               Allow Python's threading servers to use daemon threads (David Reiss)
THRIFT-666   Python               Allow the handler to override HTTP responses in THttpServer (David Reiss)
THRIFT-673   Python               Generated Python code has whitespace issues (Ian Eure)
THRIFT-721   Python               THttpClient ignores url parameters (Thomas Kho)
THRIFT-824   Python               TApplicationException.__str__() refers to class constants as globals (Peter Schuller)
THRIFT-855   Python               Include optimized compiled python objects in install (Anthony Molinaro)
THRIFT-859   Python               Allow py:twisted to be generated in different namespace than py (Bruce Lowekamp)
THRIFT-869   Python               TSocket.py on Mac (and FreeBSD) doesn't handle ECONNRESET from recv() (Steven Knight)
THRIFT-875   Python               Include python setup.cfg in dist (Anthony Molinaro)
THRIFT-610   Ruby                 binary_protocol.rb segfaults [line 86] (Unassigned)
THRIFT-899   Ruby                 Ruby read timeouts can sometimes be 2x what they should be (Ryan King)
THRIFT-909   Ruby                 allow block argument to struct constructor (Michael Stockton)
THRIFT-456   Test Suite           Bad IP address string in test/cpp/src/main.cpp (Rush Manbert)


Thrift 0.4.0 - Incubating
--------------------------------------------------------------------------------
THRIFT-650   Build        Make Check fails on Centos/OSX with 0.2.0 tarball (Anthony Molinaro)
THRIFT-770   Build        Get 'make dist' to work without first compiling source code (Anthony Molinaro)
THRIFT-160   C#           Created THttpTransport for the C# library based on WebHttpRequest (Michael Greene)
THRIFT-834   C#           THttpClient resends contents of message after transport errors (Anatoly Fayngelerin)
THRIFT-247   C++          THttpServer Transport (Unassigned)
THRIFT-676   C++          Change C++ code generator so that generated classes can be wrapped with SWIG (Unassigned)
THRIFT-570   Compiler     Thrift compiler does not error when duplicate method names are present (Bruce Simpson)
THRIFT-808   Compiler     Segfault when constant declaration references a struct field that doesn't exist (Bryan Duxbury)
THRIFT-646   Erlang       Erlang library is missing install target (Anthony Molinaro)
THRIFT-544   General      multiple enums with the same key generate invalid code (Ben Taitelbaum)
THRIFT-434   General      ruby compiler should warn when a reserved word is used (Michael Stockton)
THRIFT-799   General      Files missing proper Apache license header (Bryan Duxbury)
THRIFT-832   HTML         HTML generator shows unspecified struct fields as 'required' (Bryan Duxbury)
THRIFT-226   Java         Collections with binary keys or values break equals() (Bryan Duxbury)
THRIFT-484   Java         Ability to use a slice of a buffer instead of a direct byte[] for binary fields (Bryan Duxbury)
THRIFT-714   Java         maxWorkerThreads parameter to THsHaServer has no effect (Bryan Duxbury)
THRIFT-751   Java         Add clear() method to TBase (Bryan Duxbury)
THRIFT-765   Java         Improved string encoding and decoding performance (Bryan Duxbury)
THRIFT-768   Java         Async client for Java (Bryan Duxbury)
THRIFT-774   Java         TDeserializer should provide a partialDeserialize method for primitive types (Piotr Kozikowski)
THRIFT-783   Java         .equals java method is broken on structs containing binary-type fields (Unassigned)
THRIFT-804   Java         CompareTo is broken for unions set to map, set, or list (Bryan Duxbury)
THRIFT-814   Java         Include a TServlet in the standard Thrift distribution (Mathias Herberts)
THRIFT-818   Java         Async client doesn't send method args (Bryan Duxbury)
THRIFT-830   Java         Switch binary field implementation from byte[] to ByteBuffer (Bryan Duxbury)
THRIFT-831   Java         FramedTransport implementation that reuses its buffers (Bryan Duxbury)
THRIFT-833   Java         build.xml in lib/java is missing a classpathref attribute for the javadoc task (Bryan Duxbury)
THRIFT-836   Java         Race condition causes CancelledKeyException in TAsyncClientManager (Bryan Duxbury)
THRIFT-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)
THRIFT-815   JavaScript   Deserialization of lists is critically broken. (T Jake Luciani)
THRIFT-827   OCaml        OCaml generator to take default values into account (Lev Walkin)
THRIFT-647   PHP          PHP library is missing install target (Anthony Molinaro)
THRIFT-682   PHP          PHP extension doesn't compile on Mac OS X (Bryan Duxbury)
THRIFT-718   PHP          Thrift PHP library includes closing tags and extraneous whitespace (Nicholas Telford)
THRIFT-778   PHP          PHP socket listening server (Nick Jones)
THRIFT-780   PHP          PHP extension sometimes causes an abort with two exceptions at the same time (David Reiss)
THRIFT-837   PHP          PHP accelerator bug for writes > 8k (Thomas Kho)
THRIFT-782   Perl         Perl code for writing containers doesn't count length of write*Begin or write*End (Conrad Hughes)
THRIFT-395   Python       Python library + compiler does not support unicode strings (Unassigned)
THRIFT-133   Ruby         'namespace ruby' should error out, or be an alias to 'namespace rb' (Bryan Duxbury)
THRIFT-664   Ruby         Ruby extension fails to build with Ruby 1.9.1 (Rajesh Malepati)
THRIFT-699   Ruby         Excise unused "native protocol method table" stuff from thrift_native (Bryan Duxbury)
THRIFT-767   Ruby         ruby compiler does not keep comments for enum values (Bryan Duxbury)
THRIFT-811   Ruby         http_client_transport.rb: allow custom http headers (Tony Kamenick)
THRIFT-459   Ruby         Ruby installation always tries to write to /Library/Ruby/site (Matthieu Imbert)


Thrift 0.1.0 - Incubating (not released)
--------------------------------------------------------------------------------
Compatibility Breaking Changes:
  C++:
    * It's quite possible that regenerating code and rebuilding will be
      required.  Make sure your headers match your libs!

  Java:

  Python:

  Ruby:
    * Generated files now have underscored names [THRIFT-421]
    * The library has been rearranged to be more Ruby-like [THRIFT-276]

  Erlang:
    * Generated code will have to be regenerated, and the new code will
      have to be deployed atomically with the new library code [THRIFT-136]

New Features and Bug Fixes:
  C++:
    * Support for TCompactProtocol [THRIFT-333]

  Java:
    * Support for TCompactProtocol [THRIFT-110]

  Python:
    * Support for Twisted [THRIFT-148]

  Ruby:
    * Support for TCompactProtocol [THRIFT-332]