content: [package]
  name = "geneva-uploader"
  description = "Upload telemetry data to Geneva logs service"
  version = "0.2.0"
  edition = "2021"
  homepage = "https://github.com/open-telemetry/opentelemetry-rust-contrib/tree/main/opentelemetry-exporter-geneva/geneva-uploader"
  repository = "https://github.com/open-telemetry/opentelemetry-rust-contrib/tree/main/opentelemetry-exporter-geneva/geneva-uploader"
  rust-version = "1.85.0"
  keywords = ["opentelemetry", "geneva", "logs", "uploader"]
  license = "Apache-2.0"
  
  [dependencies]
  opentelemetry-proto = {workspace = true, default-features = false, features = ["logs", "trace", "gen-tonic-messages"]}
  base64 = "0.22"
  serde = { version = "1.0", features = ["derive"] }
  serde_json = { version = "1.0", features = ["raw_value"] }
  uuid = { version = "1.0", features = ["v4"] }
  # TODO - support both native-tls and rustls
  # http2 feature is required by hyper-util even when using http1_only()
  reqwest = { version = "0.12", features = ["native-tls", "native-tls-alpn", "http2"], default-features = false}
  native-tls = "0.2"
  thiserror = "2.0"
  chrono = "0.4"
  url = "2.2"
  md5 = "0.8.0"
  hex = "0.4"
  lz4_flex = { version = "0.11", features = ["safe-encode"], default-features = false }
  # Azure Identity dependencies - using public crates.io versions
  azure_identity = "0.27.0"
  azure_core = "0.27.0"
  
  [features]
  self_signed_certs = [] # Empty by default for security
  mock_auth = [] # Disabled by default. Not to be enabled in the prod release. 
  default = ["self_signed_certs"] # TODO - remove this feature before release
  
  [dev-dependencies]
  tokio = { version = "1", features = ["full"] }
  rcgen = "0.14"
  openssl = { version = "0.10", features = ["vendored"] }
  tempfile = "3.5"
  wiremock = "=0.5.22"
  futures = "0.3"
  num_cpus = "1.16"
  lz4_flex = { version = "0.11" }
  criterion = {version = "0.7"}
  rand = {version = "0.9"}
  
  [lints]
  workspace = true
  