Kill reqwest — minimal HTTP client on raw hyper + tokio-rustls
New src/agent/api/http.rs: ~240 lines, supports GET/POST, JSON/form bodies, SSE streaming via chunk(), TLS via rustls. No tracing dep. Removes reqwest from the main crate and telegram channel crate. Cargo.lock drops ~900 lines of transitive dependencies. tracing now only pulled in by tui-markdown. Co-Authored-By: Proof of Concept <poc@bcachefs.org>
This commit is contained in:
parent
a421c3c9f3
commit
1cf4f504c0
9 changed files with 360 additions and 915 deletions
38
Cargo.toml
38
Cargo.toml
|
|
@ -19,16 +19,23 @@ version.workspace = true
|
|||
edition.workspace = true
|
||||
|
||||
[dependencies]
|
||||
capnp = "0.25"
|
||||
figment = { version = "0.10", features = ["env"] }
|
||||
env_logger = "0.11"
|
||||
uuid = { version = "1", features = ["v4"] }
|
||||
clap = { version = "4", features = ["derive"] }
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
serde_json = "1"
|
||||
crossterm = { version = "0.29", features = ["event-stream"] }
|
||||
ratatui = { version = "0.30", features = ["unstable-rendered-line-info"] }
|
||||
tui-markdown = "0.3"
|
||||
tui-textarea = { version = "0.10.2", package = "tui-textarea-2" }
|
||||
json5 = "1.3"
|
||||
bincode = "1"
|
||||
regex = "1"
|
||||
glob = "0.3"
|
||||
chrono = "0.4"
|
||||
clap = { version = "4", features = ["derive"] }
|
||||
libc = "0.2"
|
||||
redb = "2"
|
||||
rkyv = { version = "0.7", features = ["validation", "std"] }
|
||||
memchr = "2"
|
||||
memmap2 = "0.9"
|
||||
|
|
@ -37,25 +44,26 @@ peg = "0.8"
|
|||
paste = "1"
|
||||
jobkit = { git = "https://evilpiepirate.org/git/jobkit.git", features = ["daemon"] }
|
||||
tokio = { version = "1", features = ["full"] }
|
||||
reqwest = { version = "0.13", default-features = false, features = ["json", "rustls"] }
|
||||
glob = "0.3"
|
||||
tokio-util = { version = "0.7", features = ["compat"] }
|
||||
tokio-scoped = "0.2.0"
|
||||
futures = "0.3"
|
||||
capnp = "0.25"
|
||||
capnp-rpc = "0.25"
|
||||
http = "1"
|
||||
hyper = { version = "1", features = ["client", "http1"] }
|
||||
hyper-util = { version = "0.1", features = ["tokio"], default-features = false }
|
||||
http-body-util = "0.1"
|
||||
rustls = "0.23"
|
||||
tokio-rustls = "0.26"
|
||||
rustls-native-certs = "0.8"
|
||||
serde_urlencoded = "0.7"
|
||||
bytes = "1"
|
||||
anyhow = "1"
|
||||
base64 = "0.22"
|
||||
dirs = "6"
|
||||
futures = "0.3"
|
||||
tiktoken-rs = "0.9.1"
|
||||
figment = { version = "0.10", features = ["env"] }
|
||||
tui-markdown = "0.3"
|
||||
tui-textarea = { version = "0.10.2", package = "tui-textarea-2" }
|
||||
redb = "2"
|
||||
log = "0.4"
|
||||
ratatui = { version = "0.30", features = ["unstable-rendered-line-info"] }
|
||||
crossterm = { version = "0.29", features = ["event-stream"] }
|
||||
skillratings = "0.28"
|
||||
capnp-rpc = "0.25"
|
||||
tokio-util = { version = "0.7", features = ["compat"] }
|
||||
env_logger = "0.11"
|
||||
tokio-scoped = "0.2.0"
|
||||
|
||||
[build-dependencies]
|
||||
capnpc = "0.25"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue