)]}'
{
  "commit": "0931b1b1e133a612e05ff9b52297a179080229ed",
  "tree": "a78357dffc3e35e7666e5d5ba39574b49c7d9dcf",
  "parents": [
    "cf824cd7edc7ab8caa244121dd9f35ccd5b408a6"
  ],
  "author": {
    "name": "amitmanjhi@google.com",
    "email": "amitmanjhi@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Thu Mar 19 20:55:48 2009 +0000"
  },
  "committer": {
    "name": "amitmanjhi@google.com",
    "email": "amitmanjhi@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Thu Mar 19 20:55:48 2009 +0000"
  },
  "message": "This patch updates the following:\ni) Ensures that generated units, if they are the same, are not compiled again.\nDoes this in a resource-efficient way: without holding on to the jdt structures\n(significant memory overhead) and without signficant CPU overhead. Adds test\ncases for confirming the refresh behavior.\nii) cleans up the implementation of how TypeOracle tracks ParameterizedTypes,\nArrayTypes, and wild-card types by using appropriate variants of apache\u0027s\nAbstractReferenceMap.Adds manual tests for verifying what different variants\ndo. Fixes parameterizedTypes map to use explicit objects keys that enforce\nidentity and don\u0027t have the problems associated with generating unique string\nkeys.\niii) Cleans up the invalidator code that invalidates a unit if it refers a\n\u0027invalid\u0027 unit.\niv) Adds the code for handling binary references. Adds test cases for checking\nthe handling of binary references.\n\nPatch by: amitmanjhi, scottb (pair prog)\nReview by: scottb, amitmanjhi\n\ngit-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@5048 8db76d5a-ed1c-0410-87a9-c151d255dfc7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3f3e0d4dac2819585715a362c838fdfb3d430323",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JDelegatingClassType.java",
      "new_id": "cbb866add8cf2db6a85159bd48516d4dc0676ba8",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JDelegatingClassType.java"
    },
    {
      "type": "modify",
      "old_id": "26c4ab09dc2e411e20e255cd66e7c35d8e155169",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java",
      "new_id": "d9fbb76afb547c87d7c41ba5e0541e4141c1dc3a",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java"
    },
    {
      "type": "modify",
      "old_id": "f5d3cea9b97b89636a8ca31f53c4d72e9f8c34f3",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JType.java",
      "new_id": "15bc0bd103b27f32c2cc88b20dc5b80b6d789a41",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/JType.java"
    },
    {
      "type": "modify",
      "old_id": "0de6e967f7c78f6959b4075ecaefecb2f57f36f2",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java",
      "new_id": "a18b85e4b132a03774df3d534433171904b98cc9",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/core/ext/typeinfo/TypeOracle.java"
    },
    {
      "type": "modify",
      "old_id": "d9c710a0e0dad97ab17dbd273f259f0fc9474508",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/CompilationState.java",
      "new_id": "9cfa89d2d45e1cc35352a1366cdf510ddf6a6d8b",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/CompilationState.java"
    },
    {
      "type": "modify",
      "old_id": "e3c2f199a807d6b657aa8bdc230fc4eb4e16bf76",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java",
      "new_id": "eb0b054a2bf9a3cfffee0c86c3a592bdb30b5a93",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java"
    },
    {
      "type": "modify",
      "old_id": "270e50468ac6a9e3af93e79cadd2fc44d680caf0",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java",
      "new_id": "0b86ed901cd705f4b6de33be6f6100490ce6450c",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java"
    },
    {
      "type": "modify",
      "old_id": "29ad5321ec07b7b19d225812d57ba9a9e27a07df",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/CompiledClass.java",
      "new_id": "f3f1eec977cc512226a9311dabc56b9e5e0e07a8",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/CompiledClass.java"
    },
    {
      "type": "modify",
      "old_id": "6bb587582dcbbbb4e48ad1ebf5542cec19116012",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/JdtCompiler.java",
      "new_id": "a82b70565d293d7585fd4376ecb3c1a2ee9df4bd",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/JdtCompiler.java"
    },
    {
      "type": "modify",
      "old_id": "5c6ee23ce6a9e888f5f1b3befdb0d58cc5c2f9f8",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java",
      "new_id": "96497499d23089e557eef7169f17e7157630e32e",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java"
    },
    {
      "type": "modify",
      "old_id": "6c1a9ad6523b02840c44d5f229c1f606e123b6e2",
      "old_mode": 33188,
      "old_path": "dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java",
      "new_id": "d0fdef08f6c598c0123ebb10c5a999c14eee4714",
      "new_mode": 33188,
      "new_path": "dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "90f119abde8ba40f2200c113afd1e3543e1404c3",
      "new_mode": 33188,
      "new_path": "dev/core/test/com/google/gwt/dev/javac/CompilationUnitFileReferenceTest.java"
    },
    {
      "type": "modify",
      "old_id": "eb14456a88af81506baad7e9a1cfa540a3afd267",
      "old_mode": 33188,
      "old_path": "dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java",
      "new_id": "f39148730742ae8cebe6efc5c7dba5ce9c5e2dbc",
      "new_mode": 33188,
      "new_path": "dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java"
    },
    {
      "type": "modify",
      "old_id": "fee4d5329cb3a4672748e2f7eb0b89c094847d37",
      "old_mode": 33188,
      "old_path": "dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTest.java",
      "new_id": "d2a3687a6b1cbe005691e616a2427eaa1629d234",
      "new_mode": 33188,
      "new_path": "dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTest.java"
    }
  ]
}
