From a40c77884cfb4bec1788c1e90fd08f50d3f06b0a Mon Sep 17 00:00:00 2001 From: David Koloski Date: Mon, 5 Apr 2021 15:30:15 -0500 Subject: [PATCH 1/2] N20: rkyv --- content/posts/newsletter-020/index.md | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/content/posts/newsletter-020/index.md b/content/posts/newsletter-020/index.md index de2b2a2a9..6e4775436 100644 --- a/content/posts/newsletter-020/index.md +++ b/content/posts/newsletter-020/index.md @@ -410,6 +410,34 @@ includes more options for HDR tonemapping. [rafx-distill]: https://github.com/amethyst/distill [rafx-ldtk]: https://ldtk.io +### [rkyv] + +[rkyv] is a zero-copy deserialization framework for Rust. It's similar to FlatBuffers and Cap'n +Proto and can be used for data storage and messaging. + +A [benchmark][rust-serialization-benchmark] was put together to compare rkyv against other leading +serialization solutions and gather feedback and use cases for development. A +[summary and analysis][rkyv-is-faster-than] of the results is also available. + +Version 0.5 is hot off the presses and rolls up features from the 0.4 development cycle: + +- Derive macros can now implement `PartialEq` and `PartialOrd` between archived and unarchived types +- Custom type bounds for serialization and deserialization can be added with derive attributes +- Helper types like [AlignedVec][rkyv-AlignedVec] and [Infallible][rkyv-Infallible] were introduced + to improve ergonomics +- `const_generics` are now enabled by default +- Helper functions have been added to make getting root objects easier +- Several bugfixes and performance improvements + +A [feedback issue][rkyv-feedback] is still open for providing feedback on further development. + +[rkyv]: https://github.com/djkoloski/rkyv +[rust-serialization-benchmark]: https://github.com/djkoloski/rust_serialization_benchmark +[rkyv-is-faster-than]: https://davidkoloski.me/blog/rkyv-is-faster-than +[rkyv-AlignedVec]: https://docs.rs/rkyv/0.5.0/rkyv/struct.AlignedVec.html +[rkyv-Infallible]: https://docs.rs/rkyv/0.5.0/rkyv/struct.Infallible.html +[rkyv-feedback]: https://github.com/djkoloski/rkyv/issues/67 + ### [WhatTheFrame] ![whattheframe gui](whattheframe.png) From 163c7a45f62f7db1d71cbb6236846710fddfdf4d Mon Sep 17 00:00:00 2001 From: Joe Clay <27cupsofcoffee@gmail.com> Date: Mon, 5 Apr 2021 21:36:24 +0100 Subject: [PATCH 2/2] Update content/posts/newsletter-020/index.md --- content/posts/newsletter-020/index.md | 33 +++++++++++++++------------ 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/content/posts/newsletter-020/index.md b/content/posts/newsletter-020/index.md index 6e4775436..cf2322c0a 100644 --- a/content/posts/newsletter-020/index.md +++ b/content/posts/newsletter-020/index.md @@ -412,24 +412,29 @@ includes more options for HDR tonemapping. ### [rkyv] -[rkyv] is a zero-copy deserialization framework for Rust. It's similar to FlatBuffers and Cap'n -Proto and can be used for data storage and messaging. - -A [benchmark][rust-serialization-benchmark] was put together to compare rkyv against other leading -serialization solutions and gather feedback and use cases for development. A -[summary and analysis][rkyv-is-faster-than] of the results is also available. - -Version 0.5 is hot off the presses and rolls up features from the 0.4 development cycle: - -- Derive macros can now implement `PartialEq` and `PartialOrd` between archived and unarchived types -- Custom type bounds for serialization and deserialization can be added with derive attributes -- Helper types like [AlignedVec][rkyv-AlignedVec] and [Infallible][rkyv-Infallible] were introduced - to improve ergonomics +[rkyv] is a zero-copy deserialization framework for Rust. It's similar to FlatBuffers +and Cap'n Proto and can be used for data storage and messaging. + +A [benchmark][rust-serialization-benchmark] was put together to compare rkyv +against other leading serialization solutions and gather feedback and use +cases for development. A [summary and analysis][rkyv-is-faster-than] of the +results is also available. + +Version 0.5 is hot off the presses and rolls up features from the 0.4 +development cycle: + +- Derive macros can now implement `PartialEq` and `PartialOrd` between + archived and unarchived types +- Custom type bounds for serialization and deserialization can be added + with derive attributes +- Helper types like [AlignedVec][rkyv-AlignedVec] and + [Infallible][rkyv-Infallible] were introduced to improve ergonomics - `const_generics` are now enabled by default - Helper functions have been added to make getting root objects easier - Several bugfixes and performance improvements -A [feedback issue][rkyv-feedback] is still open for providing feedback on further development. +A [feedback issue][rkyv-feedback] is still open for providing feedback on +further development. [rkyv]: https://github.com/djkoloski/rkyv [rust-serialization-benchmark]: https://github.com/djkoloski/rust_serialization_benchmark