content: [workspace.package]
  edition = "2021"
  rust-version = "1.88"
  license = "Apache-2.0"
  authors = ["Mick Grove <mick.grove@mongodb.com>"]
  homepage = "https://github.com/mongodb/kingfisher"
  repository = "https://github.com/mongodb/kingfisher"
  publish = false
  
  
  [package]
  name = "kingfisher"
  version = "1.57.0"
  description = "MongoDB's blazingly fast and accurate secret scanning and validation tool"
  edition.workspace = true
  rust-version.workspace = true
  license.workspace = true
  authors.workspace = true
  homepage.workspace = true
  repository.workspace = true
  publish.workspace = true
  
  [package.metadata.deb]
  name = "kingfisher"
  maintainer = "Mick Grove <mick.grove@mongodb.com>"
  depends = "$auto"
  section = "utils"
  priority = "optional"
  assets = [
      ["target/release/kingfisher", "/usr/bin/kingfisher", "755"]
  ]
  
  [package.metadata.generate-rpm]
  package = "kingfisher"
  summary = "MongoDB's blazingly fast and accurate secret scanning and validation tool"
  license = "Apache-2.0"
  url = "https://github.com/mongodb/kingfisher"
  assets = [
      { source = "target/release/kingfisher", dest = "/usr/bin/kingfisher", mode = "755" }
  ]
  
  [dependencies]
  clap = { version = "4.5", features = [
      "cargo",
      "derive",
      "env",
      "unicode",
      "wrap_help",
  ] }
  
  anyhow = "1.0"
  bstr = { version = "1.12", features = ["serde"] }
  fixedbitset = "0.5"
  gix = { version = "0.73", features = ["max-performance", "serde", "blocking-network-client"] }
  ignore = "0.4"
  petgraph = "0.6"
  roaring = "0.10"
  schemars = "0.8"
  serde = { version = "1.0", features = ["derive", "rc"] }
  smallvec = { version = "1", features = [
      "const_generics",
      "const_new",
      "union",
  ] }
  tracing = "0.1.41"
  indicatif = { version = "0.17", features = ["improved_unicode"] }
  rayon = "1.10"
  hex = "0.4.3"
  vectorscan-rs = "0.0.5"
  regex = "1.11.1"
  serde_json = "1.0.140"
  lazy_static = "1.5.0"
  url = "2.5.4"
  include_dir = { version = "0.7", features = ["glob"] }
  strum = { version = "0.26", features = ["derive"] }
  sysinfo = "0.31.4"
  reqwest = { version = "0.12", default-features = false, features = [
      "json", 
      "gzip", 
      "brotli", 
      "deflate", 
      "stream",
      "rustls-tls",
      "rustls-tls-native-roots",
      "blocking",
      "multipart",
  ] }
  
  
  chrono = "0.4.41"
  thiserror = "1.0.69"
  tokio = { version = "1.46.1", features = ["full"] }
  base64 = "0.22.1"
  crossbeam-channel = "0.5.15"
  indenter = "0.3.3"
  serde-sarif = "0.4"
  console = "0.15.11"
  time = "0.3.41"
  tempfile = "3.20.0"
  num_cpus = "1.17.0"
  once_cell = "1.21.3"
  http = "1.3.1"
  liquid = "0.26.11"
  liquid-core = "0.26.11"
  flate2 = "1.1.2"
  thousands = "0.2.0"
  base32 = "0.5.1"
  crossbeam-skiplist = "0.1.3"
  tokio-postgres = { version = "0.7", default-features = false, features = ["runtime"] }
  mongodb = { version = "3.2", default-features = false, features = ["rustls-tls", "aws-auth", "compat-3-0-0", "dns-resolver"] }
  bson = "2.15.0"
  ring = "0.17.14"
  pem = "3.0.5"
  aws-config = "1.8.2"
  aws-credential-types = "1.2.4"
  aws-sdk-sts = "1.73.0"
  aws-types = "1.3.7"
  byteorder = "1.5.0"
  parking_lot = "0.12.4"
  octorust =  "0.9.0"
  reqwest-middleware = "0.4.2"
  tracing-subscriber = {version = "0.3.19", features = ["env-filter"] }
  tracing-core = "0.1.34"
  tree-sitter = "0.25.8"
  aws-smithy-runtime = "1.9.1"
  aws-smithy-http-client = "1.1.1"
  aws-smithy-runtime-api = "1.9.0"
  aws-smithy-types = "1.3.2"
  tree-sitter-bash = "0.25.0"
  tree-sitter-c = "0.24.1"
  tree-sitter-c-sharp = "0.23.1"
  tree-sitter-cpp = "0.23.4"
  tree-sitter-css = "0.23.2"
  tree-sitter-go = "0.23.4"
  tree-sitter-html = "0.23.2"
  tree-sitter-java = "0.23.5"
  tree-sitter-javascript = "0.23.1"
  tree-sitter-php = "0.23.11"
  tree-sitter-python = "0.23.6"
  tree-sitter-ruby = "0.23.1"
  tree-sitter-rust = "0.24.0"
  tree-sitter-toml-ng = "0.7.0"
  tree-sitter-typescript = "0.23.2"
  tree-sitter-yaml = "0.7.1"
  streaming-iterator = "0.1.9"
  tree-sitter-regex = "0.24.3"
  tree_magic_mini = "3.2"
  content_inspector = "0.2.4"
  rustc-hash = "2.1.1"
  term_size = "0.3.2"
  bzip2 = "0.5.2"
  zip = "2.4.2"
  tar = "0.4.44"
  xz2 = "0.1.7"
  asar = "0.3.0"
  blake3 = "1.8.2"
  memchr = "2.7"
  memmap2 = "0.9.7"
  futures = "0.3.31"
  dashmap = "6.1.0"
  xxhash-rust = { version = "0.8.15", features = ["xxh3", "const_xxh3"] }
  serde_yaml = "0.9.34"
  hmac = "0.12.1"
  sha2 = "0.10.9"
  strum_macros = "0.27.1"
  humantime = "2.2.0"
  path-dedot = "3.1.1"
  quick-xml = {version = "0.38.0", features = ["serde","serialize"] }
  rustls = "0.23.29"
  tokio-postgres-rustls = "0.13.0"
  rustls-native-certs = "0.8.1"
  predicates = "3.1.3"
  assert_cmd = "2.0.17"
  proptest = "1.7.0"
  color-backtrace = "0.7.0"
  gitlab = "0.1801.0"
  mimalloc = {version = "0.1.47", features = ["override"]}
  thread_local = "1.1.9"
  bloomfilter = "3.0.1"
  uuid = "1.17.0"
  rand = "0.9.1"
  percent-encoding = "2.3.1"
  atty = "0.2.14"
  self_update = { version = "0.42.0", default-features = false, features = ["rustls", "archive-tar", "archive-zip", "compression-flate2"] }
  semver = "1.0.26"
  globset = "0.4.16"
  jsonwebtoken = "9.3.1"
  ipnet = "2.11.0"
  jira_query = "1.6.0"
  oci-client = { version = "0.15", default-features = false, features = ["rustls-tls"] }
  walkdir = "2.5.0"
  p256 = "0.13.2"
  ed25519-dalek = { version = "2.2", features = ["pkcs8"] }
  aws-sdk-s3 = "1.100.0"
  tokei = "12.1.2"
  
  [target.'cfg(not(windows))'.dependencies]
  sha1 = { version = "0.10.6", features = ["asm"] }
  
  [target.'cfg(windows)'.dependencies]
  sha1 = "0.10.6"
  
  [dependencies.tikv-jemallocator]
  version = "0.6"
  optional = true
  
  [features]
  default       = ["use-mimalloc"]         
  use-mimalloc  = ["mimalloc/override"]
  use-jemalloc  = ["tikv-jemallocator"]
  system-alloc  = []                # forces System allocator
  
  [dev-dependencies]
  pretty_assertions = "1.4"
  temp-env = "0.3.6"
  wiremock = "0.6.4"
  git2 = "0.20.2"
  rand_chacha = "0.9.0"
  
  [profile.release]
  debug = false
  strip = true #"debuginfo"
  opt-level = 3           # Maximum optimization for performance
  lto = true              # Enable Link Time Optimization
  codegen-units = 1       # Optimize for size but slower compilation
  # panic = "abort"         # Remove unwind tables for panics
  rpath = false           # Don't embed path dependencies
  incremental = false
  
  [profile.dev]
  opt-level = 0
  # debug = true
  incremental = true
  codegen-units = 256
  
  [patch.crates-io]
  vectorscan-rs = { path = "vendor/vectorscan-rs/vectorscan-rs" }
  vectorscan-rs-sys = { path = "vendor/vectorscan-rs/vectorscan-rs-sys" }
  jira_query = { path = "vendor/jira_query" }
  
  [profile.profiling]
  inherits = "release"
  debug = true
  