feat: allow use of reqwest without ring provider (#155)

Signed-off-by: Mauro Sardara <msardara@cisco.com>
This commit is contained in:
Mauro Sardara 2025-05-07 20:58:03 +02:00 committed by GitHub
parent 09474d4769
commit 52c0651158
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 9 deletions

View file

@ -37,7 +37,6 @@ base64 = { version = "0.21", optional = true }
reqwest = { version = "0.12", default-features = false, features = [
"json",
"stream",
"rustls-tls",
], optional = true }
sse-stream = { version = "0.1.3", optional = true }
url = { version = "2.4", optional = true }
@ -62,7 +61,9 @@ default = ["base64", "macros", "server"]
client = []
server = ["transport-async-rw", "dep:schemars"]
macros = ["dep:rmcp-macros", "dep:paste"]
transport-sse = ["dep:reqwest", "dep:sse-stream", "dep:url"]
__transport-sse = ["dep:reqwest", "dep:sse-stream", "dep:url"]
transport-sse = ["__transport-sse", "reqwest?/rustls-tls"]
transport-sse-tls-no-provider = ["__transport-sse", "reqwest?/rustls-tls-no-provider"]
transport-async-rw = ["tokio/io-util", "tokio-util/codec"]
transport-io = ["transport-async-rw", "tokio/io-std"]
transport-child-process = ["transport-async-rw", "tokio/process"]
@ -74,7 +75,9 @@ transport-sse-server = [
]
# transport-ws = ["transport-io", "dep:tokio-tungstenite"]
tower = ["dep:tower-service"]
auth = ["dep:oauth2", "dep:reqwest", "dep:url"]
__auth = ["dep:oauth2", "dep:reqwest", "dep:url"]
auth = ["__auth", "reqwest?/rustls-tls"]
auth-tls-no-provider = ["auth", "reqwest?/rustls-tls-no-provider"]
[dev-dependencies]
tokio = { version = "1", features = ["full"] }

View file

@ -51,14 +51,14 @@ pub mod io;
#[cfg(feature = "transport-io")]
pub use io::stdio;
#[cfg(feature = "transport-sse")]
#[cfg(feature = "__transport-sse")]
pub mod sse;
#[cfg(feature = "transport-sse")]
#[cfg(feature = "__transport-sse")]
pub use sse::SseTransport;
#[cfg(all(feature = "transport-sse", feature = "auth"))]
#[cfg(all(feature = "__transport-sse", feature = "__auth"))]
pub mod sse_auth;
#[cfg(all(feature = "transport-sse", feature = "auth"))]
#[cfg(all(feature = "__transport-sse", feature = "__auth"))]
pub use sse_auth::{AuthorizedSseClient, create_authorized_transport};
// #[cfg(feature = "tower")]
@ -69,9 +69,9 @@ pub mod sse_server;
#[cfg(feature = "transport-sse-server")]
pub use sse_server::SseServer;
#[cfg(feature = "auth")]
#[cfg(feature = "__auth")]
pub mod auth;
#[cfg(feature = "auth")]
#[cfg(feature = "__auth")]
pub use auth::{AuthError, AuthorizationManager, AuthorizationSession, AuthorizedHttpClient};
// #[cfg(feature = "transport-ws")]