content: [package]
  name = "starbase_utils"
  version = "0.11.20"
  edition = "2024"
  license = "MIT"
  description = "General fs, io, serde, net, etc, utilities."
  repository = "https://github.com/moonrepo/starbase"
  rust-version = "1.89.0"
  
  [package.metadata.docs.rs]
  all-features = true
  
  [[bench]]
  name = "glob"
  harness = false
  
  [dependencies]
  starbase_styles = { version = "0.6.3", path = "../styles" }
  dirs = { workspace = true }
  miette = { workspace = true, optional = true }
  regex = { workspace = true, optional = true }
  serde = { workspace = true, optional = true }
  thiserror = { workspace = true }
  tracing = { workspace = true }
  
  # editor-config
  ec4rs = { version = "1.2.0", optional = true }
  
  # glob
  jwalk = { version = "0.8.1", optional = true }
  scc = { workspace = true, optional = true }
  wax = { version = "0.6.0", optional = true, features = ["walk"] }
  
  # json
  json-strip-comments = { version = "1.0.4", optional = true }
  serde_json = { workspace = true, optional = true }
  
  # toml
  toml = { version = "0.9.5", optional = true }
  
  # yaml
  serde_yml = { workspace = true, optional = true }
  
  # net
  async-trait = { workspace = true, optional = true }
  reqwest = { workspace = true, optional = true }
  url = { version = "2.5.7", optional = true }
  
  [features]
  default = []
  editor-config = ["dep:ec4rs"]
  fs-lock = []
  glob = ["dep:wax", "dep:jwalk"]
  glob-cache = ["dep:scc"]
  # glob-miette = ["glob", "miette", "wax/miette"]
  miette = ["dep:miette"]
  net = ["dep:reqwest", "dep:url", "dep:async-trait"]
  json = ["dep:json-strip-comments", "dep:serde", "dep:serde_json"]
  toml = ["dep:toml", "dep:serde"]
  yaml = ["dep:regex", "dep:serde", "dep:serde_yml"]
  
  [dev-dependencies]
  criterion2 = { version = "3.0.0", default-features = false }
  reqwest = { workspace = true, features = ["rustls-tls-native-roots"] }
  starbase_sandbox = { path = "../sandbox" }
  starbase_utils = { path = ".", features = [
      "editor-config",
      "fs-lock",
      "glob",
      "glob-cache",
      # "glob-miette",
      "miette",
      "net",
      "json",
      "toml",
      "yaml",
  ] }
  tokio = { workspace = true }
  