mirror of
https://github.com/lexmount/moli.git
synced 2026-11-15 08:08:07 +00:00
Enable the curl fork's opt-in browser HTTP/1 response-field parser before
framing and callbacks. Cover CR-separated/folded fields, leading/repeated
CR, observations, length/chunked bodies and malformed framing across all
three fetch transports. Consume lexmount/curl-rust#3 at 79310cbd939.
Extracted from 3c1dfe9e8a8b69a72cb50ec53c57df7e249c5a67 onto main
8d57e02b3c, retaining its XML fork pin.
Validated cargo fmt --all, strict workspace/all-targets/all-features
Clippy and cargo nextest run --no-fail-fast: 20,490 passed, 18 skipped.
Live CDP checks of six raw-header responses match Chromium exactly in
status, response headers and body. The curl fork's 75 local tests pass.
31 lines
1.1 KiB
TOML
31 lines
1.1 KiB
TOML
[package]
|
|
license.workspace = true
|
|
name = "moli-curl"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.100"
|
|
cidr = "0.3.2"
|
|
crossbeam-channel = "0.5.15"
|
|
curl = { version = "0.4.51", default-features = false, features = ["apple-sectrust", "brotli", "browser-response-headers", "http2", "poll_7_68_0", "ssl", "static-curl", "websocket"] }
|
|
curl-sys = { version = "0.4.91", default-features = false }
|
|
moli-header-field = { path = "../moli-header-field" }
|
|
moli-dns-resolver = { path = "../moli-dns-resolver" }
|
|
openssl-sys = { version = "0.9", features = ["aws-lc"] }
|
|
parking_lot = "0.12"
|
|
tracing = "0.1.41"
|
|
tokio = { version = "1.51.0", features = ["sync"] }
|
|
url = "2.5.7"
|
|
|
|
[dev-dependencies]
|
|
rcgen = { version = "0.13", default-features = false, features = ["aws_lc_rs", "pem"] }
|
|
rustls = { version = "0.23", default-features = false, features = ["aws_lc_rs", "std", "tls12"] }
|
|
tempfile = "3"
|
|
tokio = { version = "1.51.0", features = ["macros", "rt", "time"] }
|
|
tokio-tungstenite = { version = "0.28.0", default-features = false, features = ["handshake"] }
|
|
tracing-subscriber = { version = "0.3.19", features = ["fmt"] }
|
|
|
|
[lints]
|
|
workspace = true
|