Cargo Features
ProductOS-Request has no features set by default.
[dependencies]
product-os-request = { version = "0.0.53", features = ["uri", "method", "response", "request", "method_std", "response_std", "request_std", "std_base", "std_reqwest", "std_hyper", "hyper_timeout", "hyper_compression", "hyper_cookies", "hyper_proxy", "std_hyper_full", "std", "json", "form", "stream", "stream_reqwest", "stream_hyper"] }
- default
-
NO DEFAULT - Users must explicitly choose implementation
- uri = product-os-http
-
Core features (no_std compatible)
- method request? = product-os-http, serde
-
Support for serialize/deserialize objects
Affects
method::Method… - response request? = product-os-http, product-os-http-body, tracing
-
Affects
response::ProductOSResponse… - request = bytes, futures-core, method, product-os-http, product-os-http-body, response, serde, tracing
-
Affects
body::BodyType,client::ProductOSClient,error::ProductOSRequestError,policy::RedirectPolicy,protocol::Protocol,protocol::Proxy,request::ProductOSRequest,requester::ProductOSRequester… - method_std request_std? std_base? = serde
-
Std-based features (shared between implementations)
Enables std of product-os-http, derive of serde
Affects
method::Method… - response_std request_std? std_base? = tracing
-
Enables std of product-os-http and product-os-http-body
Affects
response::ProductOSResponse… - request_std std_base? = bytes, futures-core, method_std, response_std, serde, tracing
-
Enables derive of serde, std of product-os-http and product-os-http-body
Affects
body::BodyType,client::ProductOSClient,client::ProductOSRequestClient,client::ProductOSRequestClient,error::ProductOSRequestError,policy::RedirectPolicy,protocol::Protocol,protocol::Proxy,request::ProductOSRequest,requester::ProductOSRequester,client::ProductOSRequestClient… - std_base std_hyper? std_reqwest? = method_std, request_std, response_std
-
Base std features (shared)
Enables std of no-std-compat, derive of serde
- std_reqwest std? = reqwest, std_base
-
Reqwest-based implementation
Enables brotli, cookies, gzip, json and rustls-tls of reqwest ^0.12.12
Reqwest-based HTTP client (optional)
- std_hyper hyper_compression? hyper_cookies? hyper_proxy? hyper_timeout? std_hyper_full? = futures-util, http-body-util, hyper, hyper-rustls, hyper-util, pin-project-lite, rustls, rustls-native-certs, std_base, tokio, tokio-rustls
-
Hyper-based implementation with FULL feature parity
Affects
client::ProductOSRequestClient,client::ProductOSRequestClient… - hyper_timeout std_hyper_full? = std_hyper, tower
-
Hyper optional features
Enables tokio
- hyper_compression std_hyper_full? = std_hyper, tower-http
- hyper_proxy std_hyper_full? = hyper-socks2, std_hyper, tower
- std_hyper_full = hyper_compression, hyper_cookies, hyper_proxy, hyper_timeout, std_hyper
-
Hyper with all optional features
- std = std_reqwest
-
Backward compatibility alias (deprecated, users should use std_reqwest)
Affects
client::ProductOSRequestClient,client::ProductOSRequestClient… - json = serde_json
-
Optional content type support
Affects
client::ProductOSClient.set_body_json,client::ProductOSClient.json… - form = serde_urlencoded
-
Affects
client::ProductOSClient.set_body_form… - stream stream_hyper? stream_reqwest?
-
Streaming support
Enables stream of product-os-http-body
Affects
client::ProductOSClient.request_stream,client::ProductOSClient.request_stream_raw… - stream_reqwest = stream
-
Enables stream of reqwest ^0.12.12
- stream_hyper = stream
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- reqwest std_reqwest? stream_reqwest?
-
Enables reqwest ^0.12.12
- hyper std_hyper?
-
Enables hyper
Hyper-based HTTP client dependencies (optional)
- hyper-util std_hyper?
- hyper-rustls std_hyper?
- http-body-util std_hyper?
- tower hyper_proxy? hyper_timeout?
- tower-http hyper_compression?
- rustls std_hyper?
- rustls-native-certs std_hyper?
- tokio hyper_timeout? std_hyper?
- tokio-rustls std_hyper?
-
Enables cookie_store ^0.21
- url hyper_cookies?
- hyper-socks2 hyper_proxy?
- tracing request? request_std? response? response_std?
- serde method? method_std? request? request_std? std_base?
- serde_json json?
-
Enables serde_json
Support for JSON structures
- serde_urlencoded form?
-
Enables serde_urlencoded
Support for URL encoded structures
- futures-core request? request_std?
- futures-util std_hyper?
- bytes request? request_std?
- pin-project-lite std_hyper?
- product-os-http method? method_std? request? request_std? response? response_std? uri?
- product-os-http-body request? request_std? response? response_std? stream?