logo

Rust crates reviews

Cryptographically verifiable, distributed dependency reviews

crate: byteorder

https://lib.rs/crates/byteorder/

Add the last reviewed version to Cargo.toml / [dependencies]:

byteorder = "1.4.3"

Filter reviews clicking on the numbers in the summary.

Full column names in tooltip hints: rating Negative, rating Neutral, rating Positive, rating Strong, thoroughness, understanding, reviews count.

Neg
Neu
Pos
Str
tho
und
rev
3
7
3
4
1
1
1
crate version
rating
date
reviewer
thoroughness, understanding
byteorder 1.3.4
positive
2020-02-27
medium, medium

Provides methods for encoding and decoding numbers in big-endian and
little-endian order.

This is a widely used, very well tested, high quality crate.

There are two kinds of unsafe blocks:

(1) Integer/IEEE754 floating point casting. After bumping MSRV to 1.20.0
some of these can be avoided by using {f32,f64}::from_bits() from the
standard library.

(2) Slice casting (via pointers). It seems to assume that for example u32,
i32 and f32 have compatible alignment, which is probably valid. Maybe this
should be noted in a comment.

byteorder 1.3.4
strong
2020-04-02
high, high

There was little delta to the 1.3.2 version, but that was checked thoroughly.

byteorder 1.3.4
negative
2020-08-27
low, medium

See Full Audit

  • MSRV policy!
  • Basic swizzling/endian stuff
  • You didn't have to write it
  • Excessive and distributed unsafe in serialization related code is hard to audit and makes me nervous
  • History of unsoundness. Most crate versions have alignment related bugs, and 0.2.x had overflow issues which regressed in 0.3.x.
  • Very limited functionality
byteorder 1.3.4
positive
2021-11-29
none, none

byteorder is a basic crate for encoding and decoding numbers in either big-endian or little-endian order.

I trust the authors. I didn't review the source code.
Published to crates.io by:: BurntSushi
High reputation and visibility in the rust community.
https://web.crev.dev/rust-reviews/people_of_rust/

© bestia.dev 2021, MIT Licence, Version: 2021.1208.1729

Open source repository for this web app: https://github.com/bestia-dev/cargo_crev_web/