[package]
edition = "2021"
name = "bytehaul"
version = "0.1.2"
build = false
exclude = [
"/.claude/**",
"/.github/**",
"/.uv-cache/**",
"/AGENTS.md",
"/docs/private/**",
]
publish = ["crates-io"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Async HTTP download library with resume, multi-connection, rate limiting, and checksum verification"
documentation = "https://docs.rs/bytehaul"
readme = "README.md"
keywords = [
"download",
"http",
"async",
"resume",
"range",
]
categories = [
"asynchronous",
"network-programming",
"web-programming::http-client",
]
license = "MIT"
repository = "https://github.com/triwinds/bytehaul"
[lib]
name = "bytehaul"
path = "src/lib.rs"
[[test]]
name = "m1_basic"
path = "tests/m1_basic.rs"
[[test]]
name = "m2_resume"
path = "tests/m2_resume.rs"
[[test]]
name = "m3_multiworker"
path = "tests/m3_multiworker.rs"
[[test]]
name = "m5_retry"
path = "tests/m5_retry.rs"
[[test]]
name = "m6_features"
path = "tests/m6_features.rs"
[[test]]
name = "m7_fault_stress"
path = "tests/m7_fault_stress.rs"
[dependencies.bincode]
version = "1"
[dependencies.bitvec]
version = "1"
features = ["serde"]
[dependencies.bytes]
version = "1"
[dependencies.crc32fast]
version = "1"
[dependencies.futures]
version = "0.3"
[dependencies.hickory-resolver]
version = "0.25"
features = [
"tokio",
"system-config",
]
default-features = false
[dependencies.parking_lot]
version = "0.12"
[dependencies.reqwest]
version = "0.12"
features = [
"stream",
"charset",
"http2",
"macos-system-configuration",
"rustls-tls-native-roots",
]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.http]
version = "1"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"full",
"test-util",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
[dev-dependencies.warp]
version = "0.3"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(tarpaulin)"]