Deser: A Rust Serialization Library That Never Overflows the Stack
Deser: Rethinking Rust Serialization

Armin Ronacher's Deser is a new Rust serialization library that inverts Serde's architecture: instead of types driving deserialization through recursive visitors, the format pushes events into heap-allocated sinks. This eliminates stack overflows, enables suspendable parsing, and provides lossless buffering with composable adapters. Deser supports JSON, YAML, TOML, CBOR, XML, and more, but accepts tradeoffs like larger binaries and mixed runtime performance. It's not a drop-in replacement, but it's a compelling experiment.
In Serde, a type drives the deserialization process... Deser on the other hand turns this around and the format tells the type of the next value and pushes events into a sink.