)]}'
{
  "commit": "3d6b6acb514f61fe4a05de8becc3218a4414523b",
  "tree": "12a9ec3bda4002b2a8f0331c7f141e89b562ee20",
  "parents": [
    "dcc3ad3ff9605a4127d31bace9c90e47e1a0b5e9"
  ],
  "author": {
    "name": "Fabian Meumertzheim",
    "email": "fabian@meumertzhe.im",
    "time": "Fri Aug 14 17:19:28 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Fri Aug 14 17:20:12 2026 -0700"
  },
  "message": "Do not retain a name string for generated module maps\n\nCopybara Import from https://github.com/bazelbuild/rules_cc/pull/789\n\nBEGIN_PUBLIC\nDo not retain a name string for generated module maps (#789)\n\nModule maps generated for a target are named after the target\u0027s label. Since the generated module map file is declared by that very target, the name can be derived on demand from the file\u0027s owner label, which the `File` object already retains. The `name` field of the module map struct becomes optional, with `None` meaning \"named after the label of the target that generated the module map file\", and two central helpers (`get_module_map_name`, `get_module_map_label`) derive the string form and the `Label` form where needed.\n\nThis fixes the round-trip bug originally addressed in https://github.com/bazelbuild/rules_cc/pull/633, but avoids the memory regression that caused it to be rolled back in b81b6e4 (because retaining `Label` objects increased memory usage overall). Deriving the name on demand retains nothing extra as the owner label is already retained by the `File` and all name materializations are transient only (such as in `map_each` callbacks).\n\nNames are now the unambiguous canonical label string, except that main repository labels drop the leading `@@` (`//pkg:lib`), keeping the traditional module name format. Special module maps (the crosstool module map, ObjC internal module maps) keep their explicitly provided names.\n\nCloses #789\nEND_PUBLIC\n\nStartblock:\n  * // Put other blockers before this line to avoid churning.\n  * has lgtm\n  * is approved\n  * and then\n  * all comments are resolved\n  * and then\n  *[] allows unknown commit\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/bazelbuild/rules_cc/pull/789 from fmeum:module-map-label 68848659e21ef3b4d223a92dc19b4711b604b82e\nPiperOrigin-RevId: 964972527\nChange-Id: If97a7c4491d670e825b621e80541a064ffe8769f\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a51d0f432f542df63bb00d665601524d0323c68c",
      "old_mode": 33188,
      "old_path": "cc/private/cc_info.bzl",
      "new_id": "3ce9824f7950937a6e44f5457fb953925b8e6890",
      "new_mode": 33188,
      "new_path": "cc/private/cc_info.bzl"
    },
    {
      "type": "modify",
      "old_id": "a30397dc1cd576ff788f94cde1ed9c7c4a93f79e",
      "old_mode": 33188,
      "old_path": "cc/private/compile/cc_compilation_helper.bzl",
      "new_id": "5dc19cc5512f2375f091cdccdb27e4fe2ee5e9f0",
      "new_mode": 33188,
      "new_path": "cc/private/compile/cc_compilation_helper.bzl"
    },
    {
      "type": "modify",
      "old_id": "55b9a69a96b0713d4e0f29a4029fa1db21edbb31",
      "old_mode": 33188,
      "old_path": "cc/private/compile/compile.bzl",
      "new_id": "5ea1727e25d40efe227327cfc9d20ff32afd6470",
      "new_mode": 33188,
      "new_path": "cc/private/compile/compile.bzl"
    },
    {
      "type": "modify",
      "old_id": "b31efda24da209a096a2ec67cecc8c0f997a4cb3",
      "old_mode": 33188,
      "old_path": "cc/private/compile/compile_action_templates.bzl",
      "new_id": "94d65cd02934b0fc37c668d0267a84d724a4821a",
      "new_mode": 33188,
      "new_path": "cc/private/compile/compile_action_templates.bzl"
    },
    {
      "type": "modify",
      "old_id": "4b3b8cf09a42c4955f480d6773fe41e1fd419e7c",
      "old_mode": 33188,
      "old_path": "cc/private/compile/compile_build_variables.bzl",
      "new_id": "7ca69594d9ca32ed217ffc338ca311238ace5893",
      "new_mode": 33188,
      "new_path": "cc/private/compile/compile_build_variables.bzl"
    }
  ]
}
