)]}'
{
  "commit": "ae947216dca9cfc32bf61421849762c568682b8c",
  "tree": "c28c2a42724813c487769f706ada40ec1e801cf9",
  "parents": [
    "ad3575cc4a00091abe02522cea5a69c61e148739"
  ],
  "author": {
    "name": "Ryan Harrison",
    "email": "rharrison@chromium.org",
    "time": "Thu Jul 31 07:27:08 2025 -0700"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Jul 31 07:27:08 2025 -0700"
  },
  "message": "[infra] Add dependency injection support to more fileutils API\n\nAdds the ability to pass in a oswrapper.* to IsDir(), IsExe(),\nIsFile(), CopyFile(), and CopyDir() to allow better testing of code\nthat uses these functions.\n\nTesting is added for these functions.\n\nCopyFile \u0026 CopyDir were significantly rewritten due to issues found\nwhen testing.\n\nUpdates all of the callsites to use the new API. Some places where I\nwas making these changes I also changed calls to os.* to be to\noswrapper.*.\n\nBug: 344014313\nChange-Id: I418672fdbcb1f5492d7fd796ec70e9dd2f3a7cc9\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/255514\nCommit-Queue: Ryan Harrison \u003crharrison@chromium.org\u003e\nReviewed-by: Brian Sheedy \u003cbsheedy@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d319908c77c0b433042d0c16a04fe8fb80397718",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/cts/roll/roll.go",
      "new_id": "b5d54d93d3435de11f941651513cbb66462ca7ee",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/cts/roll/roll.go"
    },
    {
      "type": "modify",
      "old_id": "a96cca704b0006355bfcd38b9c8aa45da65eab83",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/fuzz/main.go",
      "new_id": "f7b64b5285fb79984716d94b2589cadd45185495",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/fuzz/main.go"
    },
    {
      "type": "modify",
      "old_id": "f21f9bce11f01597f804bba2a72071aabb8b2ba9",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/gen/common/clang_format.go",
      "new_id": "ba717e8879413533068a65e02cc32e3859057d91",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/gen/common/clang_format.go"
    },
    {
      "type": "modify",
      "old_id": "6ebe65c127f4281bfc10904ec5e60de70661c239",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/node/main.go",
      "new_id": "5443b34c382a41d9d822b68d6e4529fab5d43db0",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/node/main.go"
    },
    {
      "type": "modify",
      "old_id": "5a6bd5368b5f9e89872c5732e0908b45165ca6e4",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/run-cts/chrome/cmd.go",
      "new_id": "ee34531766fa2d95414155632691ffa071853f12",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/run-cts/chrome/cmd.go"
    },
    {
      "type": "modify",
      "old_id": "14bc5b9575920a1e06cba096692d4d12b6db0f4c",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/run-cts/common/builder.go",
      "new_id": "b58b8eee4cee9ae62b177a57be52efe5c278cb6d",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/run-cts/common/builder.go"
    },
    {
      "type": "modify",
      "old_id": "caa55617197330ab16d5f9ce2daca81016e9141c",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/run-cts/common/flags.go",
      "new_id": "f0a9e81bfa8c789ceeb40033b378d1ed69fb5b53",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/run-cts/common/flags.go"
    },
    {
      "type": "modify",
      "old_id": "d9b5757cb4a89a7f29c1e1a49cbd08aae6b0e94a",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/run-cts/node/cmd.go",
      "new_id": "4de34576fc0d06fda112cb5f3d9fa0b340639eb3",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/run-cts/node/cmd.go"
    },
    {
      "type": "modify",
      "old_id": "b2aa927200881143165940fd04b1ac4652a2a226",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/tests/main.go",
      "new_id": "4328861f447636254c003134cfd0e74704beef73",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/tests/main.go"
    },
    {
      "type": "modify",
      "old_id": "541d56619a28ace423f7f5ff0a7a7272b8cba646",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/tintd/install/install.go",
      "new_id": "e55d78f09e476c2ef4abe8f6cc999bd358c51214",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/tintd/install/install.go"
    },
    {
      "type": "modify",
      "old_id": "0170c4f10eb5482fadfa84f6a7f592ca38f2d6e5",
      "old_mode": 33188,
      "old_path": "tools/src/fileutils/copy.go",
      "new_id": "d314e1641524400016fbf9a7b32a2de522a0101a",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/copy.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f05f644d98d15c22af80e841eb37a4c967753560",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/copy_test.go"
    },
    {
      "type": "modify",
      "old_id": "2742b7483480bfc11df20df9711c1b845dfafb8b",
      "old_mode": 33188,
      "old_path": "tools/src/fileutils/fileutils_other.go",
      "new_id": "13bb23f4eb11b60f5b063163f7d4de51dd4797fd",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/fileutils_other.go"
    },
    {
      "type": "modify",
      "old_id": "7e897e983dc4b02b29cf3048780104b7ac7f0b05",
      "old_mode": 33188,
      "old_path": "tools/src/fileutils/fileutils_windows.go",
      "new_id": "5a6e2cdf886e43134a6cf9dad62556e6ae5924d6",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/fileutils_windows.go"
    },
    {
      "type": "modify",
      "old_id": "a3513a734a18c7272b329e752197e003da9b82c2",
      "old_mode": 33188,
      "old_path": "tools/src/fileutils/paths.go",
      "new_id": "e0abd1dd3fd8c5d3aabde6837e465f71e600dcd7",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/paths.go"
    },
    {
      "type": "modify",
      "old_id": "c8bd0725f6e13357d12680ad1790a5bdbd2ee14a",
      "old_mode": 33188,
      "old_path": "tools/src/fileutils/paths_test.go",
      "new_id": "f3df804213c5412a34a2270ca4860745d918be80",
      "new_mode": 33188,
      "new_path": "tools/src/fileutils/paths_test.go"
    },
    {
      "type": "modify",
      "old_id": "dc01f4e2786bb4f4d37d78873808615194dc3ac9",
      "old_mode": 33188,
      "old_path": "tools/src/oswrapper/memmaposwrapper.go",
      "new_id": "69c7593dc8cd7de28c61ad10d26778cd187f83e6",
      "new_mode": 33188,
      "new_path": "tools/src/oswrapper/memmaposwrapper.go"
    },
    {
      "type": "modify",
      "old_id": "936a96fc95161d1bd0183ec9e93283e965db446e",
      "old_mode": 33188,
      "old_path": "tools/src/oswrapper/memmaposwrapper_test.go",
      "new_id": "a97baa565f4c1680a4d96fe2edc4002a8ff159d0",
      "new_mode": 33188,
      "new_path": "tools/src/oswrapper/memmaposwrapper_test.go"
    }
  ]
}
