)]}'
{
  "commit": "f47f5396728771f1509dad386c7e7886743314b9",
  "tree": "b7397ff126872174629bf816020a10da298b3fb1",
  "parents": [
    "fcdd61859c9d11dd86c395956071c4b7e0647ded"
  ],
  "author": {
    "name": "Takuto Ikuta",
    "email": "tikuta@google.com",
    "time": "Tue Jun 30 18:40:55 2026 +0900"
  },
  "committer": {
    "name": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Jun 30 23:28:41 2026 -0700"
  },
  "message": "Reland \"Propagate public_deps outputs via dependency_output for non-binary targets\"\n\nThis relands the change with a fix to prevent propagating dependency\noutputs of data-only targets (like bundle_data) via public_deps.\n\nData-only targets are runtime dependencies and should not be propagated\nas implicit (build-time) dependencies, to avoid having unnecessary\ninputs.\n\nAlso I sent deps reduction to chromium as https://crrev.com/c/8023463 to\navoid the limit of maximum allowed number of files in remote link.\n\nOriginal change\u0027s description:\n\u003e Revert \"Propagate public_deps outputs via dependency_output for non-binary targets\"\n\u003e\n\u003e This reverts commit 3bccda11b7bc16d89994f34da1e6604889f88f86.\n\u003e\n\u003e Reason for revert: This doesn\u0027t pass chromium\u0027s CQ.\n\u003e\n\u003e Failure Link:\n\u003e https://ci.chromium.org/ui/p/chromium/builders/try/linux-chromeos-rel/2928808?\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e Propagate public_deps outputs via dependency_output for non-binary targets\n\u003e \u003e\n\u003e \u003e For non-binary targets (like actions, groups, etc.), their dependency\n\u003e \u003e outputs (stamp or phony targets) now transitively depend on the\n\u003e \u003e dependency outputs of their public_deps.\n\u003e \u003e\n\u003e \u003e This ensures that dependents of the current target will also implicitly\n\u003e \u003e depend on the outputs of its public_deps, preventing the inflation of\n\u003e \u003e implicit inputs on each build line.\n\u003e \u003e\n\u003e \u003e Also updated various unit tests and added a new complex test case to\n\u003e \u003e verify this behavior.\n\u003e \u003e\n\u003e \u003e This removes the necessity of some redundant BUILD.gn config changes\n\u003e \u003e like\n\u003e \u003e https://crrev.com/c/8003676/8/front_end/models/ai_assistance/skills/BUILD.gn\n\u003e \u003e to propagate outputs of actions to indirect dependents.\n\u003e \u003e\n\u003e \u003e Bug: 513105742\n\u003e \u003e Change-Id: I14de8cea4e4add977cacdc88386737aedda16f86\n\u003e \u003e Reviewed-on: https://gn-review.googlesource.com/c/gn/+/23520\n\u003e \u003e Commit-Queue: Takuto Ikuta \u003ctikuta@google.com\u003e\n\u003e \u003e Reviewed-by: Matt Stark \u003cmsta@google.com\u003e\n\u003e\n\u003e Bug: 513105742\n\u003e Change-Id: I35977d90e1f59bbd37fdd3d3c1dc5deedbb3d417\n\u003e Reviewed-on: https://gn-review.googlesource.com/c/gn/+/23541\n\u003e Reviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n\u003e Commit-Queue: Takuto Ikuta \u003ctikuta@google.com\u003e\n\n# Not skipping CQ checks because this is a reland.\n\nBug: 513105742\nChange-Id: I1599385b8902a3fe0a471afd30975a85f4520670\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/23560\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "75b75a0d7ae4bbf61cd0e40534208d46bc9f91f6",
      "old_mode": 33188,
      "old_path": "docs/reference.md",
      "new_id": "a8d370ae448f6d53ee316a6c35642d13eb5d5e2a",
      "new_mode": 33188,
      "new_path": "docs/reference.md"
    },
    {
      "type": "modify",
      "old_id": "7aa13136cc42e7d683e1ca82a546dea8edb2f380",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_create_bundle_target_writer_unittest.cc",
      "new_id": "2d23969e0af80e43a13976da397427675cfc481a",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_create_bundle_target_writer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "825439a69a2084afd8ff6f54d90add6a9379514d",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_target_writer.cc",
      "new_id": "6753701d872388c45011c4816826ccd59dbbf94a",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "cd4a5e4346a37560edfedfb8fe8e9a2df4d4ddf0",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_target_writer_unittest.cc",
      "new_id": "9cdfaaabbaf2cec95cf099f893512539feba191c",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_target_writer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "960689b798581c1b39135234a3208cb39400cce6",
      "old_mode": 33188,
      "old_path": "src/gn/variables.cc",
      "new_id": "dcb46e86189fe9d0009803f1349261f07c18395b",
      "new_mode": 33188,
      "new_path": "src/gn/variables.cc"
    }
  ]
}
