)]}'
{
  "commit": "45b308a62f42c2c0bcfe79dcd4046c4025a31059",
  "tree": "176fc0a10fa37906864e952d833966298ccab727",
  "parents": [
    "c44a87b0736c671e07e62f8b09c8e61775543ded"
  ],
  "author": {
    "name": "janakr",
    "email": "janakr@google.com",
    "time": "Fri Jun 08 12:51:58 2018 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-piper@google.com",
    "time": "Fri Jun 08 12:53:15 2018 -0700"
  },
  "message": "Make Artifact#equals take the owner into account for derived artifacts.\n\nDerived artifacts\u0027 owners are important because they are used to determine the artifact\u0027s generating action. Source artifacts\u0027 owners are not used in this way, so I left them alone.\n\nThis allows us to get rid of most uses of ArtifactSkyKey. We may be able to delete it entirely in a follow-up.\n\nPiperOrigin-RevId: 199836436\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4336db0ef4c3c0493079ae27e47dd08668d570db",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/Actions.java",
      "new_id": "3311ca34babbd98f3814682fff6f0a23f4f17153",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/Actions.java"
    },
    {
      "type": "modify",
      "old_id": "f18e14f0d0b28116d78e0e4a7bca4d417abc36c3",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/Artifact.java",
      "new_id": "f91c5cde5a01789068d242c57a585426cd9fa8bf",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/Artifact.java"
    },
    {
      "type": "modify",
      "old_id": "703611fd27164752f8c1c24eebd4b6983522ca49",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/FilesetTraversalParams.java",
      "new_id": "fca7d2218c03fc2bae9814f69a86bb504c39770e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/FilesetTraversalParams.java"
    },
    {
      "type": "modify",
      "old_id": "f35f963bf738b602ded0e952d80658d7d08d091c",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/MapBasedActionGraph.java",
      "new_id": "dadad155e6654bf6416cbb1837e5d0ebaddba323",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/MapBasedActionGraph.java"
    },
    {
      "type": "modify",
      "old_id": "430c3731c7c9facce3f0a5e13ab401029cce0e2c",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/collect/nestedset/NestedSetCodecWithStore.java",
      "new_id": "081fd674f80e027eeca649789f15931106e4996a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/collect/nestedset/NestedSetCodecWithStore.java"
    },
    {
      "type": "modify",
      "old_id": "ae4ced6fb3964a21f636050d6d94b95ea7a8eacb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionArtifactCycleReporter.java",
      "new_id": "81120765cbcc575aba6eeb0459170cc9d155e990",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionArtifactCycleReporter.java"
    },
    {
      "type": "modify",
      "old_id": "8ddb52a905c3cb086f2f0140fc770eb8418149a8",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java",
      "new_id": "687a787628aadbf6c9808bff0e0e6487fc2d3172",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java"
    },
    {
      "type": "modify",
      "old_id": "6913091c73a47dc8563263a4c9980b2c9b77e7e2",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java",
      "new_id": "fbf3ec00d3714df4b0413500012e516d7332b504",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java"
    },
    {
      "type": "modify",
      "old_id": "20d9e97bb57b1973b2f9c807fcfe405761340de0",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java",
      "new_id": "e63b73c5b03c053faee063e68fa553c00eb3a5e2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactSkyKey.java"
    },
    {
      "type": "modify",
      "old_id": "de70aa1af080b054970ecb465443a2374f640ea7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java",
      "new_id": "3916b7b4a6e8d22bc9032e090f9f2054285a9468",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java"
    },
    {
      "type": "modify",
      "old_id": "0ef296c9440c42b90eec2da5e9106cbaa8937b29",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java",
      "new_id": "0b414000c0eae618b09d960a6601c23781d47bb5",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java"
    },
    {
      "type": "modify",
      "old_id": "acc97e046fce49b0f002b0353bb995e0b114dd86",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java",
      "new_id": "bdff840056e3bbf006103f574a521b4ac70bd413",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java"
    },
    {
      "type": "modify",
      "old_id": "0de07ffcc04f1e842892d819004fb182ff1826e1",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java",
      "new_id": "4d413a96fbda7cd0d0c18af95cdc6e97b7fb54f6",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java"
    },
    {
      "type": "modify",
      "old_id": "8e4d7d5e02712240f2e50198af0c3ec2165df636",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/StateInformingSkyFunctionEnvironment.java",
      "new_id": "4273e328c5640a6450da77f09f0101c8635058eb",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/StateInformingSkyFunctionEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "4a9946a1bc6454866d8d57dde791ae4ce16040e0",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/TestCompletionFunction.java",
      "new_id": "cbbe9f9d30253db49f836042993b0e932592989b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/TestCompletionFunction.java"
    },
    {
      "type": "modify",
      "old_id": "e7bda39cbf1a89602aeae4f7faa3006717c6309a",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/skyframe/AbstractSkyFunctionEnvironment.java",
      "new_id": "712dc4773ae5f7301c2ee7a7aa01a30c2983b48f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/skyframe/AbstractSkyFunctionEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "115fea1a7f2174ef4e474dbf4484c07d72b3f212",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/skyframe/RecordingSkyFunctionEnvironment.java",
      "new_id": "5dc85c0c57bf3643934262c7c3567b31d0dd7d8d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/skyframe/RecordingSkyFunctionEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "1ae29160b81e0be8394726db45627c6438bfabe0",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/skyframe/SkyFunction.java",
      "new_id": "42019886eccd89bc15f3640b2a6f1579fc9a26eb",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/skyframe/SkyFunction.java"
    },
    {
      "type": "modify",
      "old_id": "abbd3472c85c334f041544020bd3958296a43a49",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java",
      "new_id": "e4bd5b9a465534747ad187ef97a407e7634d9a0e",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java"
    },
    {
      "type": "modify",
      "old_id": "ec817882e635e6aa1c4158cb86d409af73bbe53b",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java",
      "new_id": "4678cd7d2c093cfba3b84fe1b6d448b5385c01fe",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java"
    },
    {
      "type": "modify",
      "old_id": "7ced520c127bae16f53aaa0d36894229f03f7d47",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/bazel/rules/genrule/GenRuleConfiguredTargetTest.java",
      "new_id": "e0c7bc2c78f5cd7b27d06474af32d07b6812c3bd",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/bazel/rules/genrule/GenRuleConfiguredTargetTest.java"
    },
    {
      "type": "modify",
      "old_id": "87ecd9ed296034cf91a7d1063bdff7655faa618d",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java",
      "new_id": "4f44f850d1725a00b2f040d2292ecc6e4d485b9b",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java"
    },
    {
      "type": "modify",
      "old_id": "0f6b4dfe52d07ca0feaf21cc6a60dbf77a683d48",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java",
      "new_id": "a1810f03dba9914398d4879b875a4f9d06c30aad",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java"
    },
    {
      "type": "modify",
      "old_id": "d7bf3eaf9925c11b7da869aee8ce7d9ec8d3b881",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java",
      "new_id": "2342b6a4eba5d8aaeb978c8bfeeef7ab8c553a5e",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java"
    },
    {
      "type": "modify",
      "old_id": "310129c862f0f3342d00684fa7279634a1895353",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java",
      "new_id": "8983ccaa56a78675494bee837653c7a1629759a5",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java"
    },
    {
      "type": "modify",
      "old_id": "75153651bfbabd093b067f1158105711a23703c7",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java",
      "new_id": "f6a40e57fffed6f72eb5fefec4bd9c4fd10b9d32",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java"
    },
    {
      "type": "modify",
      "old_id": "51f61ff072e5df7c95adfbea540b40f7fe2c4758",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java",
      "new_id": "68e3b0ae58b90bd1b9ce4ec985982ad8c896f112",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java"
    },
    {
      "type": "modify",
      "old_id": "ef300318acca40ee817ccd863ef363a9c0ebb3e3",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java",
      "new_id": "4da1ada195aa01680fedb20bfaf5b2037afdca98",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java"
    },
    {
      "type": "modify",
      "old_id": "2b137edcf2e85cbd9bbecd67251a9112f1611be5",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java",
      "new_id": "8a2281364990d05b868be412ff662e3411f978a3",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java"
    },
    {
      "type": "modify",
      "old_id": "aa736834a8ed483a55cfd367381b5e00dd0f32bd",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTestCase.java",
      "new_id": "e0ef017a2c15a47573c73e3ea07f7ff754a957da",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTestCase.java"
    },
    {
      "type": "modify",
      "old_id": "6ccaa19a3bf036c0713131c354a74337479c21fc",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java",
      "new_id": "ecce7ea5a0eca7c68121f8a5c8f03c5f2f036358",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java"
    },
    {
      "type": "modify",
      "old_id": "52fc550a4cae72fba29c9fbb6fa0fd7dd0084cdb",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java",
      "new_id": "f93c53ae5fb3ea5ac6e080b9fc1518e8c4029e37",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java"
    }
  ]
}
