)]}'
{
  "log": [
    {
      "commit": "fb90e77e4509a639390ecb3e435cf8620340676b",
      "tree": "803a4ea60cc179c9ab1fc5996180f0c5b29bf4e3",
      "parents": [
        "f5d650a5a07e579f045617238995efc834b4f648"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 12 20:54:07 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 12 20:54:07 2010 +0000"
      },
      "message": "THRIFT-774. java: TDeserializer should provide a partialDeserialize method for primitive types\n\nThis patch adds partialDeserialize* methods for each of the supported Thrift primitives.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@943679 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "06491d7bb591f8b55d4be6b116b246c56af66511",
      "tree": "be20e37391a27825bfdca6f29b42821943d744ea",
      "parents": [
        "adf5f19c541deeeb5fc9f695c61378e4490745a7"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat May 01 13:45:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat May 01 13:45:38 2010 +0000"
      },
      "message": "THRIFT-765. java: Revert the changes applied by THRIFT-765, as they appear to be unstable\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@940013 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "12abe949779c5eb318ae616695ce02385b728bce",
      "tree": "12ee6b48bbdcebb021aa2abfe5f73a82986258f2",
      "parents": [
        "cb6d9708e2673b92aec3ee6bbff7e67b5b0a171f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 30 21:35:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 30 21:35:38 2010 +0000"
      },
      "message": "THRIFT-765. java: Improved string encoding and decoding performance\n\nThis patch fixes a regression caused by the previous \u0027fast\u0027 implementation, in particular, dealing with unicode characters that need to be encoded as surrogate pairs. The performance stays about the same.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@939822 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "332a625118c87d1ea3540aefff3f5ad8ddf8428b",
      "tree": "69453ce26776227d1515083b0ef313a9bc9f74f8",
      "parents": [
        "abfc54fa0689f8257a1612df39f1f25d3fe0c560"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 17:08:17 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 17:08:17 2010 +0000"
      },
      "message": "THRIFT-766. java: Propagate TSocket timeout to connect\n\nThis patch makes sure the specified timeout is used when opening connections, too.\n\nPatch: David Helder\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@939380 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "abfc54fa0689f8257a1612df39f1f25d3fe0c560",
      "tree": "0e0dd974c99d0775a08b511d7b082ea8ba4ffb13",
      "parents": [
        "b80024d686a3e2b7f62c68d45bd606e01f0a9ef4"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 00:33:34 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 29 00:33:34 2010 +0000"
      },
      "message": "java: add another testcase to TestUtf8Helper\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@939142 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7e36df1c07dda74187ad53ea1ff2d037fb3a67e5",
      "tree": "6b58c79883c5bc21fa5815bf33a21c220bd3b7d0",
      "parents": [
        "a005777ae5dabb49ade7d6d6306bd3391210e3aa"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 26 19:37:53 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 26 19:37:53 2010 +0000"
      },
      "message": "THRFIT-601. java: Add readLength support to TBinaryProtocol.Factory\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@938206 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a005777ae5dabb49ade7d6d6306bd3391210e3aa",
      "tree": "83a0a12a75fb50b7ef9ab74e3a5d69420bd00112",
      "parents": [
        "97d21c853d543dbba497650badcf10334910edaf"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 26 19:37:44 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Apr 26 19:37:44 2010 +0000"
      },
      "message": "THRIFT-601. java: Allow a maximum frame size for TFramedTransport\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@938205 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "719ab84318ae1c7c59da5657ef0ad41dc4c3f921",
      "tree": "69d5e848ea56867b9c82e837ad3e9c109b233dc4",
      "parents": [
        "0137af6bf1e37762db319a08d2d6921d6897e21f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Apr 25 15:20:02 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Apr 25 15:20:02 2010 +0000"
      },
      "message": "THRIFT-765. java: Improved string encoding and decoding performance\n\nThis change makes Java\u0027s string/utf8 encoding and decoding about 2x faster.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@937812 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "15e2930ccf8fd4932bd700f7dd9ba433819368d5",
      "tree": "b74cfd0eaf3ec53387c7603327007b17f32dc0a5",
      "parents": [
        "60229785cb858c919f832e8ce8155c7c4ce06012"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 01:05:02 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 01:05:02 2010 +0000"
      },
      "message": "THRIFT-761. java: Include the symbolic name of a typedef field in the field metadata\n\nThis patch adds a new isTypedef() method to FieldValueMetaData and converts MetaDataTest to a testcase in TestStruct.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@936588 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "505b4c1e98bdb07d4f047cbe6d75a604750c2881",
      "tree": "beded6c11ea1158dc714006246e794156af4b67e",
      "parents": [
        "0fab12e9681581d4919cb7afe21d853c9e300614"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 00:26:41 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 00:26:41 2010 +0000"
      },
      "message": "java: stop trying to run the removed UnionTest\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@936582 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0fab12e9681581d4919cb7afe21d853c9e300614",
      "tree": "ff0c076e5852739ebe29a4167b41df06f96c435f",
      "parents": [
        "3292b3fed9665b04d6bfa2c8824af20332fbef39"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 00:22:34 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 22 00:22:34 2010 +0000"
      },
      "message": "THRIFT-759. java: Make TBase implement Comparable\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@936581 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3292b3fed9665b04d6bfa2c8824af20332fbef39",
      "tree": "10a8607c3b0fd96a6e198ee9189c8b3826afb90e",
      "parents": [
        "eb598b8c899dcf267f6da6c4c137115af9cb2070"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 15 07:01:51 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Apr 15 07:01:51 2010 +0000"
      },
      "message": "java: convert UnionTest to TestTUnion using JUnit\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@934300 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "33da6432202075cad3f91881e859778f89a9765c",
      "tree": "6c1824335a43b4122a687fa8332857671ed404f0",
      "parents": [
        "49b38015a672613c83d7c7a2954a9eb331b59a5a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Apr 05 16:28:21 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Apr 05 16:28:21 2010 +0000"
      },
      "message": "THRIFT-754. java: Improvements to varint reading in Compact Protocol\n\nThis patch makes readVarint32 about 30% faster and readVarint64 about 25% faster (when using transports that support direct buffer access).\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930898 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b1f7f7973bed233ec6f21807dfd774f7b600c5ec",
      "tree": "2e3468f58310b9bb534a51ff7abc461a6e493408",
      "parents": [
        "88569a25d1e8380574de16be541f9e6e18bbca12"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 23:19:52 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 23:19:52 2010 +0000"
      },
      "message": "THRIFT-746. java: Generated services Iface/Client inner classes do not derive from base classes\n\nThis patch causes all generated Client classes to inherit from TServiceClient, an interface that provides a way to get the protocols the Client is using. Also, it causes a new TServiceClientFactory implementation to generated for each Service, which provides a generic, reflection-free way to get Clients. These changes make it easier to build generic pools of Client objects.\n\nPatch: Mathias Herberts\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930601 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "88569a25d1e8380574de16be541f9e6e18bbca12",
      "tree": "97be75e7fd50fdd11a0b03b407a263016e4bf258",
      "parents": [
        "75526c999ee741b8d30de4bffcb790ff52700bbe"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 22:52:03 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 22:52:03 2010 +0000"
      },
      "message": "THRIFT-752. java: Use a faster Stack implementation in TCompactProtocol\n\nThis patch adds ShortStack, an internal implementation of Stack that works directly on primitive short objects, and makes TCompactProtocol use this. A brief performance test shows that this makes serialization about 8% faster and deserialization about 15% faster, though the actual gain you see will be dependent on the nature of your structs - the more levels, the more gain.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930593 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "75526c999ee741b8d30de4bffcb790ff52700bbe",
      "tree": "306b817f76fce4a52f8f0155a8d1eba9a4a7aaae",
      "parents": [
        "c81a10a432c9d272c3d4bc461d5070b9c4062084"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 20:25:04 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 20:25:04 2010 +0000"
      },
      "message": "java: Enhance TMemoryInputTransport to allow operation on specific range of a buffer rather than the whole thing. This will allow us to avoid making array copies in some instances.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930574 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c81a10a432c9d272c3d4bc461d5070b9c4062084",
      "tree": "f3899e3b9fbc3b4ded8985657f746aaed744fc21",
      "parents": [
        "c5de56cdfdaf7491fea99b52758231bb7ddea36e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 19:45:20 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 19:45:20 2010 +0000"
      },
      "message": "java: add a basic test for TMemoryInputTransport\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930568 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c5de56cdfdaf7491fea99b52758231bb7ddea36e",
      "tree": "e145af20ec15f17bc88a422093a5020bcc913a92",
      "parents": [
        "ea7910faf3abc85e90ba88bc9615b2fa3e8efd2d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 15:18:47 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Apr 03 15:18:47 2010 +0000"
      },
      "message": "java: reorganize ProtocolTestBase slightly\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@930530 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5557beffaecbd7b97a90ed38afc49c2a091aadba",
      "tree": "9bc037d9dea95cb12a2c7f6accc1792e207aa5fb",
      "parents": [
        "b35240f4d585a4f0415bf64fca5a39e0008380eb"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 29 23:57:09 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 29 23:57:09 2010 +0000"
      },
      "message": "THRIFT-723: java: Thrift buffers with set and map types in Java should implement Comparable\n\nThis makes structs that contain sets and maps in their hierarchy Comparable.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928944 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b35240f4d585a4f0415bf64fca5a39e0008380eb",
      "tree": "c88f590d2a0cb83ed1235aad37be5d871ea80695",
      "parents": [
        "547edc7ae0fe871d452ecb34129c2bb4a1778014"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 29 21:12:10 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Mar 29 21:12:10 2010 +0000"
      },
      "message": "java: Make TProtocolFactory extend Serializable.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928901 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "547edc7ae0fe871d452ecb34129c2bb4a1778014",
      "tree": "c1f75e8b1c44fea62c90e4b48fd7890037f9b2d0",
      "parents": [
        "e5e5c7b9d2b4537d3477b7916e00a14a18b2f169"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Mar 28 21:02:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Mar 28 21:02:38 2010 +0000"
      },
      "message": "THRIFT-363. java: Maven Deploy\n\nThis commit adds changes to build.xml so that we can generate a POM file and publish the artifact to the Apache Maven repo. For now, we haven\u0027t published yet - we\u0027ll do that at the next release.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928494 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e5e5c7b9d2b4537d3477b7916e00a14a18b2f169",
      "tree": "deb4bc654f23b13bf03d53e2a640d0f4a3ad9a56",
      "parents": [
        "981869c6ac4a6d9d470407bc598f18e05310447c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 06:24:12 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 06:24:12 2010 +0000"
      },
      "message": "java: Move contents of CompareTest into TestStruct; delete old version\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928159 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "981869c6ac4a6d9d470407bc598f18e05310447c",
      "tree": "fc6a596149831d8d847b19faef1cb6ff8c81863c",
      "parents": [
        "c23e09e7b012f9fbdba71e2dd8baabbfb1c4d70a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 06:13:09 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 06:13:09 2010 +0000"
      },
      "message": "java: Move contents of DeepCopyTest to TestStruct; delete old version\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928157 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c23e09e7b012f9fbdba71e2dd8baabbfb1c4d70a",
      "tree": "ccc6fad9c5bef467a8cfd6cb56c1aa742b1de898",
      "parents": [
        "d10f2bb4803663aa3921e1dd50b11fd521df807f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 05:56:26 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 27 05:56:26 2010 +0000"
      },
      "message": "java: Move contents of IdentityTest into TestStruct\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928153 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d10f2bb4803663aa3921e1dd50b11fd521df807f",
      "tree": "0996743c633b7f33d1b82996d4c149e0e812ab59",
      "parents": [
        "dffa072afc5f5424dcec4744ef27021d7094fa3b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:45:41 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:45:41 2010 +0000"
      },
      "message": "java: get rid of old OverloadNonblockingServer.java (since it\u0027s not actually a test), move Fixtures up to o.a.thrift\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928103 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "dffa072afc5f5424dcec4744ef27021d7094fa3b",
      "tree": "b1c214f0cd827c59737d0177dc2057e4d44ea525",
      "parents": [
        "dd6dc838d902c3bc840d1c079e4de87760db0d38"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:38:23 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:38:23 2010 +0000"
      },
      "message": "java: convert PartialDeserializeTest to testcase of TestTDeserializer (new junit test); add apache header to a few of the new test files.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928101 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "dd6dc838d902c3bc840d1c079e4de87760db0d38",
      "tree": "b793e15ead3969e4a5d77f83caabc454bed25786",
      "parents": [
        "bf0595fcb871dc496c35aa453713ae04bd1f9017"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:30:35 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 23:30:35 2010 +0000"
      },
      "message": "java: convert Framed Transport test to JUnit, remove old version of test\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@928100 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bf0595fcb871dc496c35aa453713ae04bd1f9017",
      "tree": "d92e9608714c39c04bd864ff2b8b1e22458c01d4",
      "parents": [
        "61a1ad4d9d72d57387f1626edbeed0cbdaac2fb9"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 16:59:46 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 16:59:46 2010 +0000"
      },
      "message": "java: Convert TJSONProtocol test to JUnit, making a few minor changes to ProtocolTestBase in the process.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@927967 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "61a1ad4d9d72d57387f1626edbeed0cbdaac2fb9",
      "tree": "e1d3b54deb556a4dd4b1b3ddfc6abbf9f7ca3365",
      "parents": [
        "98c45872f938eb746186ccb437b9e3a51127e82f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:59:59 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:59:59 2010 +0000"
      },
      "message": "java: Stop trying to run the deprecated version of binary and compact protocol tests, since they don\u0027t exist anymore\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@927701 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "98c45872f938eb746186ccb437b9e3a51127e82f",
      "tree": "cab825c83203b5dbd81c88ce438151f91550c143",
      "parents": [
        "5af1b97173bd8cd2dda9529d441ca68960f5ff61"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:58:34 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:58:34 2010 +0000"
      },
      "message": "java: Convert Binary and Compact protocol tests to JUnit\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@927699 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5af1b97173bd8cd2dda9529d441ca68960f5ff61",
      "tree": "8b85b83ee41d6a50812333c419dda006d89f978e",
      "parents": [
        "951e7e24800c0f0c4cfcdef5d634b1e16536eed0"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:12:27 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:12:27 2010 +0000"
      },
      "message": "THRIFT-719. java: Update Nonblocking and HsHa server to avoid an extra buffer copy\n\nThis patch causes Nonblocking and HsHa servers to explicitly enforce use of TFramedTransport and make sure that the actual invoker is deserializing from a TMemoryInputTransport. This should provide a substantial boost in performance.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@927695 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "951e7e24800c0f0c4cfcdef5d634b1e16536eed0",
      "tree": "82e20a1b25f22c85b021fe37601bcfaf97930ffd",
      "parents": [
        "15b7b287947dd348e2801ead6b1a33b2a2d6b31b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:05:59 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 26 05:05:59 2010 +0000"
      },
      "message": "java: Add JUnit to ivy config. Convert Nonblocking server tests to use JUnit. Framework laid to convert the remainder of the tests.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@927693 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "27c97857582b79f9ca684e03641d1cf81e8916e3",
      "tree": "c74bd75a15eed2789278f92bc59f3755e8435a73",
      "parents": [
        "318a328aec8062d6edf5efcd41dc8702a8595253"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 23 03:50:16 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 23 03:50:16 2010 +0000"
      },
      "message": "THRIFT-739. java: TCompactProtocol isn\u0027t suitable for reuse in partialDeserialize\n\nThis patch changes TProtocol to support a reset() method that should clear any internal state. Stateless protocols can ignore it; stateful ones should implement it. TDeserializer has been updated to take advantage of this method.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@926460 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f35a9b9152b66fc47c36ff25240e7704172d18ae",
      "tree": "a3c27273ac062ae3b527cc11406f4db7b566caba",
      "parents": [
        "3f4ca0e8fd63ed0fde1a5a00097144384436f9b2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 17 16:47:41 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 17 16:47:41 2010 +0000"
      },
      "message": "THRIFT-738. java: TCompactProtocol throws RuntimeException when it can\u0027t identify a type identifier\n\nThis patch causes it to throw TProtocolException instead.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@924364 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bec15e5105cae849b8095210e6ed6deac09c443d",
      "tree": "6c3f22cadc4465d1c9ea1ee79a49ae107608dd0d",
      "parents": [
        "487fd2e0435db0326a60821bcc96e56fa2eee711"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:14 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:14 2010 +0000"
      },
      "message": "THRIFT-661. java: Detect EOF in TIOStreamTransport\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920659 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "487fd2e0435db0326a60821bcc96e56fa2eee711",
      "tree": "c27ba642e688b704c41aceea37e584757d64c349",
      "parents": [
        "4dd7801e90fe10a6614890f3d176716582b04233"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:11 2010 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 09 05:19:11 2010 +0000"
      },
      "message": "THRIFT-657. java: Detect negative length in TBinaryProtocol\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920658 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d93c626131455fe5f8757fe3ee29d7f7a5c4fe22",
      "tree": "8194aace90f3c53096f585806acb16d4c8714a33",
      "parents": [
        "4ae8780c5c1e37c4c480a23f277a7942e3aada09"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 09 05:14:34 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 09 05:14:34 2010 +0000"
      },
      "message": "THRIFT-656. java:  TDeserializer.toString is misnamed\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920656 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a268019e85ac34b5b7a1c89d59288ecead5e6d97",
      "tree": "957d8d4fdb680f901bf3cc9bd328d2be8cc5d746",
      "parents": [
        "0f52f072013e8fcb85a8382a412a764433cf0673"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 02 18:49:02 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 02 18:49:02 2010 +0000"
      },
      "message": "THRIFT-710. java: TBinaryProtocol should access buffers directly when possible\n\nThis patch makes TBinaryProtocol use direct buffer access in the relevant methods. Performance testing indicates as much as 2x speed boost, though your mileage may vary.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@918147 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0f52f072013e8fcb85a8382a412a764433cf0673",
      "tree": "64d6282ae82512aef69ccbf7f89713845c1004bb",
      "parents": [
        "3e60fa6a54ecdd4b30df74e35ff64dbfd81a549c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 02 18:39:57 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 02 18:39:57 2010 +0000"
      },
      "message": "THRIFT-711. java: TFramedTransport should support direct buffer access\n\nThis patch adds direct buffer read access to TFramedTransport as well as a simple test for reading, direct buffer reading, and writing.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@918142 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4e7cf25b9574eb439b329070fd57e854948144df",
      "tree": "dab0985ce758bdf31689f07d92bfb0f831c5997a",
      "parents": [
        "30dd725952ddce68eecc645426443a5ebb3bec52"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 28 05:19:38 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 28 05:19:38 2010 +0000"
      },
      "message": "THRIFT-716. java: Field names can conflict with local variables in code for unions\n\nThis patch resolves the name clash issue by removing the unnecessary parameters from the generated method and using the protected variables directly instead.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@917130 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "53cba3cfa23d7c86badb0f85606a26a3e2391aec",
      "tree": "225a23e3eae6b15fa6240797374bc133e3038db3",
      "parents": [
        "6acc269d1883c822595ab5f346c6e4c1e1b2724c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Feb 26 21:38:42 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Feb 26 21:38:42 2010 +0000"
      },
      "message": "THRIFT-689. java:  Notify client of recoverable protocol errors on java server\n\nWhen a protocol error occurs, the server will now send back a message containing the exception. Clients should be able to detect and rethrow these exceptions as appropriate.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@916825 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "dee6d4260c2cca0917d5a921460d16f062ab27d6",
      "tree": "5ff6132c6d41c11b572ffd174593c40cdf920781",
      "parents": [
        "65073e5b116d1eb48ccc52c8446ebfdef4b36851"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 23 19:06:25 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 23 19:06:25 2010 +0000"
      },
      "message": "THRIFT-713. java: Java compareTo method throws NPE when any field isn\u0027t set.\n\nThis patch fixes a somewhat egregious bug in the generated compareTo for non-union structs and avoids possible NPEs.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@915499 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "becaf536211a699f1fb936752262fdb7bcd36126",
      "tree": "044e091e40d93663181ebfe9e9a4dc93fc85107c",
      "parents": [
        "3d03c527dfec72d10f885b3060ffdc35faa2cfb7"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Feb 18 18:27:51 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Feb 18 18:27:51 2010 +0000"
      },
      "message": "THRIFT-685. java: Direct buffer access to improve deserialization performance\n\nThis initial patch adds direct buffer access support to TDeserializer and TCompactProtocol, with the framework in place to be extended to other areas.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911510 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cd43a06405c806d7ff928262da29703cde7e764f",
      "tree": "fab911ee1dae532d3b231b9fe9e4f73c28d61cdd",
      "parents": [
        "33e190cd150c326ac833c435f975c2e737cff74f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Feb 17 20:01:29 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Feb 17 20:01:29 2010 +0000"
      },
      "message": "THRIFT-703. Attempting to hash an unset union struct results in NPE\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911162 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f94f008d80bf858e4ad635fda61f8cd2bd1be0a2",
      "tree": "23f73dc58140f7ebb1d5f5d36c04f4e0fbf3f5bb",
      "parents": [
        "526112103cff44ec923d77aed0838b93a41f6b04"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Feb 12 22:49:40 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Feb 12 22:49:40 2010 +0000"
      },
      "message": "THRIFT-702. TUnion\u0027s toString method throws NPE if the union is unset\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@909645 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "526112103cff44ec923d77aed0838b93a41f6b04",
      "tree": "fc39796573ac228ae125555bbcf3b1a764917e34",
      "parents": [
        "ddfe0c96982c50901504921291a1b973c1304941"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Feb 10 23:23:35 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Feb 10 23:23:35 2010 +0000"
      },
      "message": "don\u0027t put all the test cases and generated classes into the jar - reduces size of jar from ~1M to ~200k.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@908746 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c771944644247f5ae31c37ffe937fe93c147b327",
      "tree": "bb6bd15d84544d6f50bcd21555f0d28d940669a4",
      "parents": [
        "b6f4e56bb0c67d6f10391d9a6dff845e72c4100f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 21 03:20:01 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 21 03:20:01 2010 +0000"
      },
      "message": "THRIFT-684. java: Add constructor to TNonblockingServerSocket to accept InetSocketAddress\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@901513 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "db57aa0df9f83ff035bedb7e0afc447d0214acc0",
      "tree": "fd3df2b44c738f4bef0840bcfe11210a339b1d1b",
      "parents": [
        "8d41b643f9bb670f18404260fbe124c0cabb5360"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 15 17:40:31 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 15 17:40:31 2010 +0000"
      },
      "message": "THRIFT-677. java: IntRangeSet.java ignores first element in the constructor array\n\nThis change removes IntRangeSet from the codebase\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899729 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "62fb2ed1fea45f3193a0b295e5ef7f910a70cd6a",
      "tree": "ec21096d7fc2ba0fc75e779962553176bb383395",
      "parents": [
        "9bfacd36800f052e33ffa78a06bc9a4f600e5f3d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 15 17:29:26 2010 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 15 17:29:26 2010 +0000"
      },
      "message": "THRIFT-608. java: Option parameter is ignored for one constructors in THsHaServer\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899723 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": "d250314e66b5a90b4aa5060ee1e326b5818cbb46",
      "tree": "3243d088c96f54df020bca22b6b247d3f5c1dcd6",
      "parents": [
        "2d80470bcb1a7e41ef0668194ab97bb65342baac"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Dec 28 18:49:03 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Dec 28 18:49:03 2009 +0000"
      },
      "message": "(no ticket). java: Make Unions print binary values more tersely\n\nBytes were getting sign-extended out into giant strings of f\u0027s. This change makes sure only the bottom byte is used.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894222 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": "2727fab22f11a9d9c30b2c47d9d010adf97c15d6",
      "tree": "799d604fca5fa8020ce17c178ad72424e78dddf5",
      "parents": [
        "eb03222bca7d89654702569cad0c348b5dd44317"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Dec 09 19:30:01 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Dec 09 19:30:01 2009 +0000"
      },
      "message": "THRIFT-645. java: Create ant rules for running the test client and server\n\nI didn\u0027t make these depend on compile-test since ant doesn\u0027t seem to\ndetect that the class files are up to date, so it takes a really long\ntime to recompile everything.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@888931 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "53ae9f39d5118d9b13774413e7989b9f0fb1a8eb",
      "tree": "5cc5f76a2afed365f70f366994e255dbda59235c",
      "parents": [
        "f5dea4c7f31703cdc0c347eb7ec429fc5864afb4"
      ],
      "author": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Dec 07 00:42:38 2009 +0000"
      },
      "committer": {
        "name": "Todd Lipcon",
        "email": "todd@apache.org",
        "time": "Mon Dec 07 00:42:38 2009 +0000"
      },
      "message": "THRIFT-622. Add appropriate licensing information to get Thrift ready for a release.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@887812 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": "aa9fb5dc9de5f3cfbe086e6df8e7c6d3640c272c",
      "tree": "73292b4fb495b218715ab291af1f6517e84c4cc2",
      "parents": [
        "0c5c234b58802c36013b0d69b237ec3f098ebfd5"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Nov 12 20:52:25 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Nov 12 20:52:25 2009 +0000"
      },
      "message": "THRIFT-623. java: Use a Java enum to represent field ids in generated structs\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835538 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": "6731b57b582badaa3fca91e6ac54bf18cd2cf0f7",
      "tree": "23d56486b6514d39e6ed916f0cb460d1ec6dc9b1",
      "parents": [
        "3533dcbef88d1c4bae8e610f289c3297aea26a67"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Nov 04 00:30:10 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Nov 04 00:30:10 2009 +0000"
      },
      "message": "THRIFT-620. java: Compact Protocol should call readAll, not read\nThis patch switches to calling readAll instead of read.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@832633 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "72fd472476a68dc55ca8cbfb05452d6c69fb0d19",
      "tree": "51c714a9cad4de734d3558ce8a35953a67d64698",
      "parents": [
        "834895d15c8e6761b1dd28401966c39d32954936"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Oct 15 01:24:26 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Oct 15 01:24:26 2009 +0000"
      },
      "message": "THRIFT-589. java: Add Field Name to Field ID Mapping\nJava Thrift structs now have a static mapping of field name to field ID.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@825371 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": "315a5dbe29213aa70750f4e93542e1d72f3b0bb9",
      "tree": "a7cf17a5eedae6c0f60d4bdb2605c3125cdd4ef3",
      "parents": [
        "bff2a35adf75e5da3483facab647601a73a1f9ee"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 25 20:28:35 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Sep 25 20:28:35 2009 +0000"
      },
      "message": "THRIFT-588. java: Generated .equals method throws NPE for thrift object\n\nIf other is null, then they\u0027re not equal.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@818998 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": "af81de0123c8d9920a25a27d28da66f9d00748cc",
      "tree": "a85adc2cfe4a3e5ae040f4b3eecb64e92f8013b8",
      "parents": [
        "2c8cd944e50d4d69f00fde70ecee9c75ab924e2b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 27 20:27:09 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Aug 27 20:27:09 2009 +0000"
      },
      "message": "Revert r806014 \"THRIFT-562. java: Java is inconsistent ...\"\n\n- It changed the semantics of default-presence fields.\n- It messed up calls that accept exceptions.\n- Full details on issue.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@808609 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2c8cd944e50d4d69f00fde70ecee9c75ab924e2b",
      "tree": "41f814525b669777887bba8df93b90af7c0ffe07",
      "parents": [
        "2f45e789f6f87d95cd17be91900476f6a50bb1c1"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Aug 20 01:00:18 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Aug 20 01:00:18 2009 +0000"
      },
      "message": "THRIFT-562. java: Java is inconsistent checking for required fields\n\nThis patch makes the compiler act consistently regarding what it means to be required or optional. Additionally, it cleans up the tests to actually use the Fixtures class all over.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@806014 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2f45e789f6f87d95cd17be91900476f6a50bb1c1",
      "tree": "581aa69ea22832e3a5b796ee252df2f864ef511e",
      "parents": [
        "c27cda57a0347d3b7496a8ccbaf8071ead1f898e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Aug 20 00:55:12 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Aug 20 00:55:12 2009 +0000"
      },
      "message": "THRIFT-566. java: jar file should contain copies of LICENSE and NOTICE files\n\nLICENSE and NOTICE are now included in the jar file by the build process. \n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@806013 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c27cda57a0347d3b7496a8ccbaf8071ead1f898e",
      "tree": "9257aece1f341bdc30aa92742fd613ad3814e174",
      "parents": [
        "f5a0b3dfc8b0d6f7d85de4f9b18f14d6584d3d3a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Aug 14 20:04:15 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Aug 14 20:04:15 2009 +0000"
      },
      "message": "THRIFT-558. java:  Replace use of log4j by commons-logging in Java library and generated Java code\n\nThis patch switches Thrift to use slf4j instead of log4j. \n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@804349 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "82e96f5d96833d0af5495405444bace82b2214d7",
      "tree": "4c80cda4b40668b6902cebdc09f00e13b73c9cc3",
      "parents": [
        "293086cacc60f24d45359ed93c5ec224562b4ddd"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jul 31 19:32:34 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jul 31 19:32:34 2009 +0000"
      },
      "message": "THRIFT-144. java: Generated classes should implement Comparable\n\nForgot to add TBaseHelper.java. Oops.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@799714 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ef73b0e67ad4f5238417a60ec41176c1a6095b8d",
      "tree": "fe5e7786bb001d4e3e7e925b236715f2abb63023",
      "parents": [
        "56c2c21f4ef2c0d2052b956a000ed3a6321ea394"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 17 16:43:25 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Jun 17 16:43:25 2009 +0000"
      },
      "message": "THRIFT-378. java: Java servers do not turn internal errors into thrift exceptions\n\nThis patch causes Java servers to log internal server errors and return an INTERNAL_ERROR exception instead of just closing the connection.\n\nAuthor: Jonathan Ellis\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@785713 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "56c2c21f4ef2c0d2052b956a000ed3a6321ea394",
      "tree": "5c789b7f73f938896b5e6c5a36914ff0b7913811",
      "parents": [
        "fad60657a3b64894b56b56f7c23b2dcfa8cf4647"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Jun 04 02:05:25 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Jun 04 02:05:25 2009 +0000"
      },
      "message": "THRIFT-462. java: Installed jar shouldn\u0027t be executable\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@781639 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e043a9ec4b91ef5373681e966753d5172d56e79f",
      "tree": "b3ea259c4e46697526621b95a5f21be916b1dfc1",
      "parents": [
        "4b86e62eb6bb9230985c53c121e6aa34642162cb"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri May 22 20:17:04 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri May 22 20:17:04 2009 +0000"
      },
      "message": "THRIFT-516. rb: If TFramedTransport reads a negative frame size, throw a TTransportException descendant instead of the default NegativeArraySizeException\n\nThrow a TTransportException when the frame size read from the wire is \u003c 0.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@777690 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4b86e62eb6bb9230985c53c121e6aa34642162cb",
      "tree": "e76554a060d531e08fdc50429e682a9f882948e0",
      "parents": [
        "dc0a94142699ebf90a4a35a3e1ca64c7b875125f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:52:06 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:52:06 2009 +0000"
      },
      "message": "THRIFT-373. Get some missing files into the release tarballs\n\n- Added some stuff to EXTRA_DIST.\n- Added some non-compiled sources to a C++ test.\n- Made lib/perl/test a SUBDIR of lib/perl.\n\nThe last is a revert of r766558, but I moved the \"Types.pm\" rules in\nlib/perl/test/Makefile.am to the check-local target, so it should still\nwork as expected (per THRIFT-461).\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@777681 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fff84d1466d1848cc19054a56f1d4dc91f6d8326",
      "tree": "3f24afe93a73323775aebf4bfc31ad936b4635cf",
      "parents": [
        "089164a2e9ad58d44c7e841e25f02360fe8bd047"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:50:33 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:50:33 2009 +0000"
      },
      "message": "THRIFT-450. java: Propagate CLASSPATH from ./configure to make and ant\n\n- Put \"AC_SUBST(CLASSPATH)\" configure.ac so the CLASSPATH used to run\n  ./configure is passed in to make.\n- Put \"export CLASSPATH\" in lib/java/Makefile.am so that the CLASSPATH\n  passed to make is passed to ant.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@777678 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "089164a2e9ad58d44c7e841e25f02360fe8bd047",
      "tree": "dda5a8775b077017e106ec6bafdb01373b856488",
      "parents": [
        "fdfcebda522c4c84f9c81cebdfb43d878d37a35a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:50:32 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri May 22 19:50:32 2009 +0000"
      },
      "message": "THRIFT-450. java: Respect the global classpath during testing\n\nI\u0027m not sure why, but \"ant test\" under lib/java doesn\u0027t pass the\nglobal classpath to the test programs.  (This is weird because\ncompile-test does.)  This change manually extracts the CLASSPATH\nenvironment variable and adds it to the test classpath.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@777677 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4ca0c8eaee40c305e11c09005f6f4555be833fe4",
      "tree": "fdaf8d723fafb3c769ca63e9375c7f768ebf2464",
      "parents": [
        "eaa8d7e565a4ee4a1aa9357bebdaec023a540717"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue May 12 23:16:55 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue May 12 23:16:55 2009 +0000"
      },
      "message": "THRIFT-450. Don\u0027t use Ivy if log4j is already available\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@774132 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9aa716cf0f5fee6ebf549ef0949b0bbc2bf325dc",
      "tree": "cba6e817f3f7e5663f73e5688a23be7fec52ddd0",
      "parents": [
        "16514d0a724f9a7ad4a3fe7a854335f949ba25fa"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon May 11 18:09:24 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon May 11 18:09:24 2009 +0000"
      },
      "message": "THRIFT-493. java: Stopping TNonblockingServer when it hasn\u0027t been starting results in an exception\n\nCheck if the server is null before trying to stop.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@773632 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "787538943be3c40a55b971c47882e8b19d4b5823",
      "tree": "a7c27580d3118ce81a625f2f642638c94ddfe18c",
      "parents": [
        "b7b8af9e61991101f3a944032206f5add7d0649d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 06 17:22:11 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed May 06 17:22:11 2009 +0000"
      },
      "message": "THRIFT-482. java: build.xml does not specify a target version for compiled java classes\n\nThis patch updates the build file to target java 1.5.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@772373 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "36a5a25a211f7b11c005676bf5c0f359e94677b4",
      "tree": "716d948664d00876c3c8abd703ebc2c713a4df9a",
      "parents": [
        "62a3fba792eaa486b0848452b547b119cf4901aa"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Apr 29 23:20:56 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Apr 29 23:20:56 2009 +0000"
      },
      "message": "THRIFT-453. java: By default, use Ivy to download Java dependencies\n\nbuild.xml will now download Apache Ivy into the build tree.  Ivy will\nthen be used to download the other Java dependencies: log4j and Apache\nCommons Lang.  This achieves the goal of allowing the Java library to be\nbuilt from a clean checkout, without requiring users to manually obtain\ndependencies or checking external binaries into the source tree.\n\nThe Ivy behavior (except for a few mkdir calls) can be inhibited by\npassing -Dnoivy\u003d on the ant command line (or in a property file).  In\nthis case, log4j must be available in the user\u0027s CLASSPATH.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@769995 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5a5608893018529dfa5dba66070b26d7b33e9d7b",
      "tree": "2ec7e3e37c046970e929d9bcbfe0c288ef2151e3",
      "parents": [
        "ebb6cc4cf1345aee0f64e400a3d4c08a93cfe96c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 10 17:20:51 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Apr 10 17:20:51 2009 +0000"
      },
      "message": "THRIFT-416. java: java.util.logging eats exceptions without warning\n\nThis patch switches the logging framework to log4j and updates all the server implementations accordingly.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@763981 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "def30a60723625ebb5e884fdf259aeeb24346d15",
      "tree": "03cc17d38ce4d460d2728a83e6caa77650bc5d5f",
      "parents": [
        "9e4c04125e4e4e113ceba64116acfccd7a8f7f04"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Apr 08 00:19:37 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Apr 08 00:19:37 2009 +0000"
      },
      "message": "THRIFT-387. Add appropriate Apache header to all code files\n\nThis hits all the documentation and some misc code files that have avoided the license up to this point.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@763048 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": "deda141392d0b242e1fce0c0682ceedb45642a18",
      "tree": "b3341930bc7cc0965fa6d725f728774fae8c361c",
      "parents": [
        "b5714ef91ec7210c65e07c8d635c224795f22919"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:22:31 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 19:22:31 2009 +0000"
      },
      "message": "THRIFT-388. Create a \"ONEWAY\" message type that is an alias for \"CALL\"\n\nPave the way for a new message type for oneway function calls.\nFor now, just define the constant in all languages and make\nserver implementations treat it the same way as a normal call.\nOnly C++ and Erlang currently check the message type (on the\nserver side).\n\nThere is a little bit of redundancy in the Erlang code, but\nthe alternative is a bit gross, and this split-up will be\nnecessary eventually when we start handling one-way calls\ndifferently.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@761389 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b5714ef91ec7210c65e07c8d635c224795f22919",
      "tree": "979dbdbff326b9bc8260c29c436ddff3a34a68f8",
      "parents": [
        "5bd7192dc3277d348dcf23147a9f0d62520f0918"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 00:48:11 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Apr 02 00:48:11 2009 +0000"
      },
      "message": "Get rid of missing LICENSE files from some Makefile.am\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@761137 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": "6ce401dd555cf7928e1129d9ab31aa7be4bc7e9f",
      "tree": "6ee5161e938b5afd1b9b0dac5b4545af3d66e96b",
      "parents": [
        "c51986f43897a64531935653cb4a2462f6cd7e11"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:58 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:58 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in misc places\n\nThis is mostly an internal-only change.\nIt affects docstrings, messages, variables, test cases, etc.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757992 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c51986f43897a64531935653cb4a2462f6cd7e11",
      "tree": "da8728080bf9265c2aa6eb8d72877b384ea94c80",
      "parents": [
        "473292500dc553e537aad0544f9fbb31d0fbf3d0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:25 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:25 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in comments\n\nThis is an internal-only change.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757990 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "32e04b423d01e3d37ab72685407313da6a4416f6",
      "tree": "3091f1c09ac25f56ad756765a0aced540ae18fc0",
      "parents": [
        "fc30667671cfb9c1adbf03a797952d52d3d6f21a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 16:43:06 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 16:43:06 2009 +0000"
      },
      "message": "THRIFT-262. java: Generate Javadocs for library classes\n\nThis patch adds a \u0027javadoc\u0027 Ant target, and installs the documentation to ${docdir}/thrift/java (/usr/local/share/doc/thrift/java with the default invocation of configure). It also fixes a few Javadoc warnings in the source code.\n\nIt also modifies the \u0027dist\u0027 target to include the Java sources in the jar file, so that Eclipse may show the javadocs for Thrift classes automatically (this increases the size of libthrift.jar from 90 Kb to 155 Kb).\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@756603 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "13083d6d52d2b5bd3d5a9368a04503c5b21eabab",
      "tree": "dfc912718c5f9dbacfd395d1e5f8dd59e9fd9de6",
      "parents": [
        "afa1b47e60c4ffba554f6187d84fd20cd514f51d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 02:19:46 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 02:19:46 2009 +0000"
      },
      "message": "THRIFT-294. Remove @author tags\n\nThey\u0027re gone. Don\u0027t add any new ones!\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@756307 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d815c218c8c48ab7bd930aa0ea8913bc9b2ce872",
      "tree": "6344fafd1300682cd8a6822d19dc380c6a412fe1",
      "parents": [
        "00a8dd633c4ebdd2536b70901343d0beb36da0f1"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Mar 19 18:57:43 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Mar 19 18:57:43 2009 +0000"
      },
      "message": "THRIFT-332. rb: Compact Protocol in Ruby\n\nThis patch includes both a pure Ruby and C-extension port of the Compact Protocol described in THRIFT-110. It also fixes a bug in struct.c that was interfering with native protocol method calls, and adds some utility classes to the Java library for serializing/deserializing to a file for the purpose of testing protocols cross-language.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@756133 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "48141bf5a686453b7a1b5b5b506617669b7cc748",
      "tree": "fd2b33e0d42b71ac184e5eaa3732bfec82d66e64",
      "parents": [
        "4980910100f67b1353040529257825af946f8e6b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Mar 18 23:59:56 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Mar 18 23:59:56 2009 +0000"
      },
      "message": "THRIFT-373. Update lists of files to include in release tarballs\n\nThis is mostly EXTRA_DIST, but also includes some headers.\nI had to drill down into test because \"make dist\" builds some\nof the test code.  .gitignore is not included in the tarballs.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755791 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e8ee12242dbb8fa2d6189288f095b82912897316",
      "tree": "95a5eefdbec3099a6a67459751ae45b32bf7dac3",
      "parents": [
        "11727d2445573eab9fa86824ffcde9a3f5441b46"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 02:47:02 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 02:47:02 2009 +0000"
      },
      "message": "THRIFT-367. java: Some dead code in TNonblockingSocket.java\n\nAll the blocks of commented code are removed.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755463 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "0096b20883acf08c46389c8d232a49d8886074dc",
      "tree": "726dec1efc5ffe01f075f8feb8e116cd224e5ef2",
      "parents": [
        "56c48362202ef2f247f06c59e5824f2e979ab0a9"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 13 00:28:06 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 13 00:28:06 2009 +0000"
      },
      "message": "THRIFT-366. java: Lots of little warnings in java library\n\nThis cleans up imports, adds generic arguments where necessary, and puts OverloadNonblockingServer into the right package. \n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@753072 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d11f2411e204bbcf81bcd28dfa2897dbac7e2f01",
      "tree": "d64a50974c78b307ff569a74e24dec4f30fe5721",
      "parents": [
        "b139f64448f4ae89a24029f0588a494308e84e74"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Feb 19 21:21:44 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Feb 19 21:21:44 2009 +0000"
      },
      "message": "THRIFT-116. java: Isset fields for non-primitive types unnecessary\n\nThis patch gets rid of the __isset fields for non-primitives and updates ToStringTest and EqualityTest appropriately.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@746000 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c707855048258ab60e78d602509513b1394ec962",
      "tree": "9107eb9ede4489c3fb910045a7803be745664f08",
      "parents": [
        "538e344122315036f0abdd8f3fa89b7f9dd1d310"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 18:10:57 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 18:10:57 2009 +0000"
      },
      "message": "THRIFT-318. java: Performance of HashSet for enumeration VALID_VALUES seems poor\n\nInstead of a HashSet, enums will now use the special IntRangeSet implementation. \n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@743037 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": "bb7826da704c979257b280608f65c3a85bd6883d",
      "tree": "729344f397c17eff1248a63e0389ce26591529c4",
      "parents": [
        "d83e250838705ad23444a8e6cda6d0aab5ef2e5b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 08 00:12:38 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 08 00:12:38 2009 +0000"
      },
      "message": "THRIFT-10. java: Descriptors used during serialization should be immutable objects\n\n-Descriptor classes all have final members, making them immutable.\n-Generated structs now have static constant versions of their TStruct and TField descriptors, and will be used during writing.\n-Protocols that can benefit use static constants for various common returned descriptors.\n-A duplicate FieldMetaData.java that should have been removed previously was also removed.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741984 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d83e250838705ad23444a8e6cda6d0aab5ef2e5b",
      "tree": "4ce6a171f5332bab08f970639b8773fc7c1f3a0b",
      "parents": [
        "f28f82631abd81f312a505214adc9bffe427db06"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 20:06:09 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 20:06:09 2009 +0000"
      },
      "message": "THRIFT-321. java: THRIFT-303 broke EqualityTest\nRegenerated test code.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741952 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": "d20a1d3619efa9edef51364d927bc9a78b37217f",
      "tree": "cee043777c8ddd6e8d2660e435e6bd73110e83eb",
      "parents": [
        "d73774f53e3c48da30eaafc625a629764f9d699f"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 01:08:58 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 01:08:58 2009 +0000"
      },
      "message": "THRIFT-303. java: Changes to __isset interface\n\nThis patch makes __isset always private and adds a method per field to set the __isset state when not using the bean-style generator.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741805 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ],
  "next": "d73774f53e3c48da30eaafc625a629764f9d699f"
}
