[package]
name = "starbase_utils"
version = "0.13.2"
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.7", 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 }
ec4rs = { version = "1.2.0", optional = true }
tokio = { workspace = true, optional = true, features = ["time"] }
jwalk = { version = "0.8.1", optional = true }
scc = { workspace = true, optional = true }
wax = { version = "0.7.0", optional = true, features = ["walk"] }
json-strip-comments = { version = "3.1.1", optional = true }
serde_json = { workspace = true, optional = true }
toml = { version = "1.1.2", optional = true }
serde_norway = { workspace = true, optional = true }
async-trait = { workspace = true, optional = true }
reqwest = { workspace = true, optional = true }
url = { version = "2.5.8", optional = true }
[features]
default = []
editor-config = ["dep:ec4rs"]
fs-lock = ["dep:tokio"]
glob = ["dep:wax", "dep:jwalk"]
glob-cache = ["dep:scc"]
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_norway"]
[dev-dependencies]
criterion2 = { version = "3.0.3", default-features = false }
reqwest = { workspace = true, features = ["rustls"] }
starbase_sandbox = { path = "../sandbox" }
starbase_utils = { path = ".", features = [
"editor-config",
"fs-lock",
"glob",
"glob-cache",
"miette",
"net",
"json",
"toml",
"yaml",
] }
tokio = { workspace = true }