)]}'
{
  "commit": "c442ff187a9ba6a793ced81b8a81df38c7c8a990",
  "tree": "5f11368a054a4622b889a8a24a761b5e096d30cc",
  "parents": [
    "b5de4220d0bffa594080bdbf93bbf06d386a6486"
  ],
  "author": {
    "name": "Tobias Werth CA",
    "email": "twerth@google.com",
    "time": "Mon Oct 19 14:56:26 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Oct 21 11:19:53 2026 -0700"
  },
  "message": "Support stripping doc comments in Java and Kotlin proto code generators.\n\nEditing comments in `.proto` files changes generated Javadoc text and shifts line numbers in `@deprecated` source location references, invalidating downstream Java and Kotlin compilation caches even when schemas are unchanged.\n\nAdd a `strip_doc_comments` generator option to `--java_out` and `--kotlin_out` that suppresses source doc comment bodies and source line numbers in generated Javadoc while preserving generated class structure and reflection descriptors, enabling build toolchains to opt out of comment-induced recompilation churn when cross-reference annotations are not requested.\n\nPiperOrigin-RevId: 1002616250\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "23ffdcbf8f51abbf0b339ee726d086905ab63260",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/java/doc_comment.cc",
      "new_id": "7ca117d661f6cda15bbfcad1a2df2a48aa274307",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/java/doc_comment.cc"
    },
    {
      "type": "modify",
      "old_id": "43e4d4ed598cba286e018f5f03f4873edb4062d8",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/java/generator.cc",
      "new_id": "55895574dae1001fb3b489fc6aa32bec862c75bd",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/java/generator.cc"
    },
    {
      "type": "modify",
      "old_id": "b0bba5cfc799ee2153501468b7cfb0dd0e073c74",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/java/generator_unittest.cc",
      "new_id": "04d621444cf07ae01c8474f229b861d96c36e193",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/java/generator_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "3134300a2190e0c4fb11a2695b83c838532bd1ee",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/java/options.h",
      "new_id": "9801ee523c9b3747719a31a117d4caac4012429b",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/java/options.h"
    },
    {
      "type": "modify",
      "old_id": "58f1b1a7437ccdaae612016851adbce6a2cc9846",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/kotlin/annotation_test.cc",
      "new_id": "8efabfab3884b5d48d84102090d6156beabbabd8",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/kotlin/annotation_test.cc"
    },
    {
      "type": "modify",
      "old_id": "579355d8e1ca401c74a013857447d4ff0a05425e",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/kotlin/generator.cc",
      "new_id": "b79435bda47b3311145d5f070f50b341372f1b34",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/kotlin/generator.cc"
    }
  ]
}
