)]}'
{
  "commit": "c436f18240998f04f869a16afa3238b5bfe9bf09",
  "tree": "a9a3c3f7eba9a494d76777a491f6c3063bb06426",
  "parents": [
    "3f59ed0a595c0a9f7c72b82c3415706fc941150f"
  ],
  "author": {
    "name": "Nico Weber",
    "email": "thakis@chromium.org",
    "time": "Fri Apr 20 16:25:14 2018 +0000"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Fri Apr 20 16:25:14 2018 +0000"
  },
  "message": "gn: Don\u0027t write invalid output when pool //:console exists; treat all other pools named \u0027console\u0027 as invalid.\n\nBefore, defining and referencing pool \"//:console\" would make gn write a\nninja file that tries to redeclare ninja\u0027s built-in console pool, causing\nninja to reject the generated manifest file.\n\nDon\u0027t write pools definitions that cause this. This means //:console now represents\nninja\u0027s built-in console pool.\n\nDisallow pools in other scopes or in the non-default toolchain to be called \"console\".\nIf this was allowed but these pools behaved like regular pools instead of like the\nconsole pool, that\u0027d be confusing.  If they\u0027d all behave like the console pool,\nthat would be inconsistent with how regular pools work in gn -- the pool depth\nthere is per-toolchain, while it\u0027d always be globally 1 shared among all console pools\nin all toolchains.\n\nWhile here, also improve the source location for the \"pool depths must not be negative\"\ndiagnostic.\n\nBug: 835319\nChange-Id: Idbec9c08f42a0de7b316d8e5e8819c6c8c3c3c45\nReviewed-on: https://chromium-review.googlesource.com/1020010\nCommit-Queue: Nico Weber \u003cthakis@chromium.org\u003e\nReviewed-by: Dirk Pranke \u003cdpranke@chromium.org\u003e\nCr-Original-Commit-Position: refs/heads/master@{#552353}\nCr-Mirrored-From: https://chromium.googlesource.com/chromium/src\nCr-Mirrored-Commit: e9867a58c30f15c66d0b08b5f78050ff127155f9",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "36b6207eed86162283585b53589d48a65843a7a9",
      "old_mode": 33188,
      "old_path": "tools/gn/functions.cc",
      "new_id": "105dadf3ef97a1e61abdcedba5013af0181e5cec",
      "new_mode": 33188,
      "new_path": "tools/gn/functions.cc"
    },
    {
      "type": "modify",
      "old_id": "53f96c3fef06bfa797ab784bf0dfff50f6fbd16b",
      "old_mode": 33188,
      "old_path": "tools/gn/ninja_action_target_writer_unittest.cc",
      "new_id": "1b2ddc807b590cb01aeb05d46009ac7f28784a8a",
      "new_mode": 33188,
      "new_path": "tools/gn/ninja_action_target_writer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "334071a6c77535097c07439392446f349c149147",
      "old_mode": 33188,
      "old_path": "tools/gn/ninja_build_writer.cc",
      "new_id": "2f782f042a0d162356dd2bcef1d34df6ca1466e9",
      "new_mode": 33188,
      "new_path": "tools/gn/ninja_build_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "1937135948624cbea8b3dc290efa57d050ba4c07",
      "old_mode": 33188,
      "old_path": "tools/gn/ninja_build_writer_unittest.cc",
      "new_id": "c27100c9c2cd757533907729df4fa2ebc4b17b87",
      "new_mode": 33188,
      "new_path": "tools/gn/ninja_build_writer_unittest.cc"
    }
  ]
}
