content: [package]
  name = "kubert"
  version = "0.25.0"
  edition = "2021"
  license = "Apache-2.0"
  description = "Kubernetes runtime helpers. Based on kube-rs."
  readme = "../README.md"
  repository = "https://github.com/olix0r/kubert"
  rust-version = "1.85"
  keywords = ["kubernetes", "client", "runtime", "server"]
  
  [features]
  _tls = [
      "dep:rustls-pemfile",
      "dep:tokio-rustls",
      "kube-client?/rustls-tls",
  ]
  admin = [
      "dep:ahash",
      "dep:bytes",
      "dep:futures-util",
      "dep:http-body-util",
      "dep:thiserror",
      "dep:tower",
      "dep:tracing",
      "hyper/http1",
      "hyper/server",
      "hyper-util/server",
      "hyper-util/tokio",
      "tokio/sync",
      "tower/util",
  ]
  admin-brotli = ["tower-http/compression-br"]
  admin-gzip = ["tower-http/compression-gzip"]
  admin-compression = ["admin-brotli", "admin-gzip"]
  aws-lc-rs = [
      "_tls",
      "tokio-rustls/aws-lc-rs",
      "kube-client?/aws-lc-rs",
  ]
  client = [
      "_tls",
      "dep:bytes",
      "dep:futures-util",
      "dep:hyper",
      "dep:kube-client",
      "dep:thiserror",
      "dep:tower",
      "tower/util",
      "tower-http/map-response-body",
  ]
  client-brotli = ["tower-http/decompression-br"]
  client-gzip = ["tower-http/decompression-gzip"]
  client-decompression = ["client-brotli", "client-gzip"]
  errors = [
      "dep:futures-core",
      "dep:futures-util",
      "dep:pin-project-lite",
      "dep:tracing",
      "tokio/time",
  ]
  index = [
      "dep:ahash",
      "dep:futures-core",
      "dep:futures-util",
      "dep:kube-core",
      "dep:kube-runtime",
      "dep:tracing",
      "dep:parking_lot",
  ]
  initialized = [
      "dep:futures-core",
      "dep:futures-util",
      "dep:pin-project-lite",
      "tokio/sync",
  ]
  lease = [
      "dep:backon",
      "dep:chrono",
      "dep:futures-util",
      "dep:hyper",
      "dep:k8s-openapi",
      "dep:kube-client",
      "dep:kube-core",
      "dep:serde",
      "dep:serde_json",
      "dep:thiserror",
      "dep:tracing",
      "tokio/sync",
  ]
  log = ["dep:thiserror", "dep:tracing", "dep:tracing-subscriber"]
  prometheus-client = [
      "dep:kubert-prometheus-process",
      "dep:kubert-prometheus-tokio",
      "dep:prometheus-client",
  ]
  requeue = [
      "dep:futures-core",
      "dep:tracing",
      "tokio/macros",
      "tokio/sync",
      "tokio-util/time",
  ]
  runtime = [
      "dep:kube-core",
      "dep:kube-runtime",
      "dep:serde",
      "dep:thiserror",
      "dep:tracing",
      "admin",
      "client",
      "errors",
      "initialized",
      "log",
      "shutdown",
  ]
  runtime-diagnostics = [
      "dep:chrono",
      "dep:serde_json",
      "dep:k8s-openapi",
      "dep:parking_lot",
      "dep:sha2",
      "runtime",
  ]
  runtime-brotli = ["admin-brotli", "client-brotli"]
  runtime-gzip = ["admin-gzip", "client-gzip"]
  runtime-compression = ["admin-compression", "client-decompression"]
  server = [
      "_tls",
      "dep:drain",
      "dep:thiserror",
      "dep:tower",
      "dep:tracing",
      "hyper/http1",
      "hyper/http2",
      "hyper/server",
      "hyper-util/server",
      "hyper-util/server-auto",
      "hyper-util/server-graceful",
      "hyper-util/service",
      "tokio/fs",
      "tokio/macros",
      "tokio/net",
      "tokio/rt",
  ]
  server-brotli = ["tower-http/compression-br", "tower-http/decompression-br"]
  server-gzip = ["tower-http/compression-gzip", "tower-http/decompression-gzip"]
  server-compression = ["server-brotli", "server-gzip"]
  shutdown = [
      "dep:drain",
      "dep:futures-core",
      "dep:thiserror",
      "dep:tracing",
      "tokio/macros",
      "tokio/signal",
  ]
  
  [package.metadata.docs.rs]
  features = [
      "admin",
      "aws-lc-rs",
      "client",
      "errors",
      "gzip",
      "index",
      "initialized",
      "lease",
      "log",
      "prometheus-client",
      "requeue",
      "runtime",
      "runtime-diagnostics",
      "server",
      "shutdown",
      "k8s-openapi/latest",
  ]
  rustdoc-args = ["--cfg", "docsrs"]
  
  [lints.rust]
  unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] }
  
  [dependencies]
  ahash = { version = "0.8", optional = true }
  backon = { version = "1", optional = true, features = ["tokio-sleep"] }
  bytes = { version = "1", optional = true }
  drain = { version = "0.2.1", optional = true, default-features = false }
  chrono = { version = "0.4", optional = true, default-features = false }
  futures-core = { version = "0.3", optional = true, default-features = false }
  futures-util = { version = "0.3", optional = true, default-features = false }
  http-body-util = { version = "0.1", optional = true }
  hyper = { workspace = true, optional = true, default-features = false }
  hyper-util = { workspace = true, optional = true, default-features = false }
  once_cell = { version = "1", optional = true }
  parking_lot = { version = "0.12", optional = true }
  pin-project-lite = { version = "0.2", optional = true }
  prometheus-client = { workspace = true, optional = true }
  rustls-pemfile = { version = "2", optional = true }
  serde = { version = "1", optional = true }
  serde_json = { version = "1", optional = true }
  sha2 = { version = "0.10", optional = true }
  thiserror = { version = "2", optional = true }
  tokio = { workspace = true, optional = false, default-features = false }
  tokio-rustls = { workspace = true, optional = true }
  tokio-util = { version = "0.7", optional = true, default-features = false }
  tower-http = { version = "0.6.0", optional = true, default-features = false }
  tower = { version = "0.5", default-features = false, optional = true }
  tracing = { version = "0.1.31", optional = true }
  
  kubert-prometheus-process = { version = "0.2.0", path = "../kubert-prometheus-process", optional = true }
  
  [dependencies.clap]
  version = "4"
  optional = true
  default-features = false
  features = ["derive", "std"]
  
  # Not used directly, but required to ensure that the k8s-openapi dependency is considered part of
  # the "deps" graph rather than just the "dev-deps" graph
  [dependencies.k8s-openapi]
  workspace = true
  optional = true
  
  [dependencies.kube-client]
  workspace = true
  optional = true
  features = ["client", "config"]
  
  [dependencies.kube-core]
  workspace = true
  optional = true
  
  [dependencies.kube-runtime]
  workspace = true
  optional = true
  
  [dependencies.tracing-subscriber]
  version = "0.3.9"
  optional = true
  default-features = false
  features = ["env-filter", "fmt", "json", "smallvec", "tracing-log"]
  
  [target.'cfg(tokio_unstable)'.dependencies.kubert-prometheus-tokio]
  version = "0.2.0"
  path = "../kubert-prometheus-tokio"
  optional = true
  features = ["rt"]
  
  # === Dev ===
  
  [dev-dependencies]
  tokio-rustls = { workspace = true, features = ["aws-lc-rs"] }
  kube = { workspace = true, features = ["runtime"] }
  rcgen = { version = "0.13.0" }
  tempfile = "3.8"
  tokio-stream = "0.1"
  tokio-test = "0.4"
  tracing-subscriber = { version = "0.3", features = ["ansi"] }
  
  [dev-dependencies.k8s-openapi]
  workspace = true
  features = ["latest"]
  
  [dev-dependencies.tokio]
  workspace = true
  features = ["macros", "test-util"]
  