content: [workspace]
  members = ["protocol_codegen"]
  
  [package]
  name = "kafka-protocol"
  version = "0.16.0"
  authors = [
      "Diggory Blake <diggsey@googlemail.com>",
      "Charlotte McElwain <charlotte.c.mcelwain@gmail.com>",
      "belltoy <belltoy@gmail.com>",
  ]
  edition = "2021"
  license = "MIT/Apache-2.0"
  description = "Implementation of Kafka wire protocol."
  homepage = "https://github.com/tychedelia/kafka-protocol-rs"
  repository = "https://github.com/tychedelia/kafka-protocol-rs"
  documentation = "https://docs.rs/kafka-protocol"
  readme = "README.md"
  keywords = ["kafka"]
  
  [features]
  # adds the ResponseKind + RequestKind enums with variants for every message type.
  # disabled by default since it doubles clean release build times due to lots of generated code.
  messages_enums = []
  # Enable this feature if you are implementing a kafka client.
  # It will enable encoding of requests and decoding of responses.
  client = []
  # Enable this feature if you are implementing a kafka protocol compatible broker.
  # It will enable encoding of responses and decoding of requests.
  broker = []
  
  # Enable compression of records using gzip
  gzip = ["dep:flate2"]
  # Enable compression of records using zstd
  zstd = ["dep:zstd"]
  # Enable compression of records using snap
  snappy = ["dep:snap"]
  # Enable compression of records using lz4
  lz4 = ["dep:lz4"]
  
  default = ["client", "broker", "gzip", "zstd", "snappy", "lz4"]
  
  [dependencies]
  bytes = "1.10.1"
  uuid = "1.3.0"
  indexmap = "2.0.0"
  crc = "3.0.0"
  snap = { version = "1.0.5", optional = true }
  flate2 = { version = "1.0.20", optional = true }
  zstd = { version = "0.13", optional = true }
  lz4 = { version = "1.24", optional = true }
  paste = "1.0.7"
  crc32c = "0.6.4"
  anyhow = "1.0.80"
  
  [dev-dependencies]
  testcontainers = { version = "0.20.1", features = ["blocking", "watchdog"] }
  
  # Display required features for items when rendering for docs.rs
  [package.metadata.docs.rs]
  all-features = true
  rustdoc-args = ["--cfg", "docsrs"]
  