Skip to content

feat(harness): Java FB/Capn, six-language YAML, MessagePack-CSharp - #106

Merged
leo-gan merged 1 commit into
masterfrom
add-missing-serializers
Aug 17, 2026
Merged

feat(harness): Java FB/Capn, six-language YAML, MessagePack-CSharp#106
leo-gan merged 1 commit into
masterfrom
add-missing-serializers

Conversation

@leo-gan

@leo-gan leo-gan commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Summary

Wrapper-only. Research matched existing official libraries, then registered them.

Gap Library we added Why this one
Java FlatBuffers com.google.flatbuffers:flatbuffers-java + generated tables from cpp/schemas/benchmark.fbs Official Google Java runtime
Java Cap’n Proto org.capnproto:runtime + generated BenchmarkCapnp Official capnproto-java
Python YAML yaml via PyYAML (already in pyproject.toml) The usual Python YAML library
Java YAML jackson-yaml (jackson-dataformat-yaml) Same Jackson family as JSON
JS YAML js-yaml Usual Node YAML
Rust YAML serde_yaml Usual serde YAML crate
C YAML libyaml 0.2.5 Official C YAML 1.1 library
C++ YAML yaml-cpp 0.8 Usual C++ YAML library
C# MessagePack MessagePack-CSharp + ContractlessStandardResolver Official .NET MessagePack
C native streams yyjson write_fp / read_fp Real FILE* API; other C codecs stay copied
Swift native streams not claimed Codable encoders have no OutputStream API

Experiment tables are not re-run here. Next PR lists the new names in Experiments 7, 8, 2/10.

Validation

  • Java: mvn test -Dtest=RoundtripTest
  • C#: dotnet build + selfcheck
  • Python: registry test
  • JS: node --test
  • Rust: all_serializers_roundtrip_all_v2_fixtures
  • C: c_serializer_tests (21 serializers, including libyaml)
  • C++: cpp_serializer_tests (yaml-cpp roundtrips)

Published site Results / dashboard payloads were not regenerated.

…Sharp

Research matched official libraries already used elsewhere in the suite:

- Java FlatBuffers (flatbuffers-java + generated tables from benchmark.fbs)
- Java Cap'n Proto (org.capnproto:runtime + generated BenchmarkCapnp)
- YAML: PyYAML (already a dep), jackson-dataformat-yaml, js-yaml,
  serde_yaml, libyaml, yaml-cpp
- C# MessagePack-CSharp with ContractlessStandardResolver
- C yyjson native FILE* stream path (other C/Swift codecs stay copied)

Experiment tables are not re-run here.
@leo-gan
leo-gan merged commit 2e72437 into master Aug 17, 2026
1 check passed
@leo-gan
leo-gan deleted the add-missing-serializers branch August 17, 2026 20:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant