)]}'
{
  "log": [
    {
      "commit": "20c81ad74c53c102692adec0e3c68d413899cabd",
      "tree": "0da5aa00eada8c48106b08b07ff29077d3449d2b",
      "parents": [
        "92e3860cfbaab5132439b9bac2e18dba06494bcc"
      ],
      "author": {
        "name": "Chris Piro",
        "email": "cpiro@apache.org",
        "time": "Thu Mar 07 11:32:48 2013 -0500"
      },
      "committer": {
        "name": "Chris Piro",
        "email": "cpiro@apache.org",
        "time": "Thu Mar 07 11:32:48 2013 -0500"
      },
      "message": "THRIFT-1704: Tornado support (Python)\n"
    },
    {
      "commit": "0895dfe6c0f74f77cea1ed5c4e28ac0c0b27d525",
      "tree": "663305aadf3ef1b492924da4ea607a470a8fe206",
      "parents": [
        "b911b6a27c1dc9fa71e8bee8c54fde8ebfd847f7"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Dec 26 22:09:55 2012 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Dec 26 22:09:55 2012 +0100"
      },
      "message": "THRIFT-1797 Python implementation of TSimpleJSONProtocol\nPatch: Avi Flamholz\n"
    },
    {
      "commit": "0193149842924b65c5d3761d60055d298470d3ab",
      "tree": "a2f40b909010e1b5c45971b04c57a8daf20bc90e",
      "parents": [
        "8fa8aeac9a0f2ff4f11ac0ef73fc677bebd7a75f"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sat Dec 22 21:31:03 2012 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sat Dec 22 21:31:03 2012 +0100"
      },
      "message": "THRIFT-1801 Sync up TApplicationException codes across languages and thrift implementations\nPatch: Andrew Cox\n"
    },
    {
      "commit": "ad8154a7a82cfdd25e55d8488496ab8a7fce257f",
      "tree": "ab2fc5f95ac4e2c0920b63294d3ceb47f4559509",
      "parents": [
        "a58a9cb99f932f8e5a646255a6f539c4ba594da2"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Dec 18 21:02:16 2012 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Dec 18 21:02:16 2012 +0100"
      },
      "message": "THRIFT-1796 TJSONProtocol is not functional\nPatch: Avi Flamholz\n"
    },
    {
      "commit": "2b2560e836fcd07493bee15374f499b3eb77fe47",
      "tree": "9581503b9197b3c8213df72ffb67942fff3f9b24",
      "parents": [
        "0d866d7de28b51d5eabceae16cbbfb4f8f5cfb9b"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@cloudera.com",
        "time": "Mon Dec 10 14:29:59 2012 -0800"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@cloudera.com",
        "time": "Mon Dec 10 14:29:59 2012 -0800"
      },
      "message": "THRIFT-1773. Revert \"Thrift-1604:Python exxception handeling for changes from PEP3110\"\n\nThis reverts commit 6c5ee6ad2067e245ab5364f9a6019d8b63d7ed52.\n\nThis commit is being reverted since it broke compatibility with\nPython 2.4, which is the latest version included in RHEL5 releases.\n"
    },
    {
      "commit": "52820d09195729416e9b5b4894107bf332afc62e",
      "tree": "b6c2571610b5a9e3d633bf6d2e9b3e2b39f541ec",
      "parents": [
        "0069a4464012172f07b5f56064ed9ae6b79f9c52"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Thu Nov 08 23:11:14 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Thu Nov 08 23:11:14 2012 +0000"
      },
      "message": "THRIFT-1749 Python TSSLSocket error handling obscures actual error\nPatch: Tyler Hobbs\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1407311 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "05ab89a1286049567e8d6ada1833a7d75179a365",
      "tree": "371207e82c73c77855358540ecfdb9229135b3da",
      "parents": [
        "691ec0021338c143dd4444d00b87925c5ec3c10b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Nov 02 10:36:59 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Nov 02 10:36:59 2012 +0000"
      },
      "message": "THRIFT-1745 Python JSON protocol \nfix typo detected by cross language test suite\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1404914 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "85fb6de7f4c1ea6260f98bc24401593e8c974bc7",
      "tree": "1ca6bc04b6fb022e21f30095b87c093b4b8f2dc6",
      "parents": [
        "c9ce87fb02004b1864bc7e880b79fd411a2a2b9e"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Nov 02 00:05:42 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Nov 02 00:05:42 2012 +0000"
      },
      "message": "THRIFT-1745 Python JSON protocol \nTJSONProtocol.py: Frederic Delbos\n\nTHRIFT-847 Test Framework harmonization across all languages \nIntegration into py lib and test suite\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1404838 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6c5ee6ad2067e245ab5364f9a6019d8b63d7ed52",
      "tree": "c699696515dd54bf246bcb7b400b8a0b567ac7c0",
      "parents": [
        "5e022aa6865918d56616b9ef026337bd766ce04a"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Fri May 18 01:00:39 2012 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Fri May 18 01:00:39 2012 +0000"
      },
      "message": "Thrift-1604:Python exxception handeling for changes from PEP3110\nClient: py\nPatch: Jake Farrell\n\nPython PEP 3110 changed exception handling by replacing the \u0027,\u0027 with \u0027as\u0027. This was initially introduced in python 2.6 and in 3.0 the \u0027,\u0027 usage is no longer suppported. Since exception handling through out the py lib uses the \u0027,\u0027 it will need to be converted over to using the \u0027as\u0027 syntax for exceptions\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1339941 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cfff8569bb03a544f8896b5ba8611ccc4dfbb639",
      "tree": "37f9034d7f5d12750abdf21bc9276f9decfd1d15",
      "parents": [
        "3f5a264cd9cfafa478272d5d5d41928dc69ee39b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 14:24:55 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 14:24:55 2012 +0000"
      },
      "message": "THRIFT-1569 thrift: add stop() method to python TNonblockingServer\nPatch: Dave Watson\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325784 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3f5a264cd9cfafa478272d5d5d41928dc69ee39b",
      "tree": "b58329f3b2223021fc6c2ec06fbd6cde6c73c537",
      "parents": [
        "a3410db0c8af2331e14c2bb8b7632720ff96a254"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 14:20:08 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri Apr 13 14:20:08 2012 +0000"
      },
      "message": "THRIFT-1568 Thrift: Add User-Agent header to Python THttpClient\nPatch: Dave Watson\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325781 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fa392e91adae6c03adcfd1f7c03c0729dbd15b25",
      "tree": "43e397112e3d8eb3a268eb87588ea9db3f55ca4a",
      "parents": [
        "02c827bcfe18c1ddb7450741a88bcb753eb1a063"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Apr 11 22:15:15 2012 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Apr 11 22:15:15 2012 +0000"
      },
      "message": "THRIFT-1560 Add setCustomHeaders() method to python thrift lib\nPatch: Dave Watson\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325041 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6972041392314d526584e733781ca382a960b295",
      "tree": "f68da7e2d3d4187a9c1ce755417c7c735b7365fa",
      "parents": [
        "9704630bab3dc502bbd216380f9bb5e6b13228f0"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 03 17:32:30 2012 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 03 17:32:30 2012 +0000"
      },
      "message": "THRIFT-1480. py: remove tabs, adjust whitespace and address PEP8 warnings\n\nThis patch addresses a host of PEP8 lint problems.\n\nPatch: Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1226890 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1290d42162c1de8a256d3db9c118d308f5cceb84",
      "tree": "5b2c5a0c2c4889ffbbc539987c30a55f16bdc0e0",
      "parents": [
        "f55f33bfbacde6fb83892aef14b4cb4751517180"
      ],
      "author": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Wed Oct 26 12:36:17 2011 +0000"
      },
      "committer": {
        "name": "Jake Farrell",
        "email": "jfarrell@apache.org",
        "time": "Wed Oct 26 12:36:17 2011 +0000"
      },
      "message": "THRIFT-1407: Typo in Python socket server causes Thrift to fail when we enable a global socket timout\nClient: py\nPatch: adalc\n\nFixes typo in python socket server timeout\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1189170 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c3f033f40b382e94c99f0cad2e79924bb7ac3e9b",
      "tree": "48436c0c0423c36e5012c68e63863af685e634cc",
      "parents": [
        "a93848b68414c921f50062c970e2c9a5e6914435"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Sep 13 13:54:05 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Sep 13 13:54:05 2011 +0000"
      },
      "message": "THRIFT-1342 Compilation problem on Windows of fastbinary.c\nPatch: alexandre parenteau\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1170180 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f4eec7a57b4c6ab08a545033fd3840586510ae8b",
      "tree": "3ebe40518de52c2ea6a615cb5d1a876c95a29d1e",
      "parents": [
        "b288050682c33761a96682c84f4e4edd4301e9d1"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Sep 11 18:16:21 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Sep 11 18:16:21 2011 +0000"
      },
      "message": "THRIFT-1115 python TBase class for dynamic (de)serialization, and __slots__ option for memory savings\nPatch: Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1169492 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "345ecc739ab145f9a0e7c27bbcb4ee72ccd3a86b",
      "tree": "cf0122091b05a989f08d2cb6398f1e36758486f2",
      "parents": [
        "c1905587872fe7a78adcc9d8c6d0c091ac7b80cc"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Aug 03 09:49:27 2011 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Aug 03 09:49:27 2011 +0000"
      },
      "message": "THRIFT-690 add new ApplicationExceptions (INTERNAL_ERROR, PROTOCOL_ERROR) to the following languages: as3, c_glib, cocoa, cpp, erl, hs, js, nodejs, ocaml, perl, py, rb\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1153412 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "54df97c507aa4fb49523166b477bd82762fd9711",
      "tree": "5cc0cf2cda8b240110a345d55679dc1c4534b91b",
      "parents": [
        "b7bd5626aa1858c3b315c0df252bf67de6923feb"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jul 13 18:11:29 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jul 13 18:11:29 2011 +0000"
      },
      "message": "THRIFT-1208. py: Compact protocol always reads and writes booleans as true\n\nPatch: liwei\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1146180 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1606659171d9ee8885d5806d6030ec39399b3b08",
      "tree": "c3692a449db77be87532a07d6ac9575cc698f6d6",
      "parents": [
        "42a6fa4b29d74028ee943b3da17d5eccf7fd897a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 22 18:06:04 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 22 18:06:04 2011 +0000"
      },
      "message": "THRIFT-1103. py: TZlibTransport for python, a zlib compressed transport\n\nThis patch adds a new TZlibTransport to the Python library and extends the test suite to exercise it.\n\nPatch: Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1084276 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5040911bfab39b5c9f2a0d715cea0ee9012f7450",
      "tree": "55d5743795503b8df6c7a66576e473ed0743d34a",
      "parents": [
        "59d4efda817f73eb195f47ff9f04cb0f4ec47525"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 21 17:59:49 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 21 17:59:49 2011 +0000"
      },
      "message": "THRIFT-1100. py: python TSSLSocket improvements, including certificate validation\n\nThis patch adds a number of features to TSSLSocket and TSSLServerSocket.\n\nPatch: Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1083880 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "59d4efda817f73eb195f47ff9f04cb0f4ec47525",
      "tree": "38aba98ac496e4bce5b9ea0bf0e4bdbb3f888f98",
      "parents": [
        "81a13cbd5d2a5fbd9a81cd2b19c9916cb88c942e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 21 17:38:22 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 21 17:38:22 2011 +0000"
      },
      "message": "THRIFT-1094. py: bug in TCompactProto python readMessageEnd method and updated test cases\n\n\nThis patch fixes a TCompactProtocol bug and expands the test cases to exercise the problem.\n\nPatch: Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1083877 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "df4cffd34a54988a3faa50c3ddb33d263fa08693",
      "tree": "0c01fe989b8c1684bbee70fb2533fa04815098a2",
      "parents": [
        "c9929306ba8eafaee9bced7fd6521ec0bf6b876a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 15 17:16:09 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 15 17:16:09 2011 +0000"
      },
      "message": "THRIFT-1093. py: several bugs in python TCompactProtocol\n\nPatch; Will Pierce\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1081864 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a48b7d6e52eb3fcc9a986cde654277ea48a29951",
      "tree": "33e35b614ca3842fde57eb24b1b943800e64f9ab",
      "parents": [
        "0244e9353f01a780ae3d7edd122288c23ce8652c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 09 18:05:58 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 09 18:05:58 2011 +0000"
      },
      "message": "THRIFT-1083. py: Preforking python process pool server\n\nPatch: Dvir Volk\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1079913 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2b969add48431feab8c1769e05e15a572fba1e3d",
      "tree": "b60f4b7e1b9ca609dbb5819d7a8c97de7381d54e",
      "parents": [
        "f1ed92696906c8796936754a3cdea5740d79639c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 22 18:20:53 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 22 18:20:53 2011 +0000"
      },
      "message": "THRIFT-1068. py: Python SSL Socket Support\n\nA python implementation of TSSLSocket.\n\nPatch: Kevin Worth\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1073447 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e0498c984eae35b847f978cf24cf5dd88a16d3e9",
      "tree": "27a7dfe5eaac21d11ccd2d449b5df6659d391d21",
      "parents": [
        "6a084da48f1177eec38a6ddef982247cc343ff94"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jan 26 17:54:02 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jan 26 17:54:02 2011 +0000"
      },
      "message": "THRIFT-1049. py: Allow for TServerSocket python library to bind to a specific host\n\nThis patch adds a new host argument to TServerSocket that allows it to bind to a specific host.\n\nPatch: Jake Farrell\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1063806 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": "a9ca25a81ec3d5a82c03ca31e2cfad3c4b87c674",
      "tree": "3fede88f1ee8022217b3fbf19226e24bd69a62a6",
      "parents": [
        "c564fa569289240fb210c245b2b1125d759b93e1"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 15:36:03 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 15:36:03 2010 +0000"
      },
      "message": "THRIFT-666. python: Allow THttpServer\u0027s responses to be overridden\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991986 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c564fa569289240fb210c245b2b1125d759b93e1",
      "tree": "cf9b0bc7a52d4c0e4e13be18c3a21f0e9cbc18df",
      "parents": [
        "8ede81860c5b6c93645c62e871c213b4188e7162"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 15:36:00 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Sep 02 15:36:00 2010 +0000"
      },
      "message": "THRIFT-596. python: Make the TBufferedTransport read buffer size configurable\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991985 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d6a02ff99bcee734d5335c91f5ada41d7322ecb4",
      "tree": "da4d50582679554e45b64ed0a50e2cffad2da1d6",
      "parents": [
        "f2ef59ffbf7819d7e89e73ba78c5900778cbe293"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 15:14:27 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 15:14:27 2010 +0000"
      },
      "message": "THRIFT-597. py: Python THttpServer performance improvements\n\nThis enables buffered I/O and ThreadingMixin.\n\nPatch: David Reiss\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991971 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f2ef59ffbf7819d7e89e73ba78c5900778cbe293",
      "tree": "d460751e0334c1f52dc345a61495c2bcc536a0d8",
      "parents": [
        "472eb3c94ce44b32ed2a6d73bd0d3b2786e928f7"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 15:12:06 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 15:12:06 2010 +0000"
      },
      "message": "THRIFT-598. py: Allow Python\u0027s threading servers to use daemon threads\n\nPatch: David Reiss\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991969 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "727d67dcfad44784b1ef552d4744f739a8fe7d3c",
      "tree": "a6117cd628cd37925775c46dd126347042fbcbb4",
      "parents": [
        "010f1e09d09d7a5169b3468399928b6e807aab29"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 01:00:19 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 01:00:19 2010 +0000"
      },
      "message": "THRIFT-721. py: THttpClient ignores url parameters\n\nRespect query string in THttpClient and generated remotes. Also, add an error message on unknown methods.\n\nPatch: Thomas Kho\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991786 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "686d92ce66c100e8fc9671ea8a021aca21adc5cf",
      "tree": "c9c10802c6e9cd3baa756447ce48ecb77cec0e2a",
      "parents": [
        "e02d6118bfe00f74fec801efcb677ef17dfe928e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 00:36:18 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Sep 02 00:36:18 2010 +0000"
      },
      "message": "THRIFT-824. py: TApplicationException.__str__() refers to class constants as globals\n\nRefer to constants via \u0027self\u0027.\n\nPatch: Peter Schuller\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@991781 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "73af3b7c4c3b3d71c12544ed800ec9b1c537c783",
      "tree": "68a49cc4f7d886903fabc8372beca9dfb2659e11",
      "parents": [
        "bcfb72a60badf802f4d8275453b26e89437bdaa5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Aug 30 21:57:07 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Aug 30 21:57:07 2010 +0000"
      },
      "message": "THRIFT-869. python: Disguise ECONNRESET as EOF on BSD\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@990955 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b7887b860bb37148761a81b34f1302939f0329cd",
      "tree": "c6ec8fc984fe5ba6b9ed29b8f7295af227533a99",
      "parents": [
        "d58ccec66090afbbef68471cb635ad731ef03319"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 09 21:30:54 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 09 21:30:54 2010 +0000"
      },
      "message": "THRIFT-789.  Files missing proper Apache license header\n\nAdded the Apache license header to a bunch of files that were missing it.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@953167 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cb6d9708e2673b92aec3ee6bbff7e67b5b0a171f",
      "tree": "f5249c2a1acce487a4d5d27b2e870f3f3a6582c5",
      "parents": [
        "332a625118c87d1ea3540aefff3f5ad8ddf8428b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 18:14:54 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 18:14:54 2010 +0000"
      },
      "message": "THRIFT-438. py: Add support for Twisted.web in servers and clients\n\nThis patch adds a Twisted.web resource that can be used for processing incoming Thrift requests over HTTP\n\nPatch: Esteve Fernandez\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@939413 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c548b3dd6312e02df04ca822157c1e41193731c9",
      "tree": "4806597aca784581d8f5b21cdd4083822af2e490",
      "parents": [
        "ff3d249d413448489095991be7ce3176dbb87722"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:18 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:18 2010 +0000"
      },
      "message": "THRIFT-475. python: Eliminate DeprecationWarning\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920661 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ff3d249d413448489095991be7ce3176dbb87722",
      "tree": "e6b71aa1ba4b99ff178bfb6fdde6e9b57289033a",
      "parents": [
        "bec15e5105cae849b8095210e6ed6deac09c443d"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:16 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:16 2010 +0000"
      },
      "message": "THRIFT-658. python: Add THttpClient.setTimeout()\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920660 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6acc269d1883c822595ab5f346c6e4c1e1b2724c",
      "tree": "c2c0b852bd0fd114cb1a6b27421b73560f630b7e",
      "parents": [
        "dee6d4260c2cca0917d5a921460d16f062ab27d6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Feb 26 00:56:02 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Feb 26 00:56:02 2010 +0000"
      },
      "message": "THRIFT-695. python: [de]serialize convenience functions\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@916508 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f5dea4c7f31703cdc0c347eb7ec429fc5864afb4",
      "tree": "e8aad41f828fc5ad8674b1c34fd02b1a9dad682c",
      "parents": [
        "9af23d9327277a791c8b22c4323b8e17e2bfc378"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Thu Dec 03 01:18:44 2009 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Thu Dec 03 01:18:44 2009 +0000"
      },
      "message": "THRIFT-637. python: Fix mixing of oneway and regular requests in TNonblockingServer\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@886646 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "034c49f0fcf95f13982de528f19760f5ed01617e",
      "tree": "99f43208fcd90ef32a501f7aff788fcb526ec06f",
      "parents": [
        "73380097e1afa0e8ea94eb40f6c17c8065f022ba"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 28 17:07:14 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 28 17:07:14 2009 +0000"
      },
      "message": "THRIFT-612. python: Fix exception bug in TFramedTransport.cstringio_refill\n\nreadFrame was being called without \"self.\"\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@830673 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bff2a35adf75e5da3483facab647601a73a1f9ee",
      "tree": "88da87c4af3377005227a4387d3e99a86f391150",
      "parents": [
        "db40d26f4a61c1c2ae04997a6cc475bfd585d3e4"
      ],
      "author": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Thu Sep 24 10:22:00 2009 +0000"
      },
      "committer": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Thu Sep 24 10:22:00 2009 +0000"
      },
      "message": "THRIFT-586. python: TSocket incorrectly sets the exception type when an end of file error occurs\n\nTTransportException\u0027s type was set to \"Transport not open\" in some cases, which should\nbe its message.\nUse named arguments and set the type for TTransportException to END_OF_FILE in TSocket#read\nand TSocket#write.\n\nreviewer: dreiss\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@818429 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d3571c2acef1663e15a925b871b42f1bd2555378",
      "tree": "848243ff41db5cd1bcc9ae65ccabcbebddba0b44",
      "parents": [
        "c5a7c151e109869f4c7f70d2a4b745d3fed91b77"
      ],
      "author": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Fri Jul 17 18:35:52 2009 +0000"
      },
      "committer": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Fri Jul 17 18:35:52 2009 +0000"
      },
      "message": "THRIFT-535. py: Twisted Thrift protocol max length is too small (fix off-by-one error in MAX_LENGTH)\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@795187 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c5a7c151e109869f4c7f70d2a4b745d3fed91b77",
      "tree": "bb39c208768ab7e938b7325513671500f0b63436",
      "parents": [
        "fdcb710cc48cd3a28df89c6cb3d2fe55ad529275"
      ],
      "author": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Fri Jul 17 18:18:19 2009 +0000"
      },
      "committer": {
        "name": "Esteve Fernandez",
        "email": "esteve@apache.org",
        "time": "Fri Jul 17 18:18:19 2009 +0000"
      },
      "message": "THRIFT-535. py: Twisted Thrift protocol max length is too small\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@795176 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a043be31fc88b5f3777b3311c64e9fffbe9de5b1",
      "tree": "a73795d4e41594ce16385b09ccc67963781d6e0b",
      "parents": [
        "9aa716cf0f5fee6ebf549ef0949b0bbc2bf325dc"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue May 12 02:17:43 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue May 12 02:17:43 2009 +0000"
      },
      "message": "THRIFT-495. python: Raise a TTransportException if TSocket is not open\n\nPreviously, TSocket.write would raise an AttributeError if the transport\nhad not been opened.  A TTransportException with the code set to\nNOT_OPEN is more appropriate.  The cost of the check should be\nnegligible, since TSocket.write is already fairly expensive (it does a\nsystem call).\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@773762 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "deda141392d0b242e1fce0c0682ceedb45642a18",
      "tree": "b3341930bc7cc0965fa6d725f728774fae8c361c",
      "parents": [
        "b5714ef91ec7210c65e07c8d635c224795f22919"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:22:31 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:22:31 2009 +0000"
      },
      "message": "THRIFT-388. Create a \"ONEWAY\" message type that is an alias for \"CALL\"\n\nPave the way for a new message type for oneway function calls.\nFor now, just define the constant in all languages and make\nserver implementations treat it the same way as a normal call.\nOnly C++ and Erlang currently check the message type (on the\nserver side).\n\nThere is a little bit of redundancy in the Erlang code, but\nthe alternative is a bit gross, and this split-up will be\nnecessary eventually when we start handling one-way calls\ndifferently.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@761389 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ea2cba8ba8484a8d4e669c02dd97b3b2445ef322",
      "tree": "6be4a3bf2d069a006c9a15f5ee47a1893a176f4d",
      "parents": [
        "4bc4231040186d9e0c35ff4d8211ce7b7e43aab5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Mar 30 21:35:00 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Mar 30 21:35:00 2009 +0000"
      },
      "message": "THRIFT-387. Add license headers to a bunch of files\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@760189 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2aa289072b0ca427b2afc79793310c910596a8b5",
      "tree": "f17d3c7861f44cfe5f315950dbeac569b21a1cc5",
      "parents": [
        "f33c7c670b189fbb58eb9cb868703ca99a107b7c"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 06:22:18 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 06:22:18 2009 +0000"
      },
      "message": "THRIFT-154. python: Make THttpClient take a URL in its constructor\n\nSupport https in the process.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758532 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d73255d1acfd83ca65d3293a0d6a6c8f25c834f4",
      "tree": "fd5a4a1fa59990ed1074ccad7a4537838b09046d",
      "parents": [
        "a528f54eeb40608e266fcb968e43b26ba57489c6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 22:51:02 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 22:51:02 2009 +0000"
      },
      "message": "THRIFT-329. python: Make TServerSocket.close() work properly\n\nChanging the order of inheritance makes \"close\" refer to the\n(correct) TSocketBase method, rather than the (stub)\nTServerTransportBase method.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758072 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a528f54eeb40608e266fcb968e43b26ba57489c6",
      "tree": "6301f57bd9807820e1fe7ff67d19ee4a8ed7d348",
      "parents": [
        "2f20ae45fbab56b502e67c0ae818e010ab37a562"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 22:48:40 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 22:48:40 2009 +0000"
      },
      "message": "THRIFT-360. python: Make fastbinary skip struct fields with the wrong type\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758071 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7c1f6f8e338e9491a2bbe777bfd30d7f1748a727",
      "tree": "061a88c167afda25f034b20e5cfc51d49656bf92",
      "parents": [
        "cecbed81c806e40ca0342d7b8e265d2bf55a2f04"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:10:24 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:10:24 2009 +0000"
      },
      "message": "THRIFT-155. python: Reopen THttpClient on a flush\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757996 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6ce401dd555cf7928e1129d9ab31aa7be4bc7e9f",
      "tree": "6ee5161e938b5afd1b9b0dac5b4545af3d66e96b",
      "parents": [
        "c51986f43897a64531935653cb4a2462f6cd7e11"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:58 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:58 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in misc places\n\nThis is mostly an internal-only change.\nIt affects docstrings, messages, variables, test cases, etc.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757992 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c51986f43897a64531935653cb4a2462f6cd7e11",
      "tree": "da8728080bf9265c2aa6eb8d72877b384ea94c80",
      "parents": [
        "473292500dc553e537aad0544f9fbb31d0fbf3d0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:25 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:25 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in comments\n\nThis is an internal-only change.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757990 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "127d01cb0635dcf9c4650c00ef822b9f6bd7be85",
      "tree": "0ee5b95ec6992196a5fbf30a054cdd437c1c25e3",
      "parents": [
        "2ad9eb7c5ec9db4c9c9ca334e7f04959154db56b"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 01:40:56 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 01:40:56 2009 +0000"
      },
      "message": "THRIFT-391. py: Fix memory leak in fastbinary\n\nAuthor: Alexander Shigin\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757634 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4980910100f67b1353040529257825af946f8e6b",
      "tree": "43c886ab2af60493f18a28b7bad9de93665cdb91",
      "parents": [
        "3696d643d0bf233fc2b57e5941cf8d416999a166"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Mar 18 23:14:13 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Mar 18 23:14:13 2009 +0000"
      },
      "message": "THRIFT-362. python: Detect endianness on Solaris\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755776 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e8d3c47944139364d0573fa82c3d5ba877df13e9",
      "tree": "8466571c7cfc4eea56e313b5836c204a3543c755",
      "parents": [
        "e43f7e0925ae2a5c172596dd404a7d44e1cfc8f0"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 22:13:46 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 22:13:46 2009 +0000"
      },
      "message": "THRIFT-148. py: One more time, reapply the most *recent* patch\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@749795 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e43f7e0925ae2a5c172596dd404a7d44e1cfc8f0",
      "tree": "8c1386a99a5dc086d6de22a0f156dbc0dcbdaee0",
      "parents": [
        "120ff31d11a077c3ba7dc981762f35392e6c93fb"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 22:03:57 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 22:03:57 2009 +0000"
      },
      "message": "THRIFT-148. py: Add un-commited file missing from 749510\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@749786 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b139f64448f4ae89a24029f0588a494308e84e74",
      "tree": "4ff7a4c3fdb0312f6a5868b8f6fb9219f53cc48a",
      "parents": [
        "554ea6f936c3ad2c3317e6ba94356c65b088536f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:46 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:46 2009 +0000"
      },
      "message": "THRIFT-325. Remove a bunch of uses of the old command line format\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745242 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fdd8b5ab013be680eca7d6a241e6ebb39be0ff7c",
      "tree": "e82ea1913136f21d10a893aabec6b6ab8d8611de",
      "parents": [
        "d831a21773d789fae1b1d0b52b3d6378f377b8b1"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:06:08 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:06:08 2009 +0000"
      },
      "message": "THRIFT-340. python: Detect endianness properly on FreeBSD\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745223 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0b7d6fa5ee27dcfe60ed946c99fbc1c664bb4057",
      "tree": "8a8d7fded45f797c0155f0a16d08371839c3c287",
      "parents": [
        "d20a1d3619efa9edef51364d927bc9a78b37217f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:36:35 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:36:35 2009 +0000"
      },
      "message": "THRIFT-314. Purge reflection.limited\n\nThis was a feature designed to allow a Thrift server to report\ninformation about its interface.  However, the feature has\nsignificant design problems, and is presence is currently causing\nconfusion without doing any good.  Therefore, it is being removed.\nIt will always be in source control if and when we are ready to\ncome back to it.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741824 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f78ec2bc66d3a9fcfd63b9bdf49fc9bdc68b4cf7",
      "tree": "0dfedf9b5540ac188564c9969ae0b8d2c318ac18",
      "parents": [
        "1fe17774eb1059bc784a5c3be46b208a2fc0a63c"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:59:32 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:59:32 2009 +0000"
      },
      "message": "THRIFT-195. python: Add a simple THttpServer\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739638 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1fe17774eb1059bc784a5c3be46b208a2fc0a63c",
      "tree": "baa9862f692b281daa6f0c5d4500b7f91c627e10",
      "parents": [
        "4c591c95a51368a817bf40157e46831ecffef71c"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:59:27 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:59:27 2009 +0000"
      },
      "message": "python: Add TFileObjectTransport\n\nTFileObjectTransport is a Thrift transport that wraps a\nPython-style file-like object.  This is necessary to add\nmethods like isOpen and readAll.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739637 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4c591c95a51368a817bf40157e46831ecffef71c",
      "tree": "20a2b49923c8d9b94fd95293e09c90c03152b9b5",
      "parents": [
        "647d30d218d206474d583d0189bb8169f741e7d9"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:25 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:25 2009 +0000"
      },
      "message": "THRIFT-212. python: Make TFramedTransport implement CReadableTransport\n\nThis involved adding a few methods to provide lower-level access to the\ninternal read buffer.  This will allow us to use TBinaryProtocolAccelerated\nwith TFramedTransport.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739632 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "647d30d218d206474d583d0189bb8169f741e7d9",
      "tree": "f1927aa52cffecdf142d9f7126b8d188ea3831f2",
      "parents": [
        "fb695b77d3b5ac69ba7011cddd066d55e23c3b0f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:20 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:20 2009 +0000"
      },
      "message": "python: Make TFramedTransport use a cStringIO for reading\n\nTested by running a client against a framed-transport server.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739631 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fb695b77d3b5ac69ba7011cddd066d55e23c3b0f",
      "tree": "99639aae1f0f4c68458ce004b462fe1f2f36f32a",
      "parents": [
        "9813cbeda6f15be9bcbfb163ce475f82d7f02839"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:16 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jan 31 21:39:16 2009 +0000"
      },
      "message": "python: Eliminate the option of TFramedTransport to not frame\n\nWe\u0027ve done this in a few other languages.  All the tests still pass.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739630 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "74421273ad97359402556428f23afacfe31ce978",
      "tree": "66acebd643d6a06acb98f4ce713c4493e169b2da",
      "parents": [
        "762e9bd15f84e8dc45eec60308a0519be3bdda9a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 07 23:09:31 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 07 23:09:31 2008 +0000"
      },
      "message": "THRIFT-67. python: Add TNonblockingServer\n\nThis TNonblockingServer is very similar to the C++ implementation.\nIt assumes the framed transport, but it uses select instead of libevent.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@712306 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4f1bbc7e8a28cdc1621f6cc9627a7cbd5cc74546",
      "tree": "18406ded2428d5d8968192f1857f3b9f1c868f22",
      "parents": [
        "fc8a1e04693c95ccad02bfa760064606c2358f5a"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Oct 14 22:05:11 2008 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Oct 14 22:05:11 2008 +0000"
      },
      "message": "THRIFT-170: Buffered transports leave data in write buffer on failed flush\n\nReviewed By: mcslee\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@704714 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "58434e698865101096e28fb2ea98282133d55e2c",
      "tree": "731a971a680e9c4b9be6d59f2990e8fcc2023d0c",
      "parents": [
        "8684554e2947b7b0e6b38ebd4f5f80b0be83ddfe"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 07 21:08:10 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 07 21:08:10 2008 +0000"
      },
      "message": "THRIFT-108. python: Fix call to PyDict_Next in fastbinary.c\n\nThe position parameter is supposed to be a Py_ssize_t*, not an int*.\nThis was probably just an oversight in the original patch, and it\nwas preventing maps from serializing properly on x86-64.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@702640 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e29995e75be58281975def90935c5894e3eb98c7",
      "tree": "c6ef9d054746ec9167f408143e6d8b00aa4b0834",
      "parents": [
        "3af9287a743b6c8a4964032059dd67d6c9e023fc"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Jul 31 20:15:17 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Jul 31 20:15:17 2008 +0000"
      },
      "message": "THRIFT-48. python: Make TServerSocket work with Unix-domain sockets\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@681467 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0ee93eaa464d524efcfda4f243d2c456a4dfac5e",
      "tree": "cb53c61e69895b56a0266fc12236a0c358bbd87a",
      "parents": [
        "f4e700883b943775233b75770a12fd7affa9ef31"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jul 21 19:03:11 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jul 21 19:03:11 2008 +0000"
      },
      "message": "THRIFT-93. Remove unnecessary shebang lines from Python libraries\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@678529 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1e0744d7a2daacaf5044427fa614268d1f4fcb2f",
      "tree": "511757054b7336092edcf864e4e97685d129ad19",
      "parents": [
        "1ce8b3d7d502cff253b1ac761d2326763f144101"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Jun 24 20:46:32 2008 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Jun 24 20:46:32 2008 +0000"
      },
      "message": "rb: Make TServer.py Python 2.4 compatible [THRIFT-44]\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@671337 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b04df765b5c9fe1b8fb6ded0ed2750188278fe50",
      "tree": "f17c1607c606385270d72107893a7941fe8fa081",
      "parents": [
        "bcaa2ad0d6799066ed680f53051c469e4f58771b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:55:38 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:55:38 2008 +0000"
      },
      "message": "Change Python servers to use the standard logging module.\n\nPreviously Thrift was using `print` to report errors.  Thrift is infrastructure\nand should not impose its error logging mechanism on the apps that use it.  For\nexample, [elided] uses the logging module to send logs to a particular file.\n\nI ran the unit test.  That exercises most of the error handling routines.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@666364 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bcaa2ad0d6799066ed680f53051c469e4f58771b",
      "tree": "4ad3270f088b90add3e0566d179f433adf50152c",
      "parents": [
        "c6dab613003c704f072542f39214f7af64fc0412"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:55:26 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:55:26 2008 +0000"
      },
      "message": "Python forking server should close connection in parent.\n\nWhen a function called by the forking python thrift server throws an\nexception the client will hang.  This happens because the parent of the\nforked process does not properly close the socket fd.\n\nUnder normal operation the server operation completes and returns a value to\nthe client.  However, when an exception occurs the \u0027end\u0027 message is never\nsent to the client so the client relies on a connection close to abort the\ncall (this is how the threading server works I believe).\n\nThis fails with the forking server because the parent process never closes\nthe socket fd.  The child has closed the fd at this point, but the\nconnection will not actually be closed until all open instances of the fd\nare closed. Since the client is waiting for a message and the server never\ncloses it the client is forced to wait until a read timeout occurs many\nminutes later.\n\nThis diff closes the parent\u0027s copy of the socket fd immediately after the\nfork occurs.\n\nI modified my load test server to throw an exception.  The client did not hang.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@666363 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "665365490f3e14cf3e40205f16d9dc9b5a833f1e",
      "tree": "bc1906ec9842ade416bef56498df5360af96b272",
      "parents": [
        "af296954ea59369129b4129633e263fd65b503de"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:54:49 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jun 10 22:54:49 2008 +0000"
      },
      "message": "Forking Python server.\n\nThe python threading model does not provide concurrency for CPU-bound\nprocesses.  Process forking is the current recommended way of writing\nscalable Python servers.\n\nHarry Wang ran the [elided] backend with this change for 3 days and observed\nno errors.  The threaded backend caused unexplained lockups under this load\nafter 24 hours.\n\nI also ran a CPU-bound load test against this server with 32 concurrent\nclients.  It completed 5X faster than the threaded implementation.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@666359 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bc444b034e79b521b0512198a1feaa37da6d3ee7",
      "tree": "fd46151d59d5b294077ee7c353ec7750a7442f31",
      "parents": [
        "bbf8062e4f37bde9e698e080b9f2017dd93bbfc6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Feb 14 20:20:08 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Feb 14 20:20:08 2008 +0000"
      },
      "message": "Thrift: Fix a bug in the skip function in Python\u0027s fastbinary.c\n\nReviewed By: mcslee\n\nOther Notes:\nSubmitted by Ben Maurer (the original author).\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665479 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0c90f6f8af1d64ec9272bb2f6092336f3d0b8df8",
      "tree": "15245f459a76acc769d8fe99179176b4965bf66d",
      "parents": [
        "3160971286aea0d5b28d5a7a87acaa8a12209ef8"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Feb 06 22:18:40 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Feb 06 22:18:40 2008 +0000"
      },
      "message": "Thrift: Whitespace cleanup.\n\nSummary:\n- Expanded tabs to spaces where spaces were the norm.\n- Deleted almost all trailing whitespace.\n- Added newlines to the ends of a few files.\n- Ran dos2unix on one file or two.\n\nReviewed By: mcslee\n\nTest Plan: git diff -b\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665467 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "33d8f340dcca637e3b91d946f3f6f92daff64456",
      "tree": "8c9e312a1f284f2f935fe93a45d8625c2a1b1303",
      "parents": [
        "8ec70e88e68aba3e3fa636b6ac23cbf2ec726152"
      ],
      "author": {
        "name": "dweatherford",
        "email": "dev-null@apache.org",
        "time": "Mon Jan 07 22:23:07 2008 +0000"
      },
      "committer": {
        "name": "dweatherford",
        "email": "dev-null@apache.org",
        "time": "Mon Jan 07 22:23:07 2008 +0000"
      },
      "message": "[thrift] py: TApplicationException.__str__\n\nSummary: Now infinitely more printable than ever before!\nReviewed by: mcslee\nTest Plan: except TApplicationException, inst: \\n\\t\\t print inst\nRevert: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665414 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c16a8f6e45015299ed65fbdbfb3bda9017663a6d",
      "tree": "0d5436efb101750b88f61c7b0c10d54b569119bb",
      "parents": [
        "4a15eb7f7114e1ef585365c0cbcd2fb0de982d27"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Dec 14 23:46:47 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Dec 14 23:46:47 2007 +0000"
      },
      "message": "Thrift: Python support for Unix-domain sockets, and eager timeout setting.\n\nReviewed By: mcslee\n\nTest Plan: Ran the test script.\n\nRevert Plan: ok\n\nOther Notes:\nContributed by Ben Maurer.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665394 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "256bdc444866b90bbdccfb5343e9c9ea8c22603c",
      "tree": "4348ac98f2cf36305bbddfca45686a40e097093d",
      "parents": [
        "844ac12489600d7647f01ab4f9b99d9e1b81e69e"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Nov 27 08:42:19 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Nov 27 08:42:19 2007 +0000"
      },
      "message": "IPv6 tweaks for Thrift\n\nSummary: Need to pass hints including AI_ADDRCONFIG to getaddrinfo to make sure no IPv6 addresses come back on non-IPv6 enabled systems\n\nReviewed By: mcslee\n\nOther Notes: Submitted by Paul Saab\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665368 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "53d9c0c20bd5af65676928b9b7a73dcb2cad3d78",
      "tree": "f0c76bf24315da72fbca98a993d97f5d1c72f93f",
      "parents": [
        "79b1694043e07a673c343c42ad75d72f3b560539"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Mon Nov 26 21:15:40 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Mon Nov 26 21:15:40 2007 +0000"
      },
      "message": "Merging EOFException changes from Ben Maurer\n\nSummary: Throw a proper EOFError in this case. Long term we want to change this to properly fit into the Thrift TException heirarchy with a good way to handle the original exception as well. For now, Ben is the primary user of this so we\u0027ll go ahead with his patch.\n\nReviewed By: mcslee\n\nTest Plan: Included in test/py/TestEof.py\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665365 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "65b7075b5aa64c139ad59a3db35ddddda6a2203f",
      "tree": "2dcfa8fdb35e09fd420adb69a7965a29c2545819",
      "parents": [
        "3e098b1757724eb2e78a4abc1306a32abaf610b2"
      ],
      "author": {
        "name": "dweatherford",
        "email": "dev-null@apache.org",
        "time": "Wed Oct 31 02:18:14 2007 +0000"
      },
      "committer": {
        "name": "dweatherford",
        "email": "dev-null@apache.org",
        "time": "Wed Oct 31 02:18:14 2007 +0000"
      },
      "message": "[thrift] Output dir selection + updated TSCons\n\nSummary: Allows setting the output directory via the new \u0027-o dir\u0027 cmdline option.\n\n  TSCons is updated to use this to put the output in the right place no matter\n  the cwd, so doing dependent builds from different directories won\u0027t break.\n\nReviewed By: martin\nTest Plan: mkdir /tmp/honk; thrift -cpp -java -javabean -php -phpi -py -rb -xsd -perl -erl -ocaml -hs -cocoa -o /tmp/honk Tablet.thrift\nRevert: svn\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665311 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5299a959e0ac89ce26b6ad4f73b893207f9bae3d",
      "tree": "3315cf30cdcf8c8524bcb49a35f254f130f9eac2",
      "parents": [
        "6fc7be28bb1363adaedee47c34ea0262e3346eb4"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Oct 05 00:13:24 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Oct 05 00:13:24 2007 +0000"
      },
      "message": "Python automated test patch\n\nSummary: Submitted by Ben Maurer\n\nReviewed By: dreiss\n\nTest Plan: Automated python testing for Thrift, lovely.\n\nRevert: OK\n\nDiffCamp Revision: 737\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665293 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9b36ef3575c13aa360f1b2fac312683270978094",
      "tree": "3c0651d83576a9fe1b704d690e6b8f01e7014653",
      "parents": [
        "780e4ecac988ba8aeea794631da2ea9a24c7717b"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Oct 02 04:44:48 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Oct 02 04:44:48 2007 +0000"
      },
      "message": "Fix 32-bit Python encoding integer issue\n\nSummary: Python on 32-bit platforms 2.4+ wants to keep hexconstants positive, therefore converting 0x800000000 to a (long) type to keep that. This causes issues when performing comparison with a signed negative integer.\n\nReviewed By: dreiss\n\nTest Plan: Python on 32 bit 2.4+ system making Thrift calls\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665287 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "476b796fd7d4d7036a106682ebcb73a63349b408",
      "tree": "7423853fbf20f59d7e072d7659fe4a5d74f732b1",
      "parents": [
        "fd7c26fec0ed25e5f6e134c7788258082723ee2c"
      ],
      "author": {
        "name": "mvaradachari",
        "email": "dev-null@apache.org",
        "time": "Mon Sep 17 20:40:16 2007 +0000"
      },
      "committer": {
        "name": "mvaradachari",
        "email": "dev-null@apache.org",
        "time": "Mon Sep 17 20:40:16 2007 +0000"
      },
      "message": "Updating TSCons.py to provide capability of passing additional flags to thrift besides the default flag --cpp. EX: scons_env(env,\u0027--py --php\u0027)\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665266 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2c2e6d27a238746a0db9982cc4eb35c093553361",
      "tree": "4beeb59769e5c598bddd17d87761d98698b8185f",
      "parents": [
        "4529c4b394d39900e1b50f6be08ba31553550c0d"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Sep 05 01:14:09 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Sep 05 01:14:09 2007 +0000"
      },
      "message": "Thrift: Python TBufferedTransport improvements.\n\nSummary:\nThe Python version of TBufferedTransport now uses input buffering.\nIt is also compatible with the fasbinary module.\n\nReviewed By: mcslee\n\nTest Plan:\ntest/FastbinaryTest.py\n\ndreiss@dreiss-vmware:~/gp/thrift/test/py$ strace -f ./TestClient.py 2\u003e\u00261 | grep recv | wc -l\n99\n# Install new version in other terminal\ndreiss@dreiss-vmware:~/gp/thrift/test/py$ strace -f ./TestClient.py 2\u003e\u00261 | grep recv | wc -l\n14\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665250 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5db3e926713d6fba0e9d0348d29b58bb8ec29367",
      "tree": "a24e82eff20d5af03d9b45174c72e3a26a346124",
      "parents": [
        "792df0bf78d061ede0af7f12bf92c72254ed12d8"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 30 23:07:45 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 30 23:07:45 2007 +0000"
      },
      "message": "Thrift: Handle absence of fastbinary.so\n\nSummary:\n- Wrap import of fastbinary in a try/catch, setting it to None if it fails.\n- Don\u0027t try to fastbinary.encode/decode if fastbinary is None.\n- Always generate thrift_spec, even if it is None.\n- Don\u0027t try to fastbinary.encode/decode if thrift_spec is None.\n\nReviewed By: mcslee\n\nTest Plan:\ntest/py/Test{Client,Server}.py\nManually delete my fastbinary.so, they worked fine.\nChanged them to use Accelerated protocol.  They still worked fine because\nthe test falls through to the normal generated code.\nInstalled fastbinary.so, everything worked fine (eventually).\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665236 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "792df0bf78d061ede0af7f12bf92c72254ed12d8",
      "tree": "e2266f7f0cbc621fc67bb786f8c2716170c18689",
      "parents": [
        "c6fc329a4040f9945576bc7007ab8df44d112635"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 30 03:30:22 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 30 03:30:22 2007 +0000"
      },
      "message": "Thrift: Pre-generate reflection_limited for Python.\n\nSummary:\n- Give reflection_limited a nice clean Python module.\n- if/regen.sh now generates reflection_limited for Python and copies it to src.\n- Added the generated Python for reflection_limited to version control.\n- lib/py/setup.py installs reflection_limited.\n- lib/py/cleanup.sh now removes build (make sure to run as root).\n- The C++ version of reflection_limited was also updated by regen.sh.\n\nReviewed By: mcslee\n\nTest Plan:\n- Clean build and install.\n- Look at the installed Python files.\n- python -c \u0027from thrift.reflection.limited.ttypes import *\u0027\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665235 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5ec8e26d25dc459041e7c31aa2c65eff4f70ad4e",
      "tree": "6426ffd25a6e17531cc4a36fb39d5b3d7b1c34c7",
      "parents": [
        "382fc3043cba33fea1a919e4e6bfeac0cb9c22aa"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Aug 26 02:21:24 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Aug 26 02:21:24 2007 +0000"
      },
      "message": "Thrift: Fix fastbinary.c for Python 2.4.\n\nSummary:\nThe recently committed fastbinary.c doesn\u0027t compile with Python 2.4.\nThis version does.\n\nBlame Rev: 56816\n\nReviewed By: mcslee\n\nTest Plan: make install on devrs004\n\nRevert Plan: Do 56816 also.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665225 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "382fc3043cba33fea1a919e4e6bfeac0cb9c22aa",
      "tree": "25fbc629b633f81f618842d86c4f0f6c44c83a12",
      "parents": [
        "40c6ac574c0090900736da744ef8cb72340b6c07"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Aug 25 18:01:30 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Aug 25 18:01:30 2007 +0000"
      },
      "message": "Thrift: Native-code Binary Protocol encoder.\n\nSummary:\nMerging a patch from Ben Maurer.\nThis adds a python extension (i.e., a C module) that\nencodes Python thrift structs into the standard binary protocol\nmuch faster than our generated Python code.\n\nAlso added by-value equality comparison to thrift structs\n(to help with testing).\n\nCleaned up some trailing whitespace too.\n\nReviewed By: mcslee, dreiss\n\nTest Plan:\nRecompiled Thrift.\nThrifted a bunch of IDLs and compared the generated Python output.\nLooked at the extension module a lot.\ntest/FastBinaryTest.py\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665224 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0dd0916f9a519f9664c416d9d6b6885560299b1f",
      "tree": "c726badb2a02a5c4bba6bd34162b73c016842ae9",
      "parents": [
        "c2532a9ac4168778c581cff235943eb270df6dbc"
      ],
      "author": {
        "name": "Aditya Agarwal",
        "email": "aditya@apache.org",
        "time": "Mon Jul 30 23:58:37 2007 +0000"
      },
      "committer": {
        "name": "Aditya Agarwal",
        "email": "aditya@apache.org",
        "time": "Mon Jul 30 23:58:37 2007 +0000"
      },
      "message": "-- Adding TMemoryBuffer.py\n\nSummary:\nSubmitted by Ben Maurer\n\nReviewed By: mcslee, aditya\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665184 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a46438e11d506433ec7c995ad7d11003ca7d87de",
      "tree": "33d4a2d175a5471b02bf2ed6546388bc68992d6d",
      "parents": [
        "26549566bc502dece76ad596126b219dc5c8991c"
      ],
      "author": {
        "name": "pfung",
        "email": "dev-null@apache.org",
        "time": "Fri Jul 27 20:43:49 2007 +0000"
      },
      "committer": {
        "name": "pfung",
        "email": "dev-null@apache.org",
        "time": "Fri Jul 27 20:43:49 2007 +0000"
      },
      "message": "[Thrift] fixing python server socket bind permissions\n\nFix made by Paul Saab from powerset (ps@powerset.com)\n\nreviewed by mcslee\ntest plan: tested\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665180 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "26549566bc502dece76ad596126b219dc5c8991c",
      "tree": "fa2bd0a2aca9a3b833b1cecb4772c7c72d479839",
      "parents": [
        "5b4181919de0245098b481ea2ed5ecd1e7a0d83f"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jul 27 18:56:56 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jul 27 18:56:56 2007 +0000"
      },
      "message": "Fix for IPv6 Python sockets binding localhost problem\n\nReviewed By: mcslee\n\nTest Plan: Python Thrift server\n\nNotes: From ps@powerset.com\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665179 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e168d5e12707fa4311b44e38eb769083b4a8c964",
      "tree": "afacbfa90cbf2a63df850bc9211e4c75b362ac99",
      "parents": [
        "d4de1e93c653c048f54944b331f8350dc45b81c0"
      ],
      "author": {
        "name": "James Wang",
        "email": "jwang@apache.org",
        "time": "Tue Jul 24 23:59:51 2007 +0000"
      },
      "committer": {
        "name": "James Wang",
        "email": "jwang@apache.org",
        "time": "Tue Jul 24 23:59:51 2007 +0000"
      },
      "message": "Summary: TSocket shouldn\u0027t let you set the timeout before it\u0027s got a valid handle\n\nReviewed By: dcorson\n\nTest Plan: tested in sandbox\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665172 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "22974602532c9d1e1dacb5d0f873667a237b0981",
      "tree": "613d3361af138580c288cc5d34499647fdcecf19",
      "parents": [
        "f79031e87531464b84d911acf9aee57cac8b83d8"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jul 06 22:20:19 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jul 06 22:20:19 2007 +0000"
      },
      "message": "Python IPv6 support for TSocket\n\nSummary: Contributed by Paul Saab of Powerset\n\nReviewed By: mcslee\n\nTest Plan: Python test stuff\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665153 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "552410c037c323085e075bd4b0f268ee941083b8",
      "tree": "acc27b75f6c0aed1ab1db0e363ffc672b6475670",
      "parents": [
        "808454ec634278eec7e0ee5c523b00e3e4257287"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jun 22 01:03:55 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Fri Jun 22 01:03:55 2007 +0000"
      },
      "message": "Idiotic typos in Python code\n\nSummary: No clue how this slid in\n\nReviewed By: abosworth\n\nTest Plan: I am stupid. TestClient.py\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665139 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "808454ec634278eec7e0ee5c523b00e3e4257287",
      "tree": "a8b896d05d162699ac11e45aca3d129e119379f4",
      "parents": [
        "589859984f43af1ed0f9ee45ce8374a0d1640813"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Jun 20 21:51:57 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Jun 20 21:51:57 2007 +0000"
      },
      "message": "Thrift TBinaryProtocol change\n\nSummary: New Thrift TBinaryProtocol with a version identifier\n\nReviewed By: aditya, eugene\n\nTest Plan: Modify your services to have strictRead_ and strictWrite_ both set to FALSE. Then redeploy your services and test running clients against them. Once you have clients and servers running stably on this new code, you should redploy versions with strictWrite_ set to TRUE. Once that\u0027s all good, we can set strictRead_ to TRUE as well, and eventually deprecate the old protocol code entirely.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665138 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7679196f1cb6a4b919917aeab065ca86b9b8ad91",
      "tree": "432f2d4425bcc5e627261ef459cf34b6b32ba57e",
      "parents": [
        "0c2dff3f5a69726e98636c091454b9b5e3ab8898"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Mar 14 02:47:35 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Mar 14 02:47:35 2007 +0000"
      },
      "message": "Various Thrift fixes, including Application Exception support in Ruby, better errror messages across languages, etc.\n\nReviewed By: thrift\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665058 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b6616fc42dd10ecf0bf4cc3a3010dae1b70d9063",
      "tree": "e97e46db0de03e90b3b5d57965f847eaf3739ca6",
      "parents": [
        "07a3aab207242ef4ee8a45825e2fbab2bbf57510"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Mar 07 05:46:05 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Mar 07 05:46:05 2007 +0000"
      },
      "message": "No such thing as e.message in python socket error?\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665052 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "89e2bb84e2ceb690c1d8abc1b6641e16ee73a19a",
      "tree": "5a5d616629d25cfb78fec49c301cb9181bf42161",
      "parents": [
        "7eb0d635428cc24b8394fcacc2c8d0093e32e5ea"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Thu Mar 01 00:20:36 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Thu Mar 01 00:20:36 2007 +0000"
      },
      "message": "Applying Thrift software license to Python source\n\nReviewed By: python\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665032 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bd8b991fa740def63b74a6b54ab746b59c7b3d89",
      "tree": "2c3386aa5b4c33eadd308df73b461fca5114ec1b",
      "parents": [
        "2a22a88c5761620b41fded977c5d68abff49a12c"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Feb 27 20:17:00 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Tue Feb 27 20:17:00 2007 +0000"
      },
      "message": "Python HttpClient for Thrift\n\nReviewed By: thrifty goodness for SMC\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665026 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e74306a96556748f887628deddec544fe24b7be9",
      "tree": "c4ab1ae1ac3b3a806c4f85ffd23664d1edd8cc12",
      "parents": [
        "b0060b0401b5bcf85aa1523817793956ef5a5219"
      ],
      "author": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Feb 21 05:38:12 2007 +0000"
      },
      "committer": {
        "name": "Mark Slee",
        "email": "mcslee@apache.org",
        "time": "Wed Feb 21 05:38:12 2007 +0000"
      },
      "message": "Move constant defs into Thrift.py to avoid cirulcar includes\n\nReviewed By: snakes\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665016 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ],
  "next": "92195ae21929b464a80b25906b80181384e3ae95"
}
