)]}'
{
  "commit": "28b7c28078e90f40e55a407eceb5c2d81b7e8ccf",
  "tree": "79a7dcfd6e1f3052f4ec0cd315dff55b0de34336",
  "parents": [
    "ffffad70bef7e283356130e047ec95f331f3e115"
  ],
  "author": {
    "name": "Jie Luo",
    "email": "jieluo@google.com",
    "time": "Mon Nov 25 13:51:04 2024 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Nov 25 13:51:04 2024 -0800"
  },
  "message": "Add \"absl::StatusOr\u003cPythonConstMessagePointer\u003e GetConstMessagePointer(PyObject* msg)\" in proto_api (#19398)\n\n* Fix GetMutableMessagePointer() in python proto_api to find from generated factory before check with dynamic message factory\r\n\r\nPiperOrigin-RevId: 693428774\r\n\r\n* Add \"absl::StatusOr\u003cPythonConstMessagePointer\u003e GetConstMessagePointer(PyObject* msg)\" in proto_api which works with cpp extension, upb and pure python.\r\n\r\nCherry pick\r\nhttps://github.com/protocolbuffers/protobuf/commit/b9e69e8c11ecb87249b0cbf772911e2c3a80971b\r\nsource files\r\nPiperOrigin-RevId: 699316527",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "50277a3f02d6e9dc1334f8f2be3d184686724160",
      "old_mode": 33188,
      "old_path": "python/google/protobuf/proto_api.cc",
      "new_id": "299c03a56a52984e1bb069e5ade0f161ef1e59ac",
      "new_mode": 33188,
      "new_path": "python/google/protobuf/proto_api.cc"
    },
    {
      "type": "modify",
      "old_id": "5e2957e58383d0cd88ca0d2aa0de970337184ae5",
      "old_mode": 33188,
      "old_path": "python/google/protobuf/proto_api.h",
      "new_id": "1a906d293618fcba3057fe321a868694e4759fa1",
      "new_mode": 33188,
      "new_path": "python/google/protobuf/proto_api.h"
    },
    {
      "type": "modify",
      "old_id": "c242f2b405fa460931be3dc488c97372f230eed9",
      "old_mode": 33188,
      "old_path": "python/google/protobuf/pyext/message_module.cc",
      "new_id": "f1d40c491538376d53989de60922ec2070a928a8",
      "new_mode": 33188,
      "new_path": "python/google/protobuf/pyext/message_module.cc"
    }
  ]
}
