)]}'
{
  "commit": "e2853223f429ee30731c1015f83baed1570fcbe6",
  "tree": "402f89007c29532f826b1fd42869ae0da4fa60ca",
  "parents": [
    "7bb2525ba28df64d95c9c1dd60afdf913c1f47cf"
  ],
  "author": {
    "name": "janakr",
    "email": "janakr@google.com",
    "time": "Tue Mar 08 10:52:18 2022 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Mar 08 10:53:34 2022 -0800"
  },
  "message": "Replace most usages of SyscallCache with the weaker XattrProvider. SyscallCache is unsafe to use with files that may change over the course of the build, like outputs and files in external repositories. The weaker XattrProvider type helps to ensure that a stale cached value is not used.\n\nAlso thread SyscallCache through to IncludeParser.\n\nFilesystemValueChecker is still using SyscallCache on outputs/external repository files. It will be fixed in a follow-up.\n\nPiperOrigin-RevId: 433254855\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4166cc0b00628c2e58146d586195ecebdd681815",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/FileArtifactValue.java",
      "new_id": "b8dd83f748e348fd572418217114a0033d166620",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/FileArtifactValue.java"
    },
    {
      "type": "modify",
      "old_id": "fd7dbcaa6bc25ba2d347c5bf41d7d9708e3e2625",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/FileStateValue.java",
      "new_id": "7b19509430edd76379ee17f436b80aabd73fbc3c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/FileStateValue.java"
    },
    {
      "type": "modify",
      "old_id": "af12b47619de80c653f96232b93241162c83b9e2",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/ResolvedEvent.java",
      "new_id": "087f8e591f3bd7b721e38c4a0eb9069747802b25",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/ResolvedEvent.java"
    },
    {
      "type": "modify",
      "old_id": "030ea2dbc5e7fdaea6792cbdc22a42ef5113ee02",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/SpawnLogModule.java",
      "new_id": "dc7d1f5c159abb66816a644ca4d8cab25cebec04",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/SpawnLogModule.java"
    },
    {
      "type": "modify",
      "old_id": "e20308f9ce40f3aa726d3187840766f96853aa8a",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java",
      "new_id": "2f4ed59af6ad228fce51759e21cd7237029199f3",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java"
    },
    {
      "type": "modify",
      "old_id": "fef65ece39944b21a5ecb94103edafd29cd204ca",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/LocalConfigPlatformFunction.java",
      "new_id": "f06530f1eb6c27cfe782f1592c7e75906126dc81",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/LocalConfigPlatformFunction.java"
    },
    {
      "type": "modify",
      "old_id": "20005c33449b34d48363b395a6f97a1c22158ede",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/RepositoryResolvedEvent.java",
      "new_id": "5fe79e71180f9e0a5ef51b0196dfa4dce56b6b8a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/RepositoryResolvedEvent.java"
    },
    {
      "type": "modify",
      "old_id": "5f17822eff410c30e916e5ef8ea8087b8488c4e5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/RepositoryResolvedModule.java",
      "new_id": "33469c7367e421751ebd3050b18fa47b94da6e9e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/RepositoryResolvedModule.java"
    },
    {
      "type": "modify",
      "old_id": "3d151b6c3d972277c55b0aca656b13bd169e91ed",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/starlark/StarlarkRepositoryFunction.java",
      "new_id": "22fa001897c7a982b1ccb1047f5457bab65aba38",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/repository/starlark/StarlarkRepositoryFunction.java"
    },
    {
      "type": "modify",
      "old_id": "57bdd64e75149167859119787062a7cd71c8e871",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/RunfilesTreeUpdater.java",
      "new_id": "b1dd574501666dc396579973aac22711fd31e8dd",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/RunfilesTreeUpdater.java"
    },
    {
      "type": "modify",
      "old_id": "cc4fda2a5b81d14c8f0d579c54ef247d74314c21",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/SingleBuildFileCache.java",
      "new_id": "e7542a1ad9e57b9d30da5c2cf6ba30e625e9ca6b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/SingleBuildFileCache.java"
    },
    {
      "type": "modify",
      "old_id": "1ca1e83eb33f7044c4e6b89b2b3e38b91dbd7bbc",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java",
      "new_id": "b1e8c640c954a4e24ef0011ced4c0b4e756647a5",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java"
    },
    {
      "type": "modify",
      "old_id": "7f6a168a74f2932877f94e9e78ba864974df97c0",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/local/LocalSpawnRunner.java",
      "new_id": "cf13e809e39c679908a6d69492e3a0a8f44ee933",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/local/LocalSpawnRunner.java"
    },
    {
      "type": "modify",
      "old_id": "1ae0c40eaa56d6f0926ab502cd52f04178c8d4cb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeParser.java",
      "new_id": "6eaf4a745a1fd7b93dc0bb0ec756c2f9e25a47d8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeParser.java"
    },
    {
      "type": "modify",
      "old_id": "96db5f30de07f666e466e20451476fee7679902c",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java",
      "new_id": "83d5264ede25ed1c885946ddd7ba6f3488f377ed",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java"
    },
    {
      "type": "modify",
      "old_id": "fcc2acdbaf04028ab6a877317a82dd61695e1bdb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/includescanning/SpawnIncludeScanner.java",
      "new_id": "67e8676d1156fee79ff5ac01446d87368a7aeae2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/includescanning/SpawnIncludeScanner.java"
    },
    {
      "type": "modify",
      "old_id": "c1cfc69d4bc36ed039fc8b7fe8f565cc72373efd",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/remote/ByteStreamBuildEventArtifactUploader.java",
      "new_id": "76e755b3c0a21b6d148172c2d875d5ccd6d76f03",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/remote/ByteStreamBuildEventArtifactUploader.java"
    },
    {
      "type": "modify",
      "old_id": "5ff3cfa89c19466de1785cec6bfe20d8745b0055",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/remote/ByteStreamBuildEventArtifactUploaderFactory.java",
      "new_id": "3eec1eeb8aa8ebacd6b162b8e534269939fd5f25",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/remote/ByteStreamBuildEventArtifactUploaderFactory.java"
    },
    {
      "type": "modify",
      "old_id": "3bf61b3ef76a86aee84adc6f474eccd9b788922d",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/remote/RemoteModule.java",
      "new_id": "55c6ba1761cc89395ea3122907493d87945d6a6d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/remote/RemoteModule.java"
    },
    {
      "type": "modify",
      "old_id": "59d5faf13b157107998813b70f836e08b544dd61",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/remote/util/DigestUtil.java",
      "new_id": "16055f13a7ee3d07632ffa78b919109dd272b347",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/remote/util/DigestUtil.java"
    },
    {
      "type": "modify",
      "old_id": "79e623f589b2bce044b09356b0578514487e2320",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java",
      "new_id": "4709d5cd82d51da6a79ec7b171d012996e57b1c1",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java"
    },
    {
      "type": "modify",
      "old_id": "c11922568ddf9736145c5849517d18c1d231c5a3",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/repository/NewLocalRepositoryFunction.java",
      "new_id": "4c4347b072cb79bfe95886424cff9562e337647e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/repository/NewLocalRepositoryFunction.java"
    },
    {
      "type": "modify",
      "old_id": "1781a6f79a9e1962f3e4d798a6f86c03100ca86f",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/runtime/CommandEnvironment.java",
      "new_id": "08cd44913b84f19bbbe0041d716bc049148f6148",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/runtime/CommandEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "f5ecba2fc7131207f030f03dbb06a6e6aaf36545",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxModule.java",
      "new_id": "16055faf3d77dd9906d881f447c3a814efef7ab9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxModule.java"
    },
    {
      "type": "modify",
      "old_id": "669cadf8bb3c73f44a9059b9d6afedaea9b13d23",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java",
      "new_id": "0ed234d78fd1ef1985c7693e900d7d9ed00ef9f4",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java"
    },
    {
      "type": "modify",
      "old_id": "9086798623e1072138636680bf9fe3c70034b588",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java",
      "new_id": "018fea486156fe6fc22507edb5c7cb36e16a9afe",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java"
    },
    {
      "type": "modify",
      "old_id": "b8d262a4dbe68058855818c4d17e38fcafbdc551",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java",
      "new_id": "8bdf9a0f349962fdda1e56a2dde671e1cf22b273",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java"
    },
    {
      "type": "modify",
      "old_id": "5b408c3e9cbff21e4cbd4978387c89706ecbd332",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunction.java",
      "new_id": "ed943ef8dd8ba66a918e2ba5505f158df797abfd",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunction.java"
    },
    {
      "type": "modify",
      "old_id": "3fb914d02cdb5a089f94cffb0766ee8c9a8b930a",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java",
      "new_id": "bad408486ea4076bbc589e239fecb45c3c2bf72d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java"
    },
    {
      "type": "modify",
      "old_id": "1fde3429a2830610a69ec782b280ad5f9e9def08",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java",
      "new_id": "61e38f5dd1395f6e4a2191c89e126c67d0c1f0ea",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java"
    },
    {
      "type": "modify",
      "old_id": "4308fa39aed1e194d529ef44717c8b355be261e3",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/vfs/DigestUtils.java",
      "new_id": "97f5ecd916c7ebddc1ca29e7f738e7ff592b424e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/vfs/DigestUtils.java"
    },
    {
      "type": "modify",
      "old_id": "e7b921336bbc8134c9b6271cff483ac8f137a7fe",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/vfs/Path.java",
      "new_id": "ff2008d3c5308903a12c18f23761e6429c49f4be",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/vfs/Path.java"
    },
    {
      "type": "modify",
      "old_id": "f08216a57918addc6feb6faf1639f3a5de00eb42",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/vfs/SyscallCache.java",
      "new_id": "016ddf30467bc8173f2d5e35acf748470df5cc7c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/vfs/SyscallCache.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "525c1e23e3f16ba22cf5242d615773f2e43b1d01",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/vfs/XattrProvider.java"
    },
    {
      "type": "modify",
      "old_id": "837589a2bf6cdf425e3a74412e54960c19126bc9",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/worker/WorkerModule.java",
      "new_id": "2eeae4504bdd4e0ab98af46a484b244222acb8cf",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/worker/WorkerModule.java"
    },
    {
      "type": "modify",
      "old_id": "f0d77f5ba3c7c842bfd37f90bf5072ec2babd13b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnRunner.java",
      "new_id": "839ea3c478fa7dce36bde2248b8e45ce327319b9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnRunner.java"
    }
  ]
}
