content: [package]
  name = "kv_example"
  version = "0.1.0"
  edition = "2021"
  
  default-run = "kv"
  
  [dependencies]
  crossterm = "0.27.0"
  
  # Random numbers.
  rand = { version = "0.8.5" }
  
  # Serde for serialization and deserialization support.
  serde = { version = "1.0.203", features = ["derive"] }
  serde_json = { version = "1.0.117" }
  
  # Convert Rust structs to and from binary representation.
  bincode = { version = "1.3.3" }
  
  # Key Value store that can be used to store JSON or bincode encoded values. `kv` is built
  # on top of `sled` which currently does not support access across multiple processes.
  kv = { version = "0.24.0", features = ["json-value", "bincode-value"] }
  
  # Key Value store similar to `kv`, but written by Mozilla, and safe for use across
  # multiple processes. It also supports `bincode` just like `kv`.
  rkv = { version = "0.19.0" }
  
  # Error handling.
  thiserror = "1.0.61"
  miette = { version = "7.2.0", features = ["fancy"] }
  pretty_assertions = "1.4.0"
  
  # Tokio / Tracing / Logging.
  # https://tokio.rs/tokio/topics/tracing
  # https://tokio.rs/tokio/topics/tracing-next-steps
  tracing = "0.1.40"
  tracing-subscriber = "0.3.18"
  tokio = { version = "1.38.0", features = ["full", "tracing"] }
  