content: [package]
  name = "runkv-common"
  version = "0.1.0"
  edition = "2021"
  # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
  
  [dependencies]
  anyhow = "1.0"
  async-trait = "0.1"
  bincode = "1.3.3"
  bytes = "1"
  bytesize = { version = "1.1.0", features = ["serde"] }
  chrono = "0.4"
  clap = { version = "3.1.6", features = ["derive"] }
  console-subscriber = { version = "0.1.6", optional = true }
  futures = "0.3"
  http = "0.2.6"
  humantime = "2.1.0"
  humantime-serde = "1.1.1"
  hyper = { version = "^0.14", features = ["server", "http1", "tcp"] }
  isahc = "1" # isahc is the http client used for tracing. Always set it as the same version as opentelemetry-jaeger's.
  itertools = "0.10.3"
  lazy_static = "1.4.0"
  opentelemetry = { version = "0.17", features = ["rt-tokio", "trace"] }
  opentelemetry-jaeger = { version = "0.16", features = [
      "rt-tokio",
      "collector_client",
      "isahc",
      "isahc_collector_client",
  ] }
  ouroboros = "0.15.0"
  parking_lot = "0.12"
  prometheus = "0.13.0"
  rand = "0.8.5"
  serde = "1.0"
  serde_derive = "1.0"
  slog = "2.7"
  tokio = { version = "1", features = ["rt-multi-thread", "sync"] }
  toml = "0.4.2"
  tonic = "0.6.2"
  tracing = "0.1"
  tracing-appender = "0.2"
  tracing-opentelemetry = "0.17"
  tracing-subscriber = { version = "0.3", features = ["env-filter"] }
  
  [dev-dependencies]
  criterion = { version = "0.3", features = ["async", "async_tokio"] }
  env_logger = "*"
  test-log = "0.2.10"
  
  [features]
  console = ["console-subscriber"]
  trace-notify-pool = []
  tracing = []
  verbose-release-log = ["tracing/release_max_level_trace"]
  
  [[bench]]
  name = "bench_sharded_hash_map"
  harness = false
  # Uncomment this line if you are generating flame graph.
  # debug = true
  