forked from algesten/ureq
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
86 lines (70 loc) · 3.28 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
[package]
name = "ureq"
version = "3.0.0-beta1"
authors = ["Martin Algesten <[email protected]>", "Jacob Hoffman-Andrews <[email protected]>"]
description = "Simple, safe HTTP client"
license = "MIT OR Apache-2.0"
repository = "https://github.com/algesten/ureq"
readme = "README.md"
keywords = ["web", "request", "https", "http", "client"]
categories = ["web-programming::http-client"]
edition = "2018"
exclude = ["/cargo_deny.sh", "/deny.toml", "/test.sh"]
# MSRV
rust-version = "1.67"
[package.metadata.docs.rs]
features = ["rustls", "native-tls", "socks-proxy", "cookies", "gzip", "brotli", "charset", "json", "_test"]
[features]
default = ["rustls", "native-tls", "socks-proxy", "cookies", "gzip", "brotli", "charset", "json"]
rustls = ["dep:rustls", "_tls", "dep:rustls-platform-verifier", "dep:webpki-roots"]
native-tls = ["dep:native-tls", "dep:der", "_tls", "dep:webpki-root-certs"]
socks-proxy = ["dep:socks"]
cookies = ["dep:cookie_store", "_url"]
gzip = ["dep:flate2"]
brotli = ["dep:brotli-decompressor"]
charset = ["dep:encoding_rs"]
json = ["dep:serde", "dep:serde_json"]
# Underscore prefixed features are internal
_url = ["dep:url"]
_tls = ["dep:rustls-pemfile", "dep:rustls-pki-types"]
_test = []
[dependencies]
base64 = "0.22.1"
hoot = "0.2.1"
# hoot = { path = "../hoot/hoot" }
http = "1.1.0"
log = "0.4.22"
thiserror = "1.0.61"
once_cell = "1.19.0"
smallvec = "1.13.2"
utf-8 = "0.7.6"
# These are used regardless of TLS implementation.
rustls-pemfile = { version = "2.1.2", optional = true, default-features = false, features = ["std"] }
rustls-pki-types = { version = "1.7.0", optional = true, default-features = false, features = ["std"] }
rustls-platform-verifier = { version = "0.3.3", optional = true, default-features = false }
webpki-roots = { version = "0.26.3", optional = true, default-features = false }
webpki-root-certs = { version = "0.26.4", optional = true, default-features = false }
# ring has a higher chance of compiling cleanly without additional developer environment
rustls = { version = "0.23.11", optional = true, default-features = false, features = ["ring", "logging", "std", "tls12"] }
native-tls = { version = "0.2.12", optional = true, default-features = false }
der = { version = "0.7.9", optional = true, default-features = false, features = ["pem", "std"] }
socks = { version = "0.3.4", optional = true }
# cookie_store uses Url, while http-crate has its own Uri.
# Keep url crate in lockstep with cookie_store.
cookie_store = { version = "0.21.0", optional = true, default-features = false, features = ["preserve_order"] }
url = { version = "2.3.1", optional = true, default-features = false }
flate2 = { version = "1.0.30", optional = true }
brotli-decompressor = { version = "4.0.1", optional = true }
encoding_rs = { version = "0.8.34", optional = true }
serde = { version = "1.0.204", optional = true, default-features = false, features = ["std"] }
serde_json = { version = "1.0.120", optional = true, default-features = false, features = ["std"] }
[build-dependencies]
cc = "1.0.106"
[dev-dependencies]
# Needed for MSRV 1.67 (0.11 requires 1.71)
env_logger = "=0.10.2"
auto-args = "0.3.0"
serde = { version = "1.0.204", features = ["std", "derive"] }
[[example]]
name = "cureq"
required-features = ["rustls", "native-tls", "socks-proxy", "cookies", "gzip", "brotli", "charset"]