Crash when parsing gRPC schemas

Bug
When I enter one of our internal gRPC server’s address in the endpoint field, Yaak instantly crashes and can’t be relaunched without crashing unless I clear its data.
I narrowed down the issue to a stack overflow “json_schema::message_to_json_schema”. If I comment out
properties.insert(f.name().to_string(), message_to_json_schema(pool, m));then it doesn’t crash anymore.
Adding some logs show that it gets stuck in one of the many places where our protobuf messages have circular references
eg:
message Item {
oneof typeditem {
ArrayItem foo;
}
}
message ArrayItem {
//...
Item previous;
}I am not submitting a PR because I don’t know how to really fix this instead of just breaking the schema paring feature.
Have a nice day,
Mac
try to fix by #194
thanks.
I tried it out and it’s stuck on “inspecting schema”, which means I can’t pick a method.
Do you mean that you built #194 locally, but it still doesn't work?
Yes! It doesn’t crash but it’s not really working either: it’s stuck on waiting for reflection, I can’t even import my protos manually.
Thanks your reply. I made some update again. And I have tested it with the proto below. If it doesn’t work yet, let me know.
Hey,
Thanks. Have you pushed the branch? The latest commit on the PR is from March 27 (
7cd3b8f2e3485ba09d1f0cbbb2435af213c40e80)
Thanks for the fix here! I will get the PR merged for the next release
https://yaak.app/blog/2025.2.0-beta.14
https://yaak.app/blog/2025.2.0-beta.15
https://yaak.app/blog/2025.2.0