)]}'
{
  "commit": "1740f5c25bcac5a650ee3d1c1ec22bfa25fcd756",
  "tree": "c826edb5e3a54bc7a0a8a15d59841ca3cd17754d",
  "parents": [
    "eab8a9f92dca9b8548a89d9e5eb6aeb8ac6bba77"
  ],
  "author": {
    "name": "Takuto Ikuta",
    "email": "tikuta@google.com",
    "time": "Fri May 01 16:57:44 2026 +0900"
  },
  "committer": {
    "name": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri May 01 01:27:35 2026 -0700"
  },
  "message": "[gn] Bypass groups in order-only deps to use source set linkdeps\n\nWhen a binary target depends on a group target, and that group target\ndepends on a source set with additional outputs (e.g., .dwo files), the\nbinary target previously ended up depending on the group target\u0027s phony\noutput. This caused the binary target to include the source set\u0027s\nadditional outputs in its order-only dependencies.\n\nAs established in commit a9f1a50154c7873b8152842dfd1392badeee55d6,\n.linkdeps targets are used to avoid propagating non-object files like\n.dwo to order-only dependencies. While .dwo files are generated\nsimultaneously with .o files (so they don\u0027t cause build delays), having\nthem in order-only dependencies causes problems for remote linking.\nSpecifically, it forces the upload of .dwo files to remote linkers,\nleading to increased data transfer and potentially hitting file count\nlimits.\n\nHowever, this isolation of .linkdeps was broken when a group target\nacted as an intermediate dependency.\n\nTo fix this and respect the intent of\na9f1a50154c7873b8152842dfd1392badeee55d6, this commit modifies\nNinjaCBinaryTargetWriter and NinjaRustBinaryTargetWriter to recursively\nexpand dependencies of group targets. If a group depends on a source\nset, we now depend directly on its .linkdeps instead of the group\nitself.\n\nBug: 502431091\nChange-Id: Ia133f2048493a199ba8996332b9cbc3bb1591ca2\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/22400\nCommit-Queue: Takuto Ikuta \u003ctikuta@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "163141b4d404475ab4fec81f41f5fe5216431357",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_binary_target_writer.cc",
      "new_id": "aad2eb2077bd6f0cf7d770eb4af9aef9ce09ca8f",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "ef9112705cc5d0084876c12d4bea97a4d4e1c0f4",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_binary_target_writer.h",
      "new_id": "99b2b729d2e525cc19ea556a7f7c46f4ad26ece5",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_binary_target_writer.h"
    },
    {
      "type": "modify",
      "old_id": "31217189cf6a2f0a4457390a6664030078b0ab8f",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_c_binary_target_writer.cc",
      "new_id": "5346e06ae14929964ce92fadf86a99fda9dbc7ad",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_c_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "4b0219b8b2ac56bf88a77e7bffa3de3b3b91c0d8",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_c_binary_target_writer_unittest.cc",
      "new_id": "161845c20a328f2941757ff0ffe6fc708dc46a71",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_c_binary_target_writer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "cbb5e4ff46b349fa24b4afe6fc686d8577af0bf1",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_rust_binary_target_writer.cc",
      "new_id": "e9b44e8927f754a6afe0d11adaafc73d763158e9",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_rust_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "680652c1b5067ed7f747e464373c5238b968f598",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_rust_binary_target_writer_unittest.cc",
      "new_id": "f38b892c75d97a4057fed29d1bd1e5d4d5c419db",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_rust_binary_target_writer_unittest.cc"
    }
  ]
}
