g3/lib/g3-types/Cargo.toml
2023-04-04 17:47:07 +08:00

56 lines
2.2 KiB
TOML

[package]
name = "g3-types"
version = "0.3.0"
license.workspace = true
edition.workspace = true
rust-version = "1.63.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
anyhow.workspace = true
thiserror.workspace = true
idna.workspace = true
libc.workspace = true
percent-encoding.workspace = true
rand.workspace = true
fxhash.workspace = true
metrohash = "1.0"
smallvec = "1.6"
memchr.workspace = true
url.workspace = true
num-traits = "0.2"
governor = { workspace = true, features = ["std", "jitter"] }
digest = { workspace = true, optional = true }
md-5 = { workspace = true, optional = true }
sha-1 = { version = "0.10.0", optional = true }
blake3 = { version = "1.2", "default-features" = false, optional = true }
hex = { workspace = true, optional = true }
ahash = { workspace = true, optional = true }
ip_network = { workspace = true, optional = true }
ip_network_table = { workspace = true, optional = true }
once_cell = { workspace = true, optional = true }
regex = { workspace = true, optional = true }
radix_trie = { workspace = true, optional = true }
rustls = { workspace = true, optional = true }
rustls-native-certs = { workspace = true, optional = true }
webpki-roots = { version = "0.22", optional = true }
openssl = { workspace = true, optional = true }
lru = { version = "0.10", default-features = false, optional = true }
http = { workspace = true, optional = true }
base64 = { workspace = true, optional = true }
flume = { workspace = true, features = ["eventual-fairness"], optional = true }
slog = { workspace = true, optional = true }
indexmap = { workspace = true, optional = true }
[features]
default = []
auth-crypt = ["dep:digest", "dep:md-5", "dep:sha-1", "dep:blake3", "dep:hex"]
resolve = ["dep:ahash", "dep:radix_trie"]
rustls = ["dep:rustls", "dep:rustls-native-certs", "dep:webpki-roots"]
openssl = ["dep:openssl", "dep:ahash", "dep:lru"]
acl-rule = ["resolve", "dep:ahash", "dep:ip_network", "dep:ip_network_table", "dep:once_cell", "dep:regex", "dep:radix_trie", "proxy"]
http = ["dep:http", "dep:base64"]
proxy = ["http", "openssl"]
route = ["dep:ahash", "dep:radix_trie", "dep:indexmap", "resolve"]
async-log = ["dep:flume", "dep:slog"]