content: [workspace]
  resolver = "3"
  members = [
      "crates/*",
      "legacy/core/*",
  
      # Languages
      "legacy/bun/*",
      "legacy/deno/*",
      "legacy/javascript/*",
      "legacy/node/*",
      "legacy/rust/*",
      "legacy/system/*",
  ]
  exclude = ["tests/fixtures", "wasm/test-plugin"]
  default-members = ["crates/cli"]
  
  [workspace.dependencies]
  async-recursion = "1.1.1"
  async-trait = "0.1.89"
  cached = "0.56.0"
  chrono = { version = "0.4.42", features = ["serde"] }
  cd_env = "0.3.0"
  ci_env = "0.4.0"
  clap = { version = "4.5.46", default-features = false, features = [
      "derive",
      "std",
      "error-context",
  ] }
  clap_complete = "4.5.57"
  compact_str = { version = "0.9.0", default-features = false, features = [
      "serde",
  ] }
  convert_case = "0.8.0"
  dirs = "6.0.0"
  futures = "0.3.31"
  indexmap = "2.11.4"
  iocraft = "0.7.13"
  md5 = "0.8.0"
  miette = "7.6.0"
  pathdiff = "0.2.3"
  petgraph = { version = "0.8.2", default-features = false, features = [
      "serde-1",
  ] }
  relative-path = { version = "2.0.1" }
  regex = { version = "1.11.2", default-features = false, features = [
      "std",
      "perf",
  ] }
  reqwest = { version = "0.12.23", default-features = false, features = [
      "rustls-tls-native-roots",
      # We don't use openssl but its required for musl builds
      "native-tls-vendored",
  ] }
  rustc-hash = "2.1.1"
  scc = "2.4.0"
  schematic = { version = "0.18.14", default-features = false, features = [
      "schema",
  ] }
  serial_test = "3.2.0"
  semver = "1.0.27"
  serde = { version = "1.0.228", features = ["derive"] }
  serde_json = "1.0.145"
  serde_yml = "0.0.12"
  sha2 = "0.10.9"
  starbase = { version = "0.10.6" }
  starbase_archive = { version = "0.11.6", default-features = false, features = [
      "miette",
      "tar-all",
      "zip-all",
  ] }
  starbase_console = { version = "0.6.13", features = ["miette"] }
  starbase_events = "0.7.3"
  starbase_id = { version = "0.2.3", features = ["miette", "schematic"] }
  starbase_sandbox = "0.9.9"
  starbase_shell = "0.10.2"
  starbase_styles = { version = "0.6.1", features = ["relative-path"] }
  starbase_utils = { version = "0.11.20", default-features = false, features = [
      "editor-config",
      "glob-cache",
      "miette",
  ] }
  tera = { version = "1.20.0", features = ["preserve_order"] }
  thiserror = "2.0.16"
  tokio = { version = "1.47.1", default-features = false, features = [
      "macros",
      "process",
      "rt-multi-thread",
      "rt",
      "signal",
      "time",
      "tracing",
  ] }
  tokio-util = "0.7.16"
  typescript_tsconfig_json = { version = "0.5.0", features = ["serialize"] }
  tracing = "0.1.41"
  url = "2.5.7"
  uuid = { version = "1.18.1", features = ["v4"] }
  
  # proto/plugin related
  extism = "=1.12.0"
  extism-pdk = "1.4.1"
  proto_core = "0.53.3"
  proto_pdk_api = "0.31.2"
  proto_pdk_test_utils = "0.41.2"
  system_env = "0.8.3"
  version_spec = "0.9.5"
  warpgate = "0.28.2"
  warpgate_api = "0.17.1"
  warpgate_pdk = "0.16.1"
  
  # proto_core = { path = "../proto/crates/core" }
  # system_env = { path = "../proto/crates/system-env" }
  # version_spec = { path = "../proto/crates/version-spec" }
  # warpgate = { path = "../proto/crates/warpgate" }
  # warpgate_api = { path = "../proto/crates/warpgate-api" }
  # warpgate_pdk = { path = "../proto/crates/warpgate-pdk" }
  
  [workspace.lints.clippy]
  # Very noisy, lots of false positives!
  assigning_clones = "allow"
  
  [workspace.metadata.cargo-shear]
  ignored = ["serde"]
  