-
Notifications
You must be signed in to change notification settings - Fork 7
/
Cargo.toml
65 lines (55 loc) · 2.33 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
[package]
name = "public-ip"
version = "0.2.2"
authors = ["avitex <avitex@wfxlabs.com>"]
edition = "2018"
rust-version = "1.52.0"
description = "Find the public IP address of a device"
documentation = "https://docs.rs/public-ip"
homepage = "https://github.com/avitex/rust-public-ip"
repository = "https://github.com/avitex/rust-public-ip"
license = "MIT"
categories = ["network-programming"]
include = ["src/**/*", "examples/**/*", "README.md", "LICENSE", "Cargo.toml"]
keywords = ["public", "external", "ip", "async"]
[features]
default = ["all-providers", "tokio-dns-resolver", "tokio-http-resolver", "https-openssl"]
dns-resolver = ["trust-dns-proto"]
http-resolver = ["http", "hyper", "hyper-system-resolver", "dns-lookup"]
tokio-dns-resolver = ["dns-resolver", "tokio", "trust-dns-client", "trust-dns-proto/tokio-runtime"]
tokio-http-resolver = ["http-resolver", "tokio", "hyper/runtime"]
https-openssl = ["hyper-openssl", "openssl", "tower-layer"]
https-rustls-webpki = ["hyper-rustls/webpki-roots"]
https-rustls-native = ["hyper-rustls/rustls-native-certs"]
all-providers = ["google", "opendns", "ipify-org", "my-ip-io", "myip-com", "seeip-org"]
google = []
opendns = []
myip-com = []
my-ip-io = []
seeip-org = []
ipify-org = []
[dependencies]
thiserror = "1"
tracing = "0.1"
tracing-futures = { version = "0.2", features = ["futures-03"] }
pin-project-lite = "0.2"
futures-core = { version = "0.3", default-features = false }
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
tokio = { version = "1", optional = true }
tower-layer = { version = "0.3", optional = true }
# DNS Resolver
trust-dns-client = { version = "0.22", optional = true }
trust-dns-proto = { version = "0.22", optional = true, default-features = false }
# HTTP Resolver
http = { version = "0.2", optional = true }
dns-lookup = { version = "1", optional = true }
hyper = { version = "0.14", features = ["client", "http1"], optional = true }
hyper-system-resolver = { version = "0.5", default-features = false, optional = true }
hyper-openssl = { version = "0.9", optional = true }
hyper-rustls = { version = "0.23", features = ["rustls-native-certs"], optional = true }
openssl = { version = "0.10", optional = true }
[dev-dependencies]
tokio = { version = "~1", features = ["macros"] }
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]