)]}'
{
  "commit": "cb284595377ca655c3f825c6cafafa260fb52012",
  "tree": "e813dad23cbf7480a7183df654bee49c0b6aaa05",
  "parents": [
    "1f1eb5f5d9f9bcb7b06fc2e5c97a983c250e0331"
  ],
  "author": {
    "name": "David Zbarsky",
    "email": "dzbarsky@gmail.com",
    "time": "Thu Jul 30 07:55:51 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jul 30 11:55:51 2026 +0000"
  },
  "message": "go: restore go_rule for custom Go rules (#4672)\n\n## Summary\n\nrules_go v0.62.0 requires rules that compile or link Go code with cgo to\ndeclare the optional C++ toolchain, Apple and C++ configuration\nfragments, and cgo attributes. Add a helper to define such rules\nergonomically.\n\nFixes #4662.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a2f3f18e1470f73e77c78a4fe6572e56f875863e",
      "old_mode": 33188,
      "old_path": "extras/gomock.bzl",
      "new_id": "d9fe68817f2181af372904bf6ec455d1b06fc84e",
      "new_mode": 33188,
      "new_path": "extras/gomock.bzl"
    },
    {
      "type": "modify",
      "old_id": "9fd1945357de08fe7e046b97fbc0ad86359c9a0a",
      "old_mode": 33188,
      "old_path": "go/def.bzl",
      "new_id": "f811b702f69fe252ed5997a4527f883b87cd29c0",
      "new_mode": 33188,
      "new_path": "go/def.bzl"
    },
    {
      "type": "modify",
      "old_id": "b87dc337b8449c9b924cf20b375c682bbf98daf9",
      "old_mode": 33188,
      "old_path": "go/private/context.bzl",
      "new_id": "7c4968e64a7a3da8b23d8c57a2e93d23d21ee93d",
      "new_mode": 33188,
      "new_path": "go/private/context.bzl"
    },
    {
      "type": "modify",
      "old_id": "5d57a4c8bc99b8200efeb49f5423065b2b535ae5",
      "old_mode": 33188,
      "old_path": "go/private/rules/binary.bzl",
      "new_id": "8ba821a0ab3fac7823466e666a2115003cd67a85",
      "new_mode": 33188,
      "new_path": "go/private/rules/binary.bzl"
    },
    {
      "type": "modify",
      "old_id": "33e929e9c3e86f3e21d100c9e3db799dc9dc418a",
      "old_mode": 33188,
      "old_path": "go/private/rules/library.bzl",
      "new_id": "e1b053e95390bb4237a7ef02ee9d07ecb4fb16ba",
      "new_mode": 33188,
      "new_path": "go/private/rules/library.bzl"
    },
    {
      "type": "modify",
      "old_id": "8c9437c32b1405cf34e7385c57fae28dc661952a",
      "old_mode": 33188,
      "old_path": "go/private/rules/nogo.bzl",
      "new_id": "d59dfbdbd73f0fe9309ec8235e40b8efc12056a1",
      "new_mode": 33188,
      "new_path": "go/private/rules/nogo.bzl"
    },
    {
      "type": "modify",
      "old_id": "024cf60f2566cafc0c369d4fa01194e20141f303",
      "old_mode": 33188,
      "old_path": "go/private/rules/stdlib.bzl",
      "new_id": "ff994f71d0e2bba4db099352c96f0c840269d83a",
      "new_mode": 33188,
      "new_path": "go/private/rules/stdlib.bzl"
    },
    {
      "type": "modify",
      "old_id": "3214c71427a496b28092ce954fa9376b2dcfc2a5",
      "old_mode": 33188,
      "old_path": "go/private/rules/test.bzl",
      "new_id": "37a68a9dad1a315ac27f191d42dad2c2ea4fbd37",
      "new_mode": 33188,
      "new_path": "go/private/rules/test.bzl"
    },
    {
      "type": "modify",
      "old_id": "8177b112a30f83210750542ee866abdde57514f2",
      "old_mode": 33188,
      "old_path": "go/toolchains.rst",
      "new_id": "a51c037e5f3bc82e78ffe6f9dd9660b3691e6e1c",
      "new_mode": 33188,
      "new_path": "go/toolchains.rst"
    },
    {
      "type": "modify",
      "old_id": "520b7f3c9e6a1f3d017dd021e8997a30605dd4aa",
      "old_mode": 33188,
      "old_path": "proto/compiler.bzl",
      "new_id": "597e404c95087df9b8c32958f893fe3e276cd4f6",
      "new_mode": 33188,
      "new_path": "proto/compiler.bzl"
    },
    {
      "type": "modify",
      "old_id": "5a27231b3ca384ba5b9262dafccddaa24dd68bc3",
      "old_mode": 33188,
      "old_path": "proto/def.bzl",
      "new_id": "b2ec01e19f1fe8bf0ec82fbad8db0624a57e810a",
      "new_mode": 33188,
      "new_path": "proto/def.bzl"
    },
    {
      "type": "modify",
      "old_id": "7eb32aec2d4df9d8a510f064f9a8915db0837ce3",
      "old_mode": 33188,
      "old_path": "tests/core/go_binary/many_deps.bzl",
      "new_id": "45934f81fad4eeef1b6b191773cfc28a9e253659",
      "new_mode": 33188,
      "new_path": "tests/core/go_binary/many_deps.bzl"
    },
    {
      "type": "modify",
      "old_id": "761a5a0c43fd56fc6be601a5d238fb3a6c7a809d",
      "old_mode": 33188,
      "old_path": "tests/core/go_proto_aspect/codegen.bzl",
      "new_id": "c97f9dfc93a47bc824c9f111ab0dcb6fcd084e05",
      "new_mode": 33188,
      "new_path": "tests/core/go_proto_aspect/codegen.bzl"
    }
  ]
}
