1[package]
2name = "ureq"
3version = "2.9.6"
4authors = ["Martin Algesten <martin@algesten.se>", "Jacob Hoffman-Andrews <ureq@hoffman-andrews.com>"]
5description = "Simple, safe HTTP client"
6license = "MIT OR Apache-2.0"
7repository = "https://github.com/algesten/ureq"
8readme = "README.md"
9keywords = ["web", "request", "https", "http", "client"]
10categories = ["web-programming::http-client"]
11edition = "2018"
12exclude = ["/cargo_deny.sh", "/deny.toml", "/test.sh"]
13
14
15# MSRV
16rust-version = "1.61"
17
18[package.metadata.docs.rs]
19features = ["tls", "native-tls", "json", "charset", "cookies", "socks-proxy", "gzip", "brotli", "http-interop"]
20rustdoc-args = ["--cfg", "docsrs"]
21
22[features]
23default = ["tls", "gzip"]
24tls = ["dep:webpki", "dep:webpki-roots", "dep:rustls", "dep:rustls-pki-types"]
25native-certs = ["dep:rustls-native-certs"]
26native-tls = ["dep:native-tls"]
27json = ["dep:serde", "dep:serde_json"]
28charset = ["dep:encoding_rs"]
29cookies = ["dep:cookie", "dep:cookie_store"]
30socks-proxy = ["dep:socks"]
31gzip = ["dep:flate2"]
32brotli = ["dep:brotli-decompressor"]
33# http-interop is for http crate version 0.2 (backwards compat with last pre-release)
34# Consider this feature deprecated. In time, we will remove it. Use `http-crate` instead.
35http-interop = ["dep:http-02"]
36# http-crate is for http crate version 1.0 (full release)
37http-crate = ["dep:http"]
38proxy-from-env = []
39# Doc tests require hootbin.
40testdeps = ["dep:hootbin"]
41
42[dependencies]
43base64 = "0.21"
44cookie = { version = "0.18", default-features = false, optional = true }
45once_cell = "1"
46url = "2"
47socks = { version = "0.3", optional = true }
48serde = { version = "1", optional = true }
49serde_json = { version = ">=1.0.97", optional = true }
50encoding_rs = { version = "0.8", optional = true }
51cookie_store = { version = "0.21", optional = true, default-features = false, features = ["preserve_order"] }
52log = "0.4"
53webpki = { package = "rustls-webpki", version = "0.102", optional = true }
54webpki-roots = { version = "0.26", optional = true }
55rustls = { version = "0.22.0", optional = true }
56rustls-pki-types = { version = "1", optional = true }
57rustls-native-certs = { version = "0.7", optional = true }
58native-tls = { version = "0.2", optional = true }
59flate2 = { version = "1.0.22", optional = true }
60brotli-decompressor = { version = "2.3.2", optional = true }
61http-02 = { package = "http", version = "0.2", optional = true }
62http = { version = "1.0", optional = true }
63
64# This can't be in dev-dependencies due to doc tests.
65hootbin = { version = "0.1.5", optional = true }
66
67[dev-dependencies]
68serde = { version = "1", features = ["derive"] }
69env_logger = "<=0.9"
70rustls = { version = "0.22.0" }
71rustls-pemfile = { version = "2.0" }
72
73[[example]]
74name = "cureq"
75required-features = ["charset", "cookies", "socks-proxy", "native-tls"]
76
77[[example]]
78name = "tls_config"
79required-features = ["tls", "native-tls"]
80