content: [package]
  name = "socketioxide"
  description = "Socket IO server implementation in rust as a Tower Service."
  version = "0.17.1"
  edition.workspace = true
  rust-version.workspace = true
  authors.workspace = true
  repository.workspace = true
  homepage.workspace = true
  keywords.workspace = true
  categories.workspace = true
  license.workspace = true
  readme.workspace = true
  
  [dependencies]
  engineioxide = { path = "../engineioxide", version = "0.17" }
  socketioxide-core = { path = "../socketioxide-core", version = "0.17" }
  
  bytes.workspace = true
  futures-core.workspace = true
  futures-util.workspace = true
  tokio = { workspace = true, features = ["rt", "time"] }
  serde.workspace = true
  tower-service.workspace = true
  tower-layer.workspace = true
  http.workspace = true
  http-body.workspace = true
  thiserror.workspace = true
  hyper.workspace = true
  matchit.workspace = true
  pin-project-lite.workspace = true
  
  # Parsers
  socketioxide-parser-common = { path = "../parser-common", version = "0.17" }
  socketioxide-parser-msgpack = { path = "../parser-msgpack", version = "0.17", optional = true }
  
  # Tracing
  tracing = { workspace = true, optional = true }
  
  # State
  state = { version = "0.6.0", optional = true }
  
  [features]
  v4 = ["engineioxide/v3"]
  msgpack = ["dep:socketioxide-parser-msgpack"]
  tracing = ["dep:tracing", "engineioxide/tracing"]
  extensions = []
  state = ["dep:state"]
  __test_harness = ["engineioxide/__test_harness"]
  
  [dev-dependencies]
  engineioxide = { path = "../engineioxide", features = ["v3", "tracing"] }
  tokio-tungstenite.workspace = true
  axum.workspace = true
  serde_json.workspace = true
  tokio = { workspace = true, features = [
      "macros",
      "parking_lot",
      "rt-multi-thread",
  ] }
  tracing-subscriber.workspace = true
  criterion.workspace = true
  http-body-util.workspace = true
  tokio-stream.workspace = true
  tokio-util.workspace = true
  rand = { version = "0.9", default-features = false }
  
  # docs.rs-specific configuration
  [package.metadata.docs.rs]
  features = ["v4", "extensions", "tracing", "state", "msgpack"]
  # Special configuration for docs.rs build
  rustdoc-args = ["--cfg", "docsrs"]
  
  [[bench]]
  name = "extensions"
  path = "benches/extensions.rs"
  harness = false
  