Google Summer of Code 2026. Two merged PRs bringing gRPC codegen to Fory's IDL compiler for Dart and Swift.
Apache Fory is a multi-language serialization framework. Its IDL compiler could already emit model types for eleven languages, but gRPC service generation was landing language by language. I owned Dart and Swift: a Fory IDL service definition now produces an idiomatic client and server in both, across all four gRPC shapes and all three schema frontends.
Both PRs are merged into apache/main and shipping. Along the way I found and fixed a runtime divergence in Fory's Swift implementation: under reference tracking, Swift wrote a different reference flag for value-type structs than Java, Rust and C++ did, so Java could not read Swift-produced bytes. Swift now follows the same convention as the other runtimes.
Happy to walk through the code, the schema, or the decisions behind this one.