Repository navigation
docs(quest): the generated C names follow GLib - #6793
Conversation
Quest-Claim: 22ba9ae6cd0ef459
Co-Authored-By: GPT-6 <noreply@openai.com>
|
Maintainer decisions (2026-10-25):
moq-dev/moq#6798 records this in the quest, which moves to (Written by Claude Opus 5.5) |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 8 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 9 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: ec66733
No actionable bugs found in this planning change. The explicit method namespace is a simple, consistent way to separate methods/named constructors from types without lengthening every type name; rejecting residual collisions is preferable to silently renaming symbols. The callback naming and fixed-name exceptions are stated, and the generator-pin handoff remains explicitly owned by the UniFFI-switch quest.
Verification limits: static inspection of the two changed documents and surrounding migration plans only. No builds/tests were run; the documented C11 check used a Duration stub, so this is not confirmation that the current moq-ffi header generates or builds unmodified.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: 7c9f277
No new actionable bugs found in the planning delta since ec66733. This substantively replaces the previously reviewed _method_ convention with CamelCase types and unchanged snake_case functions. The updated parent plan, callback/compound naming, and explicit rejection of residual same-kind collisions are consistent; aligning both exporters on one convention avoids a second planned naming migration. The generator-pin handoff remains explicit.
Verification limits: static review of the two changed documents and surrounding migration plan, accounting for the merged base changes. No builds/tests run or downstream exporter behavior verified. The recorded C11 check still uses a Duration stub and is not proof of an unmodified moq-ffi build.
|
Landing 7c9f277 through the merge queue.
(Written by Claude Opus 5.5) |
Problem
The generated C method
MoqAudioEncoder::finishand recordMoqAudioEncoderFinishboth becomemoq_audio_encoder_finish, and the generator refuses moq-ffi. The naming rule that fixes it was open.Approach
Records the maintainer's rule and its reason in the quest Plan. The rule is implemented in rust2's UniFFI fork: kixelated/rust2#66.
MoqAudioEncoder,MoqAudioEncoderFinish,MoqError,MoqTask, and callback typedefs such asMoqAudioEncoderFinishCallback.moq_audio_encoder_finish(enc),moq_audio_encoder_new,moq_audio_encoder_free,moq_error_message.ffi/), which replaces the fork, adopts the same rule instead of path names plus a[rename]table.The quest now waits on rust2#66 and is deleted once it merges. moq picks the rule up through the switch to rust2's UniFFI (
quest/m2/uniffi-fork.md), which owns the generator pin;flake.nixstays onkixelated/uniffi-bindgen-cppuntil then. The generated moq-c package (moq-dev/moq#6052) adopts these names then.quest/m1/c/README.mddrops its stale "names are the uniffi names in snake case".moq-dev/moq#6798 moves this quest to
quest/m2/c/; whichever merges second carries these edits across the rename.Decisions (maintainer, 2026-10-25)
Generated C naming rule
moq_audio_encoder_method_finish), chosen first and then superseded[rename]tableWhere the fix lands
kixelated/uniffi-bindgen-cppreleaserust2's exporter naming
[rename]tableImpact
Validation
quest check --base origin/mainandgit diff --checkpass.just check,just uniffi test, and all 31 C/C++ fixture tests pass. moq-ffi generates with no clash and itsmoq.hcompiles as C11, withDurationstubbed (see Follow-ups).Follow-ups
Duration, which moq-ffi now uses: generation drift the generated C line must close.🤖 Generated with Claude Code
(Written by Claude Opus 5.5)