[package]
name = "raftstore"
version = "0.0.1"
authors = ["The TiKV Authors"]
license = "Apache-2.0"
edition = "2018"
publish = false

[features]
failpoints = ["fail/failpoints"]
prost-codec = [
  "prost",
  "engine/prost-codec",
  "engine_rocks/prost-codec",
  "into_other/prost-codec",
  "keys/prost-codec",
  "kvproto/prost-codec",
  "raft/prost-codec",
  "pd_client/prost-codec",
  "sst_importer/prost-codec",
  "tidb_query/prost-codec",
  "txn_types/prost-codec",
]
protobuf-codec = [
  "engine/protobuf-codec",
  "engine_rocks/protobuf-codec",
  "into_other/protobuf-codec",
  "keys/protobuf-codec",
  "kvproto/protobuf-codec",
  "raft/protobuf-codec",
  "pd_client/protobuf-codec",
  "sst_importer/protobuf-codec",
  "tidb_query/protobuf-codec",
  "txn_types/protobuf-codec",
]
testexport = []

[dependencies]
batch-system = { path = "../batch-system" }
bitflags = "1.0.1"
byteorder = "1.2"
configuration = { path = "../configuration" }
crc32fast = "1.2"
crossbeam = "0.8"
engine = { path = "../engine" }
engine_rocks = { path = "../engine_rocks" }
encryption = { path = "../encryption" }
engine_traits = { path = "../engine_traits" }
error_code = { path = "../error_code" }
fail = "0.4"
openssl = "0.10"
fs2 = "0.4"
futures = "0.1"
futures-executor = "0.3.1"
futures-util = { version = "0.3.1", default-features = false, features = ["io"] }
into_other = { path = "../into_other" }
keys = { path = "../keys" }
kvproto = { git = "https://github.com/pingcap/kvproto.git", branch = "release-4.0", default-features = false }
lazy_static = "1.3"
log = { version = "0.4", features = ["max_level_trace", "release_max_level_debug"] }
log_wrappers = { path = "../log_wrappers" }
pd_client = { path = "../pd_client" }
prometheus = { version = "0.8", features = ["nightly", "push"] }
prost = { version = "0.6", optional = true }
protobuf = "2.8"
quick-error = "1.2.2"
raft = { version = "0.6.0-alpha", default-features = false }
rand = "0.6.5"
serde = "1.0"
serde_derive = "1.0"
serde_with = "1.4"
slog = { version = "2.3", features = ["max_level_trace", "release_max_level_debug"] }
slog-global = { version = "0.1", git = "https://github.com/breeswish/slog-global.git", rev = "0e23a5baff302a9d7bccd85f8f31e43339c2f2c1" }
sst_importer = { path = "../sst_importer" }
tempfile = "3.0"
tidb_query = { path = "../tidb_query" }
tikv_util = { path = "../tikv_util" }
time = "0.1"
tokio = { version = "0.2", features = ["sync"] }
tokio-core = "0.1"
tokio-threadpool = "0.1.13"
tokio-timer = "0.2"
txn_types = { path = "../txn_types"}
uuid = { version = "0.8.1", features = ["serde", "v4"] }

[dependencies.yatp]
git = "https://github.com/tikv/yatp.git"

[dev-dependencies]
engine_rocks = { path = "../engine_rocks", default-features = false }
panic_hook = { path = "../panic_hook" }
test_sst_importer = { path = "../test_sst_importer" }
