)]}'
{
  "commit": "4df39f484f1f49f5c7f6264adc88d27811cb7b00",
  "tree": "b5848ec19e3142e58df429de27637833af56cebf",
  "parents": [
    "2e3ba82395563cae2b82db1a55df4757a6aeabc2"
  ],
  "author": {
    "name": "Ryosuke Miyake",
    "email": "rysk@google.com",
    "time": "Thu Nov 05 15:45:23 2026 +0000"
  },
  "committer": {
    "name": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Nov 05 20:10:34 2026 -0800"
  },
  "message": "Accept multiple label patterns in gn check\n\n\"gn check\" now takes any number of label patterns and checks the targets\nmatching any of them. As before, label patterns bypass check_targets,\nno_check_targets and no_check_generated_targets in .gn.\n\nTarget selection moves to GetTargetsToCheck() so that it can be unit\ntested. RunCheck() still calls Builder::GetAllResolvedTargets() once.\n\nSplit out of https://gn-review.googlesource.com/c/gn/+/27840.\n\nBug: 577807023\nChange-Id: Icd11cbf7fbdc7ffac41520ea3893f1d8da4f81c2\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/28520\nCommit-Queue: Ryosuke Miyake \u003crysk@google.com\u003e\nReviewed-by: Matt Stark \u003cmsta@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2730b9ea43d915d8427553e16e02b93fe6b83130",
      "old_mode": 33261,
      "old_path": "build/gen.py",
      "new_id": "237ae22061c27973797abc2b3310ee0e7c75b645",
      "new_mode": 33261,
      "new_path": "build/gen.py"
    },
    {
      "type": "modify",
      "old_id": "c9754c37b0cc57fbabca136de2cf5ecd8e77711f",
      "old_mode": 33188,
      "old_path": "docs/reference.md",
      "new_id": "925db254e9995829797c4a4c036fb80a0299d050",
      "new_mode": 33188,
      "new_path": "docs/reference.md"
    },
    {
      "type": "modify",
      "old_id": "8c032d28d176875d75c348f45153460643c67132",
      "old_mode": 33188,
      "old_path": "src/gn/command_check.cc",
      "new_id": "13eaf09225f4127fbdd4ffdc20295d35d8e21caa",
      "new_mode": 33188,
      "new_path": "src/gn/command_check.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "33c02479fb91049dffc391a67ca5447c9644d2a3",
      "new_mode": 33188,
      "new_path": "src/gn/command_check_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "efa9775832be022f8cddf24e4d70c2fab471331e",
      "old_mode": 33188,
      "old_path": "src/gn/commands.h",
      "new_id": "60de9e47613e3c99008f5420afd3a0bbde99adfd",
      "new_mode": 33188,
      "new_path": "src/gn/commands.h"
    }
  ]
}
