)]}'
{
  "commit": "23ac6d3d69de1243cdde8749f003f9af857c93b2",
  "tree": "8fd19751a26e28c618c6f29e56ef20136b77592a",
  "parents": [
    "e1b5db64f9f3046b0833a6f3c1d0f7a488dd0acd"
  ],
  "author": {
    "name": "Anton Karpov",
    "email": "karpovantonme@gmail.com",
    "time": "Tue Oct 20 13:30:50 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Oct 20 13:33:27 2026 -0700"
  },
  "message": "Ruby: name the argument from_native actually takes in MethodDescriptor (#29328)\n\n`MethodDescriptor::MethodDescriptorClass#from_native` documents its first argument as `service_def` and takes `method_def`. YARD binds by the name in that slot, so the tag documents an argument that is not there.\n\nThe description on the same line already reads \"MethodDef pointer to be wrapped\", and the 4 sibling `from_native` definitions in `ruby/lib/google/protobuf/ffi/` each name their own argument:\n\n| file | documented | takes |\n|---|---|---|\n| `enum_descriptor.rb:29` | `enum_def` | `enum_def` |\n| `descriptor.rb:34` | `msg_def` | `msg_def` |\n| `field_descriptor.rb:33` | `field_def` | `field_def` |\n| `file_descriptor.rb:39` | `file_def` | `file_def` |\n| `method_descriptor.rb:33` | `service_def` | `method_def` |\n\n`service_def` is a local computed inside the body, which is likely how it got there.\n\nDocumentation only, no behaviour change.\n\nHow I found it: a checker I wrote that compares each documented name against the signature under it. It read 46 of the 46 documented comments under `ruby/`, and this was the only one it had to say anything about.\n\nCloses #29328\n\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/protocolbuffers/protobuf/pull/29328 from karpovantonme:docs/param-name-in-method-descriptor 47b6be0f9de4067947feeed794704c98410c0e77\nPiperOrigin-RevId: 1003352783\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f879d49c070f771aa1a0c1c732642600a70c092c",
      "old_mode": 33188,
      "old_path": "ruby/lib/google/protobuf/ffi/method_descriptor.rb",
      "new_id": "49ce15ea8e103b24fb879bbafe8bdaf14fbf09cf",
      "new_mode": 33188,
      "new_path": "ruby/lib/google/protobuf/ffi/method_descriptor.rb"
    }
  ]
}
