[package]
authors                = ["Adam Nelson <anelson@apocryph.org>"]
categories             = ["command-line-utilities", "development-tools"]
description            = "Core library for cgx, the Rust equivalent of uvx or npx for running Rust crates quickly and easily"
edition.workspace      = true
homepage.workspace     = true
license.workspace      = true
name                   = "cgx-core"
readme                 = "../README.md"
repository.workspace   = true
rust-version.workspace = true
version                = "0.0.10"

[package.metadata.cargo-machete]
ignored = [
  # This is used in a `#[serde(with = "...")]` attribute, cargo-machete seems unable to detect this
  "humantime-serde",
]

[dependencies]
backon          = { workspace = true }
build-context   = { workspace = true }
bytes           = { workspace = true }
bzip2           = { workspace = true }
cargo_metadata  = { workspace = true }
chrono          = { workspace = true }
clap            = { workspace = true }
etcetera        = { workspace = true }
figment         = { workspace = true }
flate2          = { workspace = true }
gix             = { workspace = true }
home            = { workspace = true }
humantime       = { workspace = true }
humantime-serde = { workspace = true }
ignore          = { workspace = true }
reqwest         = { workspace = true }
semver          = { workspace = true }
serde           = { workspace = true }
serde-cyclonedx = { workspace = true }
serde_json      = { workspace = true }
sha2            = { workspace = true }
shellexpand     = { workspace = true }
snafu           = { workspace = true }
strum           = { workspace = true, features = ["derive"] }
tame-index      = { workspace = true }
tar             = { workspace = true }
tempfile        = { workspace = true }
toml            = { workspace = true }
tracing         = { workspace = true }
url             = { workspace = true }
uuid            = { workspace = true }
which           = { workspace = true }
xz2.workspace   = true
zip.workspace   = true
zstd.workspace  = true

[target.'cfg(windows)'.dependencies]
ctrlc = { workspace = true }

[dev-dependencies]
assert-json-diff   = { workspace = true }
assert_matches     = { workspace = true }
httpmock           = { workspace = true }
insta              = { workspace = true }
rand               = { workspace = true }
sealed_test        = { workspace = true }
tracing-subscriber = { workspace = true }

[lints]
workspace = true
