content: [workspace]
  resolver = "2"
  members = [
    "cargo-nextest",
    "fixture-data",
    "integration-tests",
    "nextest-filtering",
    "nextest-metadata",
    "nextest-runner",
    "internal-test",
    "workspace-hack",
  ]
  
  [workspace.package]
  rust-version = "1.86"
  edition = "2024"
  license = "MIT OR Apache-2.0"
  
  [workspace.dependencies]
  aho-corasick = "1.1.3"
  async-scoped = { version = "0.9.0", features = ["use-tokio"] }
  atomicwrites = "0.4.4"
  bstr = { version = "1.12.0", default-features = false, features = ["std"] }
  bytes = "1.10.1"
  camino = "1.2.1"
  camino-tempfile = "1.4.1"
  camino-tempfile-ext = "0.3.3"
  cargo_metadata = "0.22.0"
  # We specify default-no-update here because if users just run:
  #
  # cargo build --no-default-features --features default-no-update
  #
  # then cargo will unify features for cargo-nextest, and it will be built with self-update enabled.
  # We could ask distributors to always include `--package cargo-nextest` instead, but they're likely
  # to forget. None of our current tests depend on self-update, so just don't include it by default.
  cargo-nextest = { path = "cargo-nextest", default-features = false, features = [
      "default-no-update",
  ] }
  cfg-if = "1.0.3"
  color-eyre = "0.6.5"
  # config's "preserve_order" feature is needed for preserving the order of
  # setup scripts in .config/nextest.toml.
  config = { version = "0.15.18", default-features = false, features = [
      "toml",
      "preserve_order",
  ] }
  chrono = "0.4.42"
  clap = { version = "4.5.48", features = ["derive", "unstable-markdown"] }
  console-subscriber = "0.4.1"
  cp_r = "0.5.2"
  crossterm = { version = "0.29.0", features = ["event-stream"] }
  datatest-stable = { version = "0.3.3", features = ["include-dir"] }
  dialoguer = "0.12.0"
  debug-ignore = "1.0.5"
  derive-where = "1.6.0"
  duct = "1.1.0"
  dunce = "1.0.5"
  enable-ansi-support = "0.3.1"
  fixture-data = { path = "fixture-data" }
  fs-err = "3.1.3"
  future-queue = "0.4.0"
  futures = "0.3.31"
  globset = "0.4.16"
  guppy = "0.17.22"
  hex = "0.4.3"
  home = "0.5.11"
  http = "1.3.1"
  humantime = "2.3.0"
  humantime-serde = "1.1.1"
  iddqd = "0.3.14"
  # Disable punycode parsing since we only access well-known domains.
  idna_adapter = "=1.0.0"
  indenter = "0.3.4"
  indent_write = "2.2.0"
  indexmap = "2.11.4"
  indicatif = "0.18.0"
  indoc = "2.0.6"
  insta = { version = "1.43.2", default-features = false }
  is_ci = "1.2.0"
  itertools = "0.14.0"
  libc = "0.2.177"
  libtest-mimic = "0.8.1"
  log = "0.4.28"
  maplit = "1.0.2"
  miette = "7.6.0"
  mukti-metadata = "0.3.0"
  # note: we don't use owo-colors' if_supports_color support for now, instead preferring to use our
  # own supports-color + stylesheets everywhere.
  newtype-uuid = { version = "1.3.1", features = ["v4"] }
  nextest-filtering = { version = "0.16.0", path = "nextest-filtering" }
  nextest-metadata = { version = "0.12.2", path = "nextest-metadata" }
  nextest-workspace-hack = "0.1.0"
  nix = { version = "0.30.1", default-features = false, features = ["signal"] }
  num_threads = "0.1.7"
  owo-colors = "4.2.3"
  pathdiff = { version = "0.2.3", features = ["camino"] }
  pin-project-lite = "0.2.16"
  pretty_assertions = "1.4.1"
  proptest = "1.8.0"
  quick-junit = "0.5.1"
  rand = "0.9.2"
  recursion = "0.5.4"
  regex = "1.12.1"
  regex-syntax = "0.8.7"
  semver = "1.0.27"
  self_update = { version = "0.42.0", default-features = false, features = [
      "archive-tar",
      "compression-flate2",
  ] }
  serde = { version = "1.0.228", features = ["derive"] }
  serde_ignored = "0.1.14"
  serde_json = "1.0.145"
  serde_path_to_error = "0.1.20"
  sha2 = "0.10.9"
  shell-words = "1.1.0"
  smallvec = "1.15.1"
  smol_str = { version = "0.3.2", features = ["serde"] }
  strip-ansi-escapes = "0.2.1"
  supports-color = "3.0.2"
  supports-unicode = "3.0.0"
  swrite = "0.1.0"
  tar = "0.4.44"
  target-spec = { version = "3.4.2", features = ["custom", "summaries"] }
  target-spec-miette = "0.4.5"
  test-case = "3.3.1"
  test-strategy = "0.4.3"
  thiserror = "2.0.17"
  tokio = "1.47.1"
  tokio-stream = "0.1.17"
  toml = "0.8.23"
  toml_edit = "0.23.7"
  tracing = "0.1.41"
  tracing-subscriber = { version = "0.3.20", default-features = false, features = ["std", "tracing-log", "fmt"] }
  unicode-ident = "1.0.19"
  unicode-normalization = "0.1.24"
  whoami = "1.6.1"
  win32job = "2.0.3"
  windows-sys = "0.61.2"
  winnow = "0.7.13"
  xxhash-rust = "0.8.15"
  zstd = { version = "0.13.3", features = ["zstdmt"] }
  
  # make backtrace + color-eyre faster on debug builds
  [profile.dev.package.backtrace]
  opt-level = 3
  
  # insta and similar are recommended by insta
  [profile.dev.package.insta]
  opt-level = 3
  
  [profile.dev.package.similar]
  opt-level = 3
  
  [profile.release]
  # Ensure that symbols and debuginfo aren't stripped. They're useful for debugging issues with
  # nextest in the field, and don't bloat up binaries too much
  strip = "none"
  
  [patch.crates-io]
  nextest-workspace-hack = { path = "workspace-hack" }
  
  # Uncomment for testing.
  # cargo_metadata = { path = "../cargo_metadata" }
  # guppy = { path = "../../guppy/guppy" }
  # future-queue = { path = "../future-queue" }
  # target-spec = { path = "../guppy/target-spec" }
  # target-spec-miette = { path = "../guppy/target-spec-miette" }
  # tokio = { path = "../../tokio/tokio" }
  # quick-junit = { path = "../quick-junit" }
  