)]}'
{
  "log": [
    {
      "commit": "22888ce3a84f38c1478f38ad0d1ff3ed7fdf5f39",
      "tree": "ebfc141e5461a988cec980658b73a0800f694934",
      "parents": [
        "2f51f327e3b6d22e578a84a037d1a9094c64dd9b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Feb 09 11:31:02 2014 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Feb 09 11:31:02 2014 +0100"
      },
      "message": "THRIFT-2352 msvc failed to compile thrift tests\n\nPatch: Sergei Nikulov \u0026 Roger Meier\n"
    },
    {
      "commit": "09cc5e7728cd4bc197e33a02e2fd263407d4a87b",
      "tree": "5907de06da56ac22c01eede5cbc740da0bbb1914",
      "parents": [
        "6635058e8be97721447ec8e202306226fa8187ca"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Jan 15 10:13:18 2014 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Jan 15 10:13:18 2014 +0100"
      },
      "message": "THRIFT-2316 cpp: TFileTransportTest is to restrictive\n"
    },
    {
      "commit": "5d02b80e9cde00280cbac5c17cc3843806ec9436",
      "tree": "4b12b2e6816154fdbd2d6273732ca90a5ae2904d",
      "parents": [
        "05f37f1917bfa89d5862e4e45896bc6e28d8fa51"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Jan 07 21:42:01 2014 -0500"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Jan 07 21:42:01 2014 -0500"
      },
      "message": "Thrift-2029:Port C++ tests to Windows\nClient: cpp\nPatch: Ben Craig\n\nUpdates cpp tests to work with windows and c++11\n"
    },
    {
      "commit": "ba406d3a022967e6189249bd8e805f0eb9ac2921",
      "tree": "24bf3bcde0c05872664bdd9b0bde148d082d5dad",
      "parents": [
        "1075a6f67b63b96be455496f50624433ff73c449"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Jul 15 22:41:34 2013 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Jul 15 22:41:34 2013 +0200"
      },
      "message": "THRIFT-2089 Compiler ignores duplicate typenames\nPatch: Randy Abernethy\n"
    },
    {
      "commit": "967600ef4f09445d9dbb6654dca8d235d9d65f5b",
      "tree": "151a45e09862dacbfc2f0024d27e265318b9207f",
      "parents": [
        "0fd47dab1ba4bcb13c2a871ec4e0527c2c6c06bb"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 03 22:39:53 2013 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 03 22:39:53 2013 +0200"
      },
      "message": "THRIFT-1850 make check hangs on TSocket tests in TransportTest.cpp\nPatch: Randy Abernethy\n"
    },
    {
      "commit": "c095919087adc9508300ec6e9cdcd58cf147a207",
      "tree": "9a7d224c815965c253f5e561943cc603b1eaa437",
      "parents": [
        "e3da768367d0a3e013a00a5a365e58aed3bffa32"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Jan 15 23:20:19 2013 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Jan 15 23:20:19 2013 +0100"
      },
      "message": "THRIFT-1829 cpp unit tests fail to build using multiple make jobs\nPatch: David Rennalls and Roger Meier\n"
    },
    {
      "commit": "7c7a5e05ba5dd7ddb30b2787da7ec52f3b9e8f6f",
      "tree": "954c1aaf07155d1c37f3836cdcac7e3b354feb30",
      "parents": [
        "510ecae94668b689dcea2061c49a66a34fb66e1e"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Oct 11 00:29:11 2012 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Oct 11 00:29:11 2012 +0000"
      },
      "message": "Thrift-1721:Dist broken due to 0.8.0 to 0.9.0 changes\nClient: build\nPatch: Jake Farrell\n\nFix dist build to create the 0.9.0 release\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1396880 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a32ac7a010cf2f01b0f81299af42fb777e73e81e",
      "tree": "3b80058f2408f528152088d697c02efdce3ede4b",
      "parents": [
        "271e47a74debf3e504f3ee317c135e0453e3841b"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Oct 09 19:59:35 2012 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Oct 09 19:59:35 2012 +0000"
      },
      "message": "Thrift-1718:Incorrect check in TFileTransportTest\nClient: cpp\nPatch: Diwaker Gupta\n\nFixes cpp tests\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1396258 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4cb8e40d8abbb480065461ac3fd27280cb9a53f6",
      "tree": "49ef09afeabd71ce03198dc1c6bab83bb9c70808",
      "parents": [
        "83042b9078311d9bd166f8690a1feed4949b1c31"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun May 27 18:05:16 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun May 27 18:05:16 2012 +0000"
      },
      "message": "THRIFT-1612 Base64 encoding is broken\nPatch: Andrew Cox\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1343074 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2d59b9e2ad05113410a7e505b052512004090261",
      "tree": "0cf1af5daa4b6429d7af422bb07f5d03805e8ff4",
      "parents": [
        "b6617836d4bd1ff4788bd63eea4cec1378d14c3b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed May 23 19:40:40 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed May 23 19:40:40 2012 +0000"
      },
      "message": "THRIFT-1336 thrift: added server and processor test code\nrevert partly: disable processor test, it breaks the builds\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1341996 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "970c86a5f2e6612fc7fbf9623655f91040cab81a",
      "tree": "c3f5f6b1d8d6ed9ceafca2bd255a90302e7638d3",
      "parents": [
        "94bb7f26f6d9b5bf1106b1aeb4b983e453f50047"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Thu May 17 05:41:09 2012 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Thu May 17 05:41:09 2012 +0000"
      },
      "message": "Thrift-1607:Incorrect file modes for several source files\nClient: build\nPatch: Andrew Cox\n\nFile modes of some non-script text files (e.g. .xml, .java, .cc) in the source tree include execute permissions (because these files have the svn:executable property).\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1339492 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "dd16f0538b14109a8ecc710bccd5c02cfa18b313",
      "tree": "8f6749d9e4fbd276c10cfe3211d6bfe5a227f6cf",
      "parents": [
        "4f260f7a5f65971b407947398bbc2fed79064919"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 14:19:48 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 14:19:48 2012 +0000"
      },
      "message": "THRIFT-1336 thrift: added server and processor test code\n\nlast commit was wrong! otherway around!\ndisable concurrency instead of processor_test ... does not run properly on build slaves\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337177 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4f260f7a5f65971b407947398bbc2fed79064919",
      "tree": "e1e642fc63f6ef2690b6adeb0ea04b2fd54ab8cf",
      "parents": [
        "6bb0a7a34a38484132e044bb8d09830198135473"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 13:50:11 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 13:50:11 2012 +0000"
      },
      "message": "THRIFT-1336 thrift: added server and processor test code\n\ndisable processor_test ... does not run properly on build slaves\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337162 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2b1a5289a7aa61377f2d20ee8dfffd72310cc886",
      "tree": "a9ce76cdd0eb464f284666080f8378d50a9f0ce6",
      "parents": [
        "96efc26a3cc14e5b3a8a3f7c08cc2082ed42d197"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 10:12:39 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 11 10:12:39 2012 +0000"
      },
      "message": "THRIFT-1336 thrift: added server and processor test code\n\nmove the tests from src to test:\nlib\\cpp\\src\\thrift\\concurrency\\test to lib\\cpp\\test\\concurrency\nlib\\cpp\\src\\thrift\\processor\\test to lib\\cpp\\test\\processor\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337098 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "33eaa0f10038d427d6f62d72235af314bc27b930",
      "tree": "4a1990f23e6b839741d93b515e35b67f39c45378",
      "parents": [
        "49ff8b123a0b79aa0ec5a4a1baa288e7cbfdcede"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 09:13:13 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 09:13:13 2012 +0000"
      },
      "message": "THRIFT-1552 Thrift (cpp) include files shouldn\u0027t require adding \"thrift\" to the compilers include path.\n\nroger: some additional fixes\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325677 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "49ff8b123a0b79aa0ec5a4a1baa288e7cbfdcede",
      "tree": "f0bb816c0ec7263a05709240177bb719d9d3fbcb",
      "parents": [
        "49ef6587b4cb830cbe35a8e14ac4ad5a2c457923"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 09:12:31 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 09:12:31 2012 +0000"
      },
      "message": "THRIFT-1552 Include paths for c/c++ should be prefixed with \u0027thrift/\u0027\n\nTo ensure there are no include path collisions the C and C++ header\ninclude paths should include \u0027thrift\u0027 as the root leaf. This will\nprevent having to place /usr/include/thrift into the compilers include\nheader search path, which might otherwise result in the compiler\naccidentally picking up headers that it shouldn\u0027t.\n\ne.g. #include \u003cfoo/bar.h\u003e should be #include \u003cthrift/foo/bar.h\u003e\n\nChange-Id: I48f2b0f549bda0fc81e85506ac857adc800b98a1\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325674 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "02c827bcfe18c1ddb7450741a88bcb753eb1a063",
      "tree": "eecbcc04b2c256582bb1873464c81ac1a32a06f4",
      "parents": [
        "d8f50f3ffedf020db94de9a915481effd9ae5162"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Apr 11 21:59:57 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Apr 11 21:59:57 2012 +0000"
      },
      "message": "THRIFT-1562 Fix issue with TFramedTransport::readSlow\nPatch: Dave Watson\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325034 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f9f01fa1e054ff28d7b8023eeb53cd5ba0ed6b1c",
      "tree": "7cd1d0604894e57fec7a1468c9ddf9619d71dd9a",
      "parents": [
        "6ce2704a14bb109d2d9e29d1b77974f57b2e8636"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Fri Jan 27 04:48:26 2012 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Fri Jan 27 04:48:26 2012 +0000"
      },
      "message": "THRIFT-1394:Treatment of optional fields is not consistent between C++ and Java\nClient: cpp\nPatch: Diwaker Gupta\n\nIn CPP, all optional fields are guarded by the isset helper struct. On Java, however, the generated code takes advantage of nullable types: for containers, structs, exceptions, enums, and, notably, strings, the generator elides explicit use of an \"isset\" bit vector and instead emits checks of the form \"field null\". This leads to varying behavior between the two languages: an optional string field with a default value will have {{isset[fieldid]}} false on C, but the equivalent test in Java will be true.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1236529 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "12d705390d24359900256ceda15e00de4df4a6cd",
      "tree": "62922ea60d20e328b29a907f9040f40c4da57553",
      "parents": [
        "a99027c708f3d920db68d72966e5bd221b7440e1"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Dec 14 23:35:28 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Dec 14 23:35:28 2011 +0000"
      },
      "message": "THRIFT-1461 Recent TNonblockingServer changes broke --enable-boostthreads\u003dyes, Windows\nPatch: Alexandre Parenteau\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1214547 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ea949fbaf915f04b584efe24a9706586b53193a5",
      "tree": "0f7fb9a50ef98f34bf723a7372730bd9ea83ffac",
      "parents": [
        "3371925d1804e6b7a4e94ef928ea897ded5e09fb"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Dec 13 20:02:33 2011 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Dec 13 20:02:33 2011 +0000"
      },
      "message": "Thrift-1462: add more strict compiler flags\n\nReverting patch due to it breaking compilers older than 4.4 (os x, centos 5.x, etc)\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213901 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ca10fd4a51b218accd2f616b89ce76464f7e847a",
      "tree": "eb661b2932f30eea6eb6dd20b4bc11787d269131",
      "parents": [
        "611f90cf9ee177367d6b1f53d2ebb8493b44eec1"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Dec 12 22:00:23 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Dec 12 22:00:23 2011 +0000"
      },
      "message": "THRIFT-1462 add more strict compiler flags(-Wall -Wextra -std\u003dc++0x -pedantic)\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213459 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "611f90cf9ee177367d6b1f53d2ebb8493b44eec1",
      "tree": "36686bf9547142149aefdf8f34776ae9940eaa8b",
      "parents": [
        "3fc481961778b1ec5faebd2b42d9a15d8b875e35"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 11 22:08:51 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 11 22:08:51 2011 +0000"
      },
      "message": "THRIFT-1459 declare shared_ptr as boost::shared_ptr\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213090 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3fc481961778b1ec5faebd2b42d9a15d8b875e35",
      "tree": "e00475324789dd088512606eda83f18bc3a515aa",
      "parents": [
        "1d282a95c604019cc7b4f885738daa61b7974ca4"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 11 21:05:35 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 11 21:05:35 2011 +0000"
      },
      "message": "THRIFT-1272 add subclass of ReadWriteMutex that avoids writer\nstarvation\nPatch: Dave Watson\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213067 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6f7681f91d1cdf41be657978d819d94b6024c434",
      "tree": "4f6a55e55af4cc8fa3c4734a1e6e32dc5e9487b6",
      "parents": [
        "38315786e5c9e972aef50433b401dcff23259cae"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Nov 06 12:04:28 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Nov 06 12:04:28 2011 +0000"
      },
      "message": "THRIFT-1361 revert compiler/cpp/src/thrifty.yy change\n\u003d\u003e breaks mingw build\n\u003d\u003e memleak fixes reported by cppcheck\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1198347 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "38315786e5c9e972aef50433b401dcff23259cae",
      "tree": "28dc13bba5655cab8c1c12ad67d7e0bd87fbaba6",
      "parents": [
        "1b6153bdd145be14ce2a58cee2858d07ae60b829"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Nov 06 11:29:41 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Nov 06 11:29:41 2011 +0000"
      },
      "message": "THRIFT-1361 Optional replacement of pthread by boost::thread\nPatch: Alexandre Parenteau\nrev3\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1198339 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2fa9c31e065fc35186c92c5d8b8c078b4f8d5a5f",
      "tree": "16203c4ec7f4496f6112576d79382ce5418e6bb5",
      "parents": [
        "212022cce6f31e363aa80c7b23336727b953d76f"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Sep 05 19:15:53 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Sep 05 19:15:53 2011 +0000"
      },
      "message": "THRIFT-1320 Consistency of configure generated config.h\nPatch: Alexandre Parenteau\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1165400 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9e0f0743f377e59ee2aa21666c18bb3b092661f5",
      "tree": "1a2ad707be026990e5651947ff689b6089896121",
      "parents": [
        "345ecc739ab145f9a0e7c27bbcb4ee72ccd3a86b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Aug 03 17:36:55 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Aug 03 17:36:55 2011 +0000"
      },
      "message": "THRIFT-1256 Unit Test Logging Output for CI\npass BOOST environment variables to the test suite arguments and create a tests.xml with the results\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1153594 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1ebeffb0d8be47c9e37579d89a39968008df9b2e",
      "tree": "32790faa162ce2371eda8d7ffffbc7cccd4ceef6",
      "parents": [
        "18f1050e71894472ff4ce70fa3b393fa2c77e3cd"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Jun 06 18:00:03 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Jun 06 18:00:03 2011 +0000"
      },
      "message": "THRIFT-1197 TFileTransportTest.cpp fails on slower machines\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1132712 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cbf87cb89cf0b1e7cd3656262c642209fef235ef",
      "tree": "cbc89a238c96482bc9e0b384cda6459b1f2203a8",
      "parents": [
        "c101092ea742e1252207b6e8f680bf392292c916"
      ],
      "author": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Sun Nov 28 14:34:26 2010 +0000"
      },
      "committer": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Sun Nov 28 14:34:26 2010 +0000"
      },
      "message": "THRIFT-916: Commit THRIFT-916_fix_no-overflow.patch -- remove overflow coming from a few constants.\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1039885 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "af65f1b4781a6f7761617e67f5604413f65ceb8d",
      "tree": "8962eaf103bcd90744cbc4c6d5a3817d91e7f371",
      "parents": [
        "fea49cb8409167636a94e25f5657aeee58587f6e"
      ],
      "author": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Wed Nov 24 21:58:05 2010 +0000"
      },
      "committer": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Wed Nov 24 21:58:05 2010 +0000"
      },
      "message": "THRIFT-916: Commit a partial fix for flex-generated code infested with warnings on Mac OS X\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1038844 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3b771a10f1b815d5168d244374cddd1014ba3c02",
      "tree": "b317075bdba17f1291f5dfda00d02cb6fe410857",
      "parents": [
        "be87ab28b06323f46835983ce2501b952978bda2"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Nov 17 22:11:26 2010 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Nov 17 22:11:26 2010 +0000"
      },
      "message": "THRIFT-916 compile with -Wall -Wextra without warning on Debian Lenny\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1036250 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "01c5cebfdd0f638f09378e0a735419efc69f3c08",
      "tree": "0df562525cf8ad1953c54d1740d6eca4a97ec0f3",
      "parents": [
        "4f42ef7aa593b20fa17ad542f53c296032955fb7"
      ],
      "author": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Thu Nov 04 20:35:15 2010 +0000"
      },
      "committer": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Thu Nov 04 20:35:15 2010 +0000"
      },
      "message": "THRIFT-916: Fix warnings in C++ when compiling with -Wall.\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1031222 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4f42ef7aa593b20fa17ad542f53c296032955fb7",
      "tree": "bcb1217771ff0bc22c18c0462be2a88ec728a944",
      "parents": [
        "5aaa02166e335d6399c7345bbd8f3d83d4e481fa"
      ],
      "author": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Thu Nov 04 18:51:42 2010 +0000"
      },
      "committer": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Thu Nov 04 18:51:42 2010 +0000"
      },
      "message": "THRIFT-953: Fix compilation of TransportTest.cpp on Mac (actual tests still fail) and fix boost m4 macros for Mac.\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1031148 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0069cc4a298a15c84df5e09e4abebe8ba8a0b8a5",
      "tree": "9721d855a028e67d4fdefa10b31bbb70b7241929",
      "parents": [
        "4c5689269f767670741bc49648d419d4c6a188f1"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Oct 13 18:10:18 2010 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Oct 13 18:10:18 2010 +0000"
      },
      "message": "THRIFT-916 no errors on GNU/Linux when compiling with CXXFLAGS\u003d\"-Wall -Wextra -pedantic\"\n\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1022220 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "085a3e7b6045c435bc21442c867c9d3ed8d3bb60",
      "tree": "8f6223017d09011a6f6d8eba49cd2cd041b8ccab",
      "parents": [
        "50e4349463c983aac50d37a071191391f704258a"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Oct 08 21:23:35 2010 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Oct 08 21:23:35 2010 +0000"
      },
      "message": "THRIFT-926 Miscellaneous C++ improvements\n\nchanging single destructor call time limit from 500us to 1000us\nbuild does not fail on busy machines\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1006030 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "109693c82a63b321b540cb3c993d918fc946dfbe",
      "tree": "a8b5942237ebc12d42e61e5888ee5d30fb0327ac",
      "parents": [
        "0a2d81e81614a73590056b4fea7688463df7c80b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:42 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:42 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Convert tests to use boost 1.37\n\nThe boost test framework has changed significantly from boost 1.34 to\n1.37.  Quite a few new features have been added, and some annoying bugs\nhave been fixed.\n\nThis change now builds the thrift tests against boost 1.37, and updates\nthem to use some of the newer features.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005162 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0a2d81e81614a73590056b4fea7688463df7c80b",
      "tree": "f7640d3608c2a2ddcc3cb6508c060ec05b7277df",
      "parents": [
        "e5c435cccf4fdc5650c6127563b3b61de65e1762"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:40 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:40 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Fix inconsistencies in transport read() behavior\n\n- TBufferedTransport::borrow() could block if not enough data was\n  available.  Now it returns NULL immediately in this case, like all\n  other transports.\n\n- TBufferedTransport::read() could block some data was available in the\n  readahead buffer, but not enough to satisfy the request.  It would\n  attempt to call read() on the underlying transport, but this might\n  block.  Now it just returns the remaining data in the readahead\n  buffer.  The caller is responsible for calling read() again to get the\n  rest of the data they want.\n\n- TFrameTransport::read() threw an exception if read() on the underlying\n  transport returned 0 when looking for a frame header.  Now\n  TFrameTransport::read() returns 0, too.  (It still throws an exception\n  if the underlying transport returns 0 after a partial frame or frame\n  header has been read.)\n\n- TFDTransport::read() threw an exception on EINTR.  Now it retries up\n  to 5 times, similarly to the way TSocket::read() behaves.\n\n- TZlibTransport::read() could block when less data than was requested\n  is available.  Now it only calls read() on the underlying transport\n  when it would otherwise have nothing to return.\n\n  This does mean that TZlibTransport::read() now often returns less data\n  than is actually available at the time.  This required updating\n  several of the ZlibTest tests to use readAll() instead of read(),\n  since they previously assumed read() would return all available data.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005161 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e5c435cccf4fdc5650c6127563b3b61de65e1762",
      "tree": "326d1cde9434aa046536f1dee903cb0491729d53",
      "parents": [
        "d4788dfd4ae1bd04a78dc611855f70eb97355af3"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:38 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:38 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Add tests to verify blocking read behavior\n\nAdd tests that check to see whether or not read() and borrow() block\nwhen called with a length larger than the amount of data currently\navailable.\n\nAt the moment, not all of the transports behave the same way.  I believe\nthe desired behavior is:\n\n  When M bytes are available, and 0 \u003c M \u003c N:\n  - read(N): return M bytes immediately\n  - borrow(N): return NULL immediately\n\n  When 0 bytes are available:\n  - read(N): In this case, it is acceptable either to immediately return\n    0, or to block until some data is available.  If the transport\n    blocks, it returns immediately when some date becomes available,\n    even if less than N bytes are available.\n  - borrow(N): return NULL immediately\n\n- The borrow() tests fail when using TBufferedTransport.\n  TBufferedTransport incorrectly blocks until the amount of data\n  requested is available.\n\n- test_read_none_available() fails when using TFramedTransport.\n  Calling read() on a TFramedTransport when no data is available throws\n  an exception instead of returning 0.\n\n- test_read_none_available() fails when using TFDTransport.  This is\n  partly just an artifact of the fact that I use SIGALRM as part of this\n  test.  Unlike TSocket, TFDTransport doesn\u0027t retry after EINTR.\n\n- test_read_part_available() fails when using TZlibTransport around a\n  transport that has blocking read() behavior.  TZlibTransport::read()\n  loops calling read() on the underlying transport.  It should probably\n  break out of the loop and return to the caller as soon as it has\n  uncompressed any data, even if it is less than requested and more\n  might be available.  Once some data has been uncompressed,\n  TZlibTransport cannot risk calling read() again since it might block.\n\nWill commit fixes for these separately.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005160 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d4788dfd4ae1bd04a78dc611855f70eb97355af3",
      "tree": "464850819f658bd7ce70402a44586e53bfd9e53d",
      "parents": [
        "0c025e8f52096f6c9f39b80909b5b1aebf335b03"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:37 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:37 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Test wrapper transports more thoroughly\n\nUpdateS TransportTest so that the wrapper transports\n(TBufferedTransport, TFramedTransport, TZlibTransport) are tested with a\nwider variety of inner transports.  Previously they were only tested\nusing TMemoryBuffer.  Now all other transports are also tested wrapped\ninside each of these transports.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005159 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0c025e8f52096f6c9f39b80909b5b1aebf335b03",
      "tree": "a50ae395bae21657a2510d94e22c1e6501112d7a",
      "parents": [
        "65e62d3741e226abf0caf7b7393845ad41779a61"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:36 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:36 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Update TransportTest to test TSocket\n\nMade the TSocket(int fd) constructor public, so TransportTest can create\na connected pair of TSocket transports using socketpair().\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005158 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "65e62d3741e226abf0caf7b7393845ad41779a61",
      "tree": "e4fb8b2f4a8811618b2531c5ef616953e1ece72a",
      "parents": [
        "4f9efdb460a7c54cc55b25f2c6b8955a5fcff229"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:35 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:35 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Reduce default buffer sizes for TransportTest\n\nReduce the default test buffer sizes by about 30x, reducing the time it\ntakes to run TransportTest from about 1 minute to about 2 seconds.  I\nadded a --size-multiplier argument that can be used to adjust the sizes\nof all test buffers, so developers can still run with large buffer sizes\nwhen desired.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005157 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4f9efdb460a7c54cc55b25f2c6b8955a5fcff229",
      "tree": "0c31542a9e504f19b089d4dd27660bedc8ea70f8",
      "parents": [
        "4199377a7c5dbb72679abe9c05c9663e3736a780"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:33 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:33 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Fix bugs in TFileTransport::flush()\n\nPreviously flush() had race conditions that could cause it to return\nbefore all data had actually been flushed to disk.  Now the writer\nmakes sure both buffer queues have been flushed when forceFlush_ is set.\n\nAlso, flush() did not wake up the writer thread, so it normally had to\nwait for the writer thread to wake up on its own time.  (By default,\nthis could take up to 3 seconds.)\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005156 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4199377a7c5dbb72679abe9c05c9663e3736a780",
      "tree": "5bbc4847cec0c637d02b041dbbf6bbdb08447db5",
      "parents": [
        "709b69f14c7c69b83e1752212bf51b4da67db834"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:31 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:31 2010 +0000"
      },
      "message": "THRIFT-926. cpp: TFileTransportTest timing slightly more lenient\n\nSeveral of the TFileTransportTest tests check wall clock time to make\nsure the writer thread processes operations quickly enough, and isn\u0027t\nhanging.  However, this can easily result in false failures if we don\u0027t\nget enough processor time.  This commit makes a few changes to reduce\nthe number of these failures.\n\n- No longer fail if a single destructor call takes more than 500us.\n  We only require 90% of the calls to complete in 500us.  No call may\n  take more than 100ms, though.  With this change, the test passes most\n  of the time now, even while an \"fbmake opt\" task is running in\n  parallel.\n\n- In the flush_max_us tests, make sure the writer thread is started\n  before we start recording timing.  Otherwise, creating the thread\n  could take long enough to throw off the numbers for the first fsync()\n  call.\n\nAlso tested with the pthread_cond_signal() in the TFileTransport\ndestructor commented out, to make sure the test still fails properly\nwhen the destructor takes too long.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005155 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "709b69f14c7c69b83e1752212bf51b4da67db834",
      "tree": "c9f04bd0d15b25832de0b8417d62eda12644d989",
      "parents": [
        "0e0eb354527cecdc22d1c0e6ecba06d7f747e728"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:30 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:30 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Fix destructor behavior of TFileTransport\n\nSet closing_ to true before we wake up the writer thread in the\ndestructor.  This way the writer thread flushes the data and exits when\nit is woken up.\n\nPreviously the writer thread could end up going through 2 full timeout\ncycles before exiting.  The writer thread could wake up, notice it has\nnothing to do since closing_ is not set, and immediately go back to\nsleep.  The destructor would then proceed to call flush(), which would\nwait for the writer thread to wake up (1 full time out) and clear the\nforceFlush_ flag.  After flush returns, the destructor would set\nclosing_.  It could take the writer thread another full timeout to wake\nup again and process this flag.\n\nThere were also some points where the worker threads would detect the\nclosing_ state in their loops and automatically close the file, but did\nnot zero out the file descriptor, then the destructer attempted to close\nthe same file.  Fix by simply zeroing out the fd_ at these points.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005154 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a0e11597163def6727896a77490899681c1eb6d6",
      "tree": "df8bf21b710a92f520b8d8b2b940cf0b0e6fa000",
      "parents": [
        "e94fa3391db1a423b6964b0aa6499324d05b055b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:27 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:27 2010 +0000"
      },
      "message": "THRIFT-926. cpp: remove \"standalone\" distinction in TZlibTransport\n\nNow that TZlibTransport::flush() behaves the same way as other\ntransports, there is no need to distinguish between RPC and standalone\nbehavior for TZlibTransport.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005152 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e94fa3391db1a423b6964b0aa6499324d05b055b",
      "tree": "31c7ea84ea0cadc3c411fa0078e88ede3f794bd4",
      "parents": [
        "f2abcf9a563849dc5861be8aa38f764525c072b1"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:26 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:26 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Make TZlibTransport::flush() behave like other transports\n\nPreviously, TZlibTransport::flush() finished the zlib stream, so calling\nwrite() after flush() would result in an error.  Now it just flushes the\ndata, without finishing the stream.  A new TZlibTransport::finish()\nfunction has been added to finish the stream.\n\nThis breaks compatibility.  I\u0027m aware of anyone using this code outside\nof Facebook, though.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005151 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f2abcf9a563849dc5861be8aa38f764525c072b1",
      "tree": "cc186334ba89995a6eb31ff2b2cdfab90e3c9c7c",
      "parents": [
        "9a961e7750bd9d0393802df4d7a3bb6996a3339b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:24 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:24 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Use boost::lognormal_distribution in ZlibTest\n\nThis way we no longer have to have a huge hard-coded list of numbers in\nthe source code.  The distribution is randomly generated for each run.\n(Although the --seed argument can be used for repeatablity.)\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005150 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9a961e7750bd9d0393802df4d7a3bb6996a3339b",
      "tree": "472f07117c164d728f470fa2b967c54a9374c47c",
      "parents": [
        "3cc9dab229951aecf59cd229a45007013cb57fba"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:23 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:23 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Convert ZlibTest to use the boost unit test framework\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005149 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3cc9dab229951aecf59cd229a45007013cb57fba",
      "tree": "4fba76fadcbd2b3231a076b7f82f733f5232ef8a",
      "parents": [
        "56cb796bcecb1e2fef8ab23d8f3f60418502ba10"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:21 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:21 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Remove TZlibTest dependency on filesystem data\n\nPreviously, ZlibTest read a file from disk to get data to test with.\nIt would fail unless gen-cpp/DebugProtoTest_types.tcc was present in the\ncurrent directory and was at least 32kB long.\n\nNow ZlibTest simply generates 3 separate buffers to test with.  The\nfirst buffer is just all \"a\"s, the second is some random sequential\nruns, and the third is completely random.  They usually seem to have\ncompression ratios of around 315:1, 4:1, and 1:1, respectively.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005148 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "56cb796bcecb1e2fef8ab23d8f3f60418502ba10",
      "tree": "fe8fc0005c3ac09fc0c0bb9ab42dc768b11714c0",
      "parents": [
        "35dc7695a95e4e0c3e311faca5341a2e365b9ea0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:20 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:20 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Fix a couple minor issues in ZlibTest\n\n- Add a necessary cast.\n- Check buffer sizes more carefully to allow for different read/write\n  size distributions.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005147 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "35dc7695a95e4e0c3e311faca5341a2e365b9ea0",
      "tree": "8e2c4355bdc06ae32911705e815d98769accc105",
      "parents": [
        "105961de04cf064981b70e8ec8458c196e0ee17e"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:19 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:19 2010 +0000"
      },
      "message": "THRIFT-929. cpp: Add unit test for transport functionality\n\nTests various transport types by writing data, and verifying it can be\nread back successfully.  Tests both virtual calls (accessed as\nTTransport*) and non-virtual calls (accessed as the appropriate pointer\ntype, or as TBufferBase* when appropriate).\n\nThis is similar to some of the tests already performed in\nTMemoryBufferTest and ZlibTest.cpp.  However, this tests a few more\ntransport types, and it interleaves read and write calls more heavily.\n(It currently exposes some bugs in flush() in a couple transports.) It\nalso exercises both the virtual and non-virtual code paths, now that\nread() and write() only result in virtual calls when invoked on a\nTTransport*.\n\nTFileTransport currently has several race condition bugs, so most of the\nTFileTransport tests ususally fail.  It also has some performance bugs,\ncausing the TFileTransport tests to take a long time.  Will fix those\nissues separately.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005146 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e71115be6caa2f3afd6fa092a09fd41c2c355691",
      "tree": "e4eae6a053b7a04a0734685f3e58733630fbca81",
      "parents": [
        "6806fb836a6a846ae450f06a22deef1e59c2a983"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:56 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:56 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Templatize binary and compact protocol\n\nConvert TBinaryProtocol and TCompactProtocol to template classes, taking\nthe transport class as a template parameter.  This allows them to make\nnon-virtual calls when using the template, improving serialization\nperformance.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005136 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8a441a46ad56b6f1f9d15ecadcc604a8b4c27c59",
      "tree": "5aa5d28a4c5530e0109ee820a6e435fe0caccf35",
      "parents": [
        "5bb525ccf938e3b183814f92097a96bb85941e07"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Oct 04 21:13:36 2010 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Oct 04 21:13:36 2010 +0000"
      },
      "message": "THRIFT-940 use BOOST_LDFLAGS for unit tests, required to build on Mac OS X\n\nPatch: Christian Lavoie\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004431 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "351e22b52afcbe9b40e0933f80b06b479dff50f4",
      "tree": "bf08ca7a10a6adca594d44ae22111008f2ccb0ee",
      "parents": [
        "f261dd795c4004c72c7efd66c4b09f66299bfc83"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Aug 31 16:51:19 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Aug 31 16:51:19 2010 +0000"
      },
      "message": "THRIFT-503. cpp: Move the tests built by \"make check\" under lib/cpp\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991246 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ]
}
