content: [package]
  name = "plural-core"
  version = "0.1.0"
  edition = "2024"
  
  [dependencies]
  # otel
  opentelemetry = { version = "0.27", optional = true }
  opentelemetry_sdk = { version = "0.27", optional = true, features = ["trace", "metrics", "rt-tokio"] }
  opentelemetry-otlp = { version = "0.27", optional = true, default-features = false, features = ["trace", "metrics", "http-proto", "reqwest-client", "reqwest-rustls", "grpc-tonic"] }
  # redis
  fred = { version = "10.0", optional = true, features = ["enable-native-tls", "i-redis-json"] }
  # mongo
  mongo-document = { path = "./document", optional = true }
  bitflags = { version = "2.9", optional = true }
  bson = { version = "2.14", optional = true, features = ["chrono-0_4"] }
  chrono = { version = "0.4", optional = true }
  futures = { version = "0.3", optional = true }
  mongodb = { version = "3.2", optional = true }
  serde = { version = "1.0", optional = true, features = ["derive"] }
  serde_repr = { version = "0.1", optional = true }
  # discord
  reqwest = { version = "0.12", optional = true, features = ["json", "gzip"] }
  
  [features]
  default = []
  
  env = []
  version = []
  redis = [
      "env",
      "fred"]
  mongo = [
      "env",
      "mongo-document",
      "bitflags",
      "bson",
      "chrono",
      "futures",
      "mongodb",
      "serde",
      "serde_repr"]
  otel = [
      "env",
      "version",
      "opentelemetry",
      "opentelemetry_sdk",
      "opentelemetry-otlp"]
  discord = ["redis", "otel", "version", "reqwest"]
  