50 releases (15 stable)
1.10.0 | Feb 3, 2025 |
---|---|
1.9.0 | Nov 28, 2024 |
1.8.0 | Oct 21, 2024 |
1.7.0 | Jul 31, 2024 |
0.2.3 | Mar 30, 2015 |
#16 in Rust patterns
13,539,684 downloads per month
Used in 38,792 crates
(6,999 directly)
285KB
4K
SLoC
Bytes
A utility library for working with bytes.
Usage
To use bytes
, first add this to your Cargo.toml
:
[dependencies]
bytes = "1"
Next, add this to your crate:
use bytes::{Bytes, BytesMut, Buf, BufMut};
no_std support
To use bytes
with no_std environment, disable the (enabled by default) std
feature.
[dependencies]
bytes = { version = "1", default-features = false }
To use bytes
with no_std environment without atomic CAS, such as thumbv6m, you also need to enable
the extra-platforms
feature. See the documentation for the portable-atomic
crate for more information.
The MSRV when extra-platforms
feature is enabled depends on the MSRV of portable-atomic
.
Serde support
Serde support is optional and disabled by default. To enable use the feature serde
.
[dependencies]
bytes = { version = "1", features = ["serde"] }
The MSRV when serde
feature is enabled depends on the MSRV of serde
.
Building documentation
When building the bytes
documentation the docsrs
option should be used, otherwise
feature gates will not be shown. This requires a nightly toolchain:
RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc
License
This project is licensed under the MIT license.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in bytes
by you, shall be licensed as MIT, without any additional
terms or conditions.
Dependencies
~0–420KB