)]}'
{
  "log": [
    {
      "commit": "6868ebbb31cf32dbde018b03831d167565ba51d8",
      "tree": "bb4538c411b8f91e73529979584d0b819b23c16d",
      "parents": [
        "7a6829531f00f7e95f904d5794d632acee62ddf0"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jan 20 21:02:02 2022 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jan 20 21:02:02 2022 +0100"
      },
      "message": "Release 0.16.0\n"
    },
    {
      "commit": "9d7d627b518f84d6f7bfee76f1d7410e63c4fe7c",
      "tree": "adb901ad54077aa99dad3606006d684c18f907b2",
      "parents": [
        "e12fbe88e2f734cbcb010f0f820a6e43e94c8ec2"
      ],
      "author": {
        "name": "Ali-Akber Saifee",
        "email": "ali@indydevs.org",
        "time": "Fri Jan 07 07:58:13 2022 -0800"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Sat Jan 08 00:17:27 2022 -0800"
      },
      "message": "Remove excess assertions\n\nAsserting on trying to deserialize None, or an invalid serialized\nbuffer result in different exceptions being raised in python2/3.\n"
    },
    {
      "commit": "b724787d373de99fee2222ab0eb2e052f8c8d3ed",
      "tree": "fe886e30b4d74d6f2595243c0d90b7cd892ecba4",
      "parents": [
        "c6c5a0596ffc441e6cd1ad60130cdcdcb2e319e4"
      ],
      "author": {
        "name": "Ali-Akber Saifee",
        "email": "ali@indydevs.org",
        "time": "Sat Dec 11 08:39:24 2021 -0800"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Thu Dec 16 13:12:44 2021 -0800"
      },
      "message": "Define PY_SSIZE_T_CLEAN to use PyObject_CallFunction\n\nWhen using the building functions for the fallback scenario\nin readBytes, a SystemError is raised in python 3.10 (raised\nas a warning till python 3.9) due to the use of \"#yi\" for the output\nbuffer argument.\n\nExtra test cases are added to cover serialization/deserialization\nboth with compact \u0026 binary protocol both with and without the\nc-extension\n"
    },
    {
      "commit": "443a03c558fdef6e6908e8fb47f7011c2d7ff9f6",
      "tree": "29afa240ec4e45a60bb3b0e869c665d396d5e094",
      "parents": [
        "50f97135ccc328aeb84b75d5374016abaa269da1"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Nov 15 19:30:13 2021 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Nov 15 19:31:21 2021 +0100"
      },
      "message": "FIX: Python code style / flake8: TProcessPoolServer.py:46:14: E225 missing whitespace around operator\n"
    },
    {
      "commit": "50f97135ccc328aeb84b75d5374016abaa269da1",
      "tree": "eb1085d7776db38965dc11da476594182b48b6f8",
      "parents": [
        "ea1e8ff1407112342ed17cb95087bbda4e9b2cc0"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Nov 14 12:33:50 2021 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Nov 14 12:35:52 2021 +0100"
      },
      "message": "FIX Python code style TTransport.py:400:5: E301 expected 1 blank line, found 0\n"
    },
    {
      "commit": "da1e19b72bceb1c5a094613c286c1331ff1a6c1b",
      "tree": "f4aa8be8afcddfde605160e8dda7296e759a5d84",
      "parents": [
        "ea39a14a1fbc8a7683e91ab4bdd23f8b207c8d5d"
      ],
      "author": {
        "name": "Yiyang Zhou",
        "email": "yiyangzhou1@xiaohongshu.com",
        "time": "Fri Aug 13 16:30:58 2021 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Nov 14 00:54:12 2021 +0100"
      },
      "message": "THRIFT-5454: add __setState__ function to TProcessPoolServer to enable correct multiprocessing behavior related to pickling\n\nClient: Python\n"
    },
    {
      "commit": "7ecc9ef02110b66e6a734ff5c11e103c4b9fbc1e",
      "tree": "fac9808d78eb81a6fccf5ff878d6745ca8d768a1",
      "parents": [
        "ab2f23a2a9cd8d170e6d45ae6ad0e693052e3599"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sat Sep 25 16:47:05 2021 -0400"
      },
      "committer": {
        "name": "Jim King",
        "email": "jking@apache.org",
        "time": "Sat Sep 25 22:09:31 2021 -0400"
      },
      "message": "minor changes to make pypi distribution look better (long desc)\n"
    },
    {
      "commit": "f7e6c654bde5d9832bede2b48b460c3e1bbbbb92",
      "tree": "0ea81a3df907866d7b24fde50ca9c439962f8b7d",
      "parents": [
        "2c78047fcbd2783e88cab0ebc7245598695477ae"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Aug 03 22:21:05 2021 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Aug 03 22:21:05 2021 +0200"
      },
      "message": "bump version number\n"
    },
    {
      "commit": "d8c4345ecfcbf506d9e973ae19ee857e6d5378dd",
      "tree": "8a9ab681974d8319102492dfe739bafd4c714a70",
      "parents": [
        "44e8a431a3bb45fd46e2959b308ea96b1ee3c702"
      ],
      "author": {
        "name": "geehanlin",
        "email": "geehanlin@tencent.com",
        "time": "Fri Jun 04 19:28:00 2021 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Fri Jul 09 21:56:46 2021 +0200"
      },
      "message": "fix isOpen return None, to be consistent with other transport\nClient: python\n"
    },
    {
      "commit": "055fe67ec1856d25f7ad3b98b5cd172fdf8e2c70",
      "tree": "062bf11a4e4dff23d87121e68022eb6e393699f7",
      "parents": [
        "526a1acf3b870d3b292423e19b9bb9bb0d18c0c3"
      ],
      "author": {
        "name": "Neil Williams",
        "email": "neil@reddit.com",
        "time": "Tue Feb 16 15:12:15 2021 -0800"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Tue Feb 16 16:31:00 2021 -0800"
      },
      "message": "THRIFT-5352: Fix construction of Py exceptions with no fields\n\nClient: py\n\nWhen no fields are present, we don\u0027t get the special constructor that\nuses __setattr__ to avoid these checks. So the default constructor sets\nmessage normally and triggers the anti-mutation tripwires.\n"
    },
    {
      "commit": "3fc0b8d061fb1adcae49862e0c63ce94f0a0ee0f",
      "tree": "2373cb9dd0136f0054257eaa10041a20de2a2052",
      "parents": [
        "b5fe1dbc0cac81ab99ec5d71de70f4389b234888"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 11 23:17:45 2021 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 11 23:17:45 2021 +0100"
      },
      "message": "Version number aligned to 0.15.0\n"
    },
    {
      "commit": "1c35d6ba954bc441e9e603599965e0121eb5132d",
      "tree": "09a9e94393edf88461c72f3c49ac4843594ea5cf",
      "parents": [
        "13662dd7be9aa3ffdbbc49bd1c3b77c4549569bd"
      ],
      "author": {
        "name": "Neil Williams",
        "email": "spladug@users.noreply.github.com",
        "time": "Mon Jan 04 11:27:01 2021 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 04 11:27:01 2021 -0800"
      },
      "message": "THRIFT-5331: Py: make THeader subprotocol configurable (#2302)\n\nClient: py\r\n\r\nThis allows clients to choose which subprotocol (TBinary/TCompact) to frame with headers. The server will already accept either protocol and reply correctly."
    },
    {
      "commit": "05bb55148608b4324a8c91c21cf9a6a0dff282fa",
      "tree": "187c6dcc7e81638746d9e15850ce441adaf290b7",
      "parents": [
        "196254ba393a7e70e91fcf3c35026c82fb64f7fa"
      ],
      "author": {
        "name": "stiga-huang",
        "email": "huangquanlong@gmail.com",
        "time": "Fri Oct 30 20:07:31 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Nov 01 18:17:18 2020 +0100"
      },
      "message": "THRIFT-5303 Fix missing error handling in using PyUnicode_DecodeUTF8\nClient: py\nPatch: stiga-huang\n\nThis closes #2269\n"
    },
    {
      "commit": "e6d97c0f66118c43f43bb71644c18d330a3ae522",
      "tree": "89ba0b08df62eba0edd4f0e5727ed8a1a4dc3e07",
      "parents": [
        "c80b8bbe703f593d1aa47941bd6b61f7726068bd"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Tue Aug 25 09:53:39 2020 +0800"
      },
      "committer": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Sat Sep 19 09:23:58 2020 +0800"
      },
      "message": "test ci fix\n"
    },
    {
      "commit": "01d53f483a7531ad4899b522060e8913dca309fb",
      "tree": "5e0defc327b49ed329aa9022cb6ea884052239a7",
      "parents": [
        "68c1506715d834c5ab274a622a67bab207936ac7"
      ],
      "author": {
        "name": "Neil Williams",
        "email": "neil@reddit.com",
        "time": "Tue Jul 07 07:27:29 2020 -0700"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Thu Aug 06 08:27:55 2020 -0700"
      },
      "message": "THRIFT-5248: Python: Make TSocket.isOpen check if server still connected\n\nClient: py\n\nThis is inspired by changes to the Go library (THRIFT-5214) and, by\nproxy, this blog post[1]. The idea is that if the other end of the\nsocket has closed their end of the connection, we can figure that out by\ndoing a non-blocking read on our socket before we waste time serializing\nand sending a message just to find out the socket is closed when we try\nto read the response.\n\n[1]: https://github.blog/2020-05-20-three-bugs-in-the-go-mysql-driver/\n"
    },
    {
      "commit": "26681fbdb77f6dfaf2f2613d4ad860a224e84b71",
      "tree": "b742ea0959bd5e90e1748323a870291ef8ad8e9f",
      "parents": [
        "3f78c70bbba82c733b1545d39eb5b489ac384e4c"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Wed Jun 03 17:24:38 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Jun 14 14:17:11 2020 +0200"
      },
      "message": "THRIFT-5225: Use nullptr instead of NULL\nPatch: Zezeng Wang\n\nThis closes #2168\n"
    },
    {
      "commit": "797fe252e0df18a24aa025d00d1d53c288ef2d4f",
      "tree": "ed80962526773a1a4392253dedc3465a3a605040",
      "parents": [
        "e6d7d13c35f5c9fe57889d7e77b0ba63910b1052"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Wed May 20 15:20:07 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 26 21:46:16 2020 +0200"
      },
      "message": "Supplement TNonblockingServer.py testcase\nClient: py\nPatch: Zezeng Wang\n\nThis closes #2150\n"
    },
    {
      "commit": "26e6c84cde490a22d39c43ba3903dd94bbb8497f",
      "tree": "7e0c022937406cdedd6ab75100cba3a7d51b99a3",
      "parents": [
        "64ac65ea7e0763c32d6dca988a2c779f89bece84"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Wed May 06 14:37:43 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed May 13 23:56:08 2020 +0200"
      },
      "message": "Add testcase for compactprotocol(python)\nClient: py\nPatch: zeshuai007 \u003c51382517@qq.com\u003e\n\nThis closes #2129\n"
    },
    {
      "commit": "9b9567b23378c821b460cfe54b70b9d189bf194d",
      "tree": "f5403a348992e88e8d5240b4fbb88f77dc281f08",
      "parents": [
        "bbc5e06a2e36d788b095fb37a52c90fc4d54b211"
      ],
      "author": {
        "name": "max ulidtko",
        "email": "ulidtko@gmail.com",
        "time": "Mon Apr 27 16:04:27 2020 +0300"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 08 09:23:47 2020 +0200"
      },
      "message": "THRIFT-5186: Don\u0027t pass AI_ADDRCONFIG to getaddrinfo()\nClient: cpp,pas,py\nPatch: Max Ulidtko\n\nThis closes #2124\n\nIf a host doesn\u0027t have assigned IPv4 or IPv6 addresses, thrift communication\nover localhost-only is impossible due to thrift library bug. It happens\nwhen making getaddrinfo syscall with AI_ADDRCONFIG flag.\n\nFrom man getaddrinfo(3):\nIf  hints.ai_flags  includes  the  AI_ADDRCONFIG  flag,  then  IPv4  addresses\nare returned in the list pointed to by res only if the local system has at least\none IPv4 address configured, and IPv6 addresses are returned only if the local\nsystem has at least one IPv6 address configured.  The loopback address is not\nconsidered for this case as valid as a configured address.\n\nUpstream bug with AI_ADDRCONFIG ai_flags was fixed for cpp library and win32\nplatform only. See https://issues.apache.org/jira/browse/THRIFT-2539\n\nPatch based on Thrift 0.13.0, commit cecee50308fc7e6f77f55b3fd906c1c6c471fa2f.\n"
    },
    {
      "commit": "bbc5e06a2e36d788b095fb37a52c90fc4d54b211",
      "tree": "844251f7c5958b6629e48d9b3298934fcc70d628",
      "parents": [
        "abc2ec60964538558fd99f72a4d4c16820e8bfb4"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Thu May 07 17:10:32 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 08 09:18:46 2020 +0200"
      },
      "message": "Supplement TZlibTransport.py testcase\nClient: py\nPatch: zeshuai007 \u003c51382517@qq.com\u003e\n\nThis closes #2132\n"
    },
    {
      "commit": "39381695eb456349b02e68d9167181ae41656b73",
      "tree": "4dd236706cf4e65468cedf3ee3bb144fa6a4abec",
      "parents": [
        "371d92f159d4e518f1de81519b3a9de629ba8970"
      ],
      "author": {
        "name": "Zezeng Wang",
        "email": "51382517@qq.com",
        "time": "Tue Apr 28 14:24:58 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 28 07:24:58 2020 +0100"
      },
      "message": "Add file and memory buffer tests for Python\n\nClient: py"
    },
    {
      "commit": "c3728122d2ddb2e0236b1e08bdb5e24b8baae9dd",
      "tree": "d24ac1387ab21c6cccd1b1163d1e5b01b539abb0",
      "parents": [
        "b416ffa72dbcab8ed8a156c95cb8e480ed46a438"
      ],
      "author": {
        "name": "Zezeng Wang",
        "email": "51382517@qq.com",
        "time": "Mon Apr 27 15:48:19 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 27 08:48:19 2020 +0100"
      },
      "message": "Supplement TBinaryprotocol module testcase\n\nClient: py"
    },
    {
      "commit": "b83ae2cedf8a345142c3b96e9b529a65fe41bc16",
      "tree": "5d9b9bdb1a94ac978abe7efc9da6dc9bb043b6c0",
      "parents": [
        "b94c16638555c4efa191092bf0f14ce45c3621b8"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Fri Apr 24 11:35:55 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 13:29:48 2020 +0200"
      },
      "message": "supplementary testcase for TJSONProtocol\nClient: py\nPatch: zeshuai007 \u003c51382517@qq.com\u003e\n\nThis closes #2113\n"
    },
    {
      "commit": "69642f389a06f5ba1b374de52c6b0e29892035d8",
      "tree": "9d06931572c79d9fc370fab464b0c124698beaec",
      "parents": [
        "daa7669a7665539a484815a7d5200651ba74df9a"
      ],
      "author": {
        "name": "Joao Antonio",
        "email": "joao.p.antonio@gmail.com",
        "time": "Sat Apr 04 15:39:03 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Apr 13 18:06:56 2020 +0200"
      },
      "message": "THRIFT-5165: THttpClient saves session cookie.\nClient: py\nPatch: Joao Antonio\n\nThis closes #2086\n"
    },
    {
      "commit": "9c43962da8e4b530014619e3703a279053cf2182",
      "tree": "9b862189ed6e5fbdd9819a964c7f2efe69aa9bb4",
      "parents": [
        "9320f891d7d972fc2cc4f9569b66767c5dfc4242"
      ],
      "author": {
        "name": "Elvis Pranskevichus",
        "email": "elvispranskevichus@pinterest.com",
        "time": "Wed Dec 11 16:47:52 2019 -0500"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "can@dcc.im",
        "time": "Thu Dec 12 13:50:42 2019 +0000"
      },
      "message": "Revert \"Revert \"THRIFT-4002: Make generated exception classes immutable by default\"\"\n\nThis reverts commit 1234ddf8a5c98d5d700c82e087f04725170ad581.\n"
    },
    {
      "commit": "9320f891d7d972fc2cc4f9569b66767c5dfc4242",
      "tree": "5b3a502bcd271eff99c6ab5eed576674943e79a1",
      "parents": [
        "6e023df1ded255dda00eb4c041c201e66c8d1fbc"
      ],
      "author": {
        "name": "Elvis Pranskevichus",
        "email": "elvispranskevichus@pinterest.com",
        "time": "Wed Dec 11 16:51:12 2019 -0500"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "can@dcc.im",
        "time": "Thu Dec 12 13:50:42 2019 +0000"
      },
      "message": "Revert \"Revert \"Remove unnecessary TException.message hack\"\"\n\nThis reverts commit 3d9f50d61728d377951f9b6df5f19196f6b3af46.\n"
    },
    {
      "commit": "3d9f50d61728d377951f9b6df5f19196f6b3af46",
      "tree": "c9b2a58f29402781e3a12009e142a19ee851d80f",
      "parents": [
        "1234ddf8a5c98d5d700c82e087f04725170ad581"
      ],
      "author": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 22:13:19 2019 +0000"
      },
      "committer": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 22:13:19 2019 +0000"
      },
      "message": "Revert \"Remove unnecessary TException.message hack\"\n\nThis reverts commit 45a9827f0f455d377ae87d9a35349c10181d6893.\n"
    },
    {
      "commit": "1234ddf8a5c98d5d700c82e087f04725170ad581",
      "tree": "38cfceb980bf08948c575c4091b8e17fbbb47ab6",
      "parents": [
        "b40f5c227f8db61be523f23ca017519167589d97"
      ],
      "author": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 22:13:06 2019 +0000"
      },
      "committer": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 22:13:06 2019 +0000"
      },
      "message": "Revert \"THRIFT-4002: Make generated exception classes immutable by default\"\n\nThis reverts commit b40f5c227f8db61be523f23ca017519167589d97.\n"
    },
    {
      "commit": "b40f5c227f8db61be523f23ca017519167589d97",
      "tree": "78b38c45fc8cf8104c912e2415eefb6b63103c01",
      "parents": [
        "45a9827f0f455d377ae87d9a35349c10181d6893"
      ],
      "author": {
        "name": "Elvis Pranskevichus",
        "email": "elvispranskevichus@pinterest.com",
        "time": "Thu Mar 07 11:00:34 2019 -0500"
      },
      "committer": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 20:44:24 2019 +0000"
      },
      "message": "THRIFT-4002: Make generated exception classes immutable by default\n\nCurrently, the generated exception classes are not hashable under\nPython 3 because of the generated `__eq__` method.  Exception objects\nare generally expected to be hashable by the Python standard library.\nPost-construction mutation of an exception object seems like a very\nunlikely case, so enable hashing for all exceptions by making them\nimmutable by default.  This also adds a way to opt-out of immutability\nby setting the `python.immutable` annotation to `\"false\"`.\n"
    },
    {
      "commit": "45a9827f0f455d377ae87d9a35349c10181d6893",
      "tree": "38cfceb980bf08948c575c4091b8e17fbbb47ab6",
      "parents": [
        "ffb97e105cbef6afc809a1bdac9cdac1f35d6bab"
      ],
      "author": {
        "name": "Elvis Pranskevichus",
        "email": "elvispranskevichus@pinterest.com",
        "time": "Thu Mar 07 12:18:59 2019 -0500"
      },
      "committer": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Tue Dec 10 20:44:22 2019 +0000"
      },
      "message": "Remove unnecessary TException.message hack\n\nThrift attempts to work-around the Python 2.7 DeprecationWarning\naround `BaseException.message` by using a property.  This hack is\nunnecessary since `message` is _also_ written as a regular attribute in\nthe `TException` constructor (and would be in any of its children),\nhence the `BaseException_get_message()` wouldn\u0027t even be called.\n\nThis hack also stands in the way of making exception instances\nimmutable (which is a prerequisute to fixing THRIFT-4002).\n"
    },
    {
      "commit": "cf73b66cd83e2e883d00dff518d3c0250bb839cc",
      "tree": "2af7cc603c0fd3b53a3280fcd117414925f9e2e4",
      "parents": [
        "bc75467e4426c76d201c83621f08fa211660b6c3"
      ],
      "author": {
        "name": "Kevin Wojniak",
        "email": "kainjow@users.noreply.github.com",
        "time": "Sat Nov 02 22:01:56 2019 -0700"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Nov 03 18:42:11 2019 +0100"
      },
      "message": "Remove unused exception variable\nClient: Python\nPatch: Kevin Wojniak\n\nThis closes #1912\n\nFixes MSVC warning seen in logs:\n\u003e [00:11:03] src\\ext/protocol.tcc(177): warning C4101: \u0027ex\u0027: unreferenced\n\u003e local variable [C:\\projects\\build\\MSVC2015\\x86\\lib\\py\\python_build.vcxproj]\n"
    },
    {
      "commit": "616df98f00a594f133466aa7f94930c1bf85b24a",
      "tree": "71d80086665a13d2cf5d6aedbe6f600aea91e06c",
      "parents": [
        "6701dbb8e89f6550c7843e9b75b118998df471c3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Oct 19 22:08:13 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Oct 20 00:12:14 2019 +0200"
      },
      "message": "fix veralign.sh and bump version (again)\n"
    },
    {
      "commit": "3131fe975ce2efd2887e41f86e73f7205a02a2a4",
      "tree": "990eb27ed20aedcaa942790b30cbd5f0d64d1409",
      "parents": [
        "93ff9b00531682ece08a1a43883e55fd2aa83a15"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Tue Jul 02 14:21:05 2019 -0400"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sun Jul 07 12:16:52 2019 -0400"
      },
      "message": "THRIFT-4904: Fix python unit test errors and exception escapes\n\nDue to the way SSL layers on top of sockets, it was possible\nto complete a connection and then have the server close it.\nThis would happen if the client is not checking certificates\nbut the server is.  The TSSLSocket unit test was enhanced to\ndo a read and a write as well as just connecting to ensure a\nmore complete test.\n\nThe TSocket read() and write() calls were leaking OSError,\nsocker.error, and ssl.Error exceptions.  These cases are now\nwrapped into a TTransportException of the appropriate type,\nand the original exception is added as an argument named inner.\n"
    },
    {
      "commit": "95870f06cdee04b9ec8a263f8c71597a3b95678a",
      "tree": "ec66c96b181290e1568e5cbb4050ad72420356da",
      "parents": [
        "a85d532bb397ecfab59afa079da1fe776548af08"
      ],
      "author": {
        "name": "antbofh",
        "email": "antbofh@gmail.com",
        "time": "Fri Jun 21 22:33:55 2019 +0300"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Jun 21 15:33:55 2019 -0400"
      },
      "message": "THRIFT-4892: fixed data type conflict with simultaneous usage of bytes and str (#1804)\n\n"
    },
    {
      "commit": "6b3f7d92f9dc231cb7ae1606dd15d8faad38be1a",
      "tree": "31abece4b6ce1a414c0adf040e2abe545cf70f7a",
      "parents": [
        "b000bc02df16a16a21d0fe3467227c3bc6d62a0c"
      ],
      "author": {
        "name": "Tim Armstrong",
        "email": "tarmstrong@cloudera.com",
        "time": "Thu Feb 14 14:59:22 2019 -0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 14 19:17:01 2019 -0500"
      },
      "message": "Fix spelling errors in TSSLSocket.py\n"
    },
    {
      "commit": "dbc1f8def5018ce5d85d38b9875c6c6b6b424478",
      "tree": "0011127f2edd9221f973eb157438bbd11c0b74d2",
      "parents": [
        "3ca88065dfdb24c5bad6fbd1e3a7e01812628d3b"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 14 16:46:38 2019 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 14 16:46:38 2019 -0500"
      },
      "message": "THRIFT-4024, THRIFT-4783: throw when skipping invalid type (#1742)\n\n* THRIFT-4024: make c_glib throw on unsupported type when skipping\r\n* THRIFT-4783: throw on invalid skip (py)\r\n* THRIFT-4024: make cpp throw on unsupported type when skipping\r\n* THRIFT-4024: uniform skip behavior on unsupported type\r\n"
    },
    {
      "commit": "393f6c93e1a65b7be74d79b5a6b00f878e88a630",
      "tree": "f420f76c8d47d189bcefbd48860f7fe8f34df523",
      "parents": [
        "e53d23c16c806c6da62ebaa7f205328cf710d9a5"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sat Feb 09 10:35:44 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Feb 11 17:46:30 2019 -0500"
      },
      "message": "THRIFT-3877: fix py/py3 server, java client with http transport\n\nThe java TestClient asks the server to runa  oneway request that\nsleeps for 3 seconds.  If the java TestClient sees the duration\nof the call exceed one second, it fails the test.  This means the\nserver did not participate in the \"fire and forget\" dynamics of\nONEWAY requests.  In this case the THttpServer was processing the\nRPC before sending the transport response.  The fix was to enhance\nthe TProcessor so that the THttpServer has an opportunity to inspect\nthe message header before processing the RPC.\n\nThis is partly due to the violation of the THttpServer in the\nlayered architecture.  It is essentially implementing a combined\nserver and transport, whereas there should be a distinct server,\nprotocol, and transport separation.  Many languages seem to have\nthis problem where HTTP was introduced.\n"
    },
    {
      "commit": "9804ab983a6c43dec56e0dcc4155cc2c21073822",
      "tree": "ba15452e6bb5e0a914d40e2cbb422ef533925cb8",
      "parents": [
        "647501693bd14256df8839c13cb03659bdee4202"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 07 16:59:05 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Feb 08 17:16:17 2019 -0500"
      },
      "message": "THRIFT-4780: finish the server implementation of multi in python server\n- Add default processor handling to python multi\n"
    },
    {
      "commit": "74a3e0923d9425fd0c3c854b770782148f91ec19",
      "tree": "29bc9e3186841e5fb76fd42554a981952fcb96d0",
      "parents": [
        "e44f6a9e06aa0ae42463a791357c0e5c18020c59"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 07 19:33:52 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Feb 08 00:34:01 2019 -0500"
      },
      "message": "THRIFT-4779: fix exception type in TMultiplexedProcessor\n"
    },
    {
      "commit": "e44f6a9e06aa0ae42463a791357c0e5c18020c59",
      "tree": "5c99b0c84837103bed6e51dff7571a9530731e60",
      "parents": [
        "fc6c15c83de4f9d34e570c1f1465e7a1f6abc798"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 07 17:11:21 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Feb 07 20:00:16 2019 -0500"
      },
      "message": "THRIFT-4778: fix inheritance for protocol factories\n"
    },
    {
      "commit": "53bd0e6295547e76ab00913cfd62f8d040bd996c",
      "tree": "b6415302e64a3a275a3e6484bd2e3968c8d1ba19",
      "parents": [
        "2be45e566dd490aabf7a45ec3474545a0817024e"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jan 31 17:11:04 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Feb 01 11:13:49 2019 -0500"
      },
      "message": "THRIFT-4745: fixes compiler warnings\n"
    },
    {
      "commit": "f15b4152b9ea8e73a24e37e3f54a999060ea68bf",
      "tree": "09960f6a5cb124417c0c86b4871aea8a81caa927",
      "parents": [
        "84d9cd27f9a7a5062c9cc270583a001a7aaec196"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jan 31 13:01:56 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Feb 01 11:13:49 2019 -0500"
      },
      "message": "THRIFT-4405: fix negative sequence id handling in python TCompactProtocol\n"
    },
    {
      "commit": "f6511c904bcac1dd8c7e24aa3432326738865f1b",
      "tree": "4fd5178eab2ecf88282db1d197e2df6baa74f51d",
      "parents": [
        "2ec93c8a2da2531755078ab6d5a65a96e26cf4c2"
      ],
      "author": {
        "name": "Jun",
        "email": "Junnplus@users.noreply.github.com",
        "time": "Fri Feb 01 12:07:58 2019 +0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jan 31 23:07:58 2019 -0500"
      },
      "message": "THRIFT-4767: Added TSocket/TSSLSocket support tcp keep-alive in python (#1725)\n\n* THRIFT-4767: Added TSocket support tcp keep-alive in python\r\n* TSSLSocket support tcp keep-alive\r\n"
    },
    {
      "commit": "638c91f6be6e4417f0d5d8d57886c9b74afabfbd",
      "tree": "2ceeb35214e91e3df510777068cfa290f2285281",
      "parents": [
        "5e23c4df5b8a2c7f36f807dc07dc897fd8a39763"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sat Jan 26 10:33:04 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sun Jan 27 08:21:40 2019 -0500"
      },
      "message": "THRIFT-1549: properly unwrap and close TSSLSocket in python\n"
    },
    {
      "commit": "b96c43892a9e89dfa61834505bb25357e80287da",
      "tree": "02bbf30d80e6f6ef8c76bc67ad20b90331b6de9d",
      "parents": [
        "8935c98046dbbdd36ede73c1525f1be9df8da5cd"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jan 24 17:45:07 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Jan 25 23:33:54 2019 -0500"
      },
      "message": "THRIFT-4717: fix up make clean with autoconf\n"
    },
    {
      "commit": "8935c98046dbbdd36ede73c1525f1be9df8da5cd",
      "tree": "478212d599d7d7bdb0404bf4b1a86b75be305ea7",
      "parents": [
        "129bb3e10d7bf1a1965d31cb8f30c7ccd3f96ecb"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Jan 25 00:41:17 2019 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Jan 25 23:33:54 2019 -0500"
      },
      "message": "THRIFT-4753: re-version master to next release 0.13.0\n"
    },
    {
      "commit": "fe11c48ee185c9aead78d0c67c644c575df255a8",
      "tree": "1ab58eef8ffabba6ddf48edf712556857a19f99f",
      "parents": [
        "4eac57abcfc5f6fb591d894fe446add243392557"
      ],
      "author": {
        "name": "junnplus",
        "email": "junnplus@gmail.com",
        "time": "Sat Jan 12 02:15:05 2019 +0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Jan 14 12:10:24 2019 -0500"
      },
      "message": "THRIFT-4733: Fix test unix socket address already in use\n"
    },
    {
      "commit": "0f43f95b89db01a8c68225824f8aa7fd4522007e",
      "tree": "3a08b4fc6b567a7aa8fde17c2e3ddf72e78e4365",
      "parents": [
        "8cb3b6854818bf63d3208afaf4dc9e70c6137500"
      ],
      "author": {
        "name": "cyy",
        "email": "cyyever@outlook.com",
        "time": "Sat Jan 05 19:27:00 2019 +0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Jan 07 08:11:37 2019 -0500"
      },
      "message": "revert noexcept changings\n"
    },
    {
      "commit": "316723add4c368ffd144dd5beb55245832e073fa",
      "tree": "4dc5c86e776e4818ba5fb102e33eb62cfeb8382f",
      "parents": [
        "52637b33aba090851436b2031476529423ea3281"
      ],
      "author": {
        "name": "cyy",
        "email": "cyyever@outlook.com",
        "time": "Sat Jan 05 16:35:14 2019 +0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Jan 07 08:11:37 2019 -0500"
      },
      "message": "remove stdcxx namespace and use std directly\n"
    },
    {
      "commit": "c3375d9e434b5740808813138b28b70517e82c7d",
      "tree": "db8f0e81129461b1ddc6e7a951cbb5667ca15634",
      "parents": [
        "a139082755369611ed243376ec3c4161452369fc",
        "384647d290e2e4a55a14b1b7ef1b7e66293a2c33"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sun Dec 30 11:06:00 2018 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sun Dec 30 11:06:00 2018 -0500"
      },
      "message": "Merge remote-tracking branch \u0027origin/0.12.0\u0027 into consume-0.12.0\n"
    },
    {
      "commit": "384647d290e2e4a55a14b1b7ef1b7e66293a2c33",
      "tree": "f876c79d4945d64c1eb8fb55291ba96a03af6dae",
      "parents": [
        "9b75e4fe745a9b08e6ccdc0998ec7a69272f5b4c"
      ],
      "author": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Oct 16 22:36:46 2018 -0400"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Tue Dec 18 20:24:34 2018 -0500"
      },
      "message": "Version 0.12.0\n"
    },
    {
      "commit": "9b75e4fe745a9b08e6ccdc0998ec7a69272f5b4c",
      "tree": "747d56c669ceafbea6dc5955e8622cc39e6fa1cf",
      "parents": [
        "56ac72e74ae354c286c41f5d5a3c0b8723feb587"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Dec 17 16:21:14 2018 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Tue Dec 18 10:17:57 2018 -0500"
      },
      "message": "THRIFT-4680: fix up std::min, std::max, and numeric limits min/max on Windows; remove NOMINMAX from cmake build\n"
    },
    {
      "commit": "7af79c83591ddf289abaeacc7f0e97af7397f825",
      "tree": "744586c696aa2adf7f675b8fabf2b0783d4ab059",
      "parents": [
        "5112afcc9732381401435b7134a18aab30d4dec9"
      ],
      "author": {
        "name": "lshgdut",
        "email": "shliu30@vip.qq.com",
        "time": "Wed Nov 21 10:09:42 2018 +0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Nov 22 08:30:56 2018 -0500"
      },
      "message": "THRIFT-4668: make socket backlog configurable for python2\nClient: py\n"
    },
    {
      "commit": "66a44c5d8d57bd0c2e2afd228a29b5bc679a6770",
      "tree": "b8e114bb322b05217224926c866b21a01a7af27c",
      "parents": [
        "8de3749235db03c1d043c9f31dcbdc4c0fb011ea"
      ],
      "author": {
        "name": "Neil Williams",
        "email": "neil@reddit.com",
        "time": "Mon Aug 13 16:12:24 2018 -0700"
      },
      "committer": {
        "name": "Aki Sukegawa",
        "email": "nsukeg@gmail.com",
        "time": "Sat Sep 01 10:24:43 2018 +0900"
      },
      "message": "THRIFT-4621 Add THeader for Python\n\nClient: py\n"
    },
    {
      "commit": "f5f430df56871bc937950274b2c86681d3db6e59",
      "tree": "a9f6f1258ea16a51915dd18799af3230d36d1630",
      "parents": [
        "b5471f63cb4bb8e3b00835a9ca9e48ff76a3bb51"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Jun 08 03:37:55 2018 +0000"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sat Jun 16 19:16:04 2018 +0000"
      },
      "message": "THRIFT-4579: Move up to Ubuntu Bionic for CI builds\nmake dlang library compatible with openssl-1.1 for Ubuntu Bionic\nRequires an upstream deimos update to be compatible.\n"
    },
    {
      "commit": "747158c8daa994b3386f1dcb4fc9e91aed1748ad",
      "tree": "5b24da692e53a6a94897d996a523229b884a100b",
      "parents": [
        "4d10279244838383154003ea733487f7349fa690"
      ],
      "author": {
        "name": "Nicholas Martin",
        "email": "nicholas.martin2@gmail.com",
        "time": "Fri Jun 08 01:30:44 2018 +0100"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jun 07 20:30:44 2018 -0400"
      },
      "message": "THRIFT-4548: python binary accelerated protocol with multiplexing via decoration (#1547)\n\n* Fix binary accelerated protocol with multiplexing\r\n\r\nTMultiplexedProtocol objects did not inherit from TProtocol, so the\r\ndecorated protocol object passed into the binary accelerated C extension\r\nwas not really a TProtocol object, which caused errors. This\r\nimplementation decorates the protocol object by dynamically creating a\r\nnew class that extends both the class of the protocol being decorated\r\nand TMultiplexedProtocol.\r\n\r\n* THRIFT-4548: remove known failures for py multiplexed client cross tests\r\n\r\n* Call super with args for python2 \u0026 pep8 fixes\r\n\r\n* THRIFT-3877: disable known failures for http cpp tests\r\n\r\nThis closes #1535 "
    },
    {
      "commit": "eb9f65b74ec6babf85cf6e2686125e665e0e8e45",
      "tree": "42d969d639d0649b5eaa9987b206173f6c54e193",
      "parents": [
        "88591e32e710a0524327153c8b629d5b461e35e0"
      ],
      "author": {
        "name": "Aki Sukegawa",
        "email": "nsukeg@gmail.com",
        "time": "Sun Jun 03 19:15:53 2018 +0900"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Jun 07 09:38:49 2018 -0400"
      },
      "message": "THRIFT-4577 Outdated cipher string in python unit test\n\nAlso fixes a bug where unit test execution hanged forever on SSL initialization failure.\n"
    },
    {
      "commit": "edf8f0f2511e8eed3bb2129413307665ef4f4b79",
      "tree": "4327e5797b647f942fe4724fd10679fd76640127",
      "parents": [
        "92d80629ac2a39d432ac5bb29f45951be3465f8f"
      ],
      "author": {
        "name": "Josip Sokcevic",
        "email": "jsokcevic@thumbtack.com",
        "time": "Thu Apr 26 19:30:25 2018 -0700"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon May 07 19:11:34 2018 -0400"
      },
      "message": "THRIFT-4561: Remove python socket timeout\n\nTimeout is already set in HttpClient. The reason for removal is issue\nwith gunicorn and gevent as described here\nhttps://github.com/benoitc/gunicorn/pull/1616\n"
    },
    {
      "commit": "2068544a09e22d4ca2091bde01bc858a15e5b762",
      "tree": "10f67857d23739e381ff7c69f416819933a5a870",
      "parents": [
        "606f1ef31447526b908244933d5b716397a6bad8"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Tue Apr 10 10:30:51 2018 -0400"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Fri Apr 13 13:20:49 2018 -0400"
      },
      "message": "THRIFT-4548: add python cross test client multiplexed protocol support\nClient: py\n"
    },
    {
      "commit": "6f8c99e98170dcd4f311e755b79f7013868c64c5",
      "tree": "0d8a7a41c707815ed86d624bf81be5317a70185b",
      "parents": [
        "a0cf38ed312a5342eb05574719485b725fa52eee"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Sat Mar 24 16:32:02 2018 -0400"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Thu Apr 05 10:25:19 2018 -0400"
      },
      "message": "THRIFT-3118: add http (for non-ssl and for ssl) to the python cross tests\n"
    },
    {
      "commit": "9e0c9272140ea91ea4b3f042d207acbbaa15c093",
      "tree": "8f37f985a90621bfc9073f50d03a3366e8ed2097",
      "parents": [
        "55ddf19cca0dc9f56a974ff5740c21703ab9c4e1"
      ],
      "author": {
        "name": "Eduardo Arada",
        "email": "eduardo.arada@gmail.com",
        "time": "Thu Mar 01 15:42:33 2018 +0100"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Mar 05 08:26:15 2018 -0500"
      },
      "message": "THRIFT-4505: Fix python build on Vagrant Windows boxes\nClient: py\n\nThis closes #1499\n"
    },
    {
      "commit": "00646bbba7a2101f0ad2938d2e37cb83abbfb3c7",
      "tree": "c7ef84d72c02cf6bd087c703a085d76c96e63efa",
      "parents": [
        "e241265cb2ac7cbab2fd46bda52638da3a989d51"
      ],
      "author": {
        "name": "Yubing Dong (Tom)",
        "email": "tomtung@users.noreply.github.com",
        "time": "Thu Jan 18 23:55:24 2018 -0800"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Wed Jan 24 00:10:42 2018 -0500"
      },
      "message": "THRIFT-4464: Fix typo in TNonblockingServer.py\nClient: py\n\nThis closes #1475\n"
    },
    {
      "commit": "f3a2974dfe63b3a551b422868f3990112bda5bd8",
      "tree": "35a1332929f12d12722d829edef1c375c901953d",
      "parents": [
        "152d1bef44853601d88d51e616387accfbc675a3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 30 22:30:03 2017 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Dec 01 23:01:41 2017 +0100"
      },
      "message": "THRIFT-4398 Update EXTRA_DIST for \"make dist\"\nClient: Build process\nPatch: Jens Geyer\n\nThis closes #1431\n"
    },
    {
      "commit": "350fe7531feecf7df5208fa19d25730c6ce0a30d",
      "tree": "89021ac90d92fbcc07ef41f118fc29b7ce80b4a4",
      "parents": [
        "254e86b0103be51c6af9cc50220ee8c144234239"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Wed Oct 25 09:57:18 2017 -0400"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Thu Oct 26 11:37:02 2017 -0400"
      },
      "message": "THRIFT-4370: build generated code before running static code analysis;\nfix E722 flake8 issues identified in python code\n\nThis closes #1399\n"
    },
    {
      "commit": "e7611d0f3ed1704711f58ff45f331db6748dfbb5",
      "tree": "f6d328baa3576e8346a94d36cb585eb338470dbb",
      "parents": [
        "ba5e065aaa0e1f9a3d0174a5c287fff09ad2f3a7"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Oct 23 16:44:45 2017 -0400"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Oct 23 16:44:45 2017 -0400"
      },
      "message": "THRIFT-4367: Fix missing positional argument in python\nTProcessor.process\nClient: py\nPatch: Qyetfu\n\nThis closes #1392\n"
    },
    {
      "commit": "0ad20bdbfe9abcbb0cc5332ff95651b5c975da91",
      "tree": "7e713c9380844afe41019a7c6ebe4e508eba3464",
      "parents": [
        "8b8a8efea13d1c97f856053af0a5c0e6a8a76354"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Sat Sep 30 15:44:16 2017 -0700"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Thu Oct 19 11:29:04 2017 -0400"
      },
      "message": "THRIFT-4351: use travis build stages to optimize build,\navoiding duplicate rebuilds of the same image, and also\nallow personal docker hub repositories for private fork\nbuilds to be optimized. Move ubsan build to artful image\nbecause it catches more stuff and fix what was found.\n\nTHRIFT-4345: solidify docker build strategy for maximum\ncoverage: trusty, xenial, artful as stock as they can be\n\nTHRIFT-4344: add top level language summary markdown and\nupdate readme with a new image on the layered architecture\n\nTHRIFT-3847: remove VERSION macro from config.h which\nwas causing a conflict on artful builds.\n\nTHRIFT-4359: fix haxe map/set decode when key is binary,\nas a missing break statement caused it to use an int\nduring decode\n\nThis closes #1389\n"
    },
    {
      "commit": "2d1fe88db3f02c0a3a8f9cc2ad2f5f7881a0eae3",
      "tree": "1a94a40592e817cf18cdcc9bf4d9a7d7e4a7f7d9",
      "parents": [
        "48ba736a5800c0abc3b136ec478cf856f856ffcc"
      ],
      "author": {
        "name": "Elvis Pranskevichus",
        "email": "elvispranskevichus@pinterest.com",
        "time": "Tue May 23 11:36:23 2017 -0400"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Sep 25 17:11:33 2017 -0700"
      },
      "message": "THRIFT-4206: Fix decoding of strings in containers with py:dynamic and py:utf8strings\nClient: py\n\n_read_by_ttype and _write_by_ttype must be using the *element* spec\nand not the container spec when determining the correct read/write\nhandler.\n\nThis closes #1273\n"
    },
    {
      "commit": "d7142b7e4fe114c13d8235a7c47f58947f916bff",
      "tree": "d1f6ce9e74787245d69c205238211739974b0b24",
      "parents": [
        "f454369198500a90388a4a6f73970e961949c186"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Sep 01 13:00:36 2017 -0700"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Sep 04 18:09:34 2017 -0700"
      },
      "message": "THRIFT-4295: rework the docker build images, updating them and tuning the travis builds\n\nThis closes #1340\n"
    },
    {
      "commit": "2f03618a6c0a938813ca36e6a2fcd9f517a64ee0",
      "tree": "257314a47148ff89f8c7e7b96bd6837faba5208f",
      "parents": [
        "82ae9575cdc112088771fc7b876f75e1e4d85ebb"
      ],
      "author": {
        "name": "Håkon Hitland",
        "email": "hakon.hitland@zedge.net",
        "time": "Mon Jul 31 12:39:52 2017 +0200"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Thu Aug 10 15:39:09 2017 -0400"
      },
      "message": "THRIFT-4274: Catch OSError in TSSLServerSocket.accept()\nClient: py\n\nThis closes #1321\n\nwrap_socket can raise OSError instead of SSLError when receiving an\ninvalid connection attempt, which if not caught crashes TSimpleServer\nand causes the feature tests to fail.\n"
    },
    {
      "commit": "b56ead31153dae3d0e6a7a3e296dc2ca0c468586",
      "tree": "b56ae94b0a4bb6fe5237f71ecbbd08b34b7d01de",
      "parents": [
        "c34653f75106fbe20293ddfd5b07f74772891a6d"
      ],
      "author": {
        "name": "Eric Conner",
        "email": "eric@pinterest.com",
        "time": "Thu Jul 06 21:38:05 2017 -0700"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Jul 07 20:51:00 2017 +0200"
      },
      "message": "THRIFT-2642 Recursive structs don\u0027t work in python\nClient: Python\nPatch: Eric Conner \u003ceric@pinterest.com\u003e\n\nFix whitespace for flake8.\n\nThis closes #1305\n"
    },
    {
      "commit": "c34653f75106fbe20293ddfd5b07f74772891a6d",
      "tree": "2a844527515654b65d8f1bfac9c68a2484c535f9",
      "parents": [
        "49e5103920e75a149d02c7d487496c8c79154a6c"
      ],
      "author": {
        "name": "Eric Conner",
        "email": "eric@pinterest.com",
        "time": "Wed Jun 21 03:34:12 2017 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 06 22:59:10 2017 +0200"
      },
      "message": "THRIFT-2642 Recursive structs don\u0027t work in python\nClient: Python\nPatch: Eric Conner \u003ceric@pinterest.com\u003e\n\nThis closes #1293\n"
    },
    {
      "commit": "6582757752e62efea3f9786dddf0260efaa1f450",
      "tree": "01e75efcb7dc9457271595c1a51361984a186e8a",
      "parents": [
        "07f59971bd11df619709444275298061ee69f707"
      ],
      "author": {
        "name": "Yao Jin",
        "email": "yjin@xiaohongshu.com",
        "time": "Thu Mar 02 13:31:11 2017 +0800"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Mar 10 06:24:31 2017 -0500"
      },
      "message": "THRIFT-4029: add MANIFEST.in to include the extension files\nClient: py\n\nThis closes #1206\n"
    },
    {
      "commit": "07f59971bd11df619709444275298061ee69f707",
      "tree": "197adaaede4f594115899dc409a30d2d842195d3",
      "parents": [
        "9b1544dc21f2d952b91c44e4636e1b9da937002c"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Mar 10 06:18:33 2017 -0500"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Mar 10 06:18:33 2017 -0500"
      },
      "message": "THRIFT-4081: appveyor retooling - added mingw64 build as a second job to the CI build process\n\nThis closes #1205\n"
    },
    {
      "commit": "e2bc9727500584e055ce603bf95f00165c657ec2",
      "tree": "3dc8b0c2d7d65be81e0edad6f8735275212b517e",
      "parents": [
        "e66b8fcde3922ab9244908d9ca27d5084536e168"
      ],
      "author": {
        "name": "Yao Jin",
        "email": "yjin@xiaohongshu.com",
        "time": "Thu Feb 23 13:49:45 2017 +0800"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Feb 24 10:28:27 2017 -0500"
      },
      "message": "THRIFT-4102 remove useless code cause performance problem\nClient: python\n\nThis closes #1203\n"
    },
    {
      "commit": "36628a28e975e4d680fff66eec3e66c06ca86bf2",
      "tree": "2f9a1c99bd6212c6db636671c4d6c788cdd20b47",
      "parents": [
        "e8ba7877baec6f9871a88db8d3885361a2260ab2"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Feb 13 15:25:41 2017 -0500"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Mon Feb 13 15:25:41 2017 -0500"
      },
      "message": "THRIFT-3369 Provide SSL/TLS client for c_glib\nClient: c_glib\nPatch: Gonzalo Aguilar Delgado \u003cgaguilar@level2crm.com\u003e\n\nThis closes #1185\n"
    },
    {
      "commit": "e8ba7877baec6f9871a88db8d3885361a2260ab2",
      "tree": "9a2dc1c722241c96359c00829c7149d74f09be0c",
      "parents": [
        "4626fd889da53462023d42d99d1d82e13a6e890f"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 12 21:14:48 2017 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 12 21:14:48 2017 +0900"
      },
      "message": "THRIFT-4026 TSSLSocket doesn\u0027t work with Python \u003c 2.7.9\n\nThis closes #1166\n"
    },
    {
      "commit": "4626fd889da53462023d42d99d1d82e13a6e890f",
      "tree": "bce5eda5b1e48eab0f097ee90aa25c91ab5e3d23",
      "parents": [
        "bff044667caf8a8c2b0dd30ed11b328ff2902cf5"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 12 21:11:36 2017 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 12 21:11:36 2017 +0900"
      },
      "message": "THRIFT-3938 Python TNonblockingServer does not work with SSL\n\nThis closes #1100\n"
    },
    {
      "commit": "de9c330b24c9190078eefb68c864d2a41a4dee07",
      "tree": "bce902a6a40e51180cddad24eb83d8706f152615",
      "parents": [
        "2d6060d882069ed3e3d6302aa63ea7eb4bb155ad"
      ],
      "author": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Wed Feb 01 07:16:28 2017 -0500"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Wed Feb 01 07:16:28 2017 -0500"
      },
      "message": "THRIFT-4007: TTransport.py micro-optimization: don\u0027t call len(chunk) twice\nClient: Python\nPatch: Nate Jensen \u003cnathan.jensen@raytheon.com\u003e\n\nThis closes #1121\n"
    },
    {
      "commit": "988b3e9bde9ef687dd09311c9842c8a5bf24e608",
      "tree": "df1c9700c16e1af8496dd6a1c318d9127933e9b4",
      "parents": [
        "96be8c8d9408548966b3fb2895a8b84ac1045a37"
      ],
      "author": {
        "name": "Chandler May",
        "email": "cjmay4754@gmail.com",
        "time": "Fri Jan 27 16:21:40 2017 -0500"
      },
      "committer": {
        "name": "James E. King, III",
        "email": "jking@apache.org",
        "time": "Fri Jan 27 23:33:19 2017 -0500"
      },
      "message": "THRIFT-4042 set zip_safe\u003dFalse in python build to prevent egg ExtractionError\nClient: Python\n\nThis closes #1165\n"
    },
    {
      "commit": "db3a92ebcffea09fc456bf76754b78fe8466fe59",
      "tree": "c95ec5a4112a59b830d8ade5d8f532ec7696b7fb",
      "parents": [
        "0c27352179e0463bde1f68757f2d77e3c222f530"
      ],
      "author": {
        "name": "ciarancourtney",
        "email": "ciaran.courtney@cylon.com",
        "time": "Tue Dec 20 11:12:15 2016 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Dec 21 21:08:24 2016 +0100"
      },
      "message": "THRIFT-4009 Use @implementer instead of implements in TTwisted.py\nClient: Python\nPatch: ciarancourtney \u003cciaran.courtney@cylon.com\u003e\n\nThis closes #1142\n"
    },
    {
      "commit": "042ce7e7c894ac99489d2cd1a3d139e8d630bbdb",
      "tree": "227aa85be1f0807a0b27f25925a58ac5d525de4b",
      "parents": [
        "2df9c20dc76c044e502861a2111b90cbdcbbb957"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Wed Sep 28 09:47:05 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Thu Sep 29 02:44:46 2016 +0900"
      },
      "message": "THRIFT-3798 THttpClient does not use proxy from http_proxy, https_proxy environment variables\n\nFix CI failure due to PEP8 violation\n\nThis closes #1097\n"
    },
    {
      "commit": "1ac0a80aa07421a4b7a857d801038b7991833f7f",
      "tree": "7c0d393d9fe0a52042f34c5b4f47c90127804e71",
      "parents": [
        "900569c442742a1cb727111574dff26a7401d8c3"
      ],
      "author": {
        "name": "Martin Wilck",
        "email": "mwilck@arcor.de",
        "time": "Wed Apr 27 09:41:03 2016 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Sep 26 21:20:01 2016 +0200"
      },
      "message": "THRIFT-3798 THttpClient does not use proxy from http_proxy, https_proxy environment variables\nClient: Python\nPatch: Martin Wilck \u003cmwilck@arcor.de\u003e\n"
    },
    {
      "commit": "d2b4f248368be36ff24c5a54fa4f8cfb86b7ab36",
      "tree": "a5ca568e5bd4b6222b9055f88979e63ef173c354",
      "parents": [
        "d4eecda6b2f8b3b27a191605a054aa3bf79a4684"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Sep 04 18:49:23 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Sep 04 18:49:23 2016 +0900"
      },
      "message": "THRIFT-3917 Check backports.ssl_match_hostname module version\n\nThis closes #1076\n"
    },
    {
      "commit": "bf9fa905d22d2714670b5d492a319daf26f5a32c",
      "tree": "7ebf0130621a5ca0cde3aa7348b6d7033392c74e",
      "parents": [
        "21b6d9295a7f10852810a93679fdaf4c28fe72dd"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Sep 04 18:49:21 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Sep 04 18:49:21 2016 +0900"
      },
      "message": "THRIFT-3910 Do not invoke pip as part of build process\n\nThis closes #1073\n"
    },
    {
      "commit": "6657b8337d1aedfd2aed22a8cdcf4b96965ece26",
      "tree": "ac6bb5967a9e3baa8afa96a7d3a50698acc2f00e",
      "parents": [
        "4ab9a88496413087df1ee3256472b19c5b4be500"
      ],
      "author": {
        "name": "Chandler May",
        "email": "cjmay4754@gmail.com",
        "time": "Sun Mar 27 22:47:06 2016 -0400"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Tue Mar 29 12:03:34 2016 +0900"
      },
      "message": "THRIFT-3765 fix memory leak in python compact protocol extension\n\nThis closes #970\n"
    },
    {
      "commit": "e134cbc6ff797c061332ecfae697e807832e1682",
      "tree": "a82947adb4fbfe8917752b762c41cb7d3dc5a731",
      "parents": [
        "1d4a4393c9a9396ec76c3ba674e0d6a65fe39cc1"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Fri Mar 18 15:13:36 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Fri Mar 18 22:37:02 2016 +0900"
      },
      "message": "Update make dist entries\n"
    },
    {
      "commit": "f2b7a4805f321e53cdf64c7d2c0c9635dee74144",
      "tree": "526a9f66cdc2e4378e575b805839cb5a8365f7c1",
      "parents": [
        "6bb12771452b8c2fc656b0561486a51c31d1449d"
      ],
      "author": {
        "name": "Helgi Kristvin Sigurbjarnarson",
        "email": "helgikrs@gmail.com",
        "time": "Sat Oct 24 22:56:25 2015 -0700"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "sukegawa.nobuaki@ns-sol.co.jp",
        "time": "Wed Mar 09 17:23:48 2016 +0900"
      },
      "message": "THRIFT-3726 Fix incorrect conditional in TMultiplexedProtocol.py\n\nThis closes #661\n"
    },
    {
      "commit": "356c9986586a1c677cc911aca22be37c73aaf792",
      "tree": "f11c717680d7f94412d519769461b491c8cd390f",
      "parents": [
        "65b17466d5d7d6c7b762626e809918de904032e0"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Wed Mar 09 10:35:37 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Wed Mar 09 10:36:12 2016 +0900"
      },
      "message": "Add missing make dist entry\n"
    },
    {
      "commit": "5bac5ba8bff4bf3ed1b25ccb1d084efa0648c4c3",
      "tree": "fc376bf0cf4843c90cac343a8d7e4309d09e27f4",
      "parents": [
        "d9b4425f68b8a239e6085f2700bfc2f95cdb2f46"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Mar 05 14:47:09 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Mar 06 09:45:34 2016 +0900"
      },
      "message": "THRIFT-3712 TTornadoServer cannot handle IPv6 address\n\nThis closes #924\n"
    },
    {
      "commit": "d9b4425f68b8a239e6085f2700bfc2f95cdb2f46",
      "tree": "7906b99c52dbefc2bf2e083a420b04c11c5e5a5e",
      "parents": [
        "1ccd81bfbc7dc09dc7a8a5e64f313935b799c833"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Tue Mar 01 02:09:11 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Mar 05 22:53:48 2016 +0900"
      },
      "message": "follow-up: THRIFT-3599 Validate client IP address against cert\u0027s SubjectAltName\nClient: Python\nPatch: Nobuaki Sukegawa\n\nFix required version of Python or dependency\n\nThis closes #914\n"
    },
    {
      "commit": "f7a8d946a0b22d0acce1325d2607c38597b36a58",
      "tree": "281b6db3dfea2ec5552198ed8e51dac52ca66415",
      "parents": [
        "3dd4d8eca8c1d20819fb58fa863b83bd348cf411"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Tue Mar 01 01:41:47 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Wed Mar 02 23:44:23 2016 +0900"
      },
      "message": "THRIFT-3699 Fix integer limit symbol includes in Python C extension\n\nThis closes #915\n"
    },
    {
      "commit": "d479e23a1d408ab73e416f547003c4f7d9975081",
      "tree": "9e919c0f372fb01f8029fd06fbe1180b4f5d5bd5",
      "parents": [
        "2c5ed27a25087f541312d35938056890c4784fc6"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 28 11:28:19 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 28 12:05:14 2016 +0900"
      },
      "message": "THRIFT-3691 Run flake8 Python style check on Travis-CI\nClient: Build (Python)\nPatch: Nobuaki Sukegawa\n\nThis closes #907\n"
    },
    {
      "commit": "f32bae7a89a47047fbed9a47b78d6b69d70a3764",
      "tree": "8f67a894e0a17af54cbe6021e3f2e1d81dfb57c7",
      "parents": [
        "a72ffbea4d05586d39b507e5cd6451086fc4f763"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 20 08:51:33 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Mon Feb 22 23:25:32 2016 +0900"
      },
      "message": "THRIFT-3651 Make backports.match_hostname and ipaddress optional\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #880\n"
    },
    {
      "commit": "a72ffbea4d05586d39b507e5cd6451086fc4f763",
      "tree": "12c3eb630025d13e13e0dcfaea32ad90f81dbb48",
      "parents": [
        "33de26cf658450513ef5731ac55b635addb4d43d"
      ],
      "author": {
        "name": "Tristen Georgiou",
        "email": "tristen.georgiou@gmail.com",
        "time": "Sat Feb 20 07:28:47 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Mon Feb 22 23:24:31 2016 +0900"
      },
      "message": "THRIFT-3649 Python TSaslClientTransport initializes TTransportException incorrectly\nClient: Python\nPatch: Tristen Georgiou modified by Nobuaki Sukegawa\n\nThis closes #879\n"
    },
    {
      "commit": "7efa4fb9b10c9c42dcef1143918e308d9dfd6c58",
      "tree": "d1129523200bd4c40a8962da6d6827b201273f5b",
      "parents": [
        "23ffb312900bbbadf49dfee270391803e194a436"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Fri Feb 19 00:59:57 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 20 00:45:35 2016 +0900"
      },
      "message": "THRIFT-3646 Fix Python extension build warnings\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #877\n"
    },
    {
      "commit": "1c8b5cb1528d91be98c3652baade99e406417e5f",
      "tree": "4229348ea166339964c86ad9f6194a38e162b168",
      "parents": [
        "c295c822917cb594655f61337cc32fe188e9a86f"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 14 22:04:38 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Wed Feb 17 23:21:51 2016 +0900"
      },
      "message": "THRIFT-3634 Fix Python TSocket resource leak on connection failure\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #867\n"
    },
    {
      "commit": "66f50531405ac558d78725eaf01c95eb55621540",
      "tree": "30e054f96743d0d06c44d5c537c5b808fe755273",
      "parents": [
        "8b411a0c8f9f6dc4fa7f6660b5b15fe27a76741d"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 14 21:47:38 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sun Feb 14 22:47:19 2016 +0900"
      },
      "message": "THRIFT-3614 Improve logging of test_sslsocket.py\n\nSuppress server exception log for expected connection failures\nClient: Test (Python)\nPatch: Nobuaki Sukegawa\n\nThis closes #866\n"
    },
    {
      "commit": "6a0ca7ff2750d45346d6d7faaf931de2b6254321",
      "tree": "78f3caa6bb379bc30b9c96d48e7adc7fac9bd3e3",
      "parents": [
        "7af189a2366383538bb9aae394fd5f735976f1d5"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 13 03:11:16 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 13 23:12:34 2016 +0900"
      },
      "message": "THRIFT-3618 Python TSSLSocket deprecation message should print caller\u0027s location\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #852\n"
    },
    {
      "commit": "7af189a2366383538bb9aae394fd5f735976f1d5",
      "tree": "9e9fd94cda9dd673250cc6d6c1b279c83f3ae1c1",
      "parents": [
        "6525f6ae8786a2bcb596e471efb1d76ae74aabee"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Thu Feb 11 16:21:01 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 13 23:12:34 2016 +0900"
      },
      "message": "THRIFT-3613 Port Python C extension to Python 3\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #845\n"
    },
    {
      "commit": "6525f6ae8786a2bcb596e471efb1d76ae74aabee",
      "tree": "80c5a5037d166c8ada55d97d4e98d36bff632155",
      "parents": [
        "41e8cbf6866bf9b8ec6d5bbc157a1fb970d8c3cc"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Thu Feb 11 13:58:39 2016 +0900"
      },
      "committer": {
        "name": "Nobuaki Sukegawa",
        "email": "nsuke@apache.org",
        "time": "Sat Feb 13 23:12:34 2016 +0900"
      },
      "message": "THRIFT-3612 Add Python C extension for compact protocol\nClient: Python\nPatch: Nobuaki Sukegawa\n\nThis closes #844\n"
    }
  ],
  "next": "ac06704a0c62df9ca03782cb05b0f8cc05387a45"
}
