)]}'
{
  "log": [
    {
      "commit": "9e864d57026b4905862108418ba9482892fb1f65",
      "tree": "337799e20c994eb79d34b59221d84a8f3d1b9198",
      "parents": [
        "5f352754225158f60594a5f19ba8d03261854327"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Fri Apr 17 11:53:39 2020 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 17 19:53:39 2020 +0100"
      },
      "message": "Add UnsetHeader to go library\n\nClient: go\r\n\r\nWe already have SetHeader and GetHeader helper functions in the go\r\nlibrary to deal with THeader injected into the context object. But we\r\ndidn\u0027t provide a way to unset/delete a key from the context object.\r\n\r\nThis will be useful with the TSimpleServer.SetForwardHeaders API. In the\r\nscenario that a thrift server want to auto forward certain headers to\r\nother upstream thrift servers as the fallback, but during the handling\r\nof the request might decide to remove some of the auto forward headers.\r\nThis is also achievable through mutate the write header list, but since\r\nthat\u0027s a list, finding one key from the list and remove it is much more\r\nhassle."
    },
    {
      "commit": "81334cd7345d3b5af165aa875b733a491f1fd5c7",
      "tree": "36bfe1c82c3f584c7c6c057793c097ef327f6341",
      "parents": [
        "69642f389a06f5ba1b374de52c6b0e29892035d8"
      ],
      "author": {
        "name": "lvqian",
        "email": "qlv1@xiaohongshu.com",
        "time": "Thu Mar 26 19:08:55 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Apr 13 18:11:03 2020 +0200"
      },
      "message": "THRIFT-5152: introduce connect timeout and socket timeout\nClient: Go\nPatch: Qian Lv\n\nThis closes #2071\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": "6bbdb1a46ce6ba0ac4e27e29b2c9c9eef107186c",
      "tree": "7c0d2a28567427313cb857e607460c87afba52cd",
      "parents": [
        "f44b6ee8db9342d804c6ba01da9953e791021bfe"
      ],
      "author": {
        "name": "James Lacey",
        "email": "jamlacey@gmail.com",
        "time": "Mon Apr 06 09:17:59 2020 -0700"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 09 21:52:46 2020 +0200"
      },
      "message": "THRIFT-5166: Add support for using WebSockets as a server transport.\nClient: d\nPatch: James Lacey\n\nThis closes #2087\n"
    },
    {
      "commit": "5159da90964b774e6ff952efaf2bce516538ae50",
      "tree": "237780854042b91e99dfec076d51ea8d46171d0a",
      "parents": [
        "13e6f9ec89ae4f8f87165eccea88442e83afb314"
      ],
      "author": {
        "name": "eric.bleher@software-managed.com",
        "email": "eric.bleher@software-managed.com",
        "time": "Wed Apr 08 15:53:04 2020 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 09 21:22:46 2020 +0200"
      },
      "message": "THRIFT-5172 NetStd OutOfMemoryException\nClient: netstd\nPatch: Eric Bleher\n\nThis closes #2093\n"
    },
    {
      "commit": "13e6f9ec89ae4f8f87165eccea88442e83afb314",
      "tree": "1ba533af7eeb6a2c3d549f81e5ac796510fb94a6",
      "parents": [
        "818105653db4916f9e8b59b8fb8f074cb083c30b"
      ],
      "author": {
        "name": "cyy",
        "email": "cyyever@outlook.com",
        "time": "Thu Dec 12 21:13:31 2019 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Apr 06 22:47:20 2020 +0200"
      },
      "message": "THRIFT-5047:fix openssl switch\nClient: cpp\nPatch: Yuanyuan Chen\n\nThis closes #1962\n"
    },
    {
      "commit": "818105653db4916f9e8b59b8fb8f074cb083c30b",
      "tree": "8f376aae4f4783d2e1bd13e00452b06241860b78",
      "parents": [
        "dbb95e438f90609c8bc70b6953f65e97afedbb1b"
      ],
      "author": {
        "name": "James Lacey",
        "email": "jamlacey@gmail.com",
        "time": "Fri Mar 27 19:14:33 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Apr 04 20:52:26 2020 +0200"
      },
      "message": "THRIFT-5156: Fix library compilation on Windows and compiler warnings\nClient: d\nPatch: James Lacey\n\nThis closes #2075\n"
    },
    {
      "commit": "dbb95e438f90609c8bc70b6953f65e97afedbb1b",
      "tree": "b8728bcc3bafcaf080a3ade0640b9fbf4452b5de",
      "parents": [
        "102428d35da461aec0f3d8a513e4a21bb56ddb69"
      ],
      "author": {
        "name": "Kevin Wojniak",
        "email": "kainjow@users.noreply.github.com",
        "time": "Sat Jan 25 12:37:23 2020 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Apr 03 21:17:25 2020 +0200"
      },
      "message": "THRIFT-5076 Improve CMake OpenSSL usage\nClient: c_glib\nPatch: Kevin Wojniak\n\nThis closes #1994\n"
    },
    {
      "commit": "102428d35da461aec0f3d8a513e4a21bb56ddb69",
      "tree": "a2872b4663a3c7a33c867a83f885f47c1daa4dbf",
      "parents": [
        "dfd6df7588564739be7a1eba8a7c3ed83ee27a4b"
      ],
      "author": {
        "name": "Márton Csordás",
        "email": "csordasmarton92@gmail.com",
        "time": "Sat Mar 14 10:30:12 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Apr 03 02:19:11 2020 +0200"
      },
      "message": "THRIFT-5163 adds Q to exports for browserify\nClient: NodeJS\nPatch: Márton Csordás\n\nThis closes #2061\n"
    },
    {
      "commit": "dfd6df7588564739be7a1eba8a7c3ed83ee27a4b",
      "tree": "d91b0575c3c1603a69de7c218e1dc6f6c0a3e4c6",
      "parents": [
        "86396c688068c428d997ad3209823ab5a2e3dcae"
      ],
      "author": {
        "name": "Márton Csordás",
        "email": "csordasmarton92@gmail.com",
        "time": "Thu Apr 02 12:23:22 2020 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Apr 03 02:12:25 2020 +0200"
      },
      "message": "THRIFT-3356: handle undefined captureStackTrace\nClient: nodejs\nPatch: Márton Csordás\n\nThis closes #2082\n"
    },
    {
      "commit": "86396c688068c428d997ad3209823ab5a2e3dcae",
      "tree": "1ef219789ba0425bc3a7095017d2eb9c8915be6e",
      "parents": [
        "3b56a036c38aaa0575760c958f57067119ad51b3"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Tue Mar 31 14:38:20 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 31 23:06:36 2020 +0200"
      },
      "message": "Add testcase for other condition judgment in the readJSONDouble function\nClient: cpp\nPatch: zeshuai007 \u003c51382517@qq.com\u003e\n\nThis closes #2080\n"
    },
    {
      "commit": "8ec585793c63c765a18ec97335eda6b89b494ab5",
      "tree": "c60fe2222055abcbd0e96ca384430a3938cc95fd",
      "parents": [
        "11fc716a20474a7b668654f96db43d97a09bc318"
      ],
      "author": {
        "name": "Kanishth Karthik",
        "email": "kanishthkarthik@gmail.com",
        "time": "Thu Mar 26 01:29:50 2020 +0530"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 29 18:28:05 2020 +0200"
      },
      "message": "THRIFT-4963: Fix deadlock in ThreadManager::Worker::run\nClient: cpp\nPatch: Kanishth Karthi\n\nThis closes #2070\n"
    },
    {
      "commit": "dfe7f30070498c7463ab61720133eff1bcd11cc3",
      "tree": "7a15e03bddc2df150112b16470027d90d61af9dd",
      "parents": [
        "aeda987cc42ef7dcf57682b7ee168e7dfdbd5f57"
      ],
      "author": {
        "name": "panivko",
        "email": "vladimir.panivko@together.com",
        "time": "Wed Mar 04 15:05:17 2020 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Mar 27 21:44:05 2020 +0100"
      },
      "message": "THRIFT-5130 Use Apcu instead of APC\nClient: PHP\nPatch: Vladimir Panivko\n\nThis closes #2041\n"
    },
    {
      "commit": "aeda987cc42ef7dcf57682b7ee168e7dfdbd5f57",
      "tree": "2021c1fd974a2e1661410b62a9c9c4c5856f40dd",
      "parents": [
        "4a33b188f44ce097e25ca56ebd48026b41effd6a"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 22 15:01:28 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 22 15:30:37 2020 +0100"
      },
      "message": "THRIFT-5146 Align Delphi to the test suite arguments rules (its \"--switch\u003dvalue\", not \"--switch value\")\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "4a33b188f44ce097e25ca56ebd48026b41effd6a",
      "tree": "fefc19cf2460bf72709faf988bc186f5bb93a0de",
      "parents": [
        "24ab31fc5738532b082c7b0638bfcd2a7a26d7c5"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 22 13:46:34 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 22 15:30:27 2020 +0100"
      },
      "message": "THRIFT-5145 Streamline --pipe and --named-pipe options in the code base\nClient: Test suite\nPatch: Jens Geyer\n\nThis closes #2065\n"
    },
    {
      "commit": "655f52590d23443a432a3326cbb64ca93cb4b90a",
      "tree": "bc967fd4d898d6b35e0276fbd41dbe21ca189290",
      "parents": [
        "4b66a9d8812cf2c19f15382c56ec8e1327b6f2a1"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Sat Mar 21 10:52:03 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 22 13:22:37 2020 +0100"
      },
      "message": "Fix some compile warnings\nClient: c_glib\nPatch: zeshuai007 \u003c51382517@qq.com\u003e\n\nThis closes #2063\n"
    },
    {
      "commit": "4b66a9d8812cf2c19f15382c56ec8e1327b6f2a1",
      "tree": "c8543ba44a93c29f1bcfbc2a3d5548b0a4a7b1db",
      "parents": [
        "eccd2e879e73bbc1a948b31139ac1d4c383c0335"
      ],
      "author": {
        "name": "Mikel Blanchard",
        "email": "mblanchard@macrosssoftware.com",
        "time": "Thu Mar 05 00:46:21 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Mar 19 23:13:03 2020 +0100"
      },
      "message": "THRIFT-5133: Use ArrayPool when reading and writing strings to improve performance\nClient: netstd\nPatch: Mikel Blanchard\n\nThis closes #2057\n"
    },
    {
      "commit": "dad2bf87da9e46382b088544eba56b1829e25d92",
      "tree": "822a4eed86e231ed7387365e9a3208ae1f410d18",
      "parents": [
        "b013dc004a019c9a30689b8e49ade34c3b18b7e5"
      ],
      "author": {
        "name": "Kevin Wojniak",
        "email": "kainjow@users.noreply.github.com",
        "time": "Fri Jul 05 03:42:02 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Mar 15 12:20:08 2020 +0100"
      },
      "message": "Fix several warnings in c_glib lib and incorrect error message\nCLient: c_glib\nPatch: Kevin Wojniak\n\nThis closes #1830\n"
    },
    {
      "commit": "b013dc004a019c9a30689b8e49ade34c3b18b7e5",
      "tree": "931f9b2f70f4ecdfe99e58a26d4c3032d5693df8",
      "parents": [
        "ed1711e8611a2acc89b178a1cc0924b215e07a4c"
      ],
      "author": {
        "name": "Alexander Edge",
        "email": "alex@alexedge.co.uk",
        "time": "Thu Feb 27 11:25:55 2020 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 14 15:41:12 2020 +0100"
      },
      "message": "THRIFT-5121: Fix inverted logic when testing message type\nClient: Swift\nPatch: Alexander Edge\n\nThis closes #2036\n"
    },
    {
      "commit": "2e115774776f2e5bcfe826e30548feab030fb263",
      "tree": "a0ed09d5766b2aa5f8509b786e2ec66d79b0be26",
      "parents": [
        "e791760098b6a9490e19af2b18a3e002f561973b"
      ],
      "author": {
        "name": "Jano Svitok",
        "email": "jsv@whitestein.com",
        "time": "Fri Mar 06 09:01:43 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 07 11:12:13 2020 +0100"
      },
      "message": "THRIFT-5111: Upgrade rust to 1.36.0\nClient: Rust\nPatch: Jano Svitok\n\nThis closes #2050\n\nAlso contains portions of THRIFT-4547: Upgrade Swift in docker to 5.1.4\nClient: Swift\nPatch: Jano Svitok\n\nLinux version 4.2.0 does not have FileHandle.acceptConnectionInBackgroundAndNotify()\nimplemented. We need at least 5.1 for TSocketServer to run in docker.\n\nIn the meantime, URLRequest was moved to FoundationNetworking.\nTo keep compatibility with previous versions, conditional import is\nused.\n"
    },
    {
      "commit": "e791760098b6a9490e19af2b18a3e002f561973b",
      "tree": "efa6d60378ab23f37b3b7ea0d0c677dce00e159b",
      "parents": [
        "1b7b00cde9cdd4a0dd9f09f240df551c87d4ab27"
      ],
      "author": {
        "name": "Nik Clayton",
        "email": "nik.clayton@dfinity.org",
        "time": "Thu Mar 05 11:51:15 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 07 10:59:24 2020 +0100"
      },
      "message": "THRIFT-5131: Require \u003e\u003d 1.1.4 of integer-encoding dependency\nClient: Rust\nPatch: Nik Clayton\n\nThis closes #2045\n\nVersions 1.1.0 - 1.1.3 of the integer-encoding crate had a bug where\nnumbers larger than 0x4000_0000_0000_0000 would cause a panic during\ndecoding.\n\nAdd a test to be sure that numbers up to i64::maxvalue() encode and\ndecode successfully.\n"
    },
    {
      "commit": "1b7b00cde9cdd4a0dd9f09f240df551c87d4ab27",
      "tree": "e9c875912ae123c278b429a461c590c94f764b65",
      "parents": [
        "56700e469d5d0659994a3963ad5a111740cf8277"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 26 22:01:18 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 28 19:20:27 2020 +0100"
      },
      "message": "CI broken, reverting following PRs\nreverted https://github.com/apache/thrift/pull/2025\nreverted https://github.com/apache/thrift/pull/2026\nReverted https://github.com/apache/thrift/pull/2021\n"
    },
    {
      "commit": "56700e469d5d0659994a3963ad5a111740cf8277",
      "tree": "db903818e332aa6887f2efd2797163ffa4268d67",
      "parents": [
        "4903d18fca988871bcedce3b420fef2cd9682ca1"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Feb 22 16:51:51 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 28 19:18:34 2020 +0100"
      },
      "message": "THRIFT-4982 Remove deprecated C# bindings from the code base\nClient: csharp\nPatch: Jens Geyer\n\nThis closes #2027\n"
    },
    {
      "commit": "4903d18fca988871bcedce3b420fef2cd9682ca1",
      "tree": "7addbe47c8f8791b15c2726fedae888e1ab61592",
      "parents": [
        "aec555aac89ec9634e99ce0f4f0aec5799e6e3d8"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 27 20:27:03 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 27 20:37:50 2020 +0100"
      },
      "message": "THRIFT-5123 add possibility to query HTTP status code with WinHTTP\nClient: delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "aec555aac89ec9634e99ce0f4f0aec5799e6e3d8",
      "tree": "2e0ee1b7ebb933ca481965a944fe788fccaa107a",
      "parents": [
        "b7b02afcd835639a0735731a63ff5b1386879c97"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 26 00:14:25 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 26 22:14:12 2020 +0100"
      },
      "message": "make dist fails due to CMakeList.txt files missing from the generated tarball\n"
    },
    {
      "commit": "b7b02afcd835639a0735731a63ff5b1386879c97",
      "tree": "0fb9ff167e671d993f5613edd6f1442b7d76e19a",
      "parents": [
        "4b475af6943d99a21e2b79578167a4d228fe0df1"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "mario@emmenlauer.de",
        "time": "Mon Feb 24 22:25:24 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 25 23:21:57 2020 +0100"
      },
      "message": "THRIFT-5115 PR #2022 Updated gradle to 6.2 broke CI\nClient: java\nPatch: Mario Emmenlauer\n\nThis closes #2031\n\nDowngraded gradle to 5.6.4 after problems with 6.x in AS3\n"
    },
    {
      "commit": "4b475af6943d99a21e2b79578167a4d228fe0df1",
      "tree": "4a05105272003cef1b478b5d96bc0fa508fb7b61",
      "parents": [
        "66d110bcce5c7e1b0deeacd28b046fb4a9c0249b"
      ],
      "author": {
        "name": "Alexander Edge",
        "email": "alex@alexedge.co.uk",
        "time": "Mon Feb 24 10:37:25 2020 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Feb 24 19:00:49 2020 +0100"
      },
      "message": "THRIFT-5084: Multiplexed processor in Swift – explicit return statements\nClient: swift\nPatch: Alexander Edge\n\nThis closes #2028\n"
    },
    {
      "commit": "66d110bcce5c7e1b0deeacd28b046fb4a9c0249b",
      "tree": "b1ae0dc60fa26890bf434b90ddf8dd59e165de9d",
      "parents": [
        "13cbc8defa0877c14af42666b9a7575dea78de72"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "mario@emmenlauer.de",
        "time": "Mon Apr 15 13:36:02 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 23 15:12:19 2020 +0100"
      },
      "message": "THRIFT-5109 Misc Cmake build improvements\nPatch: Mario Emmenlauer\n\nThis closes #2017\nThis closes #2018\nThis closes #2019\n\n- build/cmake/DefineInstallationPaths.cmake: fixed the library path\n- build/cmake/ThriftMacros.cmake: do not enforce debug suffix \u0027d\u0027\n- lib/java/CMakeLists.txt: allow to override JAVA_INSTALL_DIR\n"
    },
    {
      "commit": "b70dc1e61c5c4637d16160df3197164e0bef79bf",
      "tree": "d450d55ef2dc9944e3f714e833b78138a5b2e8b0",
      "parents": [
        "f8b3698ab49c5997760867a85f85b01ba9768e8e"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "memmenlauer@biodataanalysis.de",
        "time": "Sat Dec 14 11:23:05 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 23 14:58:10 2020 +0100"
      },
      "message": "Updated gradle to 6.2\nClient: java\nPatch: Mario Emmenlauer\n\nThis closes #2022\n"
    },
    {
      "commit": "f8b3698ab49c5997760867a85f85b01ba9768e8e",
      "tree": "f7049399b16d69d79f1733cdaf25efc72b847d93",
      "parents": [
        "61d502075bf5da10331c201f604acdfefc4d5edc"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "mario@emmenlauer.de",
        "time": "Sat Feb 22 10:47:31 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 23 14:57:59 2020 +0100"
      },
      "message": "Updated Javascript dependencies\nClient: js\nPatch: Mario Emmenlauer\n\nThis closes #2023\n"
    },
    {
      "commit": "61d502075bf5da10331c201f604acdfefc4d5edc",
      "tree": "edac8ef77dcd0eceb0dedbf035ecaf428ea8e86e",
      "parents": [
        "f5a9a30e345fc8cf52d37388cb7b9ab741a3a4ac"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "memmenlauer@biodataanalysis.de",
        "time": "Wed Oct 23 17:32:34 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 23 14:51:48 2020 +0100"
      },
      "message": "THRIFT-5109 Misc Cmake build improvements\nPatch: Mario Emmenlauer\n\nThis closes #2026\nThis closes #2025\nThis closes #2021\n"
    },
    {
      "commit": "f5a9a30e345fc8cf52d37388cb7b9ab741a3a4ac",
      "tree": "e7e90217c66f1e64217ce32a34b222a8507f570b",
      "parents": [
        "d858a8d4bcdc8767b4a89e3636e61f486ad9366f"
      ],
      "author": {
        "name": "Mario Emmenlauer",
        "email": "memmenlauer@biodataanalysis.de",
        "time": "Thu Aug 22 22:08:16 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 23 14:50:30 2020 +0100"
      },
      "message": "THRIFT-5110 Added a number of required libs for using static OpenSSL\nClient: cpp\nPatch: Mario Emmenlauer\n\nThis closes #2020\n"
    },
    {
      "commit": "a89036c8c3d05be4e6186de0864335beef01294a",
      "tree": "b2b7caa20db4d472c1fe1576a03222faee4d86be",
      "parents": [
        "f0c761e171782565f74ff3cd7d0e9ce8e1d2b6ad"
      ],
      "author": {
        "name": "Alexander Edge",
        "email": "alex@alexedge.co.uk",
        "time": "Wed Feb 05 17:03:53 2020 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:57:37 2020 +0100"
      },
      "message": "THRIFT-5084: Multiplexed processor in Swift\nClient: Swift\nPatch: Alexander Edge\n\nThis closes #2002\n"
    },
    {
      "commit": "f0c761e171782565f74ff3cd7d0e9ce8e1d2b6ad",
      "tree": "c72f74fb3f3c2eb2c93c114652f24ff993861e7c",
      "parents": [
        "ea4a086757f834880220c50392532b60751c6885"
      ],
      "author": {
        "name": "Kengo Seki",
        "email": "sekikn@apache.org",
        "time": "Thu Jan 09 18:48:29 2020 +0900"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:41:27 2020 +0100"
      },
      "message": "THRIFT-5059: Add cross tests for TZlibTransport in D\nClient: D\nPatch: Kengo Seki\n\nThis closes #1977\n"
    },
    {
      "commit": "ea4a086757f834880220c50392532b60751c6885",
      "tree": "d93055380b3b0cc1e1338cafb2df5f72e4645685",
      "parents": [
        "bd26d385693e4f172c348dc27f9d1e23288c50cf"
      ],
      "author": {
        "name": "wangyunjian",
        "email": "wangyunjian@huawei.com",
        "time": "Tue Feb 18 09:11:53 2020 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:35:39 2020 +0100"
      },
      "message": "THRIFT-5102: Fix memory leak in thrift_simple_server_serve()\nClient: c_glib\nPatch: wangyunjian\n\nThis closes #2012\n\nSigned-off-by: wangyunjian \u003cwangyunjian@huawei.com\u003e\n"
    },
    {
      "commit": "bd26d385693e4f172c348dc27f9d1e23288c50cf",
      "tree": "198cb3fa65ce742106f89f2a5132722646b3ae43",
      "parents": [
        "d8480c9ac14f133d272372530e33619b2a64ddf7"
      ],
      "author": {
        "name": "wangyunjian",
        "email": "wangyunjian@huawei.com",
        "time": "Sat Feb 15 08:29:59 2020 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:25:45 2020 +0100"
      },
      "message": "THRIFT-5094: Fix memory leak in thrift_server_set_property()\nClient: c_glib\nPatch: wangyunjian\n\nThis closes #2008\n\nSigned-off-by: wangyunjian \u003cwangyunjian@huawei.com\u003e\n"
    },
    {
      "commit": "d8480c9ac14f133d272372530e33619b2a64ddf7",
      "tree": "599d8fdb844d748293c7439f9eaa21003e1d0687",
      "parents": [
        "7b712f42d7bc03610511abd397845983deafa258"
      ],
      "author": {
        "name": "wangyunjian",
        "email": "wangyunjian@huawei.com",
        "time": "Sun Feb 16 08:43:03 2020 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:15:29 2020 +0100"
      },
      "message": "THRIFT-5101: Return NULL install of FALSE for thrift_server_socket_accept()\nClient: c_glib\nPatch: wangyunjian\n\nThis closes #2011\n\nSigned-off-by: wangyunjian \u003cwangyunjian@huawei.com\u003e\n"
    },
    {
      "commit": "7b712f42d7bc03610511abd397845983deafa258",
      "tree": "3ee0c4bcd77ce5e184e5478fc42af772e92da755",
      "parents": [
        "222362cc70d66b5f8bb6422622fcf384407b54c8"
      ],
      "author": {
        "name": "Jeffrey Han",
        "email": "jeffreyhan@fb.com",
        "time": "Thu Feb 20 14:18:23 2020 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 21 21:08:19 2020 +0100"
      },
      "message": "THRIFT-5106: Fix various Lua library and compiler issues\nClient: lua\nPatch: Jeffrey Han\n\nThis closes #2014\n"
    },
    {
      "commit": "222362cc70d66b5f8bb6422622fcf384407b54c8",
      "tree": "75b7dfae3176559c58d17a833f2852f1b6a66f79",
      "parents": [
        "c8e46cf861cd1ebae273e968bb3995f778d998f1"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 16 01:54:56 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 16 13:19:43 2020 +0100"
      },
      "message": "THRIFT-5095 ToString() should print entire structure, not just the top-level data\nClient: netstd\nPatch: Jens Geyer\n\nThis closes #2009\n"
    },
    {
      "commit": "c8e46cf861cd1ebae273e968bb3995f778d998f1",
      "tree": "ce8c58fe448fa65fb127c277dee52f7affad066f",
      "parents": [
        "bb5f7ec6b06220808cd20c8488fe8f90a54f3929"
      ],
      "author": {
        "name": "Tobias Mayer",
        "email": "tobim@fastmail.fm",
        "time": "Sun Feb 16 10:36:11 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Feb 16 13:18:24 2020 +0100"
      },
      "message": "THRIFT-5097: Fix exported version in cmake module\nPatch: Tobias Mayer\n\nThis closes #2010\n"
    },
    {
      "commit": "aa9e7e8f5966ec9233ef418bab81b48c5a539028",
      "tree": "4c9eb270297b93a075be2cafda03cda4ba739488",
      "parents": [
        "b012318fc8f1d3de4c64514d5d32cb424952d905"
      ],
      "author": {
        "name": "Renan I. Del Valle",
        "email": "commit@ridv.xyz",
        "time": "Thu Feb 13 11:20:04 2020 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 13 22:42:14 2020 +0100"
      },
      "message": "THRIFT-5092: Return an error instead of causing a panic when attempting to write to a closed client.\nClient: go\nPatch: Renan I. Del Valle\n\nThis closes #2005\n"
    },
    {
      "commit": "b012318fc8f1d3de4c64514d5d32cb424952d905",
      "tree": "d7400d3ced0335c6c58713fedeeae5c58309c66e",
      "parents": [
        "ded326101af3c6c9daad9814ce6404d385f36a1f"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 12 12:16:19 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 12 22:40:42 2020 +0100"
      },
      "message": "THRIFT-5088 Memory leak in TWinHttpTransport\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "77c4afae16207a8a806162fa8b6418f329ad5fa3",
      "tree": "afbff38d027455624f17d19dd5f50ab8ec829b14",
      "parents": [
        "baddaa8612fe70070208d30b91d820e99fb2a716"
      ],
      "author": {
        "name": "Gaurav Singh",
        "email": "gaurav1086@gmail.com",
        "time": "Sun Feb 02 20:13:07 2020 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Feb 06 23:06:07 2020 +0100"
      },
      "message": "(no ticket) Propagate exception instead of rethrowing\nClient: cpp\nPatch: Gaurav Singh\n\nThis closes #1999\n"
    },
    {
      "commit": "f049ff374dd8232a1b4e2b3e01f7530936cae0d0",
      "tree": "745fcf4ec4b65b16b227aa4f5243882b9dbd1a63",
      "parents": [
        "f8b004081da0c5006c3a0ce0352b66d2d857405e"
      ],
      "author": {
        "name": "Paulo Neves",
        "email": "ptsneves@gmail.com",
        "time": "Wed Feb 05 11:58:18 2020 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 05 21:40:16 2020 +0100"
      },
      "message": "THRIFT-5083 Reset context on new messages.\nClient: netstd\nPatch: Paulo Neves\n\nThis closes #\n"
    },
    {
      "commit": "cb4c31a0720e5449ac562b65ac7916f583d0cb7f",
      "tree": "9ccccd2f0e69065f0fb3d171245aaa8e05367d49",
      "parents": [
        "e56f717b7f62ba5b1ace7382d728ac7f0fda940f"
      ],
      "author": {
        "name": "Kengo Seki",
        "email": "sekikn@apache.org",
        "time": "Thu Dec 26 14:34:57 2019 +0900"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 28 23:27:48 2020 +0100"
      },
      "message": "THRIFT-5050 Fix MemoryBuffer.pm to raise a proper exception if no data is available\nClient: perl\nPatch: Kengo Seki\n\nThis closes #1967\n"
    },
    {
      "commit": "e56f717b7f62ba5b1ace7382d728ac7f0fda940f",
      "tree": "22db549a08b051c9e1d2c75e4c1b95b1f4671a31",
      "parents": [
        "e8f82da45e63a6477e4165e80358d613de689a82"
      ],
      "author": {
        "name": "Nick Collier",
        "email": "Nick.Collier@Sophos.com",
        "time": "Wed Dec 18 10:54:27 2019 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 28 23:20:40 2020 +0100"
      },
      "message": "THRIFT-5078 Handle named pipe clients quickly disconnecting\nClient: C++\nPatch: Nick Collier\n\nThis closes #1964\n"
    },
    {
      "commit": "436bce33215a918ebdc89596bc3c5bfafb33feea",
      "tree": "865960a975bf52913cda15459433195ae4e735fb",
      "parents": [
        "a86a3549cff1643b94438c8afc0fec5e5c6ade4f"
      ],
      "author": {
        "name": "Sam De Roeck",
        "email": "sam.de.roeck@wdc.com",
        "time": "Tue Nov 12 17:44:06 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 28 22:47:55 2020 +0100"
      },
      "message": "(no ticket) Gracefully terminate the connection handling loop when encountering EOF on the transport layer\nClient: Rust\nPatch: Sam De Roeck\n\nThis closes #1928\n"
    },
    {
      "commit": "3a2a44bb51cb4cc5480d4b97f5bc6a4fe6228b0a",
      "tree": "71e3a86eac9fcf2b9c28563a673d6207bdfd52d5",
      "parents": [
        "829b7d330d8e626808887b3e1072ec3e3051805b"
      ],
      "author": {
        "name": "Cameron Rollheiser",
        "email": "icirellik@gmail.com",
        "time": "Tue Jan 21 12:02:22 2020 -0500"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Tue Jan 21 17:02:22 2020 +0000"
      },
      "message": "Remove non-required JS dependencies\n\nThese dependencies are not needed at runtime.\r\n\r\nClient: js"
    },
    {
      "commit": "829b7d330d8e626808887b3e1072ec3e3051805b",
      "tree": "51b3782df3836cad9d457c7e0abb8f3c87229b07",
      "parents": [
        "d082d1d61b024e441df21b8b46a6261d7f955405"
      ],
      "author": {
        "name": "JackBoosY",
        "email": "yuzaiyang@beyondsoft.com",
        "time": "Thu Jan 16 00:38:15 2020 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Jan 19 23:00:32 2020 +0100"
      },
      "message": "Add vcpkg installation instructions\nPatch: JackBoosY, edited by JensG\n\nThis closes #1986\n"
    },
    {
      "commit": "c97e6aa8604fed4a889b6c0a413e085371de6608",
      "tree": "5a2c17fee3ea9dcd23b7099281465eda2b141366",
      "parents": [
        "46554d0a4c741a886bf1e2cb9e0dd529eb94a387"
      ],
      "author": {
        "name": "Kengo Seki",
        "email": "sekikn@apache.org",
        "time": "Fri Jan 10 01:11:15 2020 +0900"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Jan 19 22:26:09 2020 +0100"
      },
      "message": "THRIFT-5060: Add cross tests for TZlibTransport in Java\nClient: Java\nPatch: Kengo Seki\n\nThis closes #1978\n"
    },
    {
      "commit": "397645ac24874b6f54d88b2700e56be090753825",
      "tree": "fa59900d864e2c15e4a04f3a8857c9166b9f3b36",
      "parents": [
        "a5ec666e1ba76fe7385ed56f484c9dfdd5b6bfc9"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Sat Jan 18 12:55:51 2020 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Sat Jan 18 20:55:51 2020 +0000"
      },
      "message": "THRIFT-5069: Make TDeserializer resource pool friendly\n\nClient: go\r\n\r\nThis change improves performance when using TDeserializer with a\r\nresource pool. See https://issues.apache.org/jira/browse/THRIFT-5069 for\r\nmore context.\r\n\r\nAlso add TSerializerPool and TDeserializerPool, which are thread-safe\r\nversions of TSerializer and TDeserializer. Benchmark result shows that\r\nthey are both faster and use less memory than the plain version:\r\n\r\n    $ go test -bench Serializer -benchmem\r\n    goos: darwin\r\n    goarch: amd64\r\n    BenchmarkSerializer/baseline-8            577558              1930 ns/op             512 B/op          6 allocs/op\r\n    BenchmarkSerializer/plain-8               452712              2638 ns/op            2976 B/op         16 allocs/op\r\n    BenchmarkSerializer/pool-8                591698              2032 ns/op             512 B/op          6 allocs/op\r\n    PASS"
    },
    {
      "commit": "70c4e7a7c7b2a2b4146372868702b7ea0d143e05",
      "tree": "c5490ea8f9afd11eeac314ac4bff879ee5343ce2",
      "parents": [
        "45a94594ff50ad51a18f6ad1900209e978e5921b"
      ],
      "author": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Wed Jan 15 21:12:53 2020 +0000"
      },
      "committer": {
        "name": "D. Can Celasun",
        "email": "can@dcc.im",
        "time": "Wed Jan 15 21:13:50 2020 +0000"
      },
      "message": "Use HTTPS for repo1.maven.org\n\nUpstream no longer supports plain HTTP as of today [1].\n\n[1] https://support.sonatype.com/hc/en-us/articles/360041287334\n"
    },
    {
      "commit": "45a94594ff50ad51a18f6ad1900209e978e5921b",
      "tree": "1e071e74838edbc6a5ceba2adf8b618af3617c25",
      "parents": [
        "bee4f2fd69db32621addd9353ab0aa2e2ba94349"
      ],
      "author": {
        "name": "Kengo Seki",
        "email": "sekikn@apache.org",
        "time": "Sat Jan 11 17:52:28 2020 +0900"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jan 11 12:57:53 2020 +0100"
      },
      "message": "THRIFT-5061: Pin Ruby\u0027s rack version to 2.0.8\nClient: ruby\nPatch: Kengo Seki\n\nThis closes #1980\n"
    },
    {
      "commit": "30ac2598e84928d9af7066b5d3248b7aea4376b2",
      "tree": "52b1efc5893ae1f6bb8808c573472e95aa92d076",
      "parents": [
        "6e443789e9006f4e291974d179b839b3e5ea8798"
      ],
      "author": {
        "name": "Eugen",
        "email": "kandakov@googlemail.com",
        "time": "Tue Jan 07 15:28:45 2020 +0100"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Tue Jan 07 14:28:45 2020 +0000"
      },
      "message": "THRIFT-5003: Websocket Connection in Browsers with nodejs code\n\n* changed this to self in forEach callback\r\n\r\n* updated minimum node version to 8.16.2 (Maintenance LTS until December 2019)\r\nchanged ws_connection.js to work in the browser, with isomorphic-ws\r\nadded exports for `wsConnection`, `createWSConnection`, `createWSClient`\r\n\r\n* added exports for WSConnection to browser.js\r\n\r\n* extended the sample of nodejs code in the browser with webpack\r\n\r\n* tested and updated node version to LTS 10.18.0 Dubnium\r\ndiscussion based: https://github.com/apache/thrift/pull/1927#discussion_r358140463\r\n"
    },
    {
      "commit": "6e443789e9006f4e291974d179b839b3e5ea8798",
      "tree": "422b0756e12dad1740555c864b2d129b9f3a8d91",
      "parents": [
        "44d8cc6b435557ef5ba9e4c9df91b2f114a5bfa0",
        "98ce2c8f2b3bb5aaee3e67a5b461dd1a87685cc0"
      ],
      "author": {
        "name": "Allen George",
        "email": "allengeorge@apache.org",
        "time": "Sat Dec 14 09:52:36 2019 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 14 09:52:36 2019 -0500"
      },
      "message": "Merge pull request #1919 from mpajkowski/to_socket_addrs\n\nTHRIFT-4995 Use `ToSocketAddrs` for expressing network addresses"
    },
    {
      "commit": "b374ce35550659d4f109c2afc657733e7590aaed",
      "tree": "970d058f5c5048b8e24f5c957acffc4cbceff715",
      "parents": [
        "418d88b447769745eeba372d12f486b22053a7a8"
      ],
      "author": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Fri Dec 13 13:10:23 2019 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 13 13:10:23 2019 +0000"
      },
      "message": "THRIFT-5046: Better struct tag overrides \n\nCustom go.tag in an IDL no longer removes the existing \"db\" and \"json\"\r\ntags but can override them.\r\n\r\nThis allows us to change default tags in the future without affecting\r\nuser defined ones.\r\n\r\nClient: go\r\n\r\nThis closes #1963."
    },
    {
      "commit": "0ebf3ce99d74bc77912536dc3ad95dac10ebf12a",
      "tree": "6395fb30e461f9c95413071e394be8ebdbf2036c",
      "parents": [
        "dfae5d7f4a66e747e56ecfa9f50817c2936e75c3"
      ],
      "author": {
        "name": "Kevin Wojniak",
        "email": "kainjow@users.noreply.github.com",
        "time": "Thu Dec 12 15:42:00 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Thu Dec 12 23:42:00 2019 +0000"
      },
      "message": "Fix uint64_t to size_t conversion warning\n\nFixes an MSVC warning with an explicit cast.\r\n\r\nClient: cpp"
    },
    {
      "commit": "dfae5d7f4a66e747e56ecfa9f50817c2936e75c3",
      "tree": "b15cf298235f771a9222facc4291cd3571d2d5e9",
      "parents": [
        "6e2a6983ec95c7a64db3d219b9533af1c2b8c1a1",
        "24045b7211318b7b62dce83a7f0e962e20292f1b"
      ],
      "author": {
        "name": "Duru Can Celasun",
        "email": "can@dcc.im",
        "time": "Thu Dec 12 23:34:48 2019 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 12 23:34:48 2019 +0000"
      },
      "message": "THRIFT-4252: Close sockets when shut down server (#1905)\n\n* THRIFT-4252: Close sockets when shut down server\r\n\r\nIn TThreadPoolServer, threads are blocking in io with open sockets,\r\nas long as clients don\u0027t close the connection, server threads are\r\nnever stopped even after a shutdown is called on server (because\r\nthey are blocked waiting for io).\r\nTo be able to stop all server threads properly, server should\r\nproactively close sockets once a shutdown is initiated.\r\n\r\n* Fix indentation\r\n\r\nUse white space for indentation instead of tabulation.\r\n"
    },
    {
      "commit": "6e2a6983ec95c7a64db3d219b9533af1c2b8c1a1",
      "tree": "84d18928b425188a1f58b367e3f5aa60d858de63",
      "parents": [
        "f1c53418a794f3d740b809ece822ce79c0bb62a3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Dec 12 23:07:49 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Dec 13 00:33:46 2019 +0100"
      },
      "message": "THRIFT-5048 EnumUtils\u003cT\u003e.ToString() throws for elements not known to the receiving end [ci skip]\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "cf95fef9b88761ff773257aa0ac0a41e4093820b",
      "tree": "98fd62cf7c84c941ef4e299cec1f6e8b4b79506a",
      "parents": [
        "9c43962da8e4b530014619e3703a279053cf2182"
      ],
      "author": {
        "name": "Anton Golub",
        "email": "mailbox@antongolub.ru",
        "time": "Sun Nov 24 22:13:40 2019 +0300"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "can@dcc.im",
        "time": "Thu Dec 12 22:30:07 2019 +0000"
      },
      "message": "THRIFT-5029: Fix Node.js lib entry point\nClient: js\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": "6e023df1ded255dda00eb4c041c201e66c8d1fbc",
      "tree": "74c1929da78b07685b2f816508ecd8ba156affb2",
      "parents": [
        "3a0e1fd356963ad3ac0648b9891d1f8ff326f6ce"
      ],
      "author": {
        "name": "Qinghui Xu",
        "email": "qinghui.xu@gmail.com",
        "time": "Thu Sep 19 23:04:03 2019 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Dec 10 23:57:35 2019 +0100"
      },
      "message": "THRIFT-4889 Nonblocking server with sasl support\nClient: Java\nPatch: Qinghui Xu\n\nThis closes #1892\n"
    },
    {
      "commit": "3a0e1fd356963ad3ac0648b9891d1f8ff326f6ce",
      "tree": "7e48133751e03a97e97081dba1c4a286794cb918",
      "parents": [
        "3d9f50d61728d377951f9b6df5f19196f6b3af46"
      ],
      "author": {
        "name": "Qinghui Xu",
        "email": "qinghui.xu@gmail.com",
        "time": "Wed Nov 13 10:52:43 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Dec 10 23:25:15 2019 +0100"
      },
      "message": "THRIFT-5008: Improve TSaslTransport logging\nClient: Java\nPatch: Qinghui Xu\n\nThis closes #1931\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": "ffb97e105cbef6afc809a1bdac9cdac1f35d6bab",
      "tree": "c9b2a58f29402781e3a12009e142a19ee851d80f",
      "parents": [
        "e780855d336beb23119cc83d1ca6c3008f842541"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Dec 06 23:43:08 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Dec 07 08:47:32 2019 +0100"
      },
      "message": "THRIFT-4990 Upgrade to .NET Core 3.1 (LTS)\nClient: netstd\nPatch: Jens Geyer\n\nThis closes #1961\n"
    },
    {
      "commit": "e780855d336beb23119cc83d1ca6c3008f842541",
      "tree": "7d19d7607010dbd7a7d18b18081bef3f67c46780",
      "parents": [
        "65e352bbf3ad677cfc1e5fb9b2a363336754c745"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Dec 04 21:24:08 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Dec 05 09:03:10 2019 +0100"
      },
      "message": "THRIFT-5044 Improve serialization support for TApplicationExceptions and custom exceptions\nClient: Delphi\nPatch: Jens Geyer\n\nThis closes #1960\n"
    },
    {
      "commit": "9c6c6bf81a3c934e96378b26fc133f50cf4226a2",
      "tree": "eb58cf9e7a195cc41d78db8f6649717ef34ccd7f",
      "parents": [
        "b34680f01a09896cfbf3536b4b791e4d7c0ee0a3"
      ],
      "author": {
        "name": "Julian Tescher",
        "email": "jatescher@gmail.com",
        "time": "Sun Dec 01 21:43:01 2019 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 02 21:03:35 2019 +0100"
      },
      "message": "THRIFT-5043 Make TBufferChannel clonable\nClient: Rust\nPatch: Julian Tescher\n\nThis closes #1956\n\nIt is useful for `TBufferChannel` to be `Clone` so that you can use it to read bytes that were written by a client for use cases like testing or sending over alternative transports like UDP.\n"
    },
    {
      "commit": "b34680f01a09896cfbf3536b4b791e4d7c0ee0a3",
      "tree": "09356c14717ba888bbf95e6d27d86bf77e0e125d",
      "parents": [
        "c63084193a8c2131267b7278823b76a726fcef7b"
      ],
      "author": {
        "name": "Marcin Pajkowski",
        "email": "mpa@genesismobo.com",
        "time": "Mon Dec 02 10:29:16 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 02 20:51:14 2019 +0100"
      },
      "message": "THRIFT-4915 Fix encoding/decoding doubles in TCompactProtocol\nClient: Rust\nPatch: Marcin Pajkowski\n\nThis closes #1957\n"
    },
    {
      "commit": "c63084193a8c2131267b7278823b76a726fcef7b",
      "tree": "f6546ce52c30bab31b4126dd89a83b82e559115d",
      "parents": [
        "4266faef0e800db2c51d11419296c448fa815dc4"
      ],
      "author": {
        "name": "Marcin Pajkowski",
        "email": "mpa@genesismobo.com",
        "time": "Mon Dec 02 11:39:28 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 02 19:29:38 2019 +0100"
      },
      "message": "THRIFT-5042 Fix failing tests\nClient: Rust\nPatch: Marcin Pajkowski\n\nThis closes #1958\n"
    },
    {
      "commit": "98ce2c8f2b3bb5aaee3e67a5b461dd1a87685cc0",
      "tree": "de52e9c1139b97fc75300e065b39c6aa8dd00d36",
      "parents": [
        "4266faef0e800db2c51d11419296c448fa815dc4"
      ],
      "author": {
        "name": "Marcin Pajkowski",
        "email": "marcin.pajkowski@gmail.com",
        "time": "Tue Nov 05 00:20:15 2019 +0100"
      },
      "committer": {
        "name": "Marcin Pajkowski",
        "email": "mpa@genesismobo.com",
        "time": "Fri Nov 29 10:27:26 2019 +0100"
      },
      "message": "THRIFT-4995 Use `ToSocketAddrs` for net addresses\n"
    },
    {
      "commit": "a019cda66ceccdf9068c9f5e2c27f890c450f9ec",
      "tree": "5cfe30f4f28ba09ec047903c0e2996b962888c50",
      "parents": [
        "c140bb90b0c2ed6175afe8c9c579acd8ea9c7d0b"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 23:24:52 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 28 00:52:47 2019 +0100"
      },
      "message": "THRIFT-5012 Centralize configuration aspects into a commonly used configuration object [ci skip]\nClient: Delphi\nPatch: Jens Geyer\n\nThis closes #1955\n"
    },
    {
      "commit": "c140bb90b0c2ed6175afe8c9c579acd8ea9c7d0b",
      "tree": "11c70c806aedc559adea063e06dd4e925ec36f28",
      "parents": [
        "bf2cad9cfae28b602b5bb899e9becacee975057c"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 27 22:18:12 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 27 22:24:12 2019 +0100"
      },
      "message": "THRIFT-5036 buffered transport over sockets may run into unexpected timeouts [ci skip]\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "bf2cad9cfae28b602b5bb899e9becacee975057c",
      "tree": "b377d2ccd52f69c739eb9fd4df8de9acc8163486",
      "parents": [
        "622937162aeccf2a27d9196937ebf7ead40036f5"
      ],
      "author": {
        "name": "wineandcheeze",
        "email": "qinghui-xu@users.noreply.github.com",
        "time": "Mon Nov 25 22:40:52 2019 +0100"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Mon Nov 25 21:40:52 2019 +0000"
      },
      "message": "THRIFT-5031: Fix TIOStreamTransport javadoc\n\nClarify input/output only transport.\r\n\r\nClient: java\r\n\r\nThis closes #1948."
    },
    {
      "commit": "622937162aeccf2a27d9196937ebf7ead40036f5",
      "tree": "33fcebc6c2ee0fb368d7c71542f788bc50a80732",
      "parents": [
        "5080645cb0ffe52de9d82685b2ab2d6b03aa6f3e"
      ],
      "author": {
        "name": "Andy Seaborne",
        "email": "andy@apache.org",
        "time": "Mon Nov 25 09:58:52 2019 +0000"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Mon Nov 25 09:58:52 2019 +0000"
      },
      "message": "THRIFT-5022: Fix TIOStreamTransport.isOpen for input or output only use\n\nClient: java\r\n\r\nThis closes #1942."
    },
    {
      "commit": "5080645cb0ffe52de9d82685b2ab2d6b03aa6f3e",
      "tree": "1d7e06952e426ae622e417c72ddd6ac948f7e328",
      "parents": [
        "b541c6f2b126219867963c8b577b4c08d72e866d"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 23 01:55:58 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 23 22:40:53 2019 +0100"
      },
      "message": "THRIFT-5027 Implement remaining read bytes checks\nClient: netstd\nPatch: Jens Geyer\n\nThis closes #1946\n"
    },
    {
      "commit": "9d958a3caf5c82b25a00b0b6cd4ab431bc1fed18",
      "tree": "13a3c2de96e17782eb1faa63279825d21d9b7229",
      "parents": [
        "eacd1d48c85ea756fd5edd10d7c328ee11a0657f"
      ],
      "author": {
        "name": "zembord",
        "email": "zedward@outlook.com",
        "time": "Thu Nov 21 13:11:44 2019 +0300"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 23 22:24:52 2019 +0100"
      },
      "message": "THRIFT-5010 BinaryPrimitives.Read/WriteInt32BigEndian should be used to convert to/from network byte order\nClient: netstd\nPatch: Edward Zhuravlov\n\nThis closes #1944\n"
    },
    {
      "commit": "eacd1d48c85ea756fd5edd10d7c328ee11a0657f",
      "tree": "267b5a03536859d2554611fc0130dd3bd6480013",
      "parents": [
        "8ae80a7f8466e5c340388fcb1d797dc3779d9f80"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 20 19:03:14 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 23 01:15:45 2019 +0100"
      },
      "message": "THRIFT-5021 Implement MAX_MESSAGE_SIZE and centralize limits into a TConfiguration class\nClient: netstd\nPatch: Jens Geyer\n\nThis closes #1943\n"
    },
    {
      "commit": "8ae80a7f8466e5c340388fcb1d797dc3779d9f80",
      "tree": "aa33c18523bf959c928eef3d5043ec2f78489ca1",
      "parents": [
        "261cad3417841a47d3f8caf46f344f0af7d41511"
      ],
      "author": {
        "name": "Grégoire Seux",
        "email": "g.seux@criteo.com",
        "time": "Thu Nov 07 11:33:58 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 21 22:43:21 2019 +0100"
      },
      "message": "THRIFT-4999: Raise proper exception on transport error\nClient: ruby\nPatch: Grégoire Seux\n\nThis closes #1924\n\nBefore this patch, any error on the http layer was ignored and usually\nseen by the user as ProtocolException instead of TransportException\n"
    },
    {
      "commit": "261cad3417841a47d3f8caf46f344f0af7d41511",
      "tree": "b64311abb71c271e79eec50a6b27d0a50572cf46",
      "parents": [
        "f4475ff76fe3dcc1b3774d52bf28b333ab9acd01"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 20 19:03:14 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 21 22:26:09 2019 +0100"
      },
      "message": "THRIFT-5020 Refactoring \u0026 minor fixes for netstd library\nClient: netstd\nPatch: Jens Geyer\n\nThis closes #1941\n"
    },
    {
      "commit": "f4475ff76fe3dcc1b3774d52bf28b333ab9acd01",
      "tree": "0b27f2354f15fd680ede8711de5033dd0bf90fad",
      "parents": [
        "225646b554e6c37de31657e11d907bf35d50679d"
      ],
      "author": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Wed Nov 20 15:31:35 2019 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 20 15:31:35 2019 +0000"
      },
      "message": "THRIFT-5019: Duplicate imports from multiple includes from a namespace\n\nIf a thrift file includes two files from the same namespace into a\r\nseparate file, the generated Go code has duplicate imports for that\r\nnamespace. This fixes that.\r\n\r\nClient: go"
    },
    {
      "commit": "225646b554e6c37de31657e11d907bf35d50679d",
      "tree": "7b6e1e2b07657017fcc9ec663b9a6afa716ffca9",
      "parents": [
        "528a0f0731cc98d8ba2ea4ee146e2d9b0cea9fc6"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Nov 19 21:43:45 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 20 03:04:00 2019 +0100"
      },
      "message": "THRIFT-4862 C++ TBinaryProtocol crashes on port scan\nClient: cpp\nPatch: Michael Patrick\n\nThis closes #1939\n"
    },
    {
      "commit": "528a0f0731cc98d8ba2ea4ee146e2d9b0cea9fc6",
      "tree": "feade95cf695a353a35709e84e70a900d562e328",
      "parents": [
        "41f47aff7ccc1a093eb5e48250377c1178babeec"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Nov 18 20:17:03 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Nov 18 20:17:03 2019 +0100"
      },
      "message": "THRIFT-5015 WinHTTP QueryDataAvailable cannot be used to retrieve total response size\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "41f47aff7ccc1a093eb5e48250377c1178babeec",
      "tree": "924d30c40357e987bfe02976f408b83b2681cbf6",
      "parents": [
        "ed99455e2ec8ec9c8ed95540c63018d395737f30"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 23:24:52 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Nov 15 23:27:20 2019 +0100"
      },
      "message": "THRIFT-5007 Implement MAX_MESSAGE_SIZE and remaining read bytes control\nClient: Delphi\nPatch: Jens Geyer\n\nThis closes #1932\n"
    },
    {
      "commit": "ed99455e2ec8ec9c8ed95540c63018d395737f30",
      "tree": "a90aa56959c953c526c4b0018a611251c545432f",
      "parents": [
        "2646bd65b5ba499779e37ab2d19d67a7684cbdb3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 23:24:52 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 14 22:17:39 2019 +0100"
      },
      "message": "THRIFT-5009 Serializer implemtation lacks support for layered transports\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "2646bd65b5ba499779e37ab2d19d67a7684cbdb3",
      "tree": "88ef91cbab3cf834c327bbce612aed6919d690f2",
      "parents": [
        "fad7fd3e5a850c0f4bf57e7370fad359d575fdc6"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 23:24:52 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 13 09:34:58 2019 +0100"
      },
      "message": "THRIFT-5006 Implement DEFAULT_MAX_LENGTH at TFramedTransport\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "fad7fd3e5a850c0f4bf57e7370fad359d575fdc6",
      "tree": "c92cb9fb6ad206d1a00a64236c331b80e812f06b",
      "parents": [
        "9f11c1e545a9aa0db076e9b5be9b7e397e594f4a"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 23:24:52 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 13 09:34:58 2019 +0100"
      },
      "message": "THRIFT-5005 Refactoring of the Delphi libs [ci skip]\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "9f11c1e545a9aa0db076e9b5be9b7e397e594f4a",
      "tree": "ddb3ee3929f3adc94a05b893430269daf87b35b5",
      "parents": [
        "24fa9d0728c5893b11901f6ffb25a9e74a4647c8"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Nov 09 19:39:20 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 13 09:34:57 2019 +0100"
      },
      "message": "THRIFT-5004 Make exception implementations more consistent  [ci skip]\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "24fa9d0728c5893b11901f6ffb25a9e74a4647c8",
      "tree": "6931b13a3c51ca3801f33de4a518abc53d167a4b",
      "parents": [
        "59694a796f824ffcde745065efa36b8d0ddf8275"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Sat Nov 09 14:21:10 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Sat Nov 09 22:21:09 2019 +0000"
      },
      "message": "THRIFT-4914: Add GetResponseHeadersFromClient helper function\n\nThis is the fourth and final part of THRIFT-4914, which handles the\r\nclient reading part in the response (server -\u003e client direction).\r\n\r\nClient: go\r\n\r\nThis closes #1926."
    },
    {
      "commit": "59694a796f824ffcde745065efa36b8d0ddf8275",
      "tree": "115be11914a5698ecd552c63e818876b94a0fb9b",
      "parents": [
        "4c27181a06cf18154e9e1e8abeb711a75b5cf435"
      ],
      "author": {
        "name": "John Boiles",
        "email": "johnaboiles@gmail.com",
        "time": "Sat Nov 09 11:22:26 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Sat Nov 09 19:22:26 2019 +0000"
      },
      "message": "THRIFT-5002: Fix argument containers for inherited functions\n\nFix a bug where remote.go client fails to compile when services \r\nextend other services and the parent service has a function that \r\nneeds a container for its arguments.\r\n\r\nClient:go\r\n\r\nThis closes #1925."
    },
    {
      "commit": "4c27181a06cf18154e9e1e8abeb711a75b5cf435",
      "tree": "67bac15ff59b934cf0dd80fb0fd579691c736d77",
      "parents": [
        "50caa4de84210d792632c61941c3bb4180f0c665"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Sat Nov 09 11:20:09 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Sat Nov 09 19:20:09 2019 +0000"
      },
      "message": "THRIFT-4914: Add TResponseHelper\n\nThis is the third part of THRIFT-4914, which handles the server writing\r\npart in the response (server -\u003e client direction).\r\n\r\nDefine a new type, TResponseHelper, which only contains THeader related\r\nfunctions for now, but can be extended for other functions in the\r\nfuture.\r\n\r\nIn TSimpleServer, inject a TResponseHelper into the context object\r\npassed into the handler functions. Handler function code could retrieve\r\nthe injected TResponseHelper to set headers to be written to the client.\r\n\r\nClient: go\r\n\r\nThis closes #1923."
    },
    {
      "commit": "50caa4de84210d792632c61941c3bb4180f0c665",
      "tree": "98354ff6d83b6f925b0b0777fa3c256c61d3af9c",
      "parents": [
        "963812ae62579f6040b805218d9e798e1e66b324"
      ],
      "author": {
        "name": "zembord",
        "email": "zedward@outlook.com",
        "time": "Wed Nov 06 14:29:41 2019 +0300"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Nov 08 19:24:59 2019 +0100"
      },
      "message": "THRIFT-4990: Upgrade to .NET Core 3.0\nClient: netstsd\nPatch: Edward Zhuravlov\n\nThis closes #1921\n"
    },
    {
      "commit": "963812ae62579f6040b805218d9e798e1e66b324",
      "tree": "07cdcc455f0793eae33ab2ca5280bdfc46a507cb",
      "parents": [
        "596e25f9b07f4eb626e8644b6cc18b93c417b4e5"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Fri Nov 08 01:02:00 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Fri Nov 08 09:02:00 2019 +0000"
      },
      "message": "THRIFT-4984: Handle wrapped io.EOF errors\n\nTCompactProtocol (which is used by THeaderTransport to read headers)\r\ncould wrap the underlying error with TProtocolException, which breaks\r\nerr \u003d\u003d io.EOF test in some cases.\r\n\r\nClient: go\r\n\r\nThis closes #1922."
    },
    {
      "commit": "596e25f9b07f4eb626e8644b6cc18b93c417b4e5",
      "tree": "d0fe1d7340e6479a0bb47e019532fffee2882406",
      "parents": [
        "4653009035db96228e33e8965e432752b41c8ed1"
      ],
      "author": {
        "name": "Kevin Wojniak",
        "email": "kainjow@users.noreply.github.com",
        "time": "Sun Nov 03 15:09:51 2019 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 06 01:11:55 2019 +0100"
      },
      "message": "Fix unknown pragma warnings on mingw\nClient: cpp\nPatch: Kevin Wojniak\n\nThis closes #1917\n\nThese pragmas are only valid for MSVC. Fixes warnings found in the logs:\n\n\u003e In file included from C:\\projects\\thrift\\lib\\cpp\\test\\processor\\ProcessorTest.cpp:40:\n731C:\\projects\\thrift\\lib\\cpp\\test\\processor\\Handlers.h:143: warning: ignoring #pragma warning  [-Wunknown-pragmas]\n732  143 |   #pragma warning( push )\n733      |\n734C:\\projects\\thrift\\lib\\cpp\\test\\processor\\Handlers.h:144: warning: ignoring #pragma warning  [-Wunknown-pragmas]\n735  144 |   #pragma warning (disable : 4250 ) //inheriting methods via dominance\n736      |\n737C:\\projects\\thrift\\lib\\cpp\\test\\processor\\Handlers.h:172: warning: ignoring #pragma warning  [-Wunknown-pragmas]\n738  172 |   #pragma warning( pop )\n739      |\n"
    },
    {
      "commit": "4653009035db96228e33e8965e432752b41c8ed1",
      "tree": "8f0962bf662907619964e7d539dfa3d1be88a099",
      "parents": [
        "508d9951d5fd8a539788caff6d38f08db564d50b"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Tue Nov 05 13:31:13 2019 -0800"
      },
      "committer": {
        "name": "Duru Can Celasun",
        "email": "dcelasun@apache.org",
        "time": "Tue Nov 05 21:31:13 2019 +0000"
      },
      "message": "THRIFT-4984: Ignore EOF errors in TSimpleServer, take 2\n\nThis is a different approach to take THRIFT-4984: Instead of checking\r\nEOF errors in place, handle them in a consolidated, deferred function.\r\n\r\nAlso improve test error messages.\r\n\r\nClient: go\r\n\r\nThis closes #1907."
    },
    {
      "commit": "f7b219791653d206a03d236e2bd69e79c4d4a392",
      "tree": "5a741704c5420af62d4320f5125dfdadc5068c0f",
      "parents": [
        "a5b2bf5b0bc82545b26b7a42bbf7b5dc9ef51b33"
      ],
      "author": {
        "name": "Eugen Kandakov",
        "email": "kandakov@gmail.com",
        "time": "Mon Nov 04 13:15:35 2019 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Nov 04 22:00:24 2019 +0100"
      },
      "message": "THRIFT-4994 changed this to self in forEach callback\nClient: nodejs\nPatch: Eugen Kandakov\n\nThis closes #1918\n"
    },
    {
      "commit": "24045b7211318b7b62dce83a7f0e962e20292f1b",
      "tree": "b80e6bff2da6d8be28f04df5b32e8153cf1f23b9",
      "parents": [
        "9cb1c794cd39cfb276771f8e52f0306eb8d462fd"
      ],
      "author": {
        "name": "Qinghui Xu",
        "email": "qinghui.xu@gmail.com",
        "time": "Mon Nov 04 10:21:47 2019 +0100"
      },
      "committer": {
        "name": "Qinghui Xu",
        "email": "qinghui.xu@gmail.com",
        "time": "Mon Nov 04 10:21:47 2019 +0100"
      },
      "message": "Fix indentation\n\nUse white space for indentation instead of tabulation.\n"
    }
  ],
  "next": "a5b2bf5b0bc82545b26b7a42bbf7b5dc9ef51b33"
}
