)]}'
{
  "log": [
    {
      "commit": "82e6fc0266e21905358e286074437c7c17cafadc",
      "tree": "e24f3c35c03bec49518689dc61c1de51105227f5",
      "parents": [
        "4a05434d0b007d412ffc363e2d6e574f25d59315"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 23:32:36 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 23:32:36 2009 +0000"
      },
      "message": "THRIFT-153. Proper handling of strings with escapes (in IDL)\n\n- Recognize and parse escape characters in .thrift files.\n- Escape strings used as constants in generated source files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758922 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4a05434d0b007d412ffc363e2d6e574f25d59315",
      "tree": "1f5f7c67fb11d41229c722327a44e0a8dfa57fb3",
      "parents": [
        "8852720e70e77669fa5ffff494dd641f6fff06f2"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 23:32:27 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 23:32:27 2009 +0000"
      },
      "message": "Make vim recognize that \"thriftl.ll\" is Lex source\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758921 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "885c82d75a7c08f0679b11ddf943710828d0251d",
      "tree": "68fd9e5865e036cb43fbff92e5877499faa5cd30",
      "parents": [
        "39aa00d2e0e978cb7da1caf7c201e26ea33cdb97"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 08:40:55 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 08:40:55 2009 +0000"
      },
      "message": "THRIFT-282. Generate doccstrings for Python classes\n\nDocstrings are generated for\n  - enums (but not enum members)\n  - structures and structure fields\n  - service interfaces\n  - functions and function arguments\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758558 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "39aa00d2e0e978cb7da1caf7c201e26ea33cdb97",
      "tree": "254dd751c012d3bc0e4d1f3bf765c3f818aa4f8c",
      "parents": [
        "abb56a4a0dbeaedf0e71cf206db8e7e16932ab6b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 08:40:18 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 26 08:40:18 2009 +0000"
      },
      "message": "THRIFT-282. Move generate_docstring_comment to t_generator\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@758556 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cecbed81c806e40ca0342d7b8e265d2bf55a2f04",
      "tree": "38ddbb663b7a4b86d70d218eb25a8d7d696dabe2",
      "parents": [
        "fe931d152695950fe1115abcc2bd779a96be239a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:02:22 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:02:22 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in the Thrift IDL\n\nThis is the real change.  The lexer now recognizes \"oneway\"\nand warns on \"async\".  All example and test IDLs have been\nupdated, as have the syntax files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757994 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fe931d152695950fe1115abcc2bd779a96be239a",
      "tree": "a127cfc6eefa6d12ae901c947c29b80a09a24d20",
      "parents": [
        "6ce401dd555cf7928e1129d9ab31aa7be4bc7e9f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:02:08 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:02:08 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in Erlang\n\nThis is kind of a bummer because it requires a simultaneous\ncode regeneration and library upgrade, and possibly also a\nserver restart.  I\u0027m not sure if it is worth it, since the\nonly benefit is a little code clarity.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757993 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": "473292500dc553e537aad0544f9fbb31d0fbf3d0",
      "tree": "d88470783e72f6010d7af0bf4d4ae06c0ce45b0d",
      "parents": [
        "6985a4205b4a4aa18e580025134726e34269aecf"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:02 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:01:02 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in compiler variables\n\nThis is an internal-only change.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757989 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6985a4205b4a4aa18e580025134726e34269aecf",
      "tree": "00275c88b4e58556671561893cc497d7f4789c2f",
      "parents": [
        "9a863ee551ffc75224113a2095ee5f2468f843ca"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:00:47 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Mar 24 20:00:47 2009 +0000"
      },
      "message": "THRIFT-136. s/async/oneway/ in lexer and parser variables\n\nThis is an internal-only change.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757988 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4798a7ad12f3c1a0cea7495bbbbc7d3e253601d8",
      "tree": "dfd4dd1a303a7babf47b7bcb7d4587aaacbcddf4",
      "parents": [
        "38c8b5b92a45d050e235b2231a25ce7c13cd4361"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 15:56:19 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 15:56:19 2009 +0000"
      },
      "message": "THRIFT-399. hs: Fix set and number issues in generated constant code\n\nAuthor: Spiridon Eliopoulos\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757864 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "38c8b5b92a45d050e235b2231a25ce7c13cd4361",
      "tree": "112e51846d5de8bd6c39a5a2c2a7ceb226671370",
      "parents": [
        "db3a83a799de34c85fd1330b9833c7ca0af2c359"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 14:51:51 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 14:51:51 2009 +0000"
      },
      "message": "THRIFT-398. hs: Remove unnecessary parens from generated type annotations\n\nAuthor: Spiridon Eliopoulos\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757825 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "db3a83a799de34c85fd1330b9833c7ca0af2c359",
      "tree": "746b4a5cd9d1c472b4712a933d7a3a7e8f34f29d",
      "parents": [
        "e8ae5d3728de07e880d6477db0f63ed9a7c65415"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 14:47:31 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 24 14:47:31 2009 +0000"
      },
      "message": "THRIFT-397. hs: Remove unnecessary redefinition of generate_program()\n\nAuthor: Spiridon Eliopoulos\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757824 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2ad9eb7c5ec9db4c9c9ca334e7f04959154db56b",
      "tree": "6570f1808d054666a516131e3bd2961804c5848e",
      "parents": [
        "261441c0afdc467db012ca4506ecca352dca513b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:43:33 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:43:33 2009 +0000"
      },
      "message": "THRIFT-382. java:  Unused imports in generated code\n\nRegrouped some of the imports and removed ones that will never be used.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757623 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f3c83cf88e2a1978d68b1e74dbd7d7b04569dfd5",
      "tree": "45a2865f6b14d6fdee28e412f27f4dd20ff3d1d3",
      "parents": [
        "ff58a9aecde963cb1a4c8214f6516796f694b5cb"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:34:16 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:34:16 2009 +0000"
      },
      "message": "THRIFT-385. hs: 64-bit integer and double types incorrectly serialized on 32-bit platforms\n\nUse 64-bit types where appropriate.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757619 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "ff58a9aecde963cb1a4c8214f6516796f694b5cb",
      "tree": "c688619002bf14f512886d1fff376ea61d9e3300",
      "parents": [
        "4287c36aabd6abcb99a12d667a6f9604ad89a124"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:28:40 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 24 00:28:40 2009 +0000"
      },
      "message": "THRIFT-266. erlang: Erlang atoms must always start with lower-case character\n\nForces first char of atom to lowercase for struct fields.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@757617 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": "afa1b47e60c4ffba554f6187d84fd20cd514f51d",
      "tree": "bd439a4520833ae34ecaf12d410c6dd98ae67323",
      "parents": [
        "ae0631a844968eefd10aa00863b0c26fc1f54b83"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 01:51:16 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 20 01:51:16 2009 +0000"
      },
      "message": "THRIFT-245. rb: FIELDS constant should contain name of enumerated type for enum fields\n\nThis patch adds the :enum_class key to FIELDS entries that are enums. \n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@756295 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1f804a80c2d677b8d7aa3f60f6146b7246a55edf",
      "tree": "8264ac4aba843a5efba0fba5c24922f56b1fe4ce",
      "parents": [
        "d815c218c8c48ab7bd930aa0ea8913bc9b2ce872"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 19 20:33:15 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 19 20:33:15 2009 +0000"
      },
      "message": "THRIFT-384. csharp: Fix handling of fields named \"value\"\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@756179 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "00a8dd633c4ebdd2536b70901343d0beb36da0f1",
      "tree": "cc854b0deeaf975f70d85ee80f667b40ba1cf3bf",
      "parents": [
        "cbcd63ab4984336ecebae485bd8b3186a0444d39"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 19 08:14:12 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Mar 19 08:14:12 2009 +0000"
      },
      "message": "THRIFT-361. Use separate negative id counters for arguments and exceptions\n\nNOTE:\nThis will break wire-compatibility, but only with functions that have\nboth negative-id arguments and negative id-exceptions, and only in the\nexceptional case.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755870 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3696d643d0bf233fc2b57e5941cf8d416999a166",
      "tree": "3b85b27ac9df42325cea9e8e9b36816cc2a603ed",
      "parents": [
        "e8ee12242dbb8fa2d6189288f095b82912897316"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 03:14:56 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 03:14:56 2009 +0000"
      },
      "message": "THRIFT-379. java: Print enum value names\n\nThis patch adds a new generated map of enum values to their respective names to each generated enum class, and then consumes that in the toString method to print the names when possible.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755464 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "97592b40b1ae6d00911ab5e76dd951b011c63863",
      "tree": "2daf48fb6b104f262879071f19177c7146fdb57d",
      "parents": [
        "65f7e60b7b259c5b8893a243679604d869cc97a2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 01:50:50 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 18 01:50:50 2009 +0000"
      },
      "message": "THRIFT-278. java: #validate exceptions should contain the offending value\n\nThis patch causes validate to throw exceptions that contain the bad field value as well as the field name. I had to modify it slightly from the patch on the issue to conform with the new style isset checks.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755454 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "65f7e60b7b259c5b8893a243679604d869cc97a2",
      "tree": "e7e15cfdd0112f4ffe265de4ddbbec95ec8fe410",
      "parents": [
        "45d56965c29850ae8d86b7d822ee8f3169ab57f1"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 17 21:55:36 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Mar 17 21:55:36 2009 +0000"
      },
      "message": "THRIFT-365. html:  HTML compiler infinite loop\n\nTrivial fix for 64-bit systems.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@755413 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "42336c19b2a34708feb4bcddd5cde083cabb0d0d",
      "tree": "564048dc1996cc06ddc3ccd0ee22ea3201121232",
      "parents": [
        "0096b20883acf08c46389c8d232a49d8886074dc"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 13 18:28:40 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Mar 13 18:28:40 2009 +0000"
      },
      "message": "THRIFT-368. java: setFieldValue should allow nulls for all field types\n\nAfter this patch, setFieldValue will treat a set with a null as an unset.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@753337 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "56c48362202ef2f247f06c59e5824f2e979ab0a9",
      "tree": "173e48fb19000d9437dccb0630e1e1e5f370cc6a",
      "parents": [
        "e3c3d19c7ad23ec7636f1da1a039d4c826b8fe80"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 11 23:40:57 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Wed Mar 11 23:40:57 2009 +0000"
      },
      "message": "THRIFT-364. java: Use of enums in other namespaces breaks java generated code\n\nThis patch checks for different namespaces and prefixes appropriately.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@752696 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e3c3d19c7ad23ec7636f1da1a039d4c826b8fe80",
      "tree": "e20f209094d8837e579bbc3db42577b79a1d6ad4",
      "parents": [
        "3637645c9e2804fdca98c9ac70786c40efec07c2"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 07 03:08:37 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Mar 07 03:08:37 2009 +0000"
      },
      "message": "THRIFT-359. java:  nocamel style breaks generated services\n\nThis patch makes the generated code respect the nocamel option.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@751180 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f4d6fa408ff8a6d52e69fe9a1d26f94822fc4576",
      "tree": "64bde735a3d53adb2988b21904062b27be3a7dce",
      "parents": [
        "022b224ebdd932bb8e4fe54beea02589c3661b8b"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Mar 05 23:11:37 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Mar 05 23:11:37 2009 +0000"
      },
      "message": "THRIFT-358. ruby:  Change how external thrift files\u0027 generated code is required\n\nGenerated code that relies on included thrift files now doesn\u0027t assume the path will be the same.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@750667 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "af99b5c398bddbc70136e123135a912a3a342741",
      "tree": "a1bbbc035399900233af6cc65a5434c872d25650",
      "parents": [
        "c289608e1928cc8c6db482aafe7262a428b6f32e"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Wed Mar 04 21:42:46 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Wed Mar 04 21:42:46 2009 +0000"
      },
      "message": "THRIFT-352. rb: Implicit enums should be valid values\n\nAuthor: Gary Tsang\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@750171 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c289608e1928cc8c6db482aafe7262a428b6f32e",
      "tree": "242f95e1f480e5ff1a84f78259366a0cc42f01c7",
      "parents": [
        "5ace1780abe8f62e6e6be789ae53637f3a35b195"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Wed Mar 04 21:32:54 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Wed Mar 04 21:32:54 2009 +0000"
      },
      "message": "THRIFT-353. rb: Capitalize module names on ruby generation\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@750160 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "120ff31d11a077c3ba7dc981762f35392e6c93fb",
      "tree": "5ed4c87c828b0faa7d92e15e0ad4767a7a7110fb",
      "parents": [
        "6b40711896d28613cebcc484eed4be69e75c23d4"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 02:25:50 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Mar 03 02:25:50 2009 +0000"
      },
      "message": "THRIFT-148. py: Add support for Twisted\n\nAuthor: Esteve Fernandez\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@749510 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f4c71c73d0d3438d5eb8c72dc889fb292bc23cc8",
      "tree": "01ff7f82162c21ab9b1f2bc2464b601edde7cba4",
      "parents": [
        "f9d105c51997d0cc77ab5c30e3f1616359026fde"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Feb 23 17:49:24 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Mon Feb 23 17:49:24 2009 +0000"
      },
      "message": "THRIFT-116. java: Isset fields for non-primitive types unnecessary\n\nPrior commit on this issue was missing a !.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@747090 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f9d105c51997d0cc77ab5c30e3f1616359026fde",
      "tree": "faec138bd55ac8ae09952759357e0006699e12a3",
      "parents": [
        "d11f2411e204bbcf81bcd28dfa2897dbac7e2f01"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 21 01:57:46 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 21 01:57:46 2009 +0000"
      },
      "message": "THRIFT-116. java: Isset fields for non-primitive types unnecessary\n\nMissed one of the cases where isset was being used on non-primitive fields.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@746429 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": "554ea6f936c3ad2c3317e6ba94356c65b088536f",
      "tree": "35b0bd685146e7c8d35840ab2f2014fb144c0f4e",
      "parents": [
        "32272d9bd81f3d05b2dbfd3f504b29aeb9289964"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:37 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:37 2009 +0000"
      },
      "message": "Make the PHP generator use non-hardcoded namespaces.\n\n- Make the PHP generator use program-\u003eget_namespace(\"php\")\n  instead of program-\u003eget_php_namespace()\n- Eliminate the explicit \"php_namespace\" in t_program.\n- Deprecate the php_namespace token.\n- Update example .thrift files and syntax files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745241 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "32272d9bd81f3d05b2dbfd3f504b29aeb9289964",
      "tree": "e8c2cebf787793b3c4f8b003f44cc867f2d148a0",
      "parents": [
        "bba692833dd045d2d60a4d3fd7ae52723258fc05"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:30 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:30 2009 +0000"
      },
      "message": "Allow the Thrift compiler to be built without the PHP generator.\n\n- Use AX_THRIFT_GEN to make configure support --disable-gen-php\n- Update the compiler Makefile.am to exclude the generator.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745240 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bba692833dd045d2d60a4d3fd7ae52723258fc05",
      "tree": "4fe24dd3fa4f62453051952ac09bf96d9b1a8028",
      "parents": [
        "a9ea68b907fe5fc2f5f06ba742e9fc1d849c7775"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:28 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:28 2009 +0000"
      },
      "message": "Remove t_php_generator.h.\n\nt_php_generator.h is no longer included anywhere, because\nthe PHP generator uses the new dynamic generator framework.\nTherefore, we can collapse the class definition into the .cc file.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745239 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a9ea68b907fe5fc2f5f06ba742e9fc1d849c7775",
      "tree": "dae28bf0f35f3226d45aa1bdbb20e552f8b3fd52",
      "parents": [
        "92e10d829778b21cfa9d1b38242704ca1392b7ab"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:24 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:24 2009 +0000"
      },
      "message": "Make the PHP generator dynamic.\n\n- Modify the PHP generator constructor to fit the new generic interface.\n- Register the PHP genrator with the central registry.\n- Deprecate the old way of invoking the PHP generator.\n- main.cc no longer includes t_php_generator.h.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745238 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "92e10d829778b21cfa9d1b38242704ca1392b7ab",
      "tree": "7e67498fd7312aac26b651812b63809d365d4c25",
      "parents": [
        "782cb67a3b90c85efeb6d23badab9ddbe18987b6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:19 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:19 2009 +0000"
      },
      "message": "Make the XSD generator use non-hardcoded namespaces.\n\n- Make the XSD generator use program-\u003eget_namespace(\"xsd\")\n  instead of program-\u003eget_xsd_namespace()\n- Eliminate the explicit \"xsd_namespace\" in t_program.\n- Deprecate the xsd_namespace token.\n- Update example .thrift files and syntax files.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745237 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "782cb67a3b90c85efeb6d23badab9ddbe18987b6",
      "tree": "ab756ffec17cdb29503f4ba08e88e26e41db2b9c",
      "parents": [
        "3ac5b6aa85b5d1526b22518045c756b4027e6d7c"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:13 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:13 2009 +0000"
      },
      "message": "Allow the Thrift compiler to be built without the XSD generator.\n\n- Use AX_THRIFT_GEN to make configure support --disable-gen-xsd\n- Update the compiler Makefile.am to exclude the generator.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745236 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "3ac5b6aa85b5d1526b22518045c756b4027e6d7c",
      "tree": "167ffb23601149d3f0ed8ac6cec61d85246f1432",
      "parents": [
        "4ba6710ea1a9bfb3def8aeeccb38c32b110098a8"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:10 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:10 2009 +0000"
      },
      "message": "Remove t_xsd_generator.h.\n\nt_xsd_generator.h is no longer included anywhere, because\nthe XSD generator uses the new dynamic generator framework.\nTherefore, we can collapse the class definition into the .cc file.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745235 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4ba6710ea1a9bfb3def8aeeccb38c32b110098a8",
      "tree": "7baece5a2f00edf5279b05ac4e59917f7103bd9d",
      "parents": [
        "f3b0db3735f4f441eedc46548c96199eba3e2486"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:06 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:06 2009 +0000"
      },
      "message": "Make the XSD generator dynamic.\n\n- Modify the XSD generator constructor to fit the new generic interface.\n- Register the XSD genrator with the central registry.\n- Deprecate the old way of invoking the XSD generator.\n- main.cc no longer includes t_xsd_generator.h.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745234 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f3b0db3735f4f441eedc46548c96199eba3e2486",
      "tree": "63bde739b918312c6ff800425226b06965489b75",
      "parents": [
        "9f16d785531a408cc48d8bb0e63b6b6058c55d59"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:01 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:28:01 2009 +0000"
      },
      "message": "Allow the Thrift compiler to be built without the Erlang generator.\n\n- Use AX_THRIFT_GEN to make configure support --disable-gen-erl\n- Update the compiler Makefile.am to exclude the generator.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745233 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9f16d785531a408cc48d8bb0e63b6b6058c55d59",
      "tree": "e5e853df887835915a34be706ec95044b1953700",
      "parents": [
        "a204783a0625eb9cc8bdfe5ee86e31251b563369"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:58 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:58 2009 +0000"
      },
      "message": "Remove t_erl_generator.h.\n\nt_erl_generator.h is no longer included anywhere, because\nthe Erlang generator uses the new dynamic generator framework.\nTherefore, we can collapse the class definition into the .cc file.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745232 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "a204783a0625eb9cc8bdfe5ee86e31251b563369",
      "tree": "690d825d2cd20d8bc868544f590414848431cf77",
      "parents": [
        "bbbbe880a08517a1b34f1526381e077b5a2168f6"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:54 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:54 2009 +0000"
      },
      "message": "Make the Erlang generator dynamic.\n\n- Modify the Erlang generator constructor to fit the new generic interface.\n- Register the Erlang genrator with the central registry.\n- Deprecate the old way of invoking the Erlang generator.\n- main.cc no longer includes t_erl_generator.h.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745231 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "bbbbe880a08517a1b34f1526381e077b5a2168f6",
      "tree": "fc59633807d9c5af941cae919242e502b2fe499b",
      "parents": [
        "fdd8b5ab013be680eca7d6a241e6ebb39be0ff7c"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:48 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Feb 17 20:27:48 2009 +0000"
      },
      "message": "THRIFT-325. Include t_generator.h in main.cc\n\nI\u0027m about to remove all of the generator includes, but we\u0027ll still need\nthe generic header for the generator registry and interface.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745230 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d831a21773d789fae1b1d0b52b3d6378f377b8b1",
      "tree": "2c1351cebde6a104134c49066435dcfb6f4cabc5",
      "parents": [
        "067c9aff285f3922d3e13b46ca52e4ec8c68b586"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Feb 13 03:09:52 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Feb 13 03:09:52 2009 +0000"
      },
      "message": "THRIFT-309. Make Thrift\u0027s C# mapping .NET 2.0 (Mono 1.2.4) compatible\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@743963 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "30e1de9fd5c11e5df3fc3673620ccac3299d8b86",
      "tree": "e259f2898f9ad7a1626e3b7c95736bd67ed5abeb",
      "parents": [
        "c707855048258ab60e78d602509513b1394ec962"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 18:36:56 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 10 18:36:56 2009 +0000"
      },
      "message": "THRIFT-316. java: @Override isn\u0027t generated for hashCode() without the hash code builder\n\nFixed with a trivial reorganization of the hashCode method generation.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@743046 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": "6ad6251951598e88f87245e325e29e31ba7126d2",
      "tree": "fd47ec9dc0287cc29c737503bdb0e3d1fa1a0edb",
      "parents": [
        "bb7826da704c979257b280608f65c3a85bd6883d"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 08 22:46:38 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 08 22:46:38 2009 +0000"
      },
      "message": "java: Fix a minor formatting problem in the gen-code\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@742192 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": "f28f82631abd81f312a505214adc9bffe427db06",
      "tree": "9a7b3bc895bff6fc657d451caff59e69f6d4088f",
      "parents": [
        "a7fc092ee1e0f77b818b0e4bcc8954f9f746b21a"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 17:17:43 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sat Feb 07 17:17:43 2009 +0000"
      },
      "message": "THRIFT-159. csharp: Compiler doesn\u0027t add package scope to exceptions in catch blocks and assigns to unused local var when reading\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@741917 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": "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"
    },
    {
      "commit": "3d0abc36a9921fb42601a0738bf686a1acce0798",
      "tree": "22ec29e6d294cfcbbc8d74f0ab9d7afdc062bc98",
      "parents": [
        "1e80d4465a01869b7455b31f53a0aff42d939f6d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 03 19:18:57 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 03 19:18:57 2009 +0000"
      },
      "message": "THRIFT-132. ruby: Ruby generator should use ::Thrift::Foo namespace form\n\nAll of the Thrift library includes now prefix with ::.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@740377 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f5383b663ecbfdf46d3a76553bfb3db3ea0af228",
      "tree": "936af701d31c7d267948897534b3ecdb6cf2cd38",
      "parents": [
        "dc9092ab1a2953c282b1add4a2500467eb9e3c9d"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 03 00:49:25 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Feb 03 00:49:25 2009 +0000"
      },
      "message": "THRIFT-297. java: getFieldValue and setFieldValue should be abstract TBase methods\n\nThis patch makes getFieldValue, setFieldValue, and isSet TBase interface methods, and adds all the previously beans-only getters and setters to all Java generated classes. \n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@740169 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "056bcb69477a12381bdb007debf55e654c1be257",
      "tree": "5114e51ed80921f24f66c199a70c2d0e97b5e3b7",
      "parents": [
        "7003f876edf2aa4aef5e2550852cb707e9e6d57c"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 01 16:56:29 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Sun Feb 01 16:56:29 2009 +0000"
      },
      "message": "THRIFT-178. java, csharp, cpp: Final Keyword\n\nThe lexer has been changed to make \"final\" a non-reserved word, and the java, csharp, and cpp compilers now look for the final annotation and amend their class declarations appropriately.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739788 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c2c8ad8f0b14d53b06d53e062eadfe5e4868c9f8",
      "tree": "150c9ea46170cb6ac334a69ec2ba46bc54bb3e1b",
      "parents": [
        "1952e5494db6b773df6012de2d6ed889301a8d7b"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 01 05:36:10 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 01 05:36:10 2009 +0000"
      },
      "message": "THRIFT-259. html: Generate \"extends\" link for extended services\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739700 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "4704d4383c6e50a3231f0e5bc1fe866727bf23d4",
      "tree": "dedfce0bebb4e20014123975a579f80325f6ec7a",
      "parents": [
        "b5e6221eb5cbabab25d5c9badb7262b15c42cfdd"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 01 00:42:10 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Sun Feb 01 00:42:10 2009 +0000"
      },
      "message": "THRIFT-285. python: Don\u0027t generate _result structs for async functions\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739668 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b5e6221eb5cbabab25d5c9badb7262b15c42cfdd",
      "tree": "b215dc9387b4b9e7cb454e0306fbe66ac0b2d42e",
      "parents": [
        "3fa89e33f3e7e76a2f79546c72d1728492f12bef"
      ],
      "author": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Sat Jan 31 22:36:20 2009 +0000"
      },
      "committer": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Sat Jan 31 22:36:20 2009 +0000"
      },
      "message": "THRIFT-270: change cpp namespaces from facebook::thrift to apache::thrift\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739644 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "796381d857f3a51fd1b059200425c84326cbcfe3",
      "tree": "d82aaaab6bdc0125a06891a13975080af2a1347f",
      "parents": [
        "50119f15aa034f5dde7113df112e6694246cfa76"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 22:13:56 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 22:13:56 2009 +0000"
      },
      "message": "THRIFT-290. java: Metadata map doesn\u0027t properly reference external thrift file\u0027s types\n\nThe code generator now uses full namespaces to refer to the classes.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739045 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "9f427ee0e14fbc3a1e3c91a9f423bcbd8648e407",
      "tree": "30b8326e53f70f0b551692f999e046eed75af57d",
      "parents": [
        "1f6302fab0f338547c3a8bbb24b2ea548a9b6550"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 05:47:21 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 05:47:21 2009 +0000"
      },
      "message": "THRIFT-288. java: Generated code iterates maps during write inefficiently\n\nNewly generated code will now use entrySet instead of keySet when serializing maps. Existing generated classes does not need to be regenerated, though they won\u0027t reap the performance improvements unless they do.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738765 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "1f6302fab0f338547c3a8bbb24b2ea548a9b6550",
      "tree": "200c82764d5d99f6138765d38feb2f501a5b24ee",
      "parents": [
        "986d705578f7c3189b076b43097da0ff2f5d648e"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 05:38:10 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 05:38:10 2009 +0000"
      },
      "message": "THRIFT-218. java: When validation fails on serialization/deserialization, print out the invalid object\n\nThe error thrown when validation fails now contains the toString output.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738764 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "986d705578f7c3189b076b43097da0ff2f5d648e",
      "tree": "7aee1c12f09a9446067864ccbef6a5f108647adb",
      "parents": [
        "9a75aa51922c53d2dd010cbf962bdcd2302833aa"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 01:51:08 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 29 01:51:08 2009 +0000"
      },
      "message": "THRIFT-253. java: Enhance FieldMetaData\n\nThe code generator new creates a static map of field id to metadata for each field, including information like the field TType, class of embedded structs, required/optional/default, etc. Additionally, on loading, generated classes statically register their class and metadata map with the global FieldMetaData map, so you can get the metadata for any TBase-implementing class easily.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738708 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "369417a5f15b54738d4954908fbb4908b8603295",
      "tree": "8cfe2c3d327d19182db4f322f4a86adcb7ee81bb",
      "parents": [
        "8bb593e69a639246e56c4ee547f53e4269133d10"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 27 22:09:33 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 27 22:09:33 2009 +0000"
      },
      "message": "THRIFT-239. java: Generate @Override annotations for all overrided methods\n\nequals, toString, clone, and hashcode now all have a preceeding @Override annotation.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738270 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8bbd8447b9de8a31ce50e6611d8f513d281897a3",
      "tree": "8f2206f458368c51737221058dae8a8045b256ab",
      "parents": [
        "46b77c4be6c0cbd336f4e4501b9722de6ce25666"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 20 01:54:14 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Tue Jan 20 01:54:14 2009 +0000"
      },
      "message": "THRIFT-223 Validate method should check that enum types are assigned valid values\n\nEnum classes now get a VALID_VALUES Set that contains all of the acceptable values. Structs\u0027 validate() method has been extended to compare an enum field\u0027s value to the valid value set, but only if the __isset flag for that field is true, meaning that non-beans generated code will not perform this validity check unless the __isset flag is manually maintained.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@735910 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "46b77c4be6c0cbd336f4e4501b9722de6ce25666",
      "tree": "51fb2d4b2d6dc89f85c20528c88280971e0091f9",
      "parents": [
        "9c983c2db0856293715fe64bd84272bf3fbdfb87"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 16 22:34:40 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Fri Jan 16 22:34:40 2009 +0000"
      },
      "message": "THRIFT-224 Validate method should check that enum types are assigned valid values\nEach generated enumeration type will now have a VALID_VALUES Set as a static member that contains all the values of the enumeration.\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@735167 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "afa80ea73d4cbf83afee807e5d9f9034fa177ade",
      "tree": "a770bab388608fef36e407fa83511d1c4ad0b5b4",
      "parents": [
        "c85fd50e2b3308e84345e5e0045507c20e6c5626"
      ],
      "author": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 15 23:47:51 2009 +0000"
      },
      "committer": {
        "name": "Bryan Duxbury",
        "email": "bryanduxbury@apache.org",
        "time": "Thu Jan 15 23:47:51 2009 +0000"
      },
      "message": "THRIFT-34 Java libraries should be namespaced under org.apache.thrift, not com.facebook.thrift\n\nLibrary classes and tests have been moved to the proper package and directory structure, and references to com.facebook.thrift where replaced with org.apache.thrift throughout the code. The fb303 contrib project still contains com.facebook packages.\n\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734855 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "46bb4aeb5e792b72810062f289151fde7d27a73b",
      "tree": "80efa4f7bd71d89e83b8a8d7d21873edc56834ae",
      "parents": [
        "7bcf866c16525ee7ca709e250178a61333db27c4"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Jan 14 22:34:15 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Jan 14 22:34:15 2009 +0000"
      },
      "message": "THRIFT-242. python: Used named arguments in __init__ instead of a dict\n\nThis is a wire-compatible but non-source-compatible change.\nWhen initializing structures, you must use\n\nFoo(bar\u003d1, baz\u003d\"qux\")\nFoo(**{\"bar\": 1, \"baz\": \"qux\"})\n\ninstead of\n\nFoo({\"bar\": 1, \"baz\": \"qux\"})\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734536 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7bcf866c16525ee7ca709e250178a61333db27c4",
      "tree": "e9779b861ff3e04637d0554dd4d2220f4242a815",
      "parents": [
        "c654416843d84a9bd43add0dbc4567920947ea73"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 20:54:27 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 20:54:27 2009 +0000"
      },
      "message": "THRIFT-249. java: Add @param lines to function docstrings\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732116 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "c654416843d84a9bd43add0dbc4567920947ea73",
      "tree": "cadd3e7d5f9ff601332cb3c50a6d987b22b76936",
      "parents": [
        "b0f31ef92fae72f60162b9ef03b498551d529cb5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:33 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:33 2009 +0000"
      },
      "message": "THRIFT-129. csharp: Make all Thrift structures extend TBase\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732081 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b0f31ef92fae72f60162b9ef03b498551d529cb5",
      "tree": "5445c707f1f961f759e36ee19235eea771c2ff07",
      "parents": [
        "6319133cacb49c815aa1783c129aa427c762b2fd"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:29 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:29 2009 +0000"
      },
      "message": "THRIFT-46. csharp: Throw the correct exception for an unknown method\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732080 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "6319133cacb49c815aa1783c129aa427c762b2fd",
      "tree": "d6af7dd2eee92f98de31d7671eac808eafafdbed",
      "parents": [
        "d6b7182df59ae7cb1849c36b5d9513fce681ce35"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:22 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Jan 06 19:49:22 2009 +0000"
      },
      "message": "THRIFT-25. csharp: Various compiler and library improvements\n\nCompiler:\n- Thrift structures are serializable.\n- The member fields of thrift structures are now private and only accessible\n  through Properties, which keep the appropriate __isset up to date.\n\nLibrary\n- Addition of TBufferedTransport, which can be used to wrap other Transports.\n- Addition of TThreadedServer, which manually manages threads instead of\n  relying on .NET ThreadPool.\n- Servers use a log delegate that defaults to System.Console but allows\n  servers to use log4net without introducing the dependency.\n\nThriftTest Visual Studio Project\n- Test client and server that use ThriftTest.thrift. The project references\n  thrift.exe and Thrift.dll from the subversion tree and automatically builds\n  generated code. This makes it very easy to test changes in both the compiler\n  and library.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732079 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "d6b7182df59ae7cb1849c36b5d9513fce681ce35",
      "tree": "1102c15a46d9ee4d84c0fb5889f4b5a84a3a44f9",
      "parents": [
        "41baeaba96302e480265542340532842bc5ab0c9"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Jan 06 01:34:28 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Jan 06 01:34:28 2009 +0000"
      },
      "message": "THRIFT-246. rb: Generate #struct_fields rather than reflect.\n\nAuthor: Bryan Duxbury\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731806 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "41baeaba96302e480265542340532842bc5ab0c9",
      "tree": "b8daa0f137876c6e8cb543f43654a3f06feef4ae",
      "parents": [
        "bcb4cf83e56ecbe5167d8c6ae79248c35020afe4"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Mon Jan 05 23:10:17 2009 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Mon Jan 05 23:10:17 2009 +0000"
      },
      "message": "THRIFT-157. rb: Quote strings and qualify class names properly\n\nAuthor: Dave Engberg\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731763 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "8eaebfedc12bfc95ba3069bf99fe73375b1f8152",
      "tree": "795b8b2265f03261e8ddc581485b5d296af27668",
      "parents": [
        "25be92bf0d9ef587f24696caf182788705fa1119"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:03:01 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:03:01 2009 +0000"
      },
      "message": "THRIFT-235. java: Explicitly cast integer constants to double\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731723 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "25be92bf0d9ef587f24696caf182788705fa1119",
      "tree": "03088539e7cf14c6b15f8d451944cc8e566987b4",
      "parents": [
        "2db737df8fa19f5fcb2f926b0fe2594f0154d7f4"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:58 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:58 2009 +0000"
      },
      "message": "THRIFT-222. java: Better exposure if __isset in beans style\n\n- Generate an isSet method for each field to test its set-ness.\n- Generate a generic isSet method that checks by field id.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731722 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "2db737df8fa19f5fcb2f926b0fe2594f0154d7f4",
      "tree": "bfe931bd4273bf18b4977e12ff969dcc60e4fed6",
      "parents": [
        "b936ffdbd1740fda3686cd71bdcb1f865b709d07"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:55 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:55 2009 +0000"
      },
      "message": "java: Add a helper function to implement nocamel style\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731721 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "b936ffdbd1740fda3686cd71bdcb1f865b709d07",
      "tree": "4bdfb54f86bb82c155b37bb79895ea0f26af6cf0",
      "parents": [
        "5455f00348b7cce553dc3f7bec40d297d112216a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:52 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:52 2009 +0000"
      },
      "message": "THRIFT-191. java: Create a static field id -\u003e name map for each struct\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731720 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "5455f00348b7cce553dc3f7bec40d297d112216a",
      "tree": "56a000e9765c911531f9bb314ef7a3df6363f977",
      "parents": [
        "888f88b05d25eb7b07541ed916f05234e1229138"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:48 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 21:02:48 2009 +0000"
      },
      "message": "THRIFT-138. java: Fix copy constructor for binary fields\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731719 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "888f88b05d25eb7b07541ed916f05234e1229138",
      "tree": "2d5057532ed64b61d99897f4498f068e2fea4a8c",
      "parents": [
        "41687fc6cfa179883da9b18d094ad56f6be669da"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 20:14:52 2009 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Mon Jan 05 20:14:52 2009 +0000"
      },
      "message": "THRIFT-241. python: Generate a better implementation of __repr__\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731685 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "41687fc6cfa179883da9b18d094ad56f6be669da",
      "tree": "d1dec0615edbbfde2855144dc7fd14430cf864a1",
      "parents": [
        "0d738890ba9236060c1c500c6f44ba1b7133b3d3"
      ],
      "author": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Tue Dec 23 03:45:43 2008 +0000"
      },
      "committer": {
        "name": "T Jake Luciani",
        "email": "jake@apache.org",
        "time": "Tue Dec 23 03:45:43 2008 +0000"
      },
      "message": "THRIFT-193: Patch for proper namespace support in perl compiler\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@728863 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": "a2309996679350a249beeac34efd65ff703f5b23",
      "tree": "907fff4f8a067c923c864f978b7452d3ec2b9b4e",
      "parents": [
        "322e595c2ac8a7ff4ef53cc472882d85e36000a0"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Dec 10 01:52:48 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Dec 10 01:52:48 2008 +0000"
      },
      "message": "THRIFT-121. Support arbitrary type annotations\n\nAdds syntax for attaching arbitrary key/value pairs to types.\nThese annotations can be accessed by individual generators to alter\nthe code they produce.\n\nThis version supports annotations on container types and structures.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@724954 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "603d50437cbe9c76be942f863f2db9526459fce2",
      "tree": "bdf10d0fdef2f8142d7b8eec5ad8e29d36ccec5e",
      "parents": [
        "04c315946c68034a51376bab368a4c4c2c8a8ba5"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Dec 02 02:06:31 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Dec 02 02:06:31 2008 +0000"
      },
      "message": "THRIFT-138. java: Create deep-copy constructors for Thrift structs\n\n- Create a copy constructor for every Thrift struct.  The constructor\n  performs a deep copy on the argument, resulting in no shared state.\n- Make thrift structions implement Cloneable and implement .clone()\n  using the copy constructor.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@722332 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "fd71808e35af5ba82a29320abfcbc30ef7fc6b87",
      "tree": "3ac913335ba84233283aafd2291f397abf541b64",
      "parents": [
        "e31b77e90e54709dfb0020cd5fe468c0998d6d81"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:55:52 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:55:52 2008 +0000"
      },
      "message": "THRIFT-142. java: Better handling of required fields\n\n- On reading, behave the same way as the C++ code:\n  throw an exception if a required field is missing.\n- In addition, throw an exception if a required field is missing\n  when writing.  For the JavaBeans code, this means that __isset\n  is false (because it is maintained automatically).  For non-beans\n  code, this means that the field is null.  Non-nullable fields are\n  not checked in non-beans code.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@719727 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "e31b77e90e54709dfb0020cd5fe468c0998d6d81",
      "tree": "fd6fd852d5cb59cc99d44618d7156d93ac7b82c7",
      "parents": [
        "30a9360e3ffd30afd5122af75cefa349a79e3aaf"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:36:41 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:36:41 2008 +0000"
      },
      "message": "THRIFT-194. cpp: Properlyl namespace exception types in catch\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@719721 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "30a9360e3ffd30afd5122af75cefa349a79e3aaf",
      "tree": "69ba0b47643c95ad6fe25e496ccd99d5bc17187f",
      "parents": [
        "7f5e184785f3e219b6e30436479ca3e7ae63ed12"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:31:36 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 21:31:36 2008 +0000"
      },
      "message": "THRIFT-172. java: Improve toString output for binary fields\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@719720 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7f5e184785f3e219b6e30436479ca3e7ae63ed12",
      "tree": "e4434c9030801376160cdca5bab7bc51783609c8",
      "parents": [
        "c26da0a391cc8ae4d7e2c54d088006c72f60a274"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 20:25:14 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Fri Nov 21 20:25:14 2008 +0000"
      },
      "message": "THRIFT-139. java: Fix indentation in beans mode\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@719701 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "466b3fafcdcc52aa6423738caf83676acc65f916",
      "tree": "9a3682625bbd8862505b5b8655c8382b4883e56a",
      "parents": [
        "8c28df256913e8c2fdfb64538ffcb7f9f4b9bd91"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Nov 20 21:24:32 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Thu Nov 20 21:24:32 2008 +0000"
      },
      "message": "Remove compiler/cpp/version.h in \"make clean\"\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@719380 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "031baf70860ade4096953d1c0838408ca0ecee96",
      "tree": "a6186c6273cfe4c995e5b9ab5d64bef5ba8647e0",
      "parents": [
        "713623bee6105f6b8ee946cecde4dd98847f6a2b"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Fri Nov 14 17:11:39 2008 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Fri Nov 14 17:11:39 2008 +0000"
      },
      "message": "Merge branch \u0027THRIFT-143\u0027\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@714070 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "159383f789651150ae33748d7d68ef22108d614c",
      "tree": "6d32b537b0d184dbe054fe13b474a16bff90faf1",
      "parents": [
        "74421273ad97359402556428f23afacfe31ce978"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Nov 11 05:46:04 2008 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Tue Nov 11 05:46:04 2008 +0000"
      },
      "message": "rb: raise if an object is serialized without required fields [THRIFT-143]\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@712945 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "cfca336fad004b6a41b13d02b3f1da86d2e7cae0",
      "tree": "63129af9aa7eaceca6fdf5ccba8b9374933dacd4",
      "parents": [
        "080991bf988ead697afed3d4567d30615609bf08"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Fri Oct 31 00:32:25 2008 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Fri Oct 31 00:32:25 2008 +0000"
      },
      "message": "rb: Add docstrings to generated ruby code [THRIFT-147]\n\nAuthor: Bryan Duxbury\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@709309 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f33e03c6fad10465ac4867b27c63a35cb2de0cbe",
      "tree": "97a500fd2af7feeecb4bd37e0da42959f7c2e7d8",
      "parents": [
        "f011bd4312a8b780a91ad011d6e1f16a36448af8"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 29 00:07:49 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 29 00:07:49 2008 +0000"
      },
      "message": "THRIFT-179. java: Include per-field docstrings in generated code\n\nThis also involves refactoring a bit of the functionality into\nt_oop_generator.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@708737 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "f011bd4312a8b780a91ad011d6e1f16a36448af8",
      "tree": "e00bf27f1b89e5ec5266a72dec1526bc653b1b40",
      "parents": [
        "babaea2f0f2700bd46760d06f35095f89cd33d57"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 29 00:07:45 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 29 00:07:45 2008 +0000"
      },
      "message": "Make t_field inherit from t_doc instead of reimplementing it\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@708736 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "66f5e9ba0bd9e4605c48913e29bd6bed79f5a579",
      "tree": "f237cbf97557417786c48975b4d731d804f45930",
      "parents": [
        "80096e278c9700d4dcbe1050aca8bef987cc425f"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 22 22:07:03 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 22 22:07:03 2008 +0000"
      },
      "message": "Make a pointer const to fix a warning\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@707213 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "80096e278c9700d4dcbe1050aca8bef987cc425f",
      "tree": "bcc2dce54cedb22cc2331f48699b95a1d80c6f37",
      "parents": [
        "ce426240abe65365c3cbc8a162e93a698b7949e1"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 22 22:07:00 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Wed Oct 22 22:07:00 2008 +0000"
      },
      "message": "Add a missing include to fix compilation on Ubuntu 8.10\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@707212 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "dc0aada96102265565368db6996ddb5cd37b5e3f",
      "tree": "bb9ada253de49d62824ac7cd4728be5085cf4697",
      "parents": [
        "826e648354c4e2e37abe5d8dda04e6497d76e16a"
      ],
      "author": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 21 00:09:23 2008 +0000"
      },
      "committer": {
        "name": "David Reiss",
        "email": "dreiss@apache.org",
        "time": "Tue Oct 21 00:09:23 2008 +0000"
      },
      "message": "THRIFT-173. Commit the html generator\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@706466 13f79535-47bb-0310-9956-ffa450edef68\n"
    },
    {
      "commit": "7dc7f75e7c15061e3dd6bf133bb837f1d96cc6b3",
      "tree": "f4263e369e88fb0eb73de5e0a4d876b060eb177d",
      "parents": [
        "6ca3881f518b093c8b21b6a94523151e05a0ecbc"
      ],
      "author": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Thu Oct 16 19:15:20 2008 +0000"
      },
      "committer": {
        "name": "Kevin Clark",
        "email": "kclark@apache.org",
        "time": "Thu Oct 16 19:15:20 2008 +0000"
      },
      "message": "rb: Create constants for field ids in generated structs [THRIFT-165]\n\nAuthor: Bryan Duxbury\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@705330 13f79535-47bb-0310-9956-ffa450edef68\n"
    }
  ],
  "next": "31997ca9ee2ac234358b3cb9dc5792d95efe0f19"
}
