)]}'
{
  "commit": "5e7d1a0fddab1204d94ff43cee833431eda75af8",
  "tree": "06a9b5f722135c6a02a205c21bd9d9271279e40b",
  "parents": [
    "e9391cf5d40a890dc5e2b8759bcf26da63fdd29b"
  ],
  "author": {
    "name": "Anthony DiGirolamo",
    "email": "tonymd@google.com",
    "time": "Mon Oct 21 22:10:35 2024 +0000"
  },
  "committer": {
    "name": "CQ Bot Account",
    "email": "pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Oct 21 22:10:35 2024 +0000"
  },
  "message": "pw_watch: Bazel run support\n\nHook up enough bazel to be able to run pw_watch or pw_build through\nbazel run commands. For example:\n\nRun watch:\n\n  bazelisk run //pw_watch/py:watch\n\nRun a single build (same as watch but only once then exit).\n\n  bazelisk run //pw_build/py:project_builder\n\nRun the upstream project builder (optionally with --watch):\n\n  bazelisk run //pw_build/py:pigweed_upstream_build -- \\\n    -r default_bazel -r default_gn --watch\n\nBug: 360140397\nChange-Id: I4b3f202d569417e7530ac915e98fd5ed26baeb5e\nReviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/242094\nDocs-Not-Needed: Anthony DiGirolamo \u003ctonymd@google.com\u003e\nPresubmit-Verified: CQ Bot Account \u003cpigweed-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nLint: Lint 🤖 \u003candroid-build-ayeaye@system.gserviceaccount.com\u003e\nReviewed-by: Taylor Cramer \u003ccramertj@google.com\u003e\nCommit-Queue: Anthony DiGirolamo \u003ctonymd@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fb2bab54b7b1521b5729ad8882cf8461bf78ee60",
      "old_mode": 33188,
      "old_path": "pw_build/py/BUILD.bazel",
      "new_id": "3b318df49042d9881c73bf0107001c7aedeb4e07",
      "new_mode": 33188,
      "new_path": "pw_build/py/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "1c72e7b52532c5c9221eb4b993edcd3e0e7881b8",
      "old_mode": 33188,
      "old_path": "pw_build/py/project_builder_prefs_test.py",
      "new_id": "47c65bcf735883f91e2924e0cc3930529bd59125",
      "new_mode": 33188,
      "new_path": "pw_build/py/project_builder_prefs_test.py"
    },
    {
      "type": "modify",
      "old_id": "afbbb4957be0210b2392fb58ab79afc3ab4ea486",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/build_recipe.py",
      "new_id": "443b4cf9d932dd30e24c1d6e9c846fc473105d9d",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/build_recipe.py"
    },
    {
      "type": "modify",
      "old_id": "7dcdf97ad6acc6c07e093af3a6578f0d0bf5b817",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/pigweed_upstream_build.py",
      "new_id": "fcded6ff09758584fd5f228031b953bcb7a71534",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/pigweed_upstream_build.py"
    },
    {
      "type": "modify",
      "old_id": "b651cdeda1953fab5a9391aed303a3f112b9990f",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/project_builder.py",
      "new_id": "8f38248399bf54c08c5f17de57402340211c618a",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/project_builder.py"
    },
    {
      "type": "modify",
      "old_id": "40ea97e9421050ceac72ffcc7ac744e09a4110f6",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/project_builder_argparse.py",
      "new_id": "24582b4a00e989a70e915215b7cad0d31a2cf970",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/project_builder_argparse.py"
    },
    {
      "type": "modify",
      "old_id": "f8755a5e674dde6f1af8b97d52b2b0d729322dfe",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/project_builder_prefs.py",
      "new_id": "2a0407a9c42ec3d6e8bedb39e615e9486ec84872",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/project_builder_prefs.py"
    },
    {
      "type": "modify",
      "old_id": "40f83e5a2564120fe7779e44223f2ddbfbf1d1be",
      "old_mode": 33188,
      "old_path": "pw_build/py/pw_build/project_builder_presubmit_runner.py",
      "new_id": "5d8d58c580e6b2d578696eaedc9a3b220064b3b8",
      "new_mode": 33188,
      "new_path": "pw_build/py/pw_build/project_builder_presubmit_runner.py"
    },
    {
      "type": "modify",
      "old_id": "67320ffa7351d7899feb4b3110e35fbcc2161bde",
      "old_mode": 33188,
      "old_path": "pw_cli/py/BUILD.bazel",
      "new_id": "e5f16189887cd9ddc31f33d7f9a7ee22dffe6f16",
      "new_mode": 33188,
      "new_path": "pw_cli/py/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "184c4a2c81fb1ba07167a774035347f54d0f9afd",
      "old_mode": 33188,
      "old_path": "pw_cli/py/BUILD.gn",
      "new_id": "353319d0f3bd715a16438bd58aac6fac69446977",
      "new_mode": 33188,
      "new_path": "pw_cli/py/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8c623621b78efbf3fa1a1fa32c834853fd0378d2",
      "new_mode": 33188,
      "new_path": "pw_cli/py/pw_cli/allowed_caller.py"
    },
    {
      "type": "modify",
      "old_id": "09e56daf058e4f45b580a2dc588e26206bcde3fe",
      "old_mode": 33188,
      "old_path": "pw_cli/py/pw_cli/env.py",
      "new_id": "a083f878dbf69b0dc22d7b485c15ceb15d0aacc0",
      "new_mode": 33188,
      "new_path": "pw_cli/py/pw_cli/env.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f32a8895f3c05f7df196382be26653d79079868f",
      "new_mode": 33188,
      "new_path": "pw_watch/py/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "796db30097de05ffb29000901ec2f1abe83d413d",
      "old_mode": 33261,
      "old_path": "pw_watch/py/pw_watch/watch.py",
      "new_id": "e81a0a4435a81aa921d547f154dfd05c103588e9",
      "new_mode": 33261,
      "new_path": "pw_watch/py/pw_watch/watch.py"
    },
    {
      "type": "modify",
      "old_id": "286e342c45d59bc1dc18bef82d041d682a4ab39e",
      "old_mode": 33188,
      "old_path": "pw_watch/py/pw_watch/watch_app.py",
      "new_id": "c60dd4a0a6eb1e64cf89bd0fb0f1f610fb329045",
      "new_mode": 33188,
      "new_path": "pw_watch/py/pw_watch/watch_app.py"
    }
  ]
}
