)]}'
{
  "log": [
    {
      "commit": "40d51a28d7c49074a8c9de585540aa47c2b683ee",
      "tree": "a3cec41826d8fa37ae66ab0e0ae564fded203adc",
      "parents": [
        "f35741729fb2b28a6dd14d4194e0bfab275f4b85"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 26 21:29:15 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 26 21:29:15 2011 +0000"
      },
      "message": "THRIFT-1365. java: TupleProtocol#writeBitSet unintentionally writes a variable length byte array\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1176072 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e80a194c473e94f90b30919da29cbe9b4542e244",
      "tree": "16f539b1ba856b1b9f3a9b92687c1fadf4d737b4",
      "parents": [
        "7e3b866a3558411e99986144061339c21f6125c0"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 20 18:45:56 2011 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 20 18:45:56 2011 +0000"
      },
      "message": "THRIFT-1331. rb: Ruby library deserializes an empty map to nil\n\nThis patch properly detects when the metadata is omitted in Compact Protocol messages.\n\nPatch: Armaan Sarkar\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1173300 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cbf87cb89cf0b1e7cd3656262c642209fef235ef",
      "tree": "cbc89a238c96482bc9e0b384cda6459b1f2203a8",
      "parents": [
        "c101092ea742e1252207b6e8f680bf392292c916"
      ],
      "author": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Sun Nov 28 14:34:26 2010 +0000"
      },
      "committer": {
        "name": "Christian Lavoie",
        "email": "clavoie@apache.org",
        "time": "Sun Nov 28 14:34:26 2010 +0000"
      },
      "message": "THRIFT-916: Commit THRIFT-916_fix_no-overflow.patch -- remove overflow coming from a few constants.\n\ngit-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1039885 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "213a66479872e0ccf828f8f2675d1546cdff0a18",
      "tree": "9ee6ccf9935af077a69b426327b210b4d9656f78",
      "parents": [
        "5013de297a1892fb336f69a01e6f57fdad147568"
      ],
      "author": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Oct 27 12:30:11 2010 +0000"
      },
      "committer": {
        "name": "Roger Meier",
        "email": "roger@apache.org",
        "time": "Wed Oct 27 12:30:11 2010 +0000"
      },
      "message": "THRIFT-582 C(c_glib) implementation of Thrift\n\nPatch: Anatol Pomozov and Michael Lum\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1027933 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d4235e0a47bde7a2fdbc9fc73dc6ca7231992278",
      "tree": "83c23dd8c22d7983c629b909e514f3b83026c4c5",
      "parents": [
        "a7420b6593998776871d55cbf415a0531c76a012"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 16:28:53 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Sep 13 16:28:53 2010 +0000"
      },
      "message": "THRIFT-870. java: Java constants don\u0027t get Javadoc comments\n\nFix a trivial oversight.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996592 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6e05e25c8977953a46251f5abfaf111a3ae9607b",
      "tree": "e761978dccc3213575a330f6f8b581a03352e709",
      "parents": [
        "cb0218f5c8fcc5e14016ea97f9cfc51009472246"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:49 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Sep 12 15:22:49 2010 +0000"
      },
      "message": "THRIFT-897. compiler: Don\u0027t allow unqualified enum constant references\n\nMissed a spot.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@996326 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "162b3ac6465d598e834609c8fae5b341f8e941d8",
      "tree": "6d546685b4c03ba11ca5e13b4d5f3f7b41df6ea9",
      "parents": [
        "656683c776f594da98b8df6d00fcb2a316d56171"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 23 21:17:48 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 23 21:17:48 2010 +0000"
      },
      "message": "THRFIT-804. java: CompareTo is broken for unions set to map, set, or list\n\nThis patch fixes TUnion\u0027s compareTo, and factors out the standard part of the comparison to TBaseHelper.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@957350 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d58ccec66090afbbef68471cb635ad731ef03319",
      "tree": "d1481420fba82e50ff18e7ec2511cc2d4dd86151",
      "parents": [
        "7ceba947212b6709adac7395a29d39376c50c9a4"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 26 16:34:48 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 26 16:34:48 2010 +0000"
      },
      "message": "THRIFT-768. java: Async client for Java\n\nThis patch adds an implementation of a fully-asynchronous client that makes use of NIO. Stubs for the async method calls are generated along with the existing synchronous ones.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@948492 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "35565a4719679523779d946420992bde33a4987c",
      "tree": "6ed14b92463c081d5a5c7f65231d74254f0ce4a6",
      "parents": [
        "3076fb8d791a07d6f4933bcfb7875ef0d27cb70e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jan 06 23:12:09 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jan 06 23:12:09 2010 +0000"
      },
      "message": "THRIFT-671. rb: Ruby compact protocol implementation gets mixed up when there are fields that don\u0027t fit in the delta space\n\nThis patch adds a test and a fix for the problem.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@896712 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c2ec7cae04b1a18a0fbb2dc3802fb3d18f0c080c",
      "tree": "21ca03a118b38cebd1a3cc742239608d44ee5c71",
      "parents": [
        "986d50fc718f06b234cf59effd9d374678801557"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Dec 31 18:59:15 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Dec 31 18:59:15 2009 +0000"
      },
      "message": "THRIFT-670. java: Unions don\u0027t skip unrecognizable fields correctly\n\nThis patch adds a test and a fix for the bug.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894924 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "986d50fc718f06b234cf59effd9d374678801557",
      "tree": "d21fd268a8a36c5bb9f5714f4f6182403bc85a8c",
      "parents": [
        "d250314e66b5a90b4aa5060ee1e326b5818cbb46"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Dec 31 18:18:00 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Dec 31 18:18:00 2009 +0000"
      },
      "message": "THRIFT-668. java: Using a map in an exception type will generate a class that does not implement Comperable-\u003e that will generate a stub that does not compile\n\nThe compiler was incorrectly assuming that exceptions were comparable. Now, exceptions are treated just like structs.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894919 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2d80470bcb1a7e41ef0668194ab97bb65342baac",
      "tree": "00cacf2bfbe22d4336e2c74fd0e45b37dd08d71e",
      "parents": [
        "e533bace3d462ebad7c65d7de4fd167a0ffbe740"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Dec 18 19:41:11 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Dec 18 19:41:11 2009 +0000"
      },
      "message": "THRIFT-632. java: Constants of enum types don\u0027t behave well\n\nThis patch causes constants of all types to be resolved differently by the compiler, and makes it so that constants of enum types contain a reference to the enum type so that code generators can produce the correct names.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@892358 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9af23d9327277a791c8b22c4323b8e17e2bfc378",
      "tree": "54b140c45dbb123fe46037ed5532c8519b49a1d2",
      "parents": [
        "e476480691d114ad1f1a9794bd10b34df6554ad2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Nov 19 17:26:38 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Nov 19 17:26:38 2009 +0000"
      },
      "message": "THRIFT-551. java: Enumeration doesn\u0027t generate real enum in Java\nThis patch makes the compiler generate actual Enum classes.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@882211 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e2e4ea1dcf09bdbf5bc2f270812ae2a3ca69c02b",
      "tree": "4f910afa1552dafc23e1b20d3bb90d46c7602449",
      "parents": [
        "7948a66cfc6d164cb27da71360a270838a7468c2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Nov 11 21:01:35 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Nov 11 21:01:35 2009 +0000"
      },
      "message": "THRIFT-624. java: compareTo is broken for Unions with binary fields\nThis patch adds a special case for byte[] values in TUnion. It also fixes a related bug in TBaseHelper for comparing two byte arrays.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835065 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2845b16eb24fc66d34f66c776400354225e70bad",
      "tree": "d3343b4fd1946cd672c08b7aa37e0ff594961a53",
      "parents": [
        "6731b57b582badaa3fca91e6ac54bf18cd2cf0f7"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Nov 09 15:55:22 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Nov 09 15:55:22 2009 +0000"
      },
      "message": "THRIFT-565. java: Structs containing typedefs for incomparable objects will be considered comparable\nThis patch causes the compiler to fully unwrap typedefs when determining comparability.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@834119 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "51f288062dceebbb16886752ddeb0a24a8d04956",
      "tree": "39a9b4ee28f83ca7b5d6d227028805503c8ee9bf",
      "parents": [
        "315a5dbe29213aa70750f4e93542e1d72f3b0bb9"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Oct 01 20:53:45 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Oct 01 20:53:45 2009 +0000"
      },
      "message": "THRIFT-446. java: PartialDeserialization in Java\n\nThis patch adds a partialDeserialize method to TDeserializer that allows you to request a specific subfield of the serialized data.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@820786 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ab3666e6caad79315fddf0f8f38c13c7a10cc23a",
      "tree": "4130f6c9eaae3553171c4c4a0d18623697a63193",
      "parents": [
        "fd58c55dca197daea0df23a339a1d106dea8189b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 01 23:03:47 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Sep 01 23:03:47 2009 +0000"
      },
      "message": "THRIFT-409. java: Add \"union\" to Thrift\n\nThis patch introduces new IDL syntax for creating Unions, explicityly single-valued structs. While the parser changes are portable, this patch only includes the actual generated code changes for the Java library. Other libraries can continue to generate a struct with the same fields and remain compatible until they are able to implement the full shebang.\n\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810300 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ff219acb6c6ec434d48ceb78ec4b7e03141e27b5",
      "tree": "63ffff1f527b747b51e1a8d993b3a0544a3122b5",
      "parents": [
        "5a5608893018529dfa5dba66070b26d7b33e9d7b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 10 21:51:00 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 10 21:51:00 2009 +0000"
      },
      "message": "THRIFT-236. Structs should be serialized in a consistent order\n\n2nd try at this issue. This time, we will use numeric field order ONLY for the serialization portion, instead of globally. This should make it much easier to produce the correctly ordered output in all cases. \n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@764072 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fe5b77d728feec094a086e516d3a185796397072",
      "tree": "188a44d82331ca19f9f65dfc3481ab86c65aa6ef",
      "parents": [
        "2bcf3995ef7ff3db554c550b2d760d870a64d389"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Apr 07 20:51:48 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Apr 07 20:51:48 2009 +0000"
      },
      "message": "THRIFT-356. Improve CompactProtocolTestStruct\n\n- Remove the default values from CompactProtocolTestStruct\n- Add a const CompactProtocolTestStruct that contains those values\n\nThis has a short-term benefit and a long-term benefit.\n\nThe short-term benefit is that it removes the list-as-map-key\n(etc.) values from the \"types\" generated file and puts it into\nthe \"constants\" generated file.  This gets them out of the way\nof the Python tests, so they pass again.\n\nThe long term benefit is that is strengthens the Java TCompactProtocol\ntest.  Before, it was reading the \"full\" CompactProtocolTestStruct into\na CompactProtocolTestStruct that was just constructed, but the latter\nwas already almost equal to the former.  This change makes it much\neasier to create an empty CompactProtocolTestStruct to read the serialized\ndata into.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@762957 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "689c9ad49843879b957d975e24fbb01404bfff79",
      "tree": "17416835c958ccf0acb488b12b738c8468c2bd56",
      "parents": [
        "bb4613629b53f91164a0d63d6676edaf70f26cd0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:24:02 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:24:02 2009 +0000"
      },
      "message": "THRIFT-420. Remove all negative structure field ids from the code\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@761393 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5b8b4845488b07007a311a0702107d6d8abe0052",
      "tree": "837129cbda8c93c270d6a6e33555fec805a07adf",
      "parents": [
        "16b29a989e9af77130b626c011c56f07d197b8b5"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Apr 01 20:10:15 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Apr 01 20:10:15 2009 +0000"
      },
      "message": "THRIFT-417. rb: BufferedTransport can enter an infinite loop\n\nSwitch native proto implementations to use read_all instead of read. Add a bunch of tests to verify. \n\nAlso:\n- removed some commented code in binary_protocol_accelerated.c\n- struct.c was missing one of the possible native method calls\n- updates gem manifest (included files that didn\u0027t exist)\n- fixed svn:ignores of test/rb/gen-rb and lib/java/gen-java\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@761037 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ea2cba8ba8484a8d4e669c02dd97b3b2445ef322",
      "tree": "6be4a3bf2d069a006c9a15f5ee47a1893a176f4d",
      "parents": [
        "4bc4231040186d9e0c35ff4d8211ce7b7e43aab5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Mar 30 21:35:00 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Mar 30 21:35:00 2009 +0000"
      },
      "message": "THRIFT-387. Add license headers to a bunch of files\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@760189 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "538e344122315036f0abdd8f3fa89b7f9dd1d310",
      "tree": "6b3b59b269a655bf89b796e58d038d0eba0a9da4",
      "parents": [
        "6ad6251951598e88f87245e325e29e31ba7126d2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 04:49:39 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 04:49:39 2009 +0000"
      },
      "message": "THRIFT-110. java: A more compact format\n\nThis patch includes the Java implementation of the new Compact Protocol outlined in the issue and a matching test. It also creates Fixtures.java, a helper class that contains some useful test structure instances. \n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@742847 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a7fc092ee1e0f77b818b0e4bcc8954f9f746b21a",
      "tree": "cca5ee69de8e9e4694c02d8ae5248d79055ea59e",
      "parents": [
        "8cee47cf5e7f0b17aadd5895d632901d828b0554"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:37:09 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:37:09 2009 +0000"
      },
      "message": "THRIFT-256. python: Fix inheritance of services in the same IDL file\n\nThe old version of type_name did not fully qualify parent service names\nwhen they were defined in the same IDL file, but it is necessary because\nthey end up in different Python files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741833 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8cee47cf5e7f0b17aadd5895d632901d828b0554",
      "tree": "568791df66d73b60b379bb366ba1b155ba3510b3",
      "parents": [
        "576dfdcda75667d6e892df0b5a4508d7bddbcef4"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:37:05 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:37:05 2009 +0000"
      },
      "message": "THRIFT-310. python: Generate valid code for empty services\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741832 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0b7d6fa5ee27dcfe60ed946c99fbc1c664bb4057",
      "tree": "8a8d7fded45f797c0155f0a16d08371839c3c287",
      "parents": [
        "d20a1d3619efa9edef51364d927bc9a78b37217f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:36:35 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Feb 07 02:36:35 2009 +0000"
      },
      "message": "THRIFT-314. Purge reflection.limited\n\nThis was a feature designed to allow a Thrift server to report\ninformation about its interface.  However, the feature has\nsignificant design problems, and is presence is currently causing\nconfusion without doing any good.  Therefore, it is being removed.\nIt will always be in source control if and when we are ready to\ncome back to it.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741824 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a8efac862a847ea4c2c2983704ef875a12f92080",
      "tree": "275f2565fca3c99d4f691ee54ac921ae8ac45b2f",
      "parents": [
        "083c07a26579e685bd62b085471f8720ef0aa822"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Dec 16 20:28:13 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Dec 16 20:28:13 2008 +0000"
      },
      "message": "THRIFT-225. java/cpp: Handle non-i32 integer constants properly\n\nJava generates a warning when converting from an integer constant\nto a byte or short without an explicit cast.  This change adds a\ncast to byte and short literals in Java.\n\nBoth Java and C++ fail to compile integer literals larger than 2^31\nunless they are decorated with \"L\" (for Java) or \"LL\" (for g++).\nThis change adds the appropriate decorations.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@727130 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2a4bfd6d0cdd32c9ade36a5c481b952f522f4fb2",
      "tree": "0453c0c01568a02daa57612738e1704e7d1cf6a8",
      "parents": [
        "c5c542538b7954c721fbd8007ebf0b482a86677a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 07 23:45:00 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 07 23:45:00 2008 +0000"
      },
      "message": "Clean up the unit tests.\n\n- Make Python tests cwd-agnostic.\n- Use boost::test.\n- Add a benchmark.\n- Use a library to clean up test/Makefile.am.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665640 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4a8f46ca0b449654626e7a68861d2fabb3fb9f48",
      "tree": "5c993a4b13458835a39468e47aad09f5d3839848",
      "parents": [
        "9b945da3ca84b2e27c5cb0e62bfe5eafcf28b45b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Mar 07 20:12:07 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Mar 07 20:12:07 2008 +0000"
      },
      "message": "Add more complete base64 testing for C++ JSON protocol.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665559 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3b15ebc251adc63d9c330c50e9a399e8117bdf35",
      "tree": "d86c65190ef84faf4ccdb3d557fba6aadfbda11c",
      "parents": [
        "d2a3e566b7814cfe176dd988854f6b3dca6a47d7"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Mar 02 06:29:19 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Mar 02 06:29:19 2008 +0000"
      },
      "message": "Add support for .equals() to Java structs.\n\n- Add a new method to t_java_generator that generates a .equals() method.\n- Add a correct but useless implementation of hashCode for structs.\n  (This is required by conventino when overriding .equals().)\n- Add java_package to DebugProtoTest and OptionalRequiredTest.\n- Add a new structure to OptionalRequiredTest to assist testing the behavior\n  of .equals() with respect to null and unset fields.\n- Clean up test/java/build.xml a bit.  (It still has a ways to go.)\n- Add EqualityTest.java to test .equals().\n- Add IdentityTest.java to test that writing and reading a structure\n  preserves equality.\n\nTested by runnint atn test.\nI also looked at the generated code for OptionalRequiredTest.thrift.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665541 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9a08dc6184cd0c3fd3d774fcf3f0a4233e28975f",
      "tree": "a047210c4603c6d119639b2112049e5ebce8136d",
      "parents": [
        "79eca14125c391c6011f4ffb14bfea898bc6c2f9"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Feb 27 01:55:17 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Feb 27 01:55:17 2008 +0000"
      },
      "message": "Make the C++ generator use non-hardcoded namespaces.\n\n- Make the C++ generator use program-\u003eget_namespace(\"cpp\")\n  instead of program-\u003eget_cpp_namespace()\n- Eliminate the explicit \"cpp_namespace\" in t_program.\n- Deprecate the cpp_namespace token.\n- Update example .thrift files and syntax files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665513 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "db0ea15310339c504f37128e49421bba58051933",
      "tree": "50e25907ca864ba90804ca3754238fdd514dc722",
      "parents": [
        "c005b1b65ed24bba18e843c85b9a2a281bfec265"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Feb 18 01:49:37 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Feb 18 01:49:37 2008 +0000"
      },
      "message": "Thrift: Add a full-featured JSON protocol for C++.\n\nSummary:\nThis change adds a new and exciting protocol to Thrift.  It uses\nRFC-compliant JSON as the wire protocol and is fully human readable.\n(once a little whitespace has been inserted.)  Unlike the existing\nJSON protocol for Java, which is intended to allow Thrift data to be\ntransferred to scripting languages, this protocol is lossless and fully\nread-write.  It was written by Chad Walters of Powerset and reviewed\nby David Reiss.\n\nTested by running make check.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665482 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8180c0c028d11086f6dd042e637af7c38db073f2",
      "tree": "3a2fc8f2f962c46e2ac63516973eadc0e8be3f5a",
      "parents": [
        "20f009d6251af0f838c4ef8799d6b238cd230606"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Feb 04 21:14:14 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Feb 04 21:14:14 2008 +0000"
      },
      "message": "Thrift: \"make check\" support.\n\nSummary:\nAdd a Makefile.am in the test directory that runs some of the test programs\nwhen \"make check\" is executed.  Also removed some obsolete comments.\n\nReviewed By: mcslee\n\nTest Plan:\nRan make check, saw all tests pass.\nRan make install, saw no test programs installed.\nRan ./cleanup.sh, saw a pristine workspace.\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665458 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "faebedd356985c3b2df5e39e1cf5b152c29fc179",
      "tree": "ed22638b9d0e355fd9db1ba9d0f4f6045f6f9610",
      "parents": [
        "f84b360d5c593653a3f038d526797805861b8ace"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 17 23:20:38 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Sep 17 23:20:38 2007 +0000"
      },
      "message": "Thrift: Re-committing zlib.\n\nSummary:\nSame as the last (reverted) zlib patch,\nbut this time with way more awesome support for building\nwith no zlib headers installed.\n\nReviewed By: mcslee\n\nTest Plan:\n- Did lots of really pathological stuff in my VMware.\n- On devrs004:\n  ./bootstrap.sh \u0026\u0026 ./configure \u0026\u0026 make \u0026\u0026 make install DESTDIR\u003d/tmp/tzinst \u0026\u0026 echo \"Yay\"\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665269 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5aea7c8d00b1c25fc6611c217d929c61cddd843e",
      "tree": "261601c8faa3c9bdb93de0d24c9e3c8226e16816",
      "parents": [
        "b8c6334d99acdc36eda81a1105f7760fd16cb3e5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Sep 15 01:54:56 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Sep 15 01:54:56 2007 +0000"
      },
      "message": "Thrift: Reverting TZlibTransport\n\nSummary:\nStupid Red Hat.\nThe dev boxes don\u0027t have the development packages for zlib.\n\nBlame Rev: 59856\n\nReviewed By: mcslee\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665263 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b8c6334d99acdc36eda81a1105f7760fd16cb3e5",
      "tree": "02301766af0b034a2126cc6e46a1e37bcacbf242",
      "parents": [
        "3d029786cda9ecc549e57c0a9a07bfaa454cb34d"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Sep 15 01:44:47 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Sep 15 01:44:47 2007 +0000"
      },
      "message": "Thrift: Zlib transport.\n\nSummary:\nAdd a new transport to the C++ library: TZLibTransport.\nThis wraps another transport (just like TBufferedTransport),\ncompresses the data written to it, and uncompresses the data it reads.\n\nReviewed By: mcslee\n\nTest Plan:\nFor ax_lib_zlib.m4\n - Ran ./bootstrap.sh.\n - Looked at configure.\n - Ran ./configure.\n - Looked at config.status\n - Ran ./configure --with-zlib\u003d/usr.\n - Looked at config.status\n - Changed configure.ac to AC_LIB_ZLIB(1.2.4)\n - Ran ./configure.\n - Watched it fail.\n\nFor TZlibTransport\n - test/ZlibTest.cpp\n - Code coverage (hotness) report sent with review.\n - 100% line coverage for all the good stuff.\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665262 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2375312fa05e1560f0fc83c642dcb2535d9d2eba",
      "tree": "c97b21fea0603a3e3f36a596de4597f034a946c9",
      "parents": [
        "5ec8e26d25dc459041e7c31aa2c65eff4f70ad4e"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Aug 27 19:57:34 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Aug 27 19:57:34 2007 +0000"
      },
      "message": "Thrift: Limited Reflection for C++.\n\nSummary:\nThe Thrift compiler now generates static methods for every service to generate\na reflection of the methods provided by the service.  This reflection is fairly\nlimited, but should be enough for what we want to do with SMC.\n\nReviewed By: mcslee\n\nTest Plan: test/ReflectionTest.cpp\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665226 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "382fc3043cba33fea1a919e4e6bfeac0cb9c22aa",
      "tree": "25fbc629b633f81f618842d86c4f0f6c44c83a12",
      "parents": [
        "40c6ac574c0090900736da744ef8cb72340b6c07"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Aug 25 18:01:30 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Aug 25 18:01:30 2007 +0000"
      },
      "message": "Thrift: Native-code Binary Protocol encoder.\n\nSummary:\nMerging a patch from Ben Maurer.\nThis adds a python extension (i.e., a C module) that\nencodes Python thrift structs into the standard binary protocol\nmuch faster than our generated Python code.\n\nAlso added by-value equality comparison to thrift structs\n(to help with testing).\n\nCleaned up some trailing whitespace too.\n\nReviewed By: mcslee, dreiss\n\nTest Plan:\nRecompiled Thrift.\nThrifted a bunch of IDLs and compared the generated Python output.\nLooked at the extension module a lot.\ntest/FastBinaryTest.py\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665224 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2dc72c3864e76d9eb14c1f83def63fa2351f4fb2",
      "tree": "a9d1cb7875bb45a5ee9eba760ca229902a34408c",
      "parents": [
        "dd56497a7c97f07c8d97b9c7323652fb2b7154e0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Aug 21 23:59:34 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Aug 21 23:59:34 2007 +0000"
      },
      "message": "Thrift: Move TStringBuffer functionality into TMemoryBuffer.\n\nSummary:\nTMemoryBuffer already has the necessary plubming to work with C++ strings.\nThis revision implements that functionality with a few wrapper methods.\nRemoved TStringBuffer as it should no longer be required (and it is tricky\nto safely inherit from a class that has a non-virtual destructor).\nAlso refactored the TMemoryBuffer constructors a bit.\n\nReviewed By: aditya, yunfang\n\nTest Plan:\ntest/TMemoryBufferTest.cpp\n\nRevert Plan: ok\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665213 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "00dcccfef251bb99836760eb31b2522608c23418",
      "tree": "7c4d27924a3050fb1725eb70cd1494881bd55355",
      "parents": [
        "8639e1056d6db52d53ff579f0f8d4728b702740e"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jul 21 01:18:10 2007 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sat Jul 21 01:18:10 2007 +0000"
      },
      "message": "Thrift: Debug Protocol\n\nSummary:\nAdded TDebugProtocol, a write-only Thrift protocol for C++\nthat produces human-readable representations of thrift structs.\n\nTrac Bug: #\n\nBlame Rev:\n\nReviewed By: mcslee\n\nTest Plan:\nRecompiled Thrift.\n./test/TestDebugProto.* see compile instructions at the top.\nRan that, and it looked good.\n\nRevert Plan:\ngrep TDebugProtocol \u003cworld\u003e\ngrep ThriftDebugString \u003cworld\u003e\nRevert or comment out whatever you find so that they still compile.\nThen svn revert.\n\nNotes:\n\nEImportant:\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665166 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ]
}
