Bzip2 crate switches from C to 100% rust
a year ago
- #bzip2
- #Rust
- #performance
- bzip2 crate 0.6.0版本现已默认使用Rust实现(libbz2-rs-sys),显著提升性能并改善跨平台编译体验
- 该Rust实现在多数场景下性能超越C版本,压缩速度提升尤为显著
- Rust实现简化了跨平台编译流程,彻底解决了C依赖项问题,特别针对WebAssembly、Windows和Android平台
- libbz2-rs-sys默认不导出符号以避免依赖冲突,同时提供特性开关按需启用符号导出
- 新实现支持通过MIRI运行测试,能更安全地处理unsafe代码及高层级库调用
- 安全审计发现一处逻辑错误(差一错误)并改进了模糊测试器,未发现其他重大问题
- 本次更新是重要的维护优化,使bzip2 crate更快更易用,用户无需关注底层实现细节