)]}'
{
  "commit": "b8562a4abd9528372f274b1155aec65c57ca84fa",
  "tree": "014b8a3914f8c587eb121ba9ac67bf9ac30c5c59",
  "parents": [
    "5fd939de8a66c915778c14a2788a857be858ef6c"
  ],
  "author": {
    "name": "David \u0027Digit\u0027 Turner",
    "email": "digit@google.com",
    "time": "Mon Oct 23 18:05:37 2023 +0200"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Jan 15 09:27:41 2024 +0000"
  },
  "message": "Add `root_patterns` list to build configuration.\n\nThis CL adds a new optional `root_patterns` argument in\nthe top-level `.gn` file, as well as corresponding\n`--root-pattern\u003dPATTERN` command-line arguments.\n\nThis can be used to restrict the list of targets that\nare added to the build graph when BUILD.gn files are evaluated\nin the default toolchain.\n\nThe default behavior, is to add all targets defined in\nthe BUILD.gn files that are evaluated in the default toolchain,\nincluding all their transitive dependencies.\n\nWhen a non-empty list of patterns is used, these will be used\nto filter the targets by their label, in the default toolchain\n(it is thus an error to specify a toolchain suffix in these\npatterns).\n\nFor example, on a complex Fuchsia build plan, using\n`gn gen out/default --root-target\u003d//:*` changes `gn gen`\ntime from 18s to 6s, reducing the generated Ninja file\ncount from 21907 to 8376 files, which reduces the Ninja\nstartup time by ... seconds.\n\nChange-Id: Ic727b64e8d899d0dd88113576c1c8ae6e035d326\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/16060\nCommit-Queue: David Turner \u003cdigit@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fddf244ea67a564ac66cf5b4a55e3d180efc9006",
      "old_mode": 33188,
      "old_path": "docs/reference.md",
      "new_id": "fb886f5ca8989477644d0464543420546c1429d7",
      "new_mode": 33188,
      "new_path": "docs/reference.md"
    },
    {
      "type": "modify",
      "old_id": "22c11451f5a48323e39fb6c368613813b6e275e7",
      "old_mode": 33188,
      "old_path": "src/gn/build_settings.cc",
      "new_id": "b364ea2908ad1018ab24d5fdcf21585ad062d2ce",
      "new_mode": 33188,
      "new_path": "src/gn/build_settings.cc"
    },
    {
      "type": "modify",
      "old_id": "6c925e985e0f366f49574b16333ce9bd0167f552",
      "old_mode": 33188,
      "old_path": "src/gn/build_settings.h",
      "new_id": "82f11dbe09cecf3abd59c04d6cd03ebaafcf920c",
      "new_mode": 33188,
      "new_path": "src/gn/build_settings.h"
    },
    {
      "type": "modify",
      "old_id": "81335f86ff2a45d0b147333de7d8a95a0e937531",
      "old_mode": 33188,
      "old_path": "src/gn/builder.cc",
      "new_id": "0ba827b66a820dd553fe586f8b61888c8865d3d8",
      "new_mode": 33188,
      "new_path": "src/gn/builder.cc"
    },
    {
      "type": "modify",
      "old_id": "d0a1ee0edf2f1e65bf3305500df32f33d3e4b068",
      "old_mode": 33188,
      "old_path": "src/gn/filesystem_utils.cc",
      "new_id": "d0ad23c4a20842446299ea50a0c9c90537306ff7",
      "new_mode": 33188,
      "new_path": "src/gn/filesystem_utils.cc"
    },
    {
      "type": "modify",
      "old_id": "68acd43b851219f4c231a82ffbec881114e5293c",
      "old_mode": 33188,
      "old_path": "src/gn/setup.cc",
      "new_id": "b83e90401a20c269a3cf4d503aa5ca0a63c5ea51",
      "new_mode": 33188,
      "new_path": "src/gn/setup.cc"
    },
    {
      "type": "modify",
      "old_id": "b46bf946c95606f4440cb44113df5b073e5c7073",
      "old_mode": 33188,
      "old_path": "src/gn/setup_unittest.cc",
      "new_id": "082af400c8909175a03ccb14017d75f943a4b8dc",
      "new_mode": 33188,
      "new_path": "src/gn/setup_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "d86c349bd6beb2a657f84768c88d66489ab979d5",
      "old_mode": 33188,
      "old_path": "src/gn/switches.cc",
      "new_id": "95b0b148f7a05e1c22ff0550d4f24a18677be1f3",
      "new_mode": 33188,
      "new_path": "src/gn/switches.cc"
    },
    {
      "type": "modify",
      "old_id": "3d1943fee57c5a804d3735fb65caf57c679bbfe5",
      "old_mode": 33188,
      "old_path": "src/gn/switches.h",
      "new_id": "57d38287a2afeb0768f65c69c7790fccdba46412",
      "new_mode": 33188,
      "new_path": "src/gn/switches.h"
    },
    {
      "type": "modify",
      "old_id": "da82b95c630a489702054f21b6006311abeccb3d",
      "old_mode": 33188,
      "old_path": "src/gn/target.cc",
      "new_id": "a6440f1d0910f9ed216b13ddbe28eb6f61b5f6e4",
      "new_mode": 33188,
      "new_path": "src/gn/target.cc"
    },
    {
      "type": "modify",
      "old_id": "806d14b20c64e18d07b9674710b30da473cc11b5",
      "old_mode": 33188,
      "old_path": "src/gn/target.h",
      "new_id": "b8392779ffb14b526e7b54096a7bcbf8e9d3cb2a",
      "new_mode": 33188,
      "new_path": "src/gn/target.h"
    }
  ]
}
