)]}'
{
  "log": [
    {
      "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": "0e0eb354527cecdc22d1c0e6ecba06d7f747e728",
      "tree": "96002a775da4764d700e299d4bca379e678cf898",
      "parents": [
        "a0e11597163def6727896a77490899681c1eb6d6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:29 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:29 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Don\u0027t sleep in TFileTransport if we have data to write\n\nPreviously, the TFileTransport writer thread behaved as follows:\n\n  while true:\n    wait for main thread to notify new data in enqueueBuffer_\n    swap(enqueueBuffer_, dequeueBuffer_)\n    write out everything in dequeueBuffer_\n\nNow the behavior is:\n\n  while true:\n    if enqueueBuffer_ is empty\n      wait for main thread to notify new data in enqueueBuffer_\n    swap(enqueueBuffer_, dequeueBuffer_)\n    write out everything in dequeueBuffer_\n\nThe old behavior had a couple problems:\n- Writes that arrived while the writer thread was writing\n  dequeueBuffer_ wouldn\u0027t get processed immediately.  The writer thread\n  would always wait until another write occurred after it started its\n  condition variable wait, or until it timed out (3 seconds by default).\n\n- If the main thread was writing fast enough to fill up enqueueBuffer_\n  while the writer thread was still writing out dequeueBuffer_, it would\n  block the next write call until the writer thread swapped the buffers.\n  Unfortunately, the writer thread waits to do this until it the main\n  thread notifies it of another write.  This deadlock is only broken by\n  the 3 second timeout.  Performance then tanks, since the writer thread\n  now always sleeps 3 seconds each time around the loop.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005153 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": "105961de04cf064981b70e8ec8458c196e0ee17e",
      "tree": "1b23d9cc439f34e50bf5d771732be4d80c934596",
      "parents": [
        "67f56ec6ab7a89c72d607efe620f85a885fc088e"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:17 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:17 2010 +0000"
      },
      "message": "THRIFT-928. cpp: TNonblockingServer: use TSocket and support TClientInfo\n\nModify TNonblockingServer to use TSocket for I/O and support server\nevent handlers; this enables TClientInfo to function with a minor change\nto the processing loop.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005145 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "67f56ec6ab7a89c72d607efe620f85a885fc088e",
      "tree": "7da9591d90b66f230c893d42e2e7f54b433880eb",
      "parents": [
        "44ff76f5147010694187e6ae95a3978fd7a71fb2"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:16 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:16 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Remove TServerSocket as a friend class of TSocket\n\nThis is no longer necessary now that TSocket::TSocket(int) is public.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005144 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "44ff76f5147010694187e6ae95a3978fd7a71fb2",
      "tree": "107de4c06e6bbcb6674963a4e6e67f0bbf35cb63",
      "parents": [
        "64637511d2c987dc0df9d8466e7ce3626d005425"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:15 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:15 2010 +0000"
      },
      "message": "THRIFT-925. cpp: Add _VALUES_TO_NAMES enum map\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005143 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "64637511d2c987dc0df9d8466e7ce3626d005425",
      "tree": "c0374fb3bdc2e75a84900bc6de70def5e16e8e3d",
      "parents": [
        "a8af11dde6194e7449388148ed573347895b9229"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:13 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:13 2010 +0000"
      },
      "message": "THRIFT-924. php: Fix missing comma in generated PHP struct constants\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005142 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a8af11dde6194e7449388148ed573347895b9229",
      "tree": "691561ba85042a2f8ffe92c8fb2cbc377923a4c4",
      "parents": [
        "c3b3622158009ea9db85607a4901d05c63108875"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:11 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:11 2010 +0000"
      },
      "message": "THRIFT-926. cpp: Fix an errant argument to a debug statement\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005141 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c3b3622158009ea9db85607a4901d05c63108875",
      "tree": "5c5a7d4452958349f93bb7f6d5c67ea3a9938e12",
      "parents": [
        "23248713345e36d8ed66704a9a58a5f39a48d942"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:10 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:10 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Add profiling code to help conversion to C++ templates\n\nAdd some profiling code to track when potentially unnecessary virtual\ncalls are made in the thrift C++ serialization and deserialization code.\nThis can be used to help service implementors determine which places in\ntheir code should be updated to use an appropriate thrift template\nclass.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005140 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "23248713345e36d8ed66704a9a58a5f39a48d942",
      "tree": "e6aa7c9d97776a88be24ba1de8ca6cabcbacec05",
      "parents": [
        "b7762a032aa4190c6b99a5394e69b29aceb57281"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:08 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:08 2010 +0000"
      },
      "message": "THRIFT-928. cpp: Thrift Server Client Stats\n\nAdd the ability for Thrift servers to monitor client connections.  It is\nactivated by #including server/TClientInfo.h and creating 1) a\nTClientInfoCallHandler passed to the processor with setEventHandler()\nand 2) a TClientInforServerHandler passed to the server with\nsetServerEventHandler().\n\nThe result vector, showing active connections, provides client address\nand the thrift call it is executing (or last executed), the time\nconnected, and the number of calls made since connection.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005139 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b7762a032aa4190c6b99a5394e69b29aceb57281",
      "tree": "ebfc006c1ca2324ada5116d0edaa2f6717f7bf1e",
      "parents": [
        "8dfc732af635d5243194b74d4f411a551ff9a5ee"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:00 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:10:00 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Update C++ generator to emit templatized code\n\nWhen the \"templates\" option is passed to the C++ generator, it now emits\ntemplatized versions of the client and processor.  Generated types emit\ntemplatized read() and write() functions.\n\nThis allows the generated code to invoke the correct non-virtual\nTTransport and TProtocol implementations, resulting in faster\nserialization and deserialization.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005138 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8dfc732af635d5243194b74d4f411a551ff9a5ee",
      "tree": "75dfa730b6c7b66efa544f5daf1d51636e5cae99",
      "parents": [
        "e71115be6caa2f3afd6fa092a09fd41c2c355691"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:58 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:58 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Fix C++ compilation when using list\u003cbool\u003e\n\nThe STL specializes vector\u003cbool\u003e to store the values as individual bits, rather\nthan bools.  Therefore, when using a Thrift list\u003cbool\u003e, readBool() gets invoked\nnot with a bool\u0026, but with a std::vector\u003cbool\u003e::reference.\n\nTProtocol does provide a readBool(std::vector\u003cbool\u003e::reference) implementation.\nHowever, almost all TProtocol subclasses defined only readBool(bool\u0026), which\nhides the other overloaded versions of readBool().  As a result, the code\nworked only when accessing TProtocol objects via a \"TProtocol*\", and not\ndirectly via the subclass type.  When using C++ templates, protocol objects do\nget invoked via pointers to the subclass type, causing compile failures when\nstd::vector\u003cbool\u003e is used.\n\nThis change updates the various TProtocol implementations to also provide\nreadBool(std::vector\u003cbool\u003e::reference).\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005137 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": "6806fb836a6a846ae450f06a22deef1e59c2a983",
      "tree": "706559164d1e161ca94bc78ea658a97a52553d6f",
      "parents": [
        "e879c2f4db4bc0b7e5a0edfdf669c4fa477123a0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:52 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:52 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Convert protocol classes to use non-virtual functions\n\nUpdated the thrift protocol classes to use non-virtual calls for most\nfunctions.  The correct implementation is determined at compile time via\ntemplates now.  Only the base TProtocol class falls back to using\nvirtual function calls.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005135 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e879c2f4db4bc0b7e5a0edfdf669c4fa477123a0",
      "tree": "68b3554d062d4bbd46b14d0c4c0ceed0ba856982",
      "parents": [
        "72fd0b415f7fe4f84988b52346b380f17b528c90"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:50 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:50 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Convert transport classes to use non-virtual calls\n\nUpdate the thrift transport classes to use non-virtual calls for most\nfunctions.  The correct implementation is determined at compile time via\ntemplates now.  Only the base TTransport class falls back to using\nvirtual function calls.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005134 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "72fd0b415f7fe4f84988b52346b380f17b528c90",
      "tree": "237529b51ee0f6a66d94d6694785f2881c8cbf09",
      "parents": [
        "ea051ca793bfe68b554d4dd39b48cc237cae53d9"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:47 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:47 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Add shortcutted version of readAll() in TBufferBase\n\nJust perform a memcpy() if all of the requested data is available in the\nbuffer.  This improves performance a little in the common case.  It has\na bigger impact with the upcoming template changes.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005133 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ea051ca793bfe68b554d4dd39b48cc237cae53d9",
      "tree": "935c83bc5f0d33dac87466a281bfeb9bfd38ae9a",
      "parents": [
        "c6b4cab89c6da0272914a07b1f01491031df524f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:46 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:46 2010 +0000"
      },
      "message": "THRIFT-922. cpp: When reading strings, borrow first\n\nAttempt to get a pointer to the internal transport buffer before copying\nonto the heap.  This improves performance TFramedTransport and\nTMemoryBuffer, and with TBufferedTransport if the string fits within the\nbuffer.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005132 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c6b4cab89c6da0272914a07b1f01491031df524f",
      "tree": "69d677b9dbdee0b8fbd2a947054676323ae1ff23",
      "parents": [
        "f62126dbb30f1d9ec9a8744206c598016d366e7a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:45 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:45 2010 +0000"
      },
      "message": "THRIFT-923. cpp: Add completion notification to async clients\n\nAdd a virtual function \"completed__(bool)\" to xxxCobClient that is\ncalled by recv_xxx() after reception of a response (arg \u003d true) or an\nexception (arg \u003d false). This allows the TAsyncClient to intercede at\nthat point, permitting, e.g., the load-balancing of persistent\nconnections that would otherwise remain bound to a single server.\n\nA new \"no_client_completion\" flag inhibits generation of this mechanism.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005131 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f62126dbb30f1d9ec9a8744206c598016d366e7a",
      "tree": "15763d767ead1c053ee0b5f1b6356878f26de546",
      "parents": [
        "ef7200f6e825db54edfa4736192446c96b2ae1d4"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:43 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:43 2010 +0000"
      },
      "message": "THRIFT-928. cpp: Prefix function name with service name\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005130 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ef7200f6e825db54edfa4736192446c96b2ae1d4",
      "tree": "30115f97266d45ec4811f424441ae32000df8889",
      "parents": [
        "18cd0f03340c3eeead9b691e0d9b8a055035eec2"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:42 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:42 2010 +0000"
      },
      "message": "THRIFT-928. cpp: Include request/response size in processor callbacks\n\nRequired updating transport interface.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005129 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "18cd0f03340c3eeead9b691e0d9b8a055035eec2",
      "tree": "525bb4bc983c4ff375fb7454fbbb2f93c55c2989",
      "parents": [
        "5ddabb8e3f63a15874e436c9a650dc17f7dd7028"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:39 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:39 2010 +0000"
      },
      "message": "THRIFT-928. cpp: Make clients call writeEnd on their transports before flush\n\nChanging the order of these calls makes more sense from the perspective\nof logical operations.  It also simplifies the upcoming stats collection\ncode.  No clients should be affected.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005128 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5ddabb8e3f63a15874e436c9a650dc17f7dd7028",
      "tree": "4e22ac0f769e0dda25c8a77734020c5d9a408770",
      "parents": [
        "d7192063e141c8374c2256e9fea9b7571e5fc71e"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:37 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:37 2010 +0000"
      },
      "message": "THRIFT-923. cpp: Implement a fully nonblocking server and client\n\nThere are three major parts of this:\n1/ New callback-style interfaces for for a few key Thrift components:\n   TAsyncProcessor for servers and TAsyncChannel for clients.\n2/ Concrete implementations of TAsyncChannel and a server for\n   TAsyncProcessor based on evhttp.\n3/ Async-style code generation for C++\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005127 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d7192063e141c8374c2256e9fea9b7571e5fc71e",
      "tree": "8da8cd317b1394f2ced4bbe5da7f07addb784a43",
      "parents": [
        "8c535ab87c3eaa35f1c94ca9dd1aeb5930425c3b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:33 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:33 2010 +0000"
      },
      "message": "THRIFT-928. cpp: Processor-level event callbacks\n\n- Add a TProcessorEventHandler callback interface.\n- Add methods to TProcessor to hold an instance of the interface.\n- Add code to the compiler to make the processor call callbacks at key points.\n- Add an optional processor event handler to the test server.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005126 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8c535ab87c3eaa35f1c94ca9dd1aeb5930425c3b",
      "tree": "8bdf9e55f7962ea2ad51da2e8df8b248805895fc",
      "parents": [
        "1df96ce22fcfa3cbc2700eb4be29e5d457167d15"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:31 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 06 17:09:31 2010 +0000"
      },
      "message": "THRIFT-922. cpp: Revert the BufferBase part of r750585\n\nr750585 included two logically distinct changes, one of which was not\nreferenced in the commit message and was not reviewed by a C++\nmaintainer.  It was committed more-or-less by accident.  This patch\nreverts that part of the change since it conflicts with the template\ncode in some complicated ways.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005125 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1df96ce22fcfa3cbc2700eb4be29e5d457167d15",
      "tree": "a7cab95eaf9e0822c3f669211e9734477fcaf0ca",
      "parents": [
        "ded25bbe0d82ce151c633addd3b96d5c3e0c4dc1"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:28:10 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:28:10 2010 +0000"
      },
      "message": "THRIFT-945. java: TAsyncClient class\u0027s currentMethod is never set, hence a second call on the same client will fail if a previous call is ongoing.\n\nThis patch adds a test for the problem and fixes the issue by setting the current method after a call has been started.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004865 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ded25bbe0d82ce151c633addd3b96d5c3e0c4dc1",
      "tree": "1be1ea7deb5adf52ce6b97c11d2477442c39200b",
      "parents": [
        "c657447e0edd882ffc6144ca81c1f1d3cccae048"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:23:30 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:23:30 2010 +0000"
      },
      "message": "THRIFT-941. php:  Make PHP C Extension use the defined Protocol writeMessageBegin function\n\nThis patch causes the C extension to call into user-land to get the correct writeMessageBegin function.\n\nPatch: Chris Goffinet\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004864 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c657447e0edd882ffc6144ca81c1f1d3cccae048",
      "tree": "6876346b8e65935ecee2f07d1dc93dc72f113eaa",
      "parents": [
        "ffca7e17202bc045f6a5ac3489c9f6a5e3b61d4c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:12:33 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:12:33 2010 +0000"
      },
      "message": "THRIFT-932. hs: Haskell tests need to be run through \u0027make check\u0027 (and probably \u0027cabal check\u0027) too\n\nTests are now self-contained and correctly exit after running. There\u0027s a single run script which has improved error messages and defaults to the thrift binary compiled in the current source directory instead of those in PATH. And as a bonus hooks both cabal check and running the tests to make check. \n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004861 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ffca7e17202bc045f6a5ac3489c9f6a5e3b61d4c",
      "tree": "99a32275ad8e684c681afc3b866bbebb54fa0fc0",
      "parents": [
        "371372e83284a767354cf7f30a545cd0ec26d6b4"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:01:43 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Oct 06 00:01:43 2010 +0000"
      },
      "message": "THRIFT-944. hs: Support all version-4s of base\n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004859 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "371372e83284a767354cf7f30a545cd0ec26d6b4",
      "tree": "4518e008d41501ac972a4bc27f0895d13884d2fa",
      "parents": [
        "687c412c10cba2013fce0984dab18bb9aa49e8d9"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 17:08:08 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 17:08:08 2010 +0000"
      },
      "message": "THRIFT-933 : looks fine, and cabal check looks good as well\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004716 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "687c412c10cba2013fce0984dab18bb9aa49e8d9",
      "tree": "2d720f9a1216f9e57b8cb3f9c34fa7bb6dc203d2",
      "parents": [
        "ddcf32ab9cb342de899f6c572b5ecb64be2a8fb1"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 16:47:52 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 16:47:52 2010 +0000"
      },
      "message": "THRIFT-943: fix typo\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004709 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ddcf32ab9cb342de899f6c572b5ecb64be2a8fb1",
      "tree": "eecea15d32cf6720f860ff43c70e4b33a374e228",
      "parents": [
        "41d3058dbf45d3e771192052f1f15ba1b6daf5d3"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 16:45:50 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Oct 05 16:45:50 2010 +0000"
      },
      "message": "disable php extension if php-config is missing\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004707 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "41d3058dbf45d3e771192052f1f15ba1b6daf5d3",
      "tree": "9431866345872172f9410dfd775d0fc47eb3791c",
      "parents": [
        "9e7ba8cbacd5d09eb2af4c76eb82f7df5e0b8739"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 16:39:29 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 16:39:29 2010 +0000"
      },
      "message": "THRIFT-868. Make const values work properly with typdefs\n\nJust requires calling get_true_type in the right spot.  Because \"the\nright spot\" is under src/parse, get_true_type had to be moed from\nt_generator to t_type.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004703 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9e7ba8cbacd5d09eb2af4c76eb82f7df5e0b8739",
      "tree": "a7f99d7e03ac9d9a9aa8f7a17b139f9cceb5f1b0",
      "parents": [
        "3e07a8f23371ae9a96c55b4d81c31c9c57ace92b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 16:39:27 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 16:39:27 2010 +0000"
      },
      "message": "compiler: Move t_type::generate_fingerprint to a .cc file\n\nForcing all of the functions under src/parse to be defined in header\nfiles is silly and sometimes painful.  Createa a \"parse.cc\" file for\nfunctions that don\u0027t belong in header files.  To start, move\ngenerate_fingerprint there, because it requires including md5.h.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004702 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3e07a8f23371ae9a96c55b4d81c31c9c57ace92b",
      "tree": "a5fc3c5f2753607991f08bdd4d918b5322e08742",
      "parents": [
        "653eadab2fd65051d36b117237ba0a91596cb8bf"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 02:38:59 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 02:38:59 2010 +0000"
      },
      "message": "erlang: Use Automake SUBDIRS instead of a manual forwarding rule\n\nPreviously, lib/erl/Makefile.am would forward rules like \"all\" and\n\"clean\" to the src subdir by manually invoking a submake.  However,\nspecifying src as a SUBDIR accomplishes this more easily and also\nensures that other rules like \"distclean\" work.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004510 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "653eadab2fd65051d36b117237ba0a91596cb8bf",
      "tree": "576426e89e032c47fb5fa26be97922b305d4cbe7",
      "parents": [
        "8a441a46ad56b6f1f9d15ecadcc604a8b4c27c59"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 02:38:58 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 05 02:38:58 2010 +0000"
      },
      "message": "THRIFT-841. Exclude generated php and erlang Makefiles from \"make dist\"\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1004509 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": "5bb525ccf938e3b183814f92097a96bb85941e07",
      "tree": "456557d59dde6efedc845c02d0c8c82d628088e9",
      "parents": [
        "e1ae6b45d556dc6e92aeaaa855206be807fbe8a3"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 30 19:36:05 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 30 19:36:05 2010 +0000"
      },
      "message": "THRIFT-939. java: optional binary fields throw NPE on default byte[] getters\n\nThis patch deals with null ByteBuffers correctly.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1003212 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e1ae6b45d556dc6e92aeaaa855206be807fbe8a3",
      "tree": "08942a7b20b87f329ed21016bc9e9a88ae1039aa",
      "parents": [
        "f0755e95c7f69d48cc994b80c02b940d9878a386"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 17:44:45 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 17:44:45 2010 +0000"
      },
      "message": "bump versions to 0.6.0\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1002294 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f0755e95c7f69d48cc994b80c02b940d9878a386",
      "tree": "51be15a5578ff70812aa502d1a39f55c44f100a4",
      "parents": [
        "a18364ac88b035e9433a0238b8fbe75285aa04f3"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 15:06:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 15:06:38 2010 +0000"
      },
      "message": "update the CHANGES file\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1002207 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a18364ac88b035e9433a0238b8fbe75285aa04f3",
      "tree": "8e0e14db71433dde1ebd6f34a4fab028431ab535",
      "parents": [
        "ca67b899594004966f002a82ff126e0916f133d4"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 14:36:07 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 28 14:36:07 2010 +0000"
      },
      "message": "THRIFT-900. cpp: Unix domain socket\n\nThis patch adds a new Unix Socket transport.\n\nPatch: Roger Meier\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1002179 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ca67b899594004966f002a82ff126e0916f133d4",
      "tree": "8517205cd847f47315bf122a6cf39129e959efb7",
      "parents": [
        "b1a283f11e50650acc1b0730200b17bf8c5fac07"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Sep 28 03:30:17 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Sep 28 03:30:17 2010 +0000"
      },
      "message": "contrib/fb303: use pure_enums in C++ for compatibility\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1002000 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b1a283f11e50650acc1b0730200b17bf8c5fac07",
      "tree": "946a409d029cb0735b2a280e9c8baa2cdd2d9fc7",
      "parents": [
        "84a7c2a901ee11433ca755edad1c278172ba7644"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:11:01 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:11:01 2010 +0000"
      },
      "message": "THRIFT-912. java: Fix some bugs in SASL implementation, update protocol spec slightly\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001973 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "84a7c2a901ee11433ca755edad1c278172ba7644",
      "tree": "a1fd80a229ba9d0613bca15cd417f8e39d2f82ea",
      "parents": [
        "4abfb288ab76b2291b49e4f9439107c3bcb26d7a"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:02:53 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:02:53 2010 +0000"
      },
      "message": "THRIFT-931. java: Add log4j.properties missing from previous commit\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001971 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4abfb288ab76b2291b49e4f9439107c3bcb26d7a",
      "tree": "eb98338fdc092abc207f91a2bdf506fbb2dd736d",
      "parents": [
        "fcaa8f5364931155ba5675db7a02d898abf07998"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:01:31 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 28 00:01:31 2010 +0000"
      },
      "message": "THRIFT-890. java: Add README missing from previous commit\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001970 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fcaa8f5364931155ba5675db7a02d898abf07998",
      "tree": "3f344a18e6f6f0f09d0b17f02b3b239249267e91",
      "parents": [
        "a406b90fa27221119baf09625345487de26db0a7"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Sep 27 23:51:22 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Sep 27 23:51:22 2010 +0000"
      },
      "message": "THRIFT-931. java: Use log4j for Java tests\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001967 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a406b90fa27221119baf09625345487de26db0a7",
      "tree": "c3461d004a333d5f3372cc851749668264ab6eec",
      "parents": [
        "71a58a87648c03309d00d959af74ca45c7700cfd"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 23:37:44 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 23:37:44 2010 +0000"
      },
      "message": "THRIFT-787. compiler: Enums are not read correctly\n\nThis patch removes unnecessary enum value resolution code from all the individual generators. It\u0027s been unnecessary since forever ago when we made the compiler force the global resolution of values.\n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001966 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "71a58a87648c03309d00d959af74ca45c7700cfd",
      "tree": "57c7c1cccf26fbb367a1027342c36650697b2770",
      "parents": [
        "515c2381b71cf997c17a70c144bfc622a388c6a0"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 19:27:40 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 19:27:40 2010 +0000"
      },
      "message": "THRIFT-918 : better haskell tests\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001883 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "515c2381b71cf997c17a70c144bfc622a388c6a0",
      "tree": "004962a12a6f147c57b34909be656d29e41acd7a",
      "parents": [
        "fa6eaca7623c90a23adf088ee20f125cf7b2c388"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Sep 27 18:26:07 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Sep 27 18:26:07 2010 +0000"
      },
      "message": "THRIFT-890. java: Fix tutorial to build and run in trunk\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001856 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fa6eaca7623c90a23adf088ee20f125cf7b2c388",
      "tree": "ed6ee585013f2bedabe7d302f96dd56a93c69900",
      "parents": [
        "abafd79aeede6c1f20632e41ff6e80d99e6fe479"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 17:33:47 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 17:33:47 2010 +0000"
      },
      "message": "THRIFT-919 : updated haskell README\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001830 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "abafd79aeede6c1f20632e41ff6e80d99e6fe479",
      "tree": "bc2ab5e9a1366b91528c70361918e772dd54eea3",
      "parents": [
        "833ae492902c08ab13ebc4efa73adef0a4936dff"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 27 17:28:15 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 27 17:28:15 2010 +0000"
      },
      "message": "THRIFT-335. python: Initial implementation of TCompactProtocol\n\nSeems to work.  No interoperability testing with other languages yet.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001827 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "833ae492902c08ab13ebc4efa73adef0a4936dff",
      "tree": "fc300d98f1b97a0847b7e1bf962c78bc14640e8e",
      "parents": [
        "a5df7c7b0ef66819f56039f95f6d8b40a3197d8d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 17:26:02 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 17:26:02 2010 +0000"
      },
      "message": "THRIFT-920. cpp: C++ Test and Tutorial does not compile anymore due to the change within Enum handling\n\nPatch: Roger Meier and Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001826 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a5df7c7b0ef66819f56039f95f6d8b40a3197d8d",
      "tree": "a4f6ff9e950746e1c53941fe1411c985d7a3f557",
      "parents": [
        "3a3686fd51aaed9153a2d3f7299785753ba8e315"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 17:22:17 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 17:22:17 2010 +0000"
      },
      "message": "THRIFT-905: hook haskell into autoconf\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001823 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3a3686fd51aaed9153a2d3f7299785753ba8e315",
      "tree": "31fe7acd55b3a55d7515787e5c2b6714a74e09e3",
      "parents": [
        "0b4936dea5684d3b071d586492458e80c4e60a9f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 17:12:36 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 27 17:12:36 2010 +0000"
      },
      "message": "THRIFT-917. java: THsHaServer should not accept an ExecutorService without catching RejectedExecutionException\n\nThis patch catches RejectedExecutionException from requestInvoke and closes the client connection when that occurs.\n\nPatch: Ed Ceaser\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001820 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0b4936dea5684d3b071d586492458e80c4e60a9f",
      "tree": "c62b5eb8c193dc8ff2ec714735e17fd50be7e282",
      "parents": [
        "daef1c8ed02102936655b9101a30cc8737a9eb15"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 04:43:39 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Mon Sep 27 04:43:39 2010 +0000"
      },
      "message": "make check wasn\u0027t working because python namespace was incorrect\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001590 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "daef1c8ed02102936655b9101a30cc8737a9eb15",
      "tree": "5d8676ac1ec36c74be58570e57ad8607079caf97",
      "parents": [
        "7404f2a72ffa3ec4495625f6eebc9a3735efd56b"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:25:36 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:25:36 2010 +0000"
      },
      "message": "THRIFT-743: seems to compile and doesn\u0027t break other tests, so seems fine for now\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001353 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7404f2a72ffa3ec4495625f6eebc9a3735efd56b",
      "tree": "26b6bb83726415653a6b53db1b78dd617cb28178",
      "parents": [
        "0ee555b43d785cbe9eb44421655c3783483391b7"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:22:24 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:22:24 2010 +0000"
      },
      "message": "ignore generated artifacts\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001352 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0ee555b43d785cbe9eb44421655c3783483391b7",
      "tree": "26b6bb83726415653a6b53db1b78dd617cb28178",
      "parents": [
        "d7a6e5dfc9616eb622bde53229f707a6f23589a3"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:21:08 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:21:08 2010 +0000"
      },
      "message": "ignore generated directory\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001351 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d7a6e5dfc9616eb622bde53229f707a6f23589a3",
      "tree": "26b6bb83726415653a6b53db1b78dd617cb28178",
      "parents": [
        "96b2ccc0d4c9b19530d5dbd81643cff1ad6fb6c0"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:20:23 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Sun Sep 26 04:20:23 2010 +0000"
      },
      "message": "ignore test artifacts\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1001350 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "96b2ccc0d4c9b19530d5dbd81643cff1ad6fb6c0",
      "tree": "26b6bb83726415653a6b53db1b78dd617cb28178",
      "parents": [
        "7466bcd5d7244c464a337816f760fd50c362e5be"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 24 16:47:59 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 24 16:47:59 2010 +0000"
      },
      "message": "THRIFT-881. csharp: add csharp to the tutorial\n\nThis patch adds a tutorial for CSharp. It also moves the \u0027test\u0027 client and server into the tutorial, because they were not being used by the tests.\n\nPatch: Roger Meier\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1000953 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7466bcd5d7244c464a337816f760fd50c362e5be",
      "tree": "aa2b09463835fa0e151f7fc65bafbcd18d238516",
      "parents": [
        "6461d56d025893581fd9b06487b7c4788af3c0ed"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Thu Sep 23 22:28:09 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Thu Sep 23 22:28:09 2010 +0000"
      },
      "message": "THRIFT-914 : haskell bindings compile easier\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1000653 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6461d56d025893581fd9b06487b7c4788af3c0ed",
      "tree": "a53617106a5711d5f8a1906fb2dc00cf3ec1df3a",
      "parents": [
        "75a33e858fdeb2171a4ee973ee2e53d39e891d27"
      ],
      "author": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Wed Sep 22 02:33:06 2010 +0000"
      },
      "committer": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Wed Sep 22 02:33:06 2010 +0000"
      },
      "message": "THRIFT-911: fix for trailing commas in sets, lists, maps, consts\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999728 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "75a33e858fdeb2171a4ee973ee2e53d39e891d27",
      "tree": "ef607ff4c80dd1123a7ccd8f9827aa5345e00e44",
      "parents": [
        "f9e3c3b140f046bf726c79db77a2a02cdc452e9b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 22 00:48:56 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 22 00:48:56 2010 +0000"
      },
      "message": "THRIFT-906. hs: Improve type mappings\n\nThis patch fixes the type mappings to be more sane. It *will* break existing code, but the breakages should be well worth it.\n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999700 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f9e3c3b140f046bf726c79db77a2a02cdc452e9b",
      "tree": "b26acecc19e8b5e6484d2b70f8d3917c77edd5bd",
      "parents": [
        "61934780c6fd534015fdd568e85e8ee8d5b07dbe"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Sep 21 18:35:43 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Sep 21 18:35:43 2010 +0000"
      },
      "message": "THRIFT-910. Update .gitignore\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999526 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "61934780c6fd534015fdd568e85e8ee8d5b07dbe",
      "tree": "7fe1a5ab41a98dbc740d32f91f6af485736636ae",
      "parents": [
        "6a1fb17a25ce7b52b7c5e396adf86ceb96606d64"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 21 18:01:43 2010 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Tue Sep 21 18:01:43 2010 +0000"
      },
      "message": "THRIFT-907. java: update fb303 to compile on trunk\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999520 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6a1fb17a25ce7b52b7c5e396adf86ceb96606d64",
      "tree": "df7f8cca3980f6da2d22f6151a33c4c51b50b296",
      "parents": [
        "1237dcb099a068f83f31cc51df428f5c828d0511"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 21 16:30:58 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 21 16:30:58 2010 +0000"
      },
      "message": "THRIFT-909. rb: allow block argument to struct constructor\n\nThis patch allows the user to pass a block to generated structs\u0027 constructors. The block will receive and instance of the new object.\n\nPatch: Michael Stockton\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999487 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1237dcb099a068f83f31cc51df428f5c828d0511",
      "tree": "d79af03e648901967d1df27703c0c00e2e85c5f7",
      "parents": [
        "f38b2f10fb83284c9a449e9aec82fc2a10cba81e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 17:49:09 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 17:49:09 2010 +0000"
      },
      "message": "THRIFT-880. javame: JavaME code generator and runtime library\n\nThis patch adds a new generator and library that produces code suitable for use in JavaME environments.\n\nPatch: David Engberg\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999022 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f38b2f10fb83284c9a449e9aec82fc2a10cba81e",
      "tree": "4431a0ea5f81b839a01a8e698b047f01f19f05eb",
      "parents": [
        "e59a80fbf9d3be9eab5353355718fbd495fad0f1"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 17:41:40 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 17:41:40 2010 +0000"
      },
      "message": "THRIFT-901. hs: Allow the bindings to compile without -fglasgow-exts and with -Wall -Werror\n\nForgot a small chunk of the previous patch.\n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999019 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e59a80fbf9d3be9eab5353355718fbd495fad0f1",
      "tree": "5e53ce8b7cef50693c92c7eb698fb2349366de41",
      "parents": [
        "fd32d79afa6a728b6dc320c5e0eda108b0622f98"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 15:21:37 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 20 15:21:37 2010 +0000"
      },
      "message": "THRIFT-901. hs: Allow the bindings to compile without -fglasgow-exts and with -Wall -Werror\n\nThis patch makes the bindings compile with pedantic warning levels, and individually declares each required language extension.\n\nPatch: Christian Lavoie\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@998955 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fd32d79afa6a728b6dc320c5e0eda108b0622f98",
      "tree": "124fd29c85a51e0bf583f4a228f85d615633cdce",
      "parents": [
        "416eea9802d16645d4f4da8909abee5b4b51d95e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Sep 18 20:51:25 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Sep 18 20:51:25 2010 +0000"
      },
      "message": "THRIFT-323. csharp: TJSONProtocol\n\nThis patch adds support for the JSON Protocol to the csharp library. \n\nPatch: Roger Meier\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@998539 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "416eea9802d16645d4f4da8909abee5b4b51d95e",
      "tree": "1064cf63968ea84a2155055281d583bb4a3c76f3",
      "parents": [
        "83c47958707956a8812b2c5c91a4550f874cb055"
      ],
      "author": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Fri Sep 17 23:38:25 2010 +0000"
      },
      "committer": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Fri Sep 17 23:38:25 2010 +0000"
      },
      "message": "THRIFT-885: fix string encoding\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@998371 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "83c47958707956a8812b2c5c91a4550f874cb055",
      "tree": "45ce71e9b34d618c29e42b04fc4eb399842f6db9",
      "parents": [
        "d920765c66472d0011a7c6b3c8ce612317fa3801"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 17 20:17:21 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 17 20:17:21 2010 +0000"
      },
      "message": "THRIFT-899. rb: Ruby read timeouts can sometimes be 2x what they should be\n\nThis patch makes sure that we don\u0027t wait longer than necessary for timeouts.\n\nPatch: Ryan King\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@998303 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d920765c66472d0011a7c6b3c8ce612317fa3801",
      "tree": "2cf8593dfa6ee143cad7960ea95bbfd0fae79027",
      "parents": [
        "bdd6261b3336cbb7f3df2829e0c001f6591bb224"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 17 19:27:36 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 17 19:27:36 2010 +0000"
      },
      "message": "THRIFT-882. java: deep copy of binary fields does not copy ByteBuffer characteristics (arrayOffset, position)\n\nThis patch ensures that binary fields are copied correctly.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@998275 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bdd6261b3336cbb7f3df2829e0c001f6591bb224",
      "tree": "071104fa370723093a3d41f98a5d4ead9f9f68ad",
      "parents": [
        "8d7667c27f1b116386d7970a130439f02ac4491d"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 13 17:32:14 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 13 17:32:14 2010 +0000"
      },
      "message": "Fix enum value lookups in C++\n\nThe recent enum change was causing enums to break if used as constant\nvalues by the C++ generator.  The problem was that we were searching for\nthe fully-qualified constant name (enum_name.VALUE_NAME) in the enum\nvalues.  This didn\u0027t affect Java because it just uses symbolic names in\nthe generated code.  Fix it by grabbing the base name before doing the\nsearch.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996610 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8d7667c27f1b116386d7970a130439f02ac4491d",
      "tree": "4affee3a95131c7a11091803d0bb984f32f4d27d",
      "parents": [
        "d4235e0a47bde7a2fdbc9fc73dc6ca7231992278"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 13 17:32:13 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 13 17:32:13 2010 +0000"
      },
      "message": "Don\u0027t segfault if t_enum::get_constant_by_name fails\n\nThe recent enum change was causing t_enum::get_constant_by_name to fail\nin t_const_value::get_integer.  This was causing a difficult-to-debug\nsegfault.  Check for failure and throw an exeception.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996609 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d4235e0a47bde7a2fdbc9fc73dc6ca7231992278",
      "tree": "83c23dd8c22d7983c629b909e514f3b83026c4c5",
      "parents": [
        "a7420b6593998776871d55cbf415a0531c76a012"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 16:28:53 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 16:28:53 2010 +0000"
      },
      "message": "THRIFT-870. java: Java constants don\u0027t get Javadoc comments\n\nFix a trivial oversight.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996592 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a7420b6593998776871d55cbf415a0531c76a012",
      "tree": "9372057e8c93e9dab4e7e078db28e3a2f57cbf8a",
      "parents": [
        "a4c6d64e80e3d7f598ad97d213e83d66b7063a83"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 15:42:36 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 15:42:36 2010 +0000"
      },
      "message": "THRIFT-894. java: Make default accessors for binary fields return byte[]; provide new accessors to get ByteBuffer version\n\nThis patch causes the underlying ByteBuffer that backs a binary field to be hidden behind a default accessor that provides a byte[] interface. This should allow users who skipped 0.4 to update their generated code without breaking any of their other code. A new accessor has been added that allows a way down to the underlying ByteBuffer for those experts who want to take advantage.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996579 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a4c6d64e80e3d7f598ad97d213e83d66b7063a83",
      "tree": "2e3090a44cdb99737eeae7e758e4b9f91377b78f",
      "parents": [
        "a97414674c2afb52331662d8603bd9133aae7f9a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:31:50 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:31:50 2010 +0000"
      },
      "message": "java: tiny improvement to async client manager test, for real this time\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996329 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a97414674c2afb52331662d8603bd9133aae7f9a",
      "tree": "1e21c31583cc88b3cfd1f5f5af1c737a15eee333",
      "parents": [
        "76ecb91c3d7034c939d6df9316f571cbf9f7ce09"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:30:06 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:30:06 2010 +0000"
      },
      "message": "java: tiny improvement to async client manager test\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996328 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "76ecb91c3d7034c939d6df9316f571cbf9f7ce09",
      "tree": "2e3090a44cdb99737eeae7e758e4b9f91377b78f",
      "parents": [
        "6e05e25c8977953a46251f5abfaf111a3ae9607b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:29:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:29:38 2010 +0000"
      },
      "message": "THRIFT-897. compiler: Don\u0027t allow unqualified enum constant access\n\nFix some confusion in the java generator about adding the class name.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996327 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6e05e25c8977953a46251f5abfaf111a3ae9607b",
      "tree": "e761978dccc3213575a330f6f8b581a03352e709",
      "parents": [
        "cb0218f5c8fcc5e14016ea97f9cfc51009472246"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:49 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:49 2010 +0000"
      },
      "message": "THRIFT-897. compiler: Don\u0027t allow unqualified enum constant references\n\nMissed a spot.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996326 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cb0218f5c8fcc5e14016ea97f9cfc51009472246",
      "tree": "ecc73e081d69dfda0b62d48613de46d6a33bdf41",
      "parents": [
        "9f0a786dad1d6d0d737b89f96ba7ec90bf9096e2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:21 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:21 2010 +0000"
      },
      "message": "THRIFT-897. compiler: Don\u0027t allow unqualified enum constant references\n\nMissed a spot.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996325 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9f0a786dad1d6d0d737b89f96ba7ec90bf9096e2",
      "tree": "55f82378ab02bb36de3d6ea0ba1f25c16c963cf1",
      "parents": [
        "b6c50e56583d503ab7dcc843d4e09d99f8010ef3"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 14:38:36 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 14:38:36 2010 +0000"
      },
      "message": "THRIFT-897. compiler: Don\u0027t allow unqualified constant access to enum values\n\nThis patch makes it illegal to refer to enum values by just their names in the IDL. Now, you must also provide the enum type\u0027s name as well.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996320 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b6c50e56583d503ab7dcc843d4e09d99f8010ef3",
      "tree": "286e1ed8025f0cd60cfeb717b989d2ee097c77a6",
      "parents": [
        "13ad873d1815da49cf17f7a52c98895bfde011e1"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Sep 10 23:00:40 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Sep 10 23:00:40 2010 +0000"
      },
      "message": "THRIFT-895. cpp: By default, generate enums as class-scoped enums\n\nMost of the other Thrift languages either have enum values that are\nscoped to the type or emulate enums in that way.  Now C++ does the same\nby default.  \"enum Foo\" in a .thrift file will be generated as Foo::type\nso the values can be called Foo::value1, etc.  The \"pure_enums\" compiler\noption restores the old behavior.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996015 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "13ad873d1815da49cf17f7a52c98895bfde011e1",
      "tree": "db857e5d26961bddc40ea7025e886fb738d75232",
      "parents": [
        "04650afb872fbf62dc31426d7278261bf178fc4f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 19:08:00 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 19:08:00 2010 +0000"
      },
      "message": "THRIFT-896. java: TNonblockingSocket.isOpen() returns true even after close()\n\nThis patch makes TNonblockingSocket.isOpen() have more expected behavior.\n\nPatch: Eric Jensen\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@995939 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "04650afb872fbf62dc31426d7278261bf178fc4f",
      "tree": "39f0a128bea6cac2ee90f8df1634537e0883ec32",
      "parents": [
        "34628f3e7ae6f69bad0ce31af0e7008873839bd6"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 18:49:53 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 18:49:53 2010 +0000"
      },
      "message": "THRIFT-544. erl: multiple enums with the same key generate invalid code\n\nThis adds the enum name to the generated constants to avoid collisions.\n\nPatch: Ben Taitelbaum\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@995924 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "34628f3e7ae6f69bad0ce31af0e7008873839bd6",
      "tree": "f12da388eba7d551e705793464530747819cac27",
      "parents": [
        "855294b21340b01d145bcbee438a6817c127a32e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 16:16:01 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 10 16:16:01 2010 +0000"
      },
      "message": "THRIFT-250. java: ExecutorService as a constructor parameter for TServer \n\nThis patch adds a new constructor that accepts an ExecutorService.\n\nPatch: Ed Ceaser\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@995847 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "855294b21340b01d145bcbee438a6817c127a32e",
      "tree": "2f7b5273ade96de1c9f1f759e6673a7a3eec8296",
      "parents": [
        "d4837129729c85d49476cae08fb0c5ec84a2a811"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 08 21:47:45 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 08 21:47:45 2010 +0000"
      },
      "message": "THRIFT-888. java: async client should also have nonblocking connect\n\nThis patch adds optional nonblocking connect behavior.\n\nPatch: Eric Jensen\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@995262 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d4837129729c85d49476cae08fb0c5ec84a2a811",
      "tree": "8675cba9f78e99d93720747562cca82143b5a697",
      "parents": [
        "ef16420d54485fbc5310a3a1f4902e25032c652d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 08 00:06:35 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Sep 08 00:06:35 2010 +0000"
      },
      "message": "THRIFT-876. java: Add SASL support\n\nThis patch adds support for a SASL-secured transport to the Java library. In its current form, it only works for the blocking-IO servers.\n\nPatch: Aaron T Meyers\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@993563 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ef16420d54485fbc5310a3a1f4902e25032c652d",
      "tree": "3980ef13841cbc4e4e2f19956104ac33c6793df8",
      "parents": [
        "6a37b4d55ecb9414ddd905ee3c7227274f208442"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Sep 07 03:35:30 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Sep 07 03:35:30 2010 +0000"
      },
      "message": "THRIFT-698 - fix .app file, remove unused parts of build system, updated LICENSE to reflect changes\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@993207 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6a37b4d55ecb9414ddd905ee3c7227274f208442",
      "tree": "8064f82bec4b2ccfe3a7c754b0d94079d7f5600d",
      "parents": [
        "bbff4a8e7e2a4280462d649f1ac794e2283f074a"
      ],
      "author": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Sep 07 03:25:02 2010 +0000"
      },
      "committer": {
        "name": "Anthony F. Molinaro",
        "email": "molinaro@apache.org",
        "time": "Tue Sep 07 03:25:02 2010 +0000"
      },
      "message": "svn ignore and remove php artifacts left by phpize in bootstrap.sh\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@993205 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bbff4a8e7e2a4280462d649f1ac794e2283f074a",
      "tree": "c46720486de611547a0f79a1da33758cdb63663f",
      "parents": [
        "7a0825c34da505371aaaded74565108fa01f526c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 03 20:36:02 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 03 20:36:02 2010 +0000"
      },
      "message": "Fix to the catch-all namespace commit\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@992458 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7a0825c34da505371aaaded74565108fa01f526c",
      "tree": "d5bf5d749fdab783bba793ff85d08e4f72647faa",
      "parents": [
        "fb790d726297cfa85900db00214fc0f3a9d029e6"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 16:42:18 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 16:42:18 2010 +0000"
      },
      "message": "THRIFT-856. cpp: Building cpp library fails on OS X with malloc and free not being declared in scope\n\nThis patch adds include which seems to fix the problem for some people.\n\nPatch: James Clarke\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@992013 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fb790d726297cfa85900db00214fc0f3a9d029e6",
      "tree": "708ddf62b433af57bea98f4b5d951728f2b8f8d9",
      "parents": [
        "f723e8d5b59bc5322663431e82c75ccace59287a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 16:41:45 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 16:41:45 2010 +0000"
      },
      "message": "Allow \"*\" as a catch-all namespace.\n\nIn an IDL file, you can can now declare \"namespace * foo\",\nwhich will apply to any language not explicitly specified.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@992012 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ],
  "next": "f723e8d5b59bc5322663431e82c75ccace59287a"
}
