)]}'
{
  "log": [
    {
      "commit": "0f17e15255f772167ab8bd844a5ddbcbec7ea616",
      "tree": "2fe8d48707d71eace706319eeb2b97909d29ea28",
      "parents": [
        "ab1bfa90136fa0c9c778a3a312a9b762050858ef"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Sep 15 21:22:42 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Sep 15 21:44:53 2015 +0200"
      },
      "message": "THRIFT-3051 Go Thrift generator creates bad go code\nClient: Go\nPatch: Jake Farrell\n"
    },
    {
      "commit": "5bc8b5a3a5da507b6f87436ca629be664496a69f",
      "tree": "86e30670ce34e95273566755524bb39840724513",
      "parents": [
        "96d80200c5dae4fa95b8fa068c6a712773ec321b"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Sep 05 12:50:24 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Sep 05 12:50:24 2015 +0200"
      },
      "message": "THRIFT-3302 Go JSON protocol should encode Thrift byte type as signed integer string\nClient: Go\nPatch: Nobuaki Sukegawa \u003cnsukeg@gmail.com\u003e\n\nThis closes #591\n"
    },
    {
      "commit": "6949b7c96933da182fde5e40b6c493eb054a7672",
      "tree": "c7ea9e5c26cd597f0ce8fca314c855985c430a5f",
      "parents": [
        "f13e431babd92f08f46cbc1f32da48965e1c5ca8"
      ],
      "author": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Aug 25 01:09:35 2015 -0400"
      },
      "committer": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Tue Aug 25 01:09:35 2015 -0400"
      },
      "message": "THRIFT-2981: IDL with no namespace produces unparsable PHP\nClient: php\nPatch: Randy Abernethy\n\nThe compiler is generating the namespace statement even when there isn\u0027t one, which blows up the PHP interpreter. Patch supresses service and type file output of namespace unless there actually is one.\n"
    },
    {
      "commit": "738143cf36436d65c7e379351968e6e0a1f4ca3f",
      "tree": "f58eb4ee44b020643f3efe5c6fe2d430316688c9",
      "parents": [
        "bb98e97fd3c82117c87d23e3fb6b8bbd800784f2"
      ],
      "author": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Sun Aug 16 19:17:33 2015 +1000"
      },
      "committer": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Sun Aug 16 19:17:33 2015 +1000"
      },
      "message": "THRIFT-3293 JavaScript: null values turn into empty structs in constructor\nPatch: Håkon Hitland\n"
    },
    {
      "commit": "4fed1af57013b9115cc2fc56a66fc452a8711c62",
      "tree": "f6517a028c4e6fa35c5c95ce98b89a66843699ee",
      "parents": [
        "c6b991fe00edf7f4c50c7636a3e09a6a9531b615"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Aug 08 00:11:28 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Aug 08 00:24:13 2015 +0200"
      },
      "message": "THRIFT-3178 glib C does not compile\nClient: c_glib\nPatch: Simon South \u003cssouth@simonsouth.com\u003e\n\nThis closes #581\n"
    },
    {
      "commit": "8dbe5f60a7c1401302e10aec41069f9c385d34a1",
      "tree": "86898a14c76a1d246b08480195918ef74e213769",
      "parents": [
        "54f392b8fd90d53deabbf107565ec92c985d47f5"
      ],
      "author": {
        "name": "Randy Abernethy",
        "email": "ra@apache.org",
        "time": "Sat Aug 01 22:57:02 2015 -0700"
      },
      "committer": {
        "name": "Randy Abernethy",
        "email": "ra@apache.org",
        "time": "Sat Aug 01 22:57:02 2015 -0700"
      },
      "message": "THRIFT-2199:Remove dense protocol\nClient: C++ library and compiler\nPatch: Randy Abernethy\n"
    },
    {
      "commit": "54f392b8fd90d53deabbf107565ec92c985d47f5",
      "tree": "38b6fd1157f0f19c8d6e6548ea9f7aad46d4d5f6",
      "parents": [
        "b28e3ccdcbd31ff4975f9b22c3d6622b7d35bb21"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Aug 05 21:45:10 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Aug 05 21:45:10 2015 +0200"
      },
      "message": "THRIFT-2832 c_glib: Handle string lists correctly\nClient: c_glib\nPatch: Simon South \u003cssouth@simonsouth.com\u003e\n\nThe compiler now correctly generates code for string lists (i.e. variables of type list\u003cstring\u003e) that are\n- Passed as a parameter to a service method,\n- Returned from a service method or\n- Assigned a default value.\n\nAdded a unit test that covers containers (initially only string lists) used as parameters to and return values from\nservice methods, and as members with default values inside structs.\n"
    },
    {
      "commit": "b28e3ccdcbd31ff4975f9b22c3d6622b7d35bb21",
      "tree": "9c0b644934a418a69b65269215f47b5ccc472d00",
      "parents": [
        "38e7155c039f1dba6dd73a3114dd3a5ac7052418"
      ],
      "author": {
        "name": "Simon South",
        "email": "ssouth@simonsouth.com",
        "time": "Mon Aug 03 11:11:29 2015 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Aug 03 22:10:23 2015 +0200"
      },
      "message": "THRIFT-3288 c_glib: Compiler: Gently refactor functions\n\nThis change gently refactors a handful of recently modified\nfunctions to\n\n- Wrap lines at 80 columns,\n\n- Improve readability (making the layout of the compiler\u0027s source\n  code more closely match that of the code it\u0027s generating),\n\n- Use more consistently the indent_up/indent_down and\n  scope_up/scope_down helper functions rather than embedding\n  formatting characters directly, and\n\n- Improve slightly the formatting of the generated code.\n"
    },
    {
      "commit": "7bc907a95931985792e11713eb38244259f1b926",
      "tree": "8e2c6faa15a7bc3749f8d35375ca2f29c6a891eb",
      "parents": [
        "c83a2b5185799f287f1548e0dc21c4cdb7bba6cd"
      ],
      "author": {
        "name": "Simon South",
        "email": "ssouth@simonsouth.com",
        "time": "Sat Aug 01 14:53:22 2015 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Aug 03 22:10:23 2015 +0200"
      },
      "message": "THRIFT-3288 c_glib: Compiler: Silence unused-parameter warnings\n\nThis change modifies the generated class and interface initializers\nso they don\u0027t generate \"unused parameter\" warnings when compiled.\n"
    },
    {
      "commit": "c83a2b5185799f287f1548e0dc21c4cdb7bba6cd",
      "tree": "fd2d8e9cb274dc3b73e94188699e78a0e5b319d4",
      "parents": [
        "db3646faefcd78cebd9f3f288b71590d2d765574"
      ],
      "author": {
        "name": "Simon South",
        "email": "ssouth@simonsouth.com",
        "time": "Sat Aug 01 14:33:17 2015 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Aug 03 22:10:23 2015 +0200"
      },
      "message": "THRIFT-3288 c_glib: Compiler: Don\u0027t mix declarations and code\n\nThis change moves variable declarations to the top of code blocks\nin the generated code, resolving a number of \"ISO C90 forbids mixed\ndeclarations and code\" warnings when building the unit tests.\n"
    },
    {
      "commit": "c1febebef64f854824a5fb5a93c6d06789242942",
      "tree": "daa40d4f862b450101823d657698dce4cc9edcd8",
      "parents": [
        "c76a9ecdd29ee7c542b276c975c2731687900224"
      ],
      "author": {
        "name": "Simon South",
        "email": "ssouth@simonsouth.com",
        "time": "Sat Aug 01 10:57:21 2015 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Aug 02 16:19:06 2015 +0200"
      },
      "message": "THRIFT-3284 c_glib: Compiler: Omit processing-function defs for empty services\n\nThis closes: #575\n"
    },
    {
      "commit": "a2e0c5075d42fc6a5eb8c7b063c2e206e43e1dfe",
      "tree": "7531ea43ca01abe86ca2e9370158996cdb619b1e",
      "parents": [
        "4ed2b855e9dec14afe859330e4f620d026d903e3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Jul 31 22:01:28 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Jul 31 23:23:41 2015 +0200"
      },
      "message": "THRIFT-3260 multiple warnings in c_glib tutorial\nClient: c_glib\nSimon South \u003cssouth@simonsouth.com\u003e\n\nThis closes #573\n\nHere are additional changes that should really and truly resolve all the warnings generated when building the c_glib tutorial:\n\nCompiler:\n- Do not output a trailing comma in exception-enum definitions.\n- Move variable declarations to avoid mixing declarations and code in generated code.\n- Improve the readability of affected code blocks (and rely on indent_up and indent_down for indentation).\nLibrary\n- Use only C-style comments in headers included by clients.\nTutorial\n- Move THRIFT_UNUSED_VAR calls to avoid mixing declarations and code.\n"
    },
    {
      "commit": "f6eebba4a05d97ebceb6f3da2973f5f109e8d487",
      "tree": "75e526beaa04213f41dda1f711b7d3b2cc0d15a5",
      "parents": [
        "7505118a768e7f427aee6b38ef50e7d544e75dd5"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 30 20:48:40 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 30 21:11:23 2015 +0200"
      },
      "message": "THRIFT-3260 multiple warnings in c_glib tutorial\nClient: c_glib\nPatch: Simon South \u003cssouth@simonsouth.com\u003e\n\nThis closes #572\n\nTutorial:\n- Silence unused-function warnings\n- Remove spurious \";\" from GObject type macro\nCompiler:\n- Suppress unused-var warnings in client initializers\n- Omit spurious \";\" after GObject type macros\n"
    },
    {
      "commit": "f5f1b35a7d1ce819bdfdc966741399605b051c92",
      "tree": "7a75ee7ba37becc262da5522fea3a8b4df0c94ea",
      "parents": [
        "4a1e8867af5b6ba2a0176bb1d7fb1f04db235335"
      ],
      "author": {
        "name": "Jim King",
        "email": "jim.king@simplivity.com",
        "time": "Wed Jun 24 13:47:24 2015 -0400"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Thu Jul 30 14:19:49 2015 +0200"
      },
      "message": "THRIFT-3053: Added perl SSL Socket support, split SSLSocket and SSLServerSocket out from their base classes, fixed THRIFT-3191 generated perl compiler exception handling code, added perl to make cross, fixed THRIFT-3189 allowing perl to listen on a specific interface through construction arguments. Did not add support in the perl client SSLSocket to verify server certificate authenticity at this time.\n"
    },
    {
      "commit": "46ab187bb5d42e18b0112af9184f71cb896e9f2f",
      "tree": "960ac8cd2f3038275de3d75ae218c49e7b293c22",
      "parents": [
        "482da722b9c42b5678b8a2ad2d0b0828ab24a8f6"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 30 00:01:04 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 30 00:01:04 2015 +0200"
      },
      "message": "THRIFT-3273 c_glib: Generated code tries to convert between function and void pointers\nClient: c_glib\nPatch: Simon South \u003cssouth@simonsouth.com\u003e\n\nThis closes #568\n"
    },
    {
      "commit": "57ac33ea1a42e871ef03a7bda770a7ba16745ead",
      "tree": "52e0ba568da8e4e8c83a9c91c43955d27ff38e62",
      "parents": [
        "8c5fce9afabb2476c134a702356bb1bad1eb43f4"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jul 28 23:12:10 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jul 28 23:12:52 2015 +0200"
      },
      "message": "THRIFT-3264 Fix Erlang 16 namespaced types\nClient: Erlang\nPatch: Nobuaki Sukegawa \u003cnsukeg@gmail.com\u003e\n\nThis closes #566\n"
    },
    {
      "commit": "e33d16520a483e49e5f73a9ea2091cfc686fb619",
      "tree": "09b759c64489aa6e78681d198d8af2f544b36ab5",
      "parents": [
        "bf0b483d4f7f15cb88566f9be0c6c796fa05651d"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Jul 24 02:14:43 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jul 25 15:23:45 2015 +0200"
      },
      "message": "THRIFT-3255 Thrift generator doesn\u0027t exclude \u0027package\u0027 keyword for thrift property names breaking java builds\nClient: Compiler General\nPatch: Jens Geyer\n\nThis closes #561\n"
    },
    {
      "commit": "02bade1583009cfc2725d5171dba3e524f234613",
      "tree": "1a98534025bb0c4e6db447fbc5179ae6f4abd3a7",
      "parents": [
        "e4b1481c56d7e0c5e0f2aa3674b84730ec71e578"
      ],
      "author": {
        "name": "ben-craig",
        "email": "ben.craig@gmail.com",
        "time": "Fri Jul 17 08:40:48 2015 -0500"
      },
      "committer": {
        "name": "ben-craig",
        "email": "ben.craig@gmail.com",
        "time": "Fri Jul 17 08:40:48 2015 -0500"
      },
      "message": "THRIFT-3247 Generate a C++ thread-safe client\nClient: cpp\nPatch: Ben Craig \u003cbencraig@apache.org\u003e\n"
    },
    {
      "commit": "e15ade77cbb4578f74b6208f98e5380bb9bd071c",
      "tree": "7ebdc7232671e2559c3ac6080dd7a60ba038b33a",
      "parents": [
        "ecc2a6b60fd8fb29a56f700fd9667a71cade21b8"
      ],
      "author": {
        "name": "Frederik Gladhorn",
        "email": "frederik.gladhorn@theqtcompany.com",
        "time": "Tue Jul 14 22:23:17 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "r.meier@siemens.com",
        "time": "Thu Jul 16 23:52:42 2015 +0200"
      },
      "message": "THRIFT-3244 TypeScript: fix namespace of imported types\n"
    },
    {
      "commit": "8b01553758365b34eab45f42cdf4934daa85f39a",
      "tree": "0e9e13a31b467d173a0052179cc22bb83479a29a",
      "parents": [
        "af2d9c8b88c4fc7045177f1ce6081189627f6413"
      ],
      "author": {
        "name": "Kaspar Fenner",
        "email": "kaspar.fenner@siemens.com",
        "time": "Thu Jul 16 20:30:34 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "r.meier@siemens.com",
        "time": "Thu Jul 16 23:05:43 2015 +0200"
      },
      "message": "THRIFT-3248 Remove additional comma in TypeScript method signature\n\nFixes a bug which adds an additional comma in the method signature\nof methods with no (zero) parameters.\n\nSigned-off-by: Kaspar Fenner \u003ckaspar.fenner@siemens.com\u003e\n"
    },
    {
      "commit": "fae08e774c04c24c04cea04dc9b90bbcd6dfb98b",
      "tree": "28dedb0aa41f4aa30c6f6172411d81f6090cde57",
      "parents": [
        "1abcbc721882bdb8fff3739487b518a0ccfefcb2"
      ],
      "author": {
        "name": "ben-craig",
        "email": "ben.craig@gmail.com",
        "time": "Wed Jul 15 11:34:47 2015 -0500"
      },
      "committer": {
        "name": "ben-craig",
        "email": "ben.craig@gmail.com",
        "time": "Wed Jul 15 11:34:47 2015 -0500"
      },
      "message": "THRIFT-3246 Reduce the number of trivial warnings in Windows C++ CMake builds\nClient: cpp\nPatch: Ben Craig \u003cbencraig@apache.org\u003e\n\nThis closes #553\n"
    },
    {
      "commit": "5af2d99c5e9de2e3af63732a7ee20e1fe49dd564",
      "tree": "0dd15cd6f9921c599ceaa38539e983b454052617",
      "parents": [
        "20a25519c45195145c50c350359c98524d17bddb"
      ],
      "author": {
        "name": "Felipe Barriga Richards",
        "email": "spam@felipebarriga.cl",
        "time": "Tue Jun 30 17:02:52 2015 -0300"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "r.meier@siemens.com",
        "time": "Mon Jul 13 15:25:58 2015 +0200"
      },
      "message": "THRIFT-3223 TypeScript: Added support for maps of enums.\n"
    },
    {
      "commit": "20a25519c45195145c50c350359c98524d17bddb",
      "tree": "18d719f6407d260922370d5efe438b4d64136d9b",
      "parents": [
        "01a77ab01e7459d96059a2b49d9885d14a360ef1"
      ],
      "author": {
        "name": "Felipe Barriga Richards",
        "email": "spam@felipebarriga.cl",
        "time": "Tue Jun 30 17:02:23 2015 -0300"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Jul 12 21:49:45 2015 +0200"
      },
      "message": "THRIFT-3222 TypeScript: Fix enum generation (remove quotes)\n"
    },
    {
      "commit": "01a77ab01e7459d96059a2b49d9885d14a360ef1",
      "tree": "9f64df637aa6d5b8cf08e0aa699c5add3452e08b",
      "parents": [
        "90c60e340c322d398adc0de3ed45aed8d6f0c1f9"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jul 11 11:41:32 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jul 11 11:46:38 2015 +0200"
      },
      "message": "THRIFT-3230: transform typedef when getting type name\nClient: Python\nPatch: 软件工程师李飛 \u003clifei@7v1.net\u003e\n\nThis closes #545\n\nPython compiler generates wrong code if there is function throwing a typedef of exception with another namespace. We should use the real type name instead of  the name of typedef.\n"
    },
    {
      "commit": "90c60e340c322d398adc0de3ed45aed8d6f0c1f9",
      "tree": "42f611f62e219bb2896d821f06d21ae58d75ab60",
      "parents": [
        "0104da5a6fe0ef5c52f82198998718cdd8623c4a"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jul 11 01:19:53 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Jul 11 01:19:53 2015 +0200"
      },
      "message": "THRIFT-3239 Limit recursion depth\nClient: Haxe\nPatch: Jens Geyer\n\nThis closes #547\n"
    },
    {
      "commit": "012dd4e3fc1e75e3434f608ce2ba30dbd29c56cb",
      "tree": "77b5e6dec0797cf27626f0b22e3d48df650ba6bf",
      "parents": [
        "3ea26be2ae08c2c7992137e5142cec146627e119"
      ],
      "author": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Thu Jul 09 20:55:53 2015 -0500"
      },
      "committer": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Thu Jul 09 20:55:53 2015 -0500"
      },
      "message": "Renamed, relocated, and reformated the audit tool\u0027s readme file\n"
    },
    {
      "commit": "40180369804a01845a52e1e012f41dbd14662fdc",
      "tree": "01854d13682ef436eac9a6b965fdf68540f8303d",
      "parents": [
        "d47fcdd66daa5ce7af93edd47c774bf5b9f30430"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 09 23:02:46 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 09 23:06:41 2015 +0200"
      },
      "message": "THRIFT-3235 C#: Limit recursion depth to 64\nClient: C#\nPatch: Jens Geyer\n"
    },
    {
      "commit": "d47fcdd66daa5ce7af93edd47c774bf5b9f30430",
      "tree": "633a8b17dce60ce3d28568a6acfd5ceebbd1908b",
      "parents": [
        "cfaadcc4adcfde2a8232c62ec89870b73ef40df1"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 09 22:05:18 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 09 22:20:12 2015 +0200"
      },
      "message": "THRIFT-3234 Delphi: Limit recursion depth to 64\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "cfaadcc4adcfde2a8232c62ec89870b73ef40df1",
      "tree": "dff582764383a48e4f407e7d15da25f7fcd21b3e",
      "parents": [
        "262cfb4189f3b347f472dfe8b754861ba481c433"
      ],
      "author": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Wed Jul 08 20:50:33 2015 -0500"
      },
      "committer": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Wed Jul 08 20:50:33 2015 -0500"
      },
      "message": "THRIFT-3231 CPP: Limit recursion depth to 64\nClient: cpp\nPatch: Ben Craig \u003cbencraig@apache.org\u003e\n"
    },
    {
      "commit": "262cfb4189f3b347f472dfe8b754861ba481c433",
      "tree": "2898b69b2728eb317263b82a1b3e4732cbb34750",
      "parents": [
        "384f976a3bb27371de4be5355193450c1f270019"
      ],
      "author": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Wed Jul 08 20:37:15 2015 -0500"
      },
      "committer": {
        "name": "Ben Craig",
        "email": "bencraig@apache.org",
        "time": "Wed Jul 08 20:37:15 2015 -0500"
      },
      "message": "THRIFT-3221 Create a tool to audit network compatibility between two\n.thrift files\nClient: Compiler (general)\nPatch: Sanjay Poojary \u003csanjay.poojary@ni.com\u003e, Ben Craig\n\u003cbencraig@apache.org\u003e, and Zach Hindes \u003czach.hindes@ni.com\u003e\n\nThis closes #541\n"
    },
    {
      "commit": "6e4037656885132a44407fb7d66f6d034b379376",
      "tree": "5e57111df37da8113c5e3a2b66e53b146eff82c2",
      "parents": [
        "74086f18afa336000c3cf210939b1a1b843faaa5"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Jul 05 18:40:17 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Jul 05 19:24:11 2015 +0200"
      },
      "message": "THRIFT-3220 Option to suppress @Generated Annotation entirely\nClient: Java\nPatch: notona \u003cnotona@gmail.com\u003e \u0026 Jens Geyer\n\nThis closes #540\n\nThis change contains:\n- the work of notona from GitHub PR 540\n- additional changes I made to align THRIFT-3220 and THRIFT-3193\n"
    },
    {
      "commit": "5cf9d7744c41fa5109c1f8acc198efb4b646cd35",
      "tree": "6492186e8c9734163f671f1b9981a56dd887e461",
      "parents": [
        "77025362496805944f2fc6d8d7a44d29de2bad22"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 02 21:01:52 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Jul 02 21:07:17 2015 +0200"
      },
      "message": "THRIFT-3214 Add Erlang option for using maps instead of dicts\nClient: Erlang\nPatch: Michael Oliver \u003cmikemboliver@gmail.com\u003e\n\nThis closes #535\n"
    },
    {
      "commit": "77025362496805944f2fc6d8d7a44d29de2bad22",
      "tree": "cd6543ba0496746c8c67da8a41399f8ae5b682ab",
      "parents": [
        "24ef0d6f51691134a52b22a3549695cb5ddd4993"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jun 30 21:29:03 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jun 30 21:31:50 2015 +0200"
      },
      "message": "THRIFT-2921 Make Erlang impl ready for OTP 18 release (dict/0 and set/0 are deprecated)\nClient: Erlang\nPatch: Michael Oliver \u003cmikemboliver@gmail.com\u003e\n\nThis closes #533\n"
    },
    {
      "commit": "24ef0d6f51691134a52b22a3549695cb5ddd4993",
      "tree": "c1f97baa435a649e5a64fdfaf787fdd1d7749a4a",
      "parents": [
        "5ef662b9046d18aee224018061413ad7ee5d80a5"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jun 30 21:14:23 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jun 30 21:31:48 2015 +0200"
      },
      "message": "THRIFT-3193 Option to supress date value in @Generated annotation\nClient: Java\nPatch: Roshan George \u003croshan@arjie.com\u003e\n\nThis closes #531\n"
    },
    {
      "commit": "507075607f511215cf9c403ff722202c1075dcef",
      "tree": "c0d86413f40866ea659ef992c0b8d8f3ebd28a64",
      "parents": [
        "9d803f512fc133333c493a1ce774cc87b107cd7a"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Jun 29 11:30:40 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Jun 29 11:30:40 2015 +0200"
      },
      "message": "THRIFT-3210 (uncompileable) code generated for server events while are events not enabled\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "15d904240e8ee446ce5b9549c1082ea078389774",
      "tree": "da0955adac92f525b67273fbe4c96c14dc54304d",
      "parents": [
        "0b8132d20ea691c56f0fe973072a58086999a4d8"
      ],
      "author": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Thu Jun 25 22:31:41 2015 +1000"
      },
      "committer": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Thu Jun 25 22:31:41 2015 +1000"
      },
      "message": "THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments\nPatch:  Igor Tkach\n\nThis closes #519\n"
    },
    {
      "commit": "86a51e7eca0c33832b8e0421b18a99f4477dc31a",
      "tree": "071a2ea25d85883b0d1d25f16418a0964c604b7a",
      "parents": [
        "c0e4a8dc07402a03f8627608fbcb84affca200c9"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Jun 01 20:41:41 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Jun 01 21:09:17 2015 +0200"
      },
      "message": "THRIFT-3170: Add a flag to allow the ignoring of common initialisms in Go\nClient: Go\nPatch: Paul Magrath \u003cpaul@paulmagrath.com\u003e\n\nThis closes #508\n"
    },
    {
      "commit": "c0e4a8dc07402a03f8627608fbcb84affca200c9",
      "tree": "07c984a6c2d73f363e0725a8da356797cb9ed4b3",
      "parents": [
        "bbd6fd777319773b45b258b3ec9e49516a2ce4aa"
      ],
      "author": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Mon Jun 01 23:23:22 2015 +1000"
      },
      "committer": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Mon Jun 01 23:23:22 2015 +1000"
      },
      "message": "Revert \"THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments\"\n\nThis reverts commit 1568aef7d499153469131449ec682998598f0d3c.\n"
    },
    {
      "commit": "b3b7d0457ae67e4eeafbd2137dd94116d4993870",
      "tree": "f7e1faa796cd9e9d79f73f3d3b0ad66885ca346b",
      "parents": [
        "1568aef7d499153469131449ec682998598f0d3c"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat May 30 22:35:09 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat May 30 22:56:01 2015 +0200"
      },
      "message": "THRIFT-3174: Modify initialism code in Go compiler to check first word\nClient: Go\nPatch: Paul Magrath \u003cpaul@paulmagrath.com\u003e\n\nThis closes #509\n"
    },
    {
      "commit": "1568aef7d499153469131449ec682998598f0d3c",
      "tree": "40fbe11ee1a3f20dbd76a944dd6a1251b74c06a0",
      "parents": [
        "549a9e1e6dfbfaf1f7685dc5e26440c501517738"
      ],
      "author": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Wed May 27 22:15:46 2015 +1000"
      },
      "committer": {
        "name": "Henrique Mendonça",
        "email": "henrique@apache.org",
        "time": "Wed May 27 22:15:46 2015 +1000"
      },
      "message": "THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments\nClient: Node and JS\nPatch: Igor Tkach\n\n    This closes #476\n"
    },
    {
      "commit": "549a9e1e6dfbfaf1f7685dc5e26440c501517738",
      "tree": "8baad0643c2d012c64c3c84d9430d5abd0821f9f",
      "parents": [
        "33eef3534fe4b48be83740cb84fbc7a16a3530f0"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 22:20:31 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 22:20:31 2015 +0200"
      },
      "message": "THRIFT-3160 go: make generated enum types implement TextMarshaler and TextUnmarshaler\nClient: Go\nPatch: Konstantin Shaposhnikov \u003ck.shaposhnikov@gmail.com\u003e\n\nThis closes #507\n"
    },
    {
      "commit": "33eef3534fe4b48be83740cb84fbc7a16a3530f0",
      "tree": "c8f1d3b2a7d81344d9daa8dfadb9c253fab10aba",
      "parents": [
        "9265222b3f14997b946c9f77f4a7745fd04a557f"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 02:16:47 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 02:16:47 2015 +0200"
      },
      "message": "THRIFT-3150: fixed help text (thanks to Konstantin who catched this)\nClient: Go\nPatch: Jens Geyer\n"
    },
    {
      "commit": "9265222b3f14997b946c9f77f4a7745fd04a557f",
      "tree": "80fb3d398fea3ca977627d38ee3de9f1f99c535d",
      "parents": [
        "70219e108a01340380f65e1ece8d63620d5e22a5"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 02:12:12 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu May 21 02:13:18 2015 +0200"
      },
      "message": "THRIFT-3150: fixed help text (thanks to Konstantin who catched this)\nClient: Go\nPatch: Jens Geyer\n"
    },
    {
      "commit": "70219e108a01340380f65e1ece8d63620d5e22a5",
      "tree": "a5c8eb723ee4ef30af9ccd006c0504f5947fa5b7",
      "parents": [
        "04fdd3a7ccb39cfac1c1af0951f5d3a4cc571a92"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed May 20 22:00:25 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed May 20 23:36:50 2015 +0200"
      },
      "message": "THRIFT-3150 Add an option to make Read and Write methods private\nClient: Go\nPatch: Konstantin Shaposhnikov \u003ck.shaposhnikov@gmail.com\u003e, slightly modified by Jens Geyer\n\nThis closes #505\n"
    },
    {
      "commit": "1f6e380c5d07686e4cd8c2b172300a1ba7fbd8b9",
      "tree": "c811276f8cb39bf1d57207792566433300b35998",
      "parents": [
        "3b115dfa614cfac7af86d81d99f69b381508b75e"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 18 18:10:06 2015 +0200"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 18 19:47:28 2015 +0200"
      },
      "message": "`make style` applied\n"
    },
    {
      "commit": "3b115dfa614cfac7af86d81d99f69b381508b75e",
      "tree": "525eef0ea64f6e3065ab416599c1be2b8be9e6a7",
      "parents": [
        "83cd3e8d41001304f2efac9ebad92e02d3390ca7"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 18 17:58:36 2015 +0200"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 18 19:47:23 2015 +0200"
      },
      "message": "THRIFT-727 - C++: what() method of generated exceptions will provide more information\n\nPatch: Anna Dymek \u003caadymek@gmail.com\u003e\nClient: C++\n\nThis closes #469\n"
    },
    {
      "commit": "b7138acd86cebee62bd4606ed2dc01901f042f5b",
      "tree": "01ed28256a504ca0af9db71f43cfcc3d56809605",
      "parents": [
        "a6b66332599f45dbfd7eb75d1bd001661b6cace4"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 15 22:11:20 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 15 22:35:50 2015 +0200"
      },
      "message": "THRIFT-3149 go: make generated readFieldN methods private\nClient: Go\nPatch: Konstantin Shaposhnikov \u003ck.shaposhnikov@gmail.com\u003e\n\nThis closes #496\n"
    },
    {
      "commit": "86fded21b55573bb9240552a284f1f3d7255bd32",
      "tree": "6b7f0184cde4350fd73ca41c16940e9d792d58c4",
      "parents": [
        "516e28a42d481725156d3d521d453c55b1dfd992"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 15 12:01:38 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Fri May 15 15:44:22 2015 +0200"
      },
      "message": "THRIFT-2850 CMake: improve Windows support\n\nuse YY_NO_UNISTD_H and remove --wincompat\n"
    },
    {
      "commit": "eab9c45bad1d19e5b2a2c94695699fee5325bd82",
      "tree": "548083f2d1862334a2ef297d0752b9f36cf4881e",
      "parents": [
        "b9f6038cfbd39cd8c8f1c4f4047e2a819fb28f5b"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 12 22:56:29 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 12 23:02:32 2015 +0200"
      },
      "message": "THRIFT-3089 Assigning default ENUM values results in non-compilable java code if java namespace is not defined\nClient: Java\nPatch: Anna Dymek \u003caadymek@gmail.com\u003e\n\nThis closes #490\n"
    },
    {
      "commit": "b9f6038cfbd39cd8c8f1c4f4047e2a819fb28f5b",
      "tree": "b893483a7cac6b0cfed87af3e0ec0ca423d2fb15",
      "parents": [
        "77a7103fe189a6f7f909e3b665bdd5c669ced97c"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 12 22:09:41 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 12 22:39:31 2015 +0200"
      },
      "message": "THRIFT-3146 Graphviz generates function name collisions between services\nClient: Graphviz\nPatch: Adam Beberg\n"
    },
    {
      "commit": "77a7103fe189a6f7f909e3b665bdd5c669ced97c",
      "tree": "102cc94aa03fcbf7b44e19617c47a6fe61619926",
      "parents": [
        "ef0a8fa62a8a86b23999f9a9ad31478852474854"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon May 11 22:45:55 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon May 11 22:45:55 2015 +0200"
      },
      "message": "THRIFT-3144 make String representation of enums in generated go code less verbose\nClient: Go\nPatch: Konstantin Shaposhnikov \u003ck.shaposhnikov@gmail.com\u003e\n\nThis closes #489\n\nChanged generated String/FromString methods for enums to use values from thrift definition file for string representation of an enum.\n\nE.g.:\n- before: String(TestEnum_FIRST) \u003d \"TestEnum_FIRST\"\n- after : String(TestEnum_FIRST) \u003d \"FIRST\"\n"
    },
    {
      "commit": "2a15b993724dfef00bdbe28c2a7e1452dec4461a",
      "tree": "aff379359b6484f340aabd830b3452488e642494",
      "parents": [
        "dfc22ad2059312018777265af0b8684f0173b9dc"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Sat May 09 11:55:36 2015 +0200"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Sat May 09 11:55:36 2015 +0200"
      },
      "message": "THRIFT-3132: Java generator will properly format date in @Generated\n\nClient: Java\nPatch: Stig Bakken \u003cstig@zedge.net\u003e\n\nThis closes #484\n"
    },
    {
      "commit": "dfc22ad2059312018777265af0b8684f0173b9dc",
      "tree": "9a1d6a5589087d420c55f6180fcfb9e2d6fd70ec",
      "parents": [
        "24ea0bf5df0e431416fca897077af220a27b0320"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 08 21:10:13 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri May 08 21:43:50 2015 +0200"
      },
      "message": "THRIFT-3128 Go generated code produces name collisions between services\nClient: Go\nPatch: Adam Beberg\n"
    },
    {
      "commit": "89cffc6f76389da2603aec3f7467c128f79055d2",
      "tree": "9b040fa46409a1758a6ab6dbae87d4c1260213cb",
      "parents": [
        "eec445ef8ac88d94049bd7ad1a3d203f34c6f5c8"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 05 21:10:50 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue May 05 21:10:50 2015 +0200"
      },
      "message": "THRIFT-3126 PHP JSON serializer converts empty or int-indexed maps to lists\nClient: php/test/Test/Thrift/JsonSerialize/JsonSerializeTest.php\nPatch: Stig Bakken \u003cstig@zedge.net\u003e\n\nThis closes #479\n"
    },
    {
      "commit": "de7cf5df9244c3e1a45c0150f1f77e730ba20e1c",
      "tree": "042ff81d363dbcbaa7c31e6dc63a687d8f78f862",
      "parents": [
        "13699f878a747abf13bbb397ff7de19ed8779399"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 04 11:24:20 2015 +0200"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 04 11:24:47 2015 +0200"
      },
      "message": "THRIFT-3124: some signed/unsigned warnings removed from compiler\n\nClient: all\nPatch: Konrad Grochowski\n"
    },
    {
      "commit": "13699f878a747abf13bbb397ff7de19ed8779399",
      "tree": "8d10fccbfccab23e7ffb71042cd1596eb22dde37",
      "parents": [
        "9e78ed81a94dde86f4ac4207c39334255c102a5a"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 04 11:21:22 2015 +0200"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon May 04 11:21:22 2015 +0200"
      },
      "message": "THRIFT-3123: Missing include added to compiler/cpp/src/main.h\n\nPatch: David Ehrmann\nClient: all\n\nThis closes #477\n"
    },
    {
      "commit": "9de9b1f1be7b343e8493560b6eb540a948303f6f",
      "tree": "f713d9cd39d10a840bd14574ca08fbf586815b89",
      "parents": [
        "1a8e048bd05b8506ab06200282e2ba516927786e"
      ],
      "author": {
        "name": "Jim King",
        "email": "jim.king@simplivity.com",
        "time": "Thu Apr 30 16:03:34 2015 -0400"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Thu Apr 30 22:40:26 2015 +0200"
      },
      "message": "THRIFT-2850 get windows cmake working again and building the unit tests for lib/cpp, and pass make check through cmake - also resolve some compiler warnings\n"
    },
    {
      "commit": "811d279d581c7daffcee846492f5efca12fda3db",
      "tree": "c3658663e21f10f522a6fbfeafc68e18769fdfad",
      "parents": [
        "958a7a242a59bc2d3965399483fbbb0dbeafa0e8"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 17:42:54 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 17:47:58 2015 +0200"
      },
      "message": "THRIFT-3114 Using local temp variables to not pollute the global table\nClient: Lua\nPatch: Xin Li \u003clixin.lab@gmail.com\u003e\n\nThis closes #463\n"
    },
    {
      "commit": "958a7a242a59bc2d3965399483fbbb0dbeafa0e8",
      "tree": "c6ca993911dbdb3a59addf761760ff8f023f39c9",
      "parents": [
        "5ec2121cf283e8d708d22ab3e66c9c7103ecbaf0"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 16:00:27 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 17:47:50 2015 +0200"
      },
      "message": "THRIFT-3115 Uncompileable code due to name collision with predefined used types\nClient: Delphi\nPatch: Jens Geyer\n"
    },
    {
      "commit": "5ec2121cf283e8d708d22ab3e66c9c7103ecbaf0",
      "tree": "652d2c56e7e3895ab9eac5114d504bf3cabfbbe3",
      "parents": [
        "71f2d8a7140329f0f2fc339d84e50d9b27bf478c"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 15:24:59 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Apr 26 17:47:43 2015 +0200"
      },
      "message": "THRIFT-233 IDL doesn\u0027t support negative hex literals\nClient: Compiler general\nPatch: mreve \u003caadymek@gmail.com\u003e\n\nThis closes #461\n\nUpdate hexconstant regex in thriftl.ll\nAs it is now, the parser doesn\u0027t allow hex constant values to be negative (it throws a \u0027bad syntax\u0027 error).The change updates the regex and the part that parses the hex value from the string read from the IDL file to support negative values.\n\nAdd test to ConstantsDemo.thrift\nBefore the change, \"make install\" would break with negative hex constant in ConstantsDemo.thrift. Now it compiles.\n"
    },
    {
      "commit": "71f2d8a7140329f0f2fc339d84e50d9b27bf478c",
      "tree": "4dd5392dd57cb8ac1da0ec69e1b2619e1479bae8",
      "parents": [
        "7ed94ef8e82e3aabec05d638c3fc2736f081b0f8"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Apr 26 17:00:04 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Apr 26 17:00:04 2015 +0200"
      },
      "message": "THRIFT-3067 C++ cppcheck performance related warnings\n\nPatch: Arijit Chattopadhyay \u003carijitnit06@gmail.com\u003e\n\nThis closes #444\n"
    },
    {
      "commit": "3b61971c8e8401e09919b3fb40b8e42bd27f9c71",
      "tree": "fdad3070fb9555fa006aa7be34c1dc2bc963cfeb",
      "parents": [
        "f332d16460b2d0e344a47cf43d9d8bf9953d2cdb"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 22:00:43 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 22:11:14 2015 +0200"
      },
      "message": "THRIFT-3047 Uneven calls to indent_up and indent_down in Cocoa generator\nClient: Cocoa\nAuthor: Mike Riley \u003cmikeriley@yelirekim.com\u003e\n\nThis closes #401\n"
    },
    {
      "commit": "f332d16460b2d0e344a47cf43d9d8bf9953d2cdb",
      "tree": "66fbc37015a6e4f09ae3d3104e8a5a361893764b",
      "parents": [
        "f9c318ca9e4b176a9b0220f9c8e872089ac8e720"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 21:58:28 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 22:11:11 2015 +0200"
      },
      "message": "THRIFT-3041 Generate asynchronous clients for Cocoa\nClient: Cocoa\nPatch: Mike Riley \u003cmikeriley@yelirekim.com\u003e\n\nThis closes #400\n"
    },
    {
      "commit": "f9c318ca9e4b176a9b0220f9c8e872089ac8e720",
      "tree": "fa08420f56a7d424afc5a731590bd2d3e6f063b3",
      "parents": [
        "fdf0198103fddf9cd43955da5eee9dc4c02ef9b4"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 21:29:20 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Apr 16 21:29:20 2015 +0200"
      },
      "message": "THRIFT-3098 Print binary typedefs the same way we do binary fields\nClient: Java\nPatch: Roshan George \u003croshan@arjie.com\u003e\n\nThis closes #445\n"
    },
    {
      "commit": "a242c28ba16012ba480c5fbac88bedceaf3aed57",
      "tree": "8ae96670f084db61adb3c72ab9ab6bf307895e83",
      "parents": [
        "8f27189dfd2812a9aa5bd57ce7155fbc295440ad"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Apr 14 22:14:41 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Apr 14 22:14:41 2015 +0200"
      },
      "message": "THRIFT-227 Pretty print binary collections\n\nThis closes #441\n\ncommit 5da68694fec6a51e97f5a75823babb1074e32eb2\nAuthor: Roshan George \u003croshan@arjie.com\u003e\nDate: 2015-04-13T03:40:26Z\n"
    },
    {
      "commit": "7726b03ac11c54502dad3a72c124c24fc17db1b3",
      "tree": "467b5eb1014213c8eb2bb870b9800cebf28431d7",
      "parents": [
        "efd14e7c2521c3210531f1893719905ea8a0835e"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Apr 14 21:47:58 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Tue Apr 14 21:47:58 2015 +0200"
      },
      "message": "THRIFT-1857 Python 3.X Support - Replace deprecated \",\" with \"as\" in python exception generation code.\n\nPatch: George Leslie-Waksman\nThis closes #440\n"
    },
    {
      "commit": "b1783a5722e7ab1669f5926c233ea40af0f3c924",
      "tree": "e5c02d3dd6540b666a486b0c18be8678c62894d1",
      "parents": [
        "19e32dc0ed5090d6cc464242ede7d862c146fc3b"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Apr 12 22:08:20 2015 +0200"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Apr 12 22:08:20 2015 +0200"
      },
      "message": "THRIFT-3092 Generated Haskell types should derive Generic\n\nThis closes #437\n\ncommit bc922190b70e1264f356ab463dda18babf7910e3\nAuthor: Abhinav Gupta \u003cmail@abhinavg.net\u003e\nDate: 2015-03-11T07:26:58Z\n\n[haskell] Derive Generic in generated types\n"
    },
    {
      "commit": "6d71dc868873691a62b3cb28bf48dcb0e225fa95",
      "tree": "10cbe4c24df77c469d36ab05f42c0c5cf821eb6b",
      "parents": [
        "bb23eadca16f18afaee8e7f69c02f3456358cc6b"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsukeg@gmail.com",
        "time": "Sun Apr 12 01:30:58 2015 +0900"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Apr 12 09:58:22 2015 +0200"
      },
      "message": "THRIFT-3091 c_glib service method should return result from handler method\n"
    },
    {
      "commit": "86f7350f90c7432c9415cb43d003ff7e6385c258",
      "tree": "6d1e44e0087eadcbb8619234edacb95fabd98e73",
      "parents": [
        "df71a2e7ac19704a89a232b83a5d06c1d2daf640"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Apr 03 00:44:27 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Apr 11 02:04:09 2015 +0200"
      },
      "message": "THRIFT-3076 Compatibility with Haxe 3.2.0\nClient: Haxe\nPatch: Jens Geyer\n\nThis closes #435\n"
    },
    {
      "commit": "58ed1cdf3cd4da9d013e4cd4b92b3f4e440d145d",
      "tree": "aa4ee3ae85752b6610a3e68e4850a94911d4d4c1",
      "parents": [
        "cada37008ce6e609fe6312596d3ced760e5cd60c"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsukeg@gmail.com",
        "time": "Sun Mar 29 19:44:41 2015 +0900"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Mar 29 14:39:32 2015 +0200"
      },
      "message": "THRIFT-3057 Java compiler build is broken\n"
    },
    {
      "commit": "e6789480d262357d4de4ab608267165c79631cb3",
      "tree": "53979245f3f0318be965a2f3d8807ab2f61d0f6a",
      "parents": [
        "0cfdf7cb9de0657f01882e356f447651914e4a21"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Mar 23 20:41:15 2015 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Mon Mar 23 20:41:15 2015 +0100"
      },
      "message": "THRIFT-1909 Java: Add compiler flag to use the \"option pattern\" for optional fields\n\nPatch: Eirik Sletteberg \u0026 rebase by Wouter Lammers\n"
    },
    {
      "commit": "43ceaf7cf5f414fe03d857aee1f7199036d2f62f",
      "tree": "430100079d9e295bcb85d430c1677afa8f03e386",
      "parents": [
        "65cf6c14da72a5122f4f52e228b6f3fcd68ccb7d"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 17 00:39:36 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 17 00:39:36 2015 +0200"
      },
      "message": "THRIFT-3043 go compiler generator uses non C++98 code\nClient: Go\nPatch: Jens Geyer\n"
    },
    {
      "commit": "1d1bca2738febb87bf132d041a73cd8da5a6328b",
      "tree": "745f09341550039e5f4fd7aba9b4523502c096c4",
      "parents": [
        "28c1c19f913a4bee97a8309cf4b65914f705faea"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 14 16:28:27 2015 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 14 16:38:43 2015 +0200"
      },
      "message": "THRIFT-3027 Go compiler does not ensure common initialisms have consistent case\nClient: Go\nPatch: Magrath \u003cpaul@paulmagrath.com\u003e\n\nThis closes #394\n"
    },
    {
      "commit": "28c1c19f913a4bee97a8309cf4b65914f705faea",
      "tree": "aef812e3c4406684b7d03e618f8203e81350581b",
      "parents": [
        "c7cf379aaede7df0f6117008a561c1ba9aa73044"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 07 14:18:01 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Mar 07 14:25:00 2015 +0100"
      },
      "message": "THRIFT-3023 Go compiler is a little overly conservative with names of attributes\nClient: Go\nPatch: Paul Magrath \u003cpaul@swiftkey.com\u003e\n\nThis closes #389\n"
    },
    {
      "commit": "eda0f844ee5f564aa50e5d406b0ff0350beba9f6",
      "tree": "c299980dc976657b4a15b8b0dcecc5c1a9c4e08c",
      "parents": [
        "a6ea4442dddfac1342835a30b1c8a81adb207a46"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 03 21:21:19 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 03 21:35:44 2015 +0100"
      },
      "message": "THRIFT-3021 Service remote tool does not import stub package with package prefix\nClient: Go\nPatch: Yinyin L \u003cyinyinl@gmail.com\u003e\n\nThis closes #385\n"
    },
    {
      "commit": "3811e59c15af82b14413520b377a4d225f8f0e5a",
      "tree": "862032ad39fc5a1d53f526b2259d24f6661d92b1",
      "parents": [
        "f702fed427b1bd5443ae11ab591e313c269ab5b6"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 03 21:07:55 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Mar 03 21:35:36 2015 +0100"
      },
      "message": "THRIFT-3019 Golang generator missing docstring for structs\nClient: Go\nPatch: Abdel Said\n"
    },
    {
      "commit": "962e41078bb92656d4e28acfb717884e1ef57f5e",
      "tree": "81b3e1c346f6c184a03348817a67cb45b8618c75",
      "parents": [
        "bd60b92c6f31c871d5bd52debbe75394575cd786"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 27 22:28:50 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Feb 27 22:53:00 2015 +0100"
      },
      "message": "THRIFT-3006 Attach \u0027omitempty\u0027 json tag for optional fields in Go\nClient: Go\nPatch: Peter Woodman \u003cpeter@vineapp.com\u003e\n\nThis closes #380\n"
    },
    {
      "commit": "bd60b92c6f31c871d5bd52debbe75394575cd786",
      "tree": "0d2d1e1d36a9f9c369ca2b86cab2c0e53461a96e",
      "parents": [
        "2ad6c307be41c4ddc8ea2887acd93b9b3331cc6a"
      ],
      "author": {
        "name": "Randy Abernethy",
        "email": "ra@apache.org",
        "time": "Thu Feb 26 16:59:14 2015 -0800"
      },
      "committer": {
        "name": "Randy Abernethy",
        "email": "ra@apache.org",
        "time": "Thu Feb 26 16:59:14 2015 -0800"
      },
      "message": "THRIFT-3008: Node.js server does not fully support exceptions\nClient: Node.js\nPatch: Nobuaki Sukegawa\n\nGithub Pull Request:\nThis closes #382\ncommit 0c0d51ca1dafa5f8e0004563df780a92580590f3\nAuthor: Nobuaki Sukegawa \u003cnsukeg@gmail.com\u003e\nDate: 2015-02-22T16:49:22Z\nTHRIFT-3008 - Node.js server does not fully support exception\n"
    },
    {
      "commit": "80aa53e6bcc766a985d7a05c20e85e21e2bdd65f",
      "tree": "2b23ecc975c06ff37608e0518eabff38b640c09f",
      "parents": [
        "d8187c5ff1d8b83d170cbce69282688be39df19c"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 18 22:04:09 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Feb 18 23:25:13 2015 +0100"
      },
      "message": "THRIFT-3001 C# Equals fails for binary fields (byte[])\nClient: C#\nPatch: Benjamin Schulz, Testcase added by Jens Geyer\n"
    },
    {
      "commit": "b3654df14cd4b391943eeab8124735a005fa7454",
      "tree": "424fc1e3dc1d5a50ca45d1ae687490f116e01b0f",
      "parents": [
        "2663ec43ab5954d65d4bfb1509d963ac40019789"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 22:54:26 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 23:40:02 2015 +0100"
      },
      "message": "THRIFT-2189 add union support for go generator\nClient: Go\nPatch: Anton Lindström \u003clindztr@gmail.com\u003e and Jens Geyer\n\nThis closes #369\n\nThis makes it possible to check if a field  is set and skips adding new ones.\nFields in unions are pointers by setting them as `t_field::T_OPTIONAL`.\n\nTo be sure that exactly one and only one field is set in a union, we count the\nnumber of fields set and return an error if not exactly one field is set.\n\nThis is a breaking change and will require fields in unions to be passed in as\npointers.\n"
    },
    {
      "commit": "2663ec43ab5954d65d4bfb1509d963ac40019789",
      "tree": "8d6594709d04b16df626986993f31c79d0a83233",
      "parents": [
        "12d430e723b020f7a8ce42a40c19edf88f948367"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 22:03:34 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 22:45:18 2015 +0100"
      },
      "message": "THRIFT-2955 Using list of typedefs does not compile on Go\nClient: Go\nPatch: Johannes Martinsson \u003cjohannes@saltside.se\u003e\n\nBe explicit about when to use true type.\n"
    },
    {
      "commit": "12d430e723b020f7a8ce42a40c19edf88f948367",
      "tree": "421e8ba0aa8bee9f828129d92a5ed970fe8c23e1",
      "parents": [
        "8e73137c278b1ac7f4a455217393a7e6348c0766"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 22:03:34 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Feb 03 22:34:41 2015 +0100"
      },
      "message": "THRIFT-2955 Using list of typedefs does not compile on Go\nClient: Go\nPatch: Johannes Martinsson \u003cjohannes@saltside.se\u003e\n\nBe explicit about when to use true type.\n"
    },
    {
      "commit": "2f2d6ac7ea9b77bbfc8edf36980155473c6fd86c",
      "tree": "075188c0bc5a237ce3df713617c16781c1e8506f",
      "parents": [
        "a0c5ab711ef47142ca8abb55bc1d4ba139ef8129"
      ],
      "author": {
        "name": "henrique",
        "email": "henrique@apache.org",
        "time": "Tue Feb 03 12:47:31 2015 +1100"
      },
      "committer": {
        "name": "henrique",
        "email": "henrique@apache.org",
        "time": "Tue Feb 03 12:47:31 2015 +1100"
      },
      "message": "THRIFT-2368 New option: reuse-objects for Java generator\nClient: Java\nPatch: adam.p.hajduk\n\namendments to original patch\n"
    },
    {
      "commit": "8f2596ad546451c50e48425e37eddc9195c5807e",
      "tree": "8f657506c5512fb239b1d85aafe9beede2e5e9a1",
      "parents": [
        "4e16718e998df64e0e3c9a01ddb85af32f344933"
      ],
      "author": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Jan 29 23:42:05 2015 -0500"
      },
      "committer": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Jan 29 23:42:05 2015 -0500"
      },
      "message": "THRIFT-2961: Service inheritance does not work with namespaced Ruby code\nClient: rb\nPatch: Jan Brauer\n\nThis closes #364\n\ncommit 111c4e77a78c1a82f526923f13534bb0027ef33f\nAuthor: Jan Brauer \u003cjan@jimdo.com\u003e\nDate: 2015-01-29T22:01:26Z\nMake \u0027extends\u0027 work with \u0027rb:namespaced\u0027.\ncommit 34cab3d7c77bd5e8325ac4f30f1091429c35905e\nAuthor: Jan Brauer \u003cjan@jimdo.com\u003e\nDate: 2015-01-29T22:25:03Z\nAdd test for namespaced service extension\n"
    },
    {
      "commit": "4e16718e998df64e0e3c9a01ddb85af32f344933",
      "tree": "0cead9361215a34c5b85b284f0ee97830bfe9767",
      "parents": [
        "176c9261ed4008a90c0e94fb1007c152dec91ac3"
      ],
      "author": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Jan 29 23:03:34 2015 -0500"
      },
      "committer": {
        "name": "jfarrell",
        "email": "jfarrell@apache.org",
        "time": "Thu Jan 29 23:03:34 2015 -0500"
      },
      "message": "Thrift-2960: Fix namespace regression for Ruby\nClient: rb\nPatch: Jan Brauer\n\nAdd test that exposes the broken namespacing.\n\nFixes a bug introduced by #140.\n\nThis closes #363\n"
    },
    {
      "commit": "ce36aac5916ec02bf5b5a0be0684c079e797d000",
      "tree": "23cef20e5d10db81ce9b2115e9a0e84848c507c6",
      "parents": [
        "307144a5b5539c169e4c3b52d1f58c1bf8b88dab"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 20 23:09:02 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 20 23:31:19 2015 +0100"
      },
      "message": "THRIFT-2942 CSharp generate invalid code for property named read or write\nClient: C#\nPatch: Jens Geyer\n"
    },
    {
      "commit": "307144a5b5539c169e4c3b52d1f58c1bf8b88dab",
      "tree": "64fff04f7116a5a707ae8bcf503851ee5cefcb21",
      "parents": [
        "da80afe740ec2c97c22b806b96c9ac6650688908"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 20 22:21:57 2015 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Jan 20 22:40:38 2015 +0100"
      },
      "message": "THRIFT-2878 Go validation support of required fields\nClient: Go\nPatch: Chi Vinh Le \u003ccvl@chinet.info\u003e\n\nThis closes #304\n"
    },
    {
      "commit": "1b17991f26e68c5b701c0d5f712a0f4eead16d4f",
      "tree": "da229bcd9e8829f9766d894c7e10e113d30aa1d8",
      "parents": [
        "6d9a3ca7d912482fb1321efae80a07eff9de2b85"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 21 21:05:14 2014 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 21 21:05:14 2014 +0100"
      },
      "message": "THRIFT-2897: Implement hash and isEqual: methods\n\nClient: cocoa\nPatch:  Jim Speth\n\nThis closes #330\n"
    },
    {
      "commit": "6d9a3ca7d912482fb1321efae80a07eff9de2b85",
      "tree": "d3c0021234226bdcf3753b90973d7acb1107bddc",
      "parents": [
        "a10697a9dbdfada8ed138f40c6ce5c1830c0daa8"
      ],
      "author": {
        "name": "Kirby1337",
        "email": "pasci@hispeed.ch",
        "time": "Thu Dec 18 16:41:10 2014 +0100"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sun Dec 21 17:38:58 2014 +0100"
      },
      "message": "THRIFT-2901 Fix for generated TypeScript functions + indentation of JavaScript maps\n"
    },
    {
      "commit": "80784b1098d95232b329cdec6e8f056d10380409",
      "tree": "51b98ec69ab176c9971b05390e4d33449e5330d6",
      "parents": [
        "20b51b667ba97dac72d5618114996c1fbd173006"
      ],
      "author": {
        "name": "Nobuaki Sukegawa",
        "email": "nsukeg@gmail.com",
        "time": "Wed Dec 17 14:35:29 2014 +0900"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Thu Dec 18 22:20:55 2014 +0100"
      },
      "message": "THRIFT-2902 Generated c_glib code does not compile with clang\n"
    },
    {
      "commit": "c61b3a8170e0decf2a4e863c89bf34acc16b0363",
      "tree": "62353656ad673b7c921231152c5805db23cfcef6",
      "parents": [
        "3bb34df8f325d93e21069da6735867edf62816f3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Dec 18 21:48:12 2014 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Dec 18 21:48:42 2014 +0100"
      },
      "message": "THRIFT-2894 PHP json serializer skips maps with int/bool keys\nClient: PHP\nPatch: Stig Bakken \u003cstig@zedge.net\u003e\n\nThis closes #331\n\nPHP generator: in jsonSerialize, only skip maps with non-scalar keys (previously skipped maps with non-string keys)\n"
    },
    {
      "commit": "a792e5d5ac8747f7f0d4b59c3a631bb86159fe18",
      "tree": "1b4d2b40a5d1d2deedbe7403fa6c1fc8f6f24268",
      "parents": [
        "9f9535c5fbe0973ae803112075bff65b83bd7636"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Dec 16 22:47:02 2014 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Dec 16 22:59:02 2014 +0100"
      },
      "message": "THRIFT-2894 PHP json serializer skips maps with int/bool keys\nClient: PHP\nPatch: Stig Bakken \u003cstig@zedge.net\u003e\n\nThis closes #320\n\nPHP generator: in jsonSerialize, only skip maps with non-scalar keys (previously skipped maps with non-string keys)\n"
    },
    {
      "commit": "de76a3772b5642d093765e2cf1de5b9e0201067c",
      "tree": "7e2da3defdababf62598e47c8d4dc65e25399103",
      "parents": [
        "3c5a788d8f243e23474b3ac09a795e4e15a8933f"
      ],
      "author": {
        "name": "winsweet",
        "email": "winsweet@gmail.com",
        "time": "Tue Dec 09 16:14:51 2014 +0800"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sat Dec 13 21:29:55 2014 +0100"
      },
      "message": "THRIFT-2882 Lua Generator: using string.len funtion to get struct(map,list,set) size\n"
    },
    {
      "commit": "3c5a788d8f243e23474b3ac09a795e4e15a8933f",
      "tree": "0d84c0d641f8872cbfc230753f90ffa13c033e12",
      "parents": [
        "714a9aa1c544508e430d1d74a39202fc784df947"
      ],
      "author": {
        "name": "Nate Rosenblum",
        "email": "nater@maginatics.com",
        "time": "Mon Nov 17 09:46:48 2014 -0800"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Sat Dec 13 21:22:47 2014 +0100"
      },
      "message": "THRIFT-2836 Add moveable_types option to C++ generator\n\nSetting this option enables generation of MoveConstructible types,\nallowing types to be bound via move in std::bind. This is especially\npleasant when using Thrift container types.\n"
    },
    {
      "commit": "714a9aa1c544508e430d1d74a39202fc784df947",
      "tree": "ccfd38aa72483ce30286807c378a09b4b20524bb",
      "parents": [
        "0a378709ab8b3b0de4bafde60a803da24096e8bd"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Fri Dec 12 16:03:40 2014 +0100"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Fri Dec 12 16:03:40 2014 +0100"
      },
      "message": "THRIFT-2888: JSON generator - fixed missing include\n\nClient: JSON\nPatch: Pascal Bach\n\n\u003climits\u003e was used but not directly included\n"
    },
    {
      "commit": "1f42d315759a725f9c2846b0996d03128e2f1887",
      "tree": "cc253e38d4ae0abe4ce05ad1f5322125c9287a24",
      "parents": [
        "57cd421de3b681b4e401dcc5d965671362663998"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 08 21:39:39 2014 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 08 21:49:54 2014 +0100"
      },
      "message": "THRIFT-2868 Enhance error handling in the Go client\nClient: Go\nPatch: Chi Vinh Le \u003ccvl@chinet.info\u003e\n\nThis closes #297\n"
    },
    {
      "commit": "0494987fd16f4892dbca9c6a22aa5af0e5b20fc5",
      "tree": "3105ecc4bd7f391f55d7d93e9faa961ee0a22e00",
      "parents": [
        "4c1fde226ebe601d673a3457c71fe48902ce5e2d"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Sat Dec 06 20:06:08 2014 +0100"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Sat Dec 06 20:09:10 2014 +0100"
      },
      "message": "THRIFT-2859: JSON generator - fixed i64 numbers generation\n\nClient: JSON\nPatch: Stig Bakken\n\nAlso forced \"C locale\" for numbers - problems where detected in JSON lib\nin C++, so fixing it in generator also might be a good idea.\n\nThis closes #305\n"
    },
    {
      "commit": "6ce1e73d71eb15d48c84e1f7a187d198d9a91b1b",
      "tree": "38a1bee06d2202ddd336e6847aca4380d53a50b3",
      "parents": [
        "9462ce388e0607b5f9200b4e3f50d096130456e7"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 19:30:33 2014 +0100"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 19:30:33 2014 +0100"
      },
      "message": "THRIFT-2866: Go - generator code readability enhanced\n\nClient: Go\nPatch: Chi Vinh Le\n\nThis closes #295\n"
    },
    {
      "commit": "9462ce388e0607b5f9200b4e3f50d096130456e7",
      "tree": "c3b2f7a07e2be420f74412eb0cf5640f0297a1ba",
      "parents": [
        "dae6d3cbd14c505cdafc3f98992ca16a57b68f7e"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 12:11:31 2014 +0100"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 12:11:31 2014 +0100"
      },
      "message": "THRIFT-2859: compilation fix, C++11 removed from JSON generator\n"
    },
    {
      "commit": "dae6d3cbd14c505cdafc3f98992ca16a57b68f7e",
      "tree": "13b6f27fa22ce9fd23bc52ae0bcbbeae29e1eb0e",
      "parents": [
        "ffa255cac5487c46729771bec7c93402d443216d"
      ],
      "author": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 11:26:07 2014 +0100"
      },
      "committer": {
        "name": "Konrad Grochowski",
        "email": "hcorg@apache.org",
        "time": "Mon Dec 01 11:26:07 2014 +0100"
      },
      "message": "\u0027make style\u0027 applied\n"
    }
  ],
  "next": "ffa255cac5487c46729771bec7c93402d443216d"
}
