Deser: una alternativa técnica a Serde para la serialización en Rust

Fuentes: Deser: A Technical Alternative to Serde for Rust Serialization

La librería de serialización Serde, fundamental para el ecosistema de Rust, presenta limitaciones de diseño que dificultan su uso en ciertos casos complejos, como el manejo de números de precisión arbitraria o la deserialización de estructuras anidadas. Un desarrollador de Sentry ha documentado estas restricciones y ha reactivado su proyecto Deser, una alternativa que invierte la arquitectura tradicional de Serde. Mientras que Serde depende de la recursión en la pila para que los tipos guíen el proceso de deserialización, Deser utiliza un modelo basado en eventos que mantiene el estado en la pila (heap) y evita la recursión. Esta diferencia técnica permite a Deser manejar datos profundamente anidados sin consumir recursos de memoria excesivos, aunque sacrifica el soporte para formatos no auto-descriptivos como Protobuf. El proyecto, inspirado en miniserde y diseñado para procesar grandes volúmenes de datos no confiables, ofrece una experiencia de usuario similar a Serde pero con una arquitectura distinta. Aunque Deser no puede reemplazar a Serde debido a las reglas de orfandad que lo entran en el ecosistema, ofrece una alternativa viable para desarrolladores que buscan resolver las limitaciones de rendimiento y complejidad de Serde en sus proyectos específicos.