Releasing bincode-next v3.0.0-rc.1
⚓ Rust 📅 2026-02-23 👤 surdeus 👁️ 5Hello Rustaceans!
For the sad reasons that we all know, the bincode maintenance has officially ceased the development of the project (RUSTSEC-2025-0141). To support the growth of the rust open source ecosystem, we have forked and restart the development of bincode, with the fork been named as bincode-next. After several month of discussions and development, we are finally confirming the release of v3.0.0-rc.1. As this is only a release candidate release, so the api might be unstable. The main reason for the breaking is that we have updated our msrv policy to: msrv version = 1.(latest stable minor -3).(latest patch) which is a breaking change. But future msrv updates according to the new policy will not be seen as breaking again. Exclude this policy change, for as far as we can see, the api of the original part remains the same as bincode v2 (although the internal processing has changed much). To avoid the post become to length, we will only summarize the main changes.
New Features to Look at
- Nested Zero-copy support via Relative Pointers and Const Alignment (optional feature, using the
zerocopyfeature to enable) - Schema Fingerprinting for Safe Versioning (optional, using the
config::standard().with_fingerprint()with the derive macroFingerprintto enable) - Bit-level Packing for Space-Optimized Serialization (optional, using the
BitPackedderive macro with theconfig::standard().with_bit_packing()config to enable) - Compile-time Memory Bound Validation via Const Generics (optional feature, enable the
static-sizefeature to use it)
Internal Updates
- Reducing Binary Bloat via Error De-genericization (see the
error.rserror_path.rsand theerror_macro.rsfor details, but the public apis remains untouched) - Performance Boost via Several Optimization
complex_world_decode/bincode-next (traits)
time: [20.109 µs 20.217 µs 20.325 µs]
change: [−6.8964% −5.8613% −4.7472%] (p = 0.00 < 0.05)
Performance has improved.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severe
complex_world_decode/bincode-v2 (serde)
time: [27.929 µs 28.056 µs 28.174 µs]
change: [−7.5357% −6.3279% −5.2092%] (p = 0.00 < 0.05)
Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
2 (2.00%) high mild
1 (1.00%) high severe
complex_world_decode/bincode-v1 (serde)
time: [24.712 µs 24.959 µs 25.168 µs]
change: [−4.3897% −3.2159% −2.0908%] (p = 0.00 < 0.05)
Performance has improved.
Found 6 outliers among 100 measurements (6.00%)
1 (1.00%) low mild
4 (4.00%) high mild
1 (1.00%) high severe
complex_world_encode/bincode-next (traits)
time: [3.2836 µs 3.2984 µs 3.3127 µs]
change: [+1.7709% +2.9168% +4.0034%] (p = 0.00 < 0.05)
Performance has regressed.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severe
complex_world_encode/bincode-v2 (serde)
time: [4.7513 µs 4.7741 µs 4.7975 µs]
change: [−14.736% −10.981% −7.4938%] (p = 0.00 < 0.05)
Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
3 (3.00%) high mild
1 (1.00%) high severe
complex_world_encode/bincode-v1 (serde)
time: [3.2072 µs 3.2263 µs 3.2458 µs]
change: [+0.2581% +1.5521% +2.8654%] (p = 0.02 < 0.05)
Change within noise threshold.
Found 8 outliers among 100 measurements (8.00%)
4 (4.00%) high mild
4 (4.00%) high severe
These are only results that are run on our developer machine. You could clone the repository and run it yourself. We welcomed bench tests on different platforms.
About Security and Code Quality
For security issues, please visit the Security Team Homepage for more details on reporting.
All code tests passed miri and all main crate source code passed clippy without errors.
We remain committed to code security and welcomed security reporting.
And please notice that contributors shall follow the community guide lines of bincode-next.
Links
Implementation Details and Development Status: GitHuh Homepage
Release Note: v3.0.0-rc.1 Release Note
Discord Server: Discord Server
Official Website: Official Website
Yours faithfully,
Apich Organization Development Team
Note: We know that some community members think that this organization is somehow too heavily branded, but after the sad bincode event, we think that sometimes contribute under the name of a team is better. And although there aren’t that many people in our team, it is definitely not only a solo developer anyway.
1 post - 1 participant
🏷️ Rust_feed