)]}'
{
  "commit": "b019e5ea0957ec9e0e90fa40a685078e3608a936",
  "tree": "368d1841a0c1401aecb97810fed5cdb57b8a4276",
  "parents": [
    "7637f9cba731e1c93ad3be637f94612a581efe5e"
  ],
  "author": {
    "name": "Googler",
    "email": "noreply@google.com",
    "time": "Fri Oct 16 21:00:41 2015 +0000"
  },
  "committer": {
    "name": "Lukacs Berki",
    "email": "lberki@google.com",
    "time": "Mon Oct 19 08:20:43 2015 +0000"
  },
  "message": "Trying again with checking for the presence of the \"resources\" attribute.\n\nChange the resource dependency handling to separate between the transitive and direct resources from libraries.\n\nThis slightly increases the complexity of resource propagation. The initial algorithm was to simply merge all transitive ResourceContainers together with any new ResourceContainer and propagate them via the AndroidResourcesProvider. The new algorithm is encapsulated inside a new ResourceDependencies class which works as follows:\n\n1. Collect resources from the deps into transitive and direct NestedSets\n2. If a rule provides a ResourceContainer, merge the transitive and direct into a new transitive set\n3. Export the provider\n\nThis results having a rule without resources \"forward\" the merged sets of transitive and direct resources to the next rule.\n\n--\nMOS_MIGRATED_REVID\u003d105631635\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8eed18804e3410ae831890fa59f2f4c439ebd1d7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/analysis/actions/CustomCommandLine.java",
      "new_id": "584944f0e9021b082204253510a3401df46d60f8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/analysis/actions/CustomCommandLine.java"
    },
    {
      "type": "modify",
      "old_id": "876d796fc82e0bc8c834bfbe6e098b1eaea9a07b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java",
      "new_id": "6c8fd51b0b678174126882d0fa8d81e848bd8543",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java"
    },
    {
      "type": "modify",
      "old_id": "59f7ac77707eee9740f075f99ded6de9683636c1",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java",
      "new_id": "2712eb298ed7080b711b0798c67ffbda5e112936",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java"
    },
    {
      "type": "modify",
      "old_id": "bb90189242ffa9262e14e2949515a0fc6ee106b1",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java",
      "new_id": "0eec811d57d6ad4978798eabf3614ebcb445a352",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java"
    },
    {
      "type": "modify",
      "old_id": "0fa9ecd291330de142915bd191cef7a296233712",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java",
      "new_id": "2e1c2740044adc5f3e5663c974971cff4434def7",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "e2fda51aba776286612937ed21983e3603222bbe",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java",
      "new_id": "24e3174a42691a16611fe50e4630a185656823b5",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java"
    },
    {
      "type": "modify",
      "old_id": "3c14b8ec6e8b1d28453c85d17cab31b364c644d2",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java",
      "new_id": "42ffbae0433ad7887b56da135c64fa0bf7d61c35",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java"
    },
    {
      "type": "modify",
      "old_id": "920f4cd68fa4125d3ebcbb0c5919cf177e224450",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/ResourceApk.java",
      "new_id": "8a14507c957aeab8612e0fe22bb5883d2d9ebe05",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/ResourceApk.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f155128191a888b0ed6f72056b3b5aeba861fb07",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/ResourceDependencies.java"
    },
    {
      "type": "modify",
      "old_id": "d94780f2ff3d7ef6d5cca52a200f2ff02a92e488",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/actions/CustomCommandLineTest.java",
      "new_id": "a61790d64505741e41590e0451e6a68fd0e9af13",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/actions/CustomCommandLineTest.java"
    },
    {
      "type": "modify",
      "old_id": "5d8ef6c27c3ce638f8688e0a5ca9d42d9164e7d0",
      "old_mode": 33188,
      "old_path": "src/tools/android/java/com/google/devtools/build/android/AndroidResourceProcessingAction.java",
      "new_id": "c9a25b26d64f4e71237bc2c4a4924894e44f4bf4",
      "new_mode": 33188,
      "new_path": "src/tools/android/java/com/google/devtools/build/android/AndroidResourceProcessingAction.java"
    }
  ]
}
