## [1.21.1](https://github.com/asepharyana/mytheclipse/compare/v1.21.0...v1.21.1) (2026-08-29)
### Bug Fixes
* **ci:** restore full CI green — test-matrix, clippy, rustfmt, and rustdoc gates ([1dfc6d6](https://github.com/asepharyana/mytheclipse/commit/1dfc6d68657e5b002896f400d744b052800c9285))
mytheclipse-http
HTTP client/server abstraction with built-in mytheclipse resilience primitives (retry, circuit breaker, timeout, rate limit).
Features
| Feature | Default | Backend | Description |
|---|---|---|---|
client |
yes | reqwest |
HTTP client with timeout + tracing. |
server-axum |
no | axum |
Axum-based server with health/metrics. |
server-hyper |
no | hyper |
Low-level hyper server. |
Usage
[dependencies]
mytheclipse-http = "0.2"
Client with timeout
use mytheclipse_http::HttpClient;
use std::time::Duration;
#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = HttpClient::new().with_timeout(Duration::from_secs(10));
let resp = client.get("https://httpbin.org/get").await?;
println!("status: {}", resp.status());
Ok(())
}
Server (axum)
[dependencies]
mytheclipse-http = { version = "0.2", features = ["server-axum"] }
use mytheclipse_http::HttpServer;
use std::net::SocketAddr;
#[tokio::main]
async fn main() {
let server = HttpServer::new("0.0.0.0:3000".parse().unwrap());
server.run().await;
}