)]}'
{
  "commit": "4d7f8f7846960ffc111cf1aef2a5efb094114442",
  "tree": "d91dbe1ea83226eadb96eda6562c9a70fa0cd18d",
  "parents": [
    "91420101cf977990166acec2a0e46e1787389512"
  ],
  "author": {
    "name": "ulfjack",
    "email": "ulfjack@google.com",
    "time": "Wed Nov 29 03:37:04 2017 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-piper@google.com",
    "time": "Wed Nov 29 03:38:22 2017 -0800"
  },
  "message": "Clean up ExecutionRequirements\n\n- remove BaseSpawn.Local; instead, all callers pass in the full set of\n  execution requirements they want to set\n- disable caching and sandboxing for the symlink tree action - it does not\n  declare outputs, so it can\u0027t be cached or sandboxed (fixes #4041)\n- centralize the existing execution requirements in the ExecutionRequirements\n  class\n- centralize checking for execution requirements in the Spawn class\n  (it\u0027s possible that we may need a more decentralized, extensible design in\n  the future, but for now having them in a single place is simple and\n  effective)\n- update the documentation\n- forward the relevant tags to execution requirements in TargetUtils (progress\n  on #3960)\n- this also contributes to #4153\n\nPiperOrigin-RevId: 177288598\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5ccc56ba3385a7f74a73917b6851f69d825e9146",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html",
      "new_id": "55b73d25607829b6a2e19500e81acc488f710cb9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html"
    },
    {
      "type": "modify",
      "old_id": "901b225afee826996c7b0739e2ccf96ecd031341",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java",
      "new_id": "bc5205520744c29854ab14558fca19538b199f92",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java"
    },
    {
      "type": "modify",
      "old_id": "8341301053d61dc0b4fc5badcf05689cf8daa813",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java",
      "new_id": "fd548b66cd83078b8bc776259f6997b45eb8b06c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java"
    },
    {
      "type": "modify",
      "old_id": "22242de04cf0e24a5fc97e454fe92cbdb95b89c9",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/ExecutionRequirements.java",
      "new_id": "fced3688b037c8133152c4dc8a9291af33ad6d61",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/ExecutionRequirements.java"
    },
    {
      "type": "modify",
      "old_id": "564460e7264e46b2ac532241683adba9092a2063",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/SimpleSpawn.java",
      "new_id": "3857783cb5bc53e16bd52a0b8f065781c840c31e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/SimpleSpawn.java"
    },
    {
      "type": "modify",
      "old_id": "6963b016d9b715ee678d67c6c5f9eb5f1eb8611b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/Spawn.java",
      "new_id": "3a59d9ffb3dfa44c7e6d696e5d925f16bf5cd0f1",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/Spawn.java"
    },
    {
      "type": "modify",
      "old_id": "e1156e9745b07dc82d3d8bd28c0623b256952f80",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/actions/Spawns.java",
      "new_id": "4448ea8f7bc72297fb9c1a43e540223ce66ec0b5",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/actions/Spawns.java"
    },
    {
      "type": "modify",
      "old_id": "deb987b771c53c0f91420dc17d2bc1bbfc08e70a",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/analysis/config/BinTools.java",
      "new_id": "dc52388d832198499ac4ec66ced9be975c804c81",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/analysis/config/BinTools.java"
    },
    {
      "type": "modify",
      "old_id": "b5f4b92024560fc23127ac4098be14a8ef6a590f",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java",
      "new_id": "b9a055b2388b7b9964b6b49052bbe68d29511bfc",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java"
    },
    {
      "type": "modify",
      "old_id": "a0f87d4da045ef3117810c085c778f7933df3bed",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java",
      "new_id": "14802acd993d2a8bea5783b4d86abe38c56f4e9b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java"
    },
    {
      "type": "modify",
      "old_id": "85d1d1d60d37fb9da5eb05a21046761102b4c248",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/exec/TestStrategy.java",
      "new_id": "e251cd60a0138babcaecb29e4ccf4f3b19e6573f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/exec/TestStrategy.java"
    },
    {
      "type": "modify",
      "old_id": "6ec3340465c17dc4e7b773401cb7b7d763b3924f",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java",
      "new_id": "702b9d6902951364b6e697e943be9b205033ef5e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java"
    },
    {
      "type": "modify",
      "old_id": "8dae2789584c23792b1359deff10419920ebc0fc",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnRunner.java",
      "new_id": "6c4b0a8eda624931a257495c370557490a213041",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnRunner.java"
    },
    {
      "type": "modify",
      "old_id": "1f6af910750524aeb68373c722b63e22c53d711d",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java",
      "new_id": "97fc677503951e9f52e5d21bf671da28d49ffe7a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java"
    },
    {
      "type": "modify",
      "old_id": "aee389713a9accc55927df0a23d16bc71a49369e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedSpawnRunner.java",
      "new_id": "a16497febc741c95d5168caf2dcf97af43e16c83",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedSpawnRunner.java"
    },
    {
      "type": "modify",
      "old_id": "53173e4bea7d09cb327177cb5eeebe206f9202e5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java",
      "new_id": "ee496e8e29ac3c0b4c04a111ed6c3765d71c4706",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java"
    },
    {
      "type": "modify",
      "old_id": "94d1c1111cf142fb218f095dea99cb789c773d74",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java",
      "new_id": "58906fddf2365a2a543ce91ed9d4b5a4f16b6fa0",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3baee79ccd824fe852b99cf9ff63aef1460b32f6",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/exec/SymlinkTreeHelperTest.java"
    },
    {
      "type": "modify",
      "old_id": "6d49de90242f175db042d702f6d2027e72320e61",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java",
      "new_id": "eb49366cf26fb0ea177689062c177371b5453e63",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java"
    },
    {
      "type": "modify",
      "old_id": "342680b7006fc6c28cd958103e2c7303c810aea7",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java",
      "new_id": "d2497ff313126473ca55aaa635aea4b52cbcb5bf",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java"
    }
  ]
}
