[package]
name = "encryption"
version = "0.0.1"
edition = "2018"
publish = false

[features]
protobuf-codec = ["kvproto/protobuf-codec"]
prost-codec = ["kvproto/prost-codec"]
failpoints = ["fail/failpoints"]

[dependencies]
byteorder = "1.2"
crossbeam = "0.8"
configuration = { path = "../configuration" }
crc32fast = "1.2"
engine_traits = { path = "../engine_traits" }
error_code = { path = "../error_code" }
fail = "0.4"
failure = "0.1"
lazy_static = "1.3"
prometheus = { version = "0.8", features = ["nightly"] }
futures-util = { version = "0.3", default-features = false, features = ["std", "io"] }
hex = "0.4.2"
kvproto = { git = "https://github.com/pingcap/kvproto.git", branch = "release-4.0", default-features = false }
openssl = "0.10"
protobuf = "2.8"
rand = "0.7"
serde = "1.0"
serde_derive = "1.0"
slog = { version = "2.3", features = ["max_level_trace", "release_max_level_debug"] }
# better to not use slog-global, but pass in the logger
slog-global = { version = "0.1", git = "https://github.com/breeswish/slog-global.git", rev = "0e23a5baff302a9d7bccd85f8f31e43339c2f2c1" }
tikv_alloc = { path = "../tikv_alloc" }
tikv_util = { path = "../tikv_util" }
rusoto_core = "0.45.0"
rusoto_kms = { version = "0.45.0", features = ["serialize_structs"] }
rusoto_credential = "0.45.0"
rusoto_util = { path = "../rusoto_util" }
bytes = "0.4"
tokio = { version = "0.2", features = ["time", "rt-core"] }
futures = "0.3"

[dev-dependencies]
matches = "0.1.8"
tempfile = "3.1"
toml = "0.4"
rusoto_mock = "0.45.0"
rust-ini = "0.14.0"
structopt = "0.3"
test_util = { path = "../test_util" }
