[GLD Serializer Benchmark] C++ nlohmann_cbor 3.12.0 — spec compliance misses
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 50.6k
- Forks
- 7.5k
- Avg merge
- 4d 17h
- Merged PRs (30d)
- 58
Description
Hi — this is a friendly report from the GLD Serializer Benchmark, an independent multi-language suite that times serializers and checks them against the published format specs (RFC 8259, YAML 1.2, …).
We measured nlohmann_cbor 3.12.0 on C++. The suite recorded spec-profile misses for this pin. The catalog is report-only: a miss is not a CI failure, and some cases are older or stricter profiles (for example RFC 4627 vs RFC 8259) rather than a crash.
Compliance results (please start here)
This link opens the live heatmap on C++ with nlohmann_cbor already selected (All standards). Click a scored cell for each FAIL and the cited spec paragraph:
https://leo-gan.github.io/GLD.SerializerBenchmark/dashboard/#compliance/cpp/nlohmann_cbor
How the catalog is built, and how to read a FAIL line:
- https://leo-gan.github.io/GLD.SerializerBenchmark/compliance/
- https://leo-gan.github.io/GLD.SerializerBenchmark/compliance/reading-results/
I am not pasting the case list here so you can use the Dashboard (filters, heatmap, and spec links) rather than a static dump.
Optional: one standard family only — #compliance/cpp/nlohmann_cbor/json (or yaml, cbor, …).
Benchmark timings (same pin)
The same suite also publishes encode / decode time and payload size for this library on C++:
Details table (this library pre-selected):
That page is the live L1 snapshot, not a claim that one library is “best.”
Ask
Please look at the Compliance view for nlohmann_cbor. If a miss is a real decoder/encoder bug you want to fix, great. If it is an intentional default (accepting NaN, YAML 1.1 bools, …), a short note here is enough — we will keep the catalog as-is unless the library’s documented contract changes.
Thanks for the library.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the C++ nlohmann_cbor Compliance dashboard and its linked compliance and reading-results pages. Review each scored FAIL against the cited specification paragraph, then determine whether it represents a real encoder or decoder bug or an intentional documented default. Record the conclusion for each miss in the issue discussion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend-api-design
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100