What's Changed
This is a focused decode-side optimization. The numbers below come from pytest-benchmark on Apple M1 / CPython 3.14 (PGO-built wheels), comparing v3.4.0 → v3.4.1 head-to-head.
⚡ Decode (DAG-CBOR)
| Fixture | v3.4.0 | v3.4.1 | Speedup |
|---|---|---|---|
canada |
4.75 ms | 4.43 ms | 1.07x (+7%) |
github |
69 µs | 66 µs | 1.05x (+5%) |
twitter |
790 µs | 766 µs | 1.03x (+3%) |
citm_catalog |
1.79 ms | 1.77 ms | 1.01x (+1%) |
The decoder used to fetch the Python recursion limit on every recursive step. We now read it once per top-level decode call and pass it through, closing the last decode gap with cbrrr (we're within 0.7% of it on canada and 30–40% ahead on the others).
🔧 Optimizations
Deserialization v3.4.0 → v3.4.1
Serialization v3.4.0 → v3.4.1
Full Changelog: v3.4.0...v3.4.1