Files
hyper-custom-cert/crates/hyper-custom-cert/Cargo.toml
Geoff Seemueller bbc21abc2b cleanup (#1)
* 0.3.4

* Add `RequestOptions` for per-request customization with headers and timeouts

- Introduced the `RequestOptions` struct for flexible HTTP request configurations.
- Added `request_with_options` and `post_with_options` methods.
- Deprecated `request` and `post` in favor of the new methods.
- Updated examples and tests to reflect the new API.

* run cargo fmt

* Update HTTP client methods to use `request_with_options` for improved flexibility. Adjusted related test cases and examples accordingly.

* Format `request_with_options` calls for improved readability.

* - Downgrade `edition` from 2024 to 2021 in Cargo.toml files for compatibility.
- Fix nested `if let` statements to improve readability and correctness.
- Reorganize imports for consistency and structure.

* Restore github old workflows

* update ci

---------

Co-authored-by: geoffsee <>
2025-08-28 15:25:28 -04:00

51 lines
2.1 KiB
TOML

[package]
name = "hyper-custom-cert"
version = "0.3.6"
edition = "2021"
description = "A small, ergonomic HTTP client wrapper around hyper with optional support for custom Root CAs and a dev-only insecure mode for self-signed certificates."
license = "MIT OR Apache-2.0"
repository = "https://github.com/seemueller-io/hyper-custom-cert"
documentation = "https://docs.rs/hyper-custom-cert"
homepage = "https://docs.rs/hyper-custom-cert"
readme = "README.md"
keywords = ["hyper", "http-client", "tls", "rustls", "self-signed"]
categories = ["asynchronous", "network-programming", "web-programming::http-client"]
[lib]
name = "hyper_custom_cert"
path = "src/lib.rs"
[dependencies]
hyper = { version = "1.0", features = ["client", "http1", "http2"] }
hyper-util = { version = "0.1", features = ["client", "client-legacy", "http1", "http2", "tokio"] }
http-body-util = "0.1"
tokio = { version = "1.0", features = ["rt", "rt-multi-thread", "macros"] }
bytes = "1.0"
hyper-tls = { version = "0.6", optional = true }
native-tls = { version = "0.2", optional = true }
tokio-native-tls = { version = "0.3", optional = true }
hyper-rustls = { version = "0.27", optional = true }
rustls = { version = "0.23.31", optional = true }
rustls-pemfile = { version = "2", optional = true }
rustls-native-certs = { version = "0.8", optional = true }
[features]
# TLS backend selection and safety controls
# Default to native-tls so we use the OS trust store by default (secure default)
default = ["native-tls"]
# Use the operating system's native trust store via hyper-tls/native-tls
native-tls = ["dep:hyper-tls", "dep:native-tls", "dep:tokio-native-tls"]
# Use rustls with the ability to add a custom Root CA via with_root_ca_pem
# Recommended for securely connecting to services with a custom CA
rustls = ["dep:hyper-rustls", "dep:rustls", "dep:rustls-pemfile", "dep:rustls-native-certs"]
# Extremely dangerous: only for local development/testing. Never use in production.
# Unlocks builder methods to accept invalid/self-signed certs.
insecure-dangerous = []
[package.metadata.docs.rs]
all-features = true
no-default-features = false