[package]
name = "uv-extract"
version = "0.0.52"
description = "This is an internal component crate of uv"
edition = { workspace = true }
rust-version = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }
authors = { workspace = true }
license = { workspace = true }

[lib]
doctest = false

[lints]
workspace = true

[dependencies]
uv-configuration = { workspace = true }
uv-distribution-filename = { workspace = true }
uv-pypi-types = { workspace = true }
uv-static = { workspace = true }
uv-warnings = { workspace = true }

astral-tokio-tar = { workspace = true }
async-compression = { workspace = true, features = ["bzip2", "gzip", "zstd", "xz"] }
async_zip = { workspace = true }
blake2 = { workspace = true }
flate2 = { workspace = true }
fs-err = { workspace = true, features = ["tokio"] }
futures = { workspace = true }
md-5 = { workspace = true }
rayon = { workspace = true }
regex = { workspace = true }
reqwest = { workspace = true }
rustc-hash = { workspace = true }
sha2 = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tokio-util = { workspace = true, features = ["compat"] }
tracing = { workspace = true }
xz2 = { workspace = true }

[features]
default = []
# Avoid a liblzma.so dependency
static = ["xz2/static"]

[package.metadata.cargo-shear]
# NOTE: `async-compression` owns the actual Deflate codec, but we need to
# explicitly declare `flate2` here so the workspace's `zlib-rs` backend stays
# selected after removing the synchronous `zip` dependency.
ignored = ["flate2", "xz2"]
