#buffer #http

body-image

Adaptive RAM/file-backed HTTP bodies

11 releases (6 stable)

✓ Uses Rust 2018 edition

2.0.0 Jan 13, 2020
1.3.0 Oct 1, 2019
1.2.0 May 13, 2019
1.1.0 Mar 6, 2019
0.3.0 Jun 26, 2018

#12 in #buffer

Download history 2/week @ 2019-10-10 45/week @ 2019-10-17 43/week @ 2019-10-24 32/week @ 2019-10-31 1/week @ 2019-11-07 12/week @ 2019-11-14 19/week @ 2019-11-21 20/week @ 2019-11-28 21/week @ 2019-12-05 43/week @ 2019-12-12 1/week @ 2019-12-19 10/week @ 2019-12-26 50/week @ 2020-01-09 73/week @ 2020-01-16

83 downloads per month
Used in 3 crates

MIT/Apache

55KB
1K SLoC

body-image

Crates.io Rustdoc Travis CI Build Appveyor CI Build

The body-image crate provides a uniform access strategy for HTTP body payloads which may be scattered across multiple allocations in RAM, or buffered to a temporary file, and optionally memory mapped. This effectively enables trading some file I/O cost in return for supporting significantly larger bodies without risk of exhausting RAM.

See the top-level (project workspace) README for additional rationale.

Minimum supported rust version

MSRV := 1.39.0

The crate will fail fast on any lower rustc (via a build.rs version check) and is also CI tested on this version.

License

This project is dual licensed under either of following:

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in body-image by you, as defined by the Apache License, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1MB
~21K SLoC