uv/crates/uv/Cargo.toml

194 lines
6.2 KiB
TOML

[package]
name = "uv"
version = "0.8.2"
edition = { workspace = true }
rust-version = { workspace = true }
homepage = { workspace = true }
documentation = { workspace = true }
repository = { workspace = true }
authors = { workspace = true }
license = { workspace = true }
default-run = "uv"
[lints]
workspace = true
[dependencies]
uv-auth = { workspace = true }
uv-build-backend = { workspace = true }
uv-build-frontend = { workspace = true }
uv-cache = { workspace = true }
uv-cache-info = { workspace = true }
uv-cache-key = { workspace = true }
uv-cli = { workspace = true }
uv-client = { workspace = true }
uv-configuration = { workspace = true }
uv-console = { workspace = true }
uv-dispatch = { workspace = true }
uv-distribution = { workspace = true }
uv-distribution-filename = { workspace = true }
uv-distribution-types = { workspace = true }
uv-extract = { workspace = true }
uv-fs = { workspace = true }
uv-git = { workspace = true }
uv-git-types = { workspace = true }
uv-install-wheel = { workspace = true, default-features = false }
uv-installer = { workspace = true }
uv-normalize = { workspace = true }
uv-pep440 = { workspace = true }
uv-pep508 = { workspace = true }
uv-performance-memory-allocator = { path = "../uv-performance-memory-allocator", optional = true }
uv-platform-tags = { workspace = true }
uv-publish = { workspace = true }
uv-pypi-types = { workspace = true }
uv-python = { workspace = true, features = ["schemars"] }
uv-redacted = { workspace = true }
uv-requirements = { workspace = true }
uv-requirements-txt = { workspace = true }
uv-resolver = { workspace = true }
uv-scripts = { workspace = true }
uv-settings = { workspace = true, features = ["schemars"] }
uv-shell = { workspace = true }
uv-static = { workspace = true }
uv-tool = { workspace = true }
uv-torch = { workspace = true }
uv-trampoline-builder = { workspace = true }
uv-types = { workspace = true }
uv-version = { workspace = true }
uv-virtualenv = { workspace = true }
uv-warnings = { workspace = true }
uv-workspace = { workspace = true, features = ["clap"] }
anstream = { workspace = true }
anyhow = { workspace = true }
axoupdater = { workspace = true, features = [
"github_releases",
"tokio",
], optional = true }
clap = { workspace = true, features = ["derive", "string", "wrap_help"] }
console = { workspace = true }
ctrlc = { workspace = true }
dotenvy = { workspace = true }
dunce = { workspace = true }
flate2 = { workspace = true, default-features = false }
fs-err = { workspace = true, features = ["tokio"] }
futures = { workspace = true }
http = { workspace = true }
indexmap = { workspace = true }
indicatif = { workspace = true }
indoc = { workspace = true }
itertools = { workspace = true }
jiff = { workspace = true }
miette = { workspace = true, features = ["fancy-no-backtrace"] }
owo-colors = { workspace = true }
petgraph = { workspace = true }
regex = { workspace = true }
reqwest = { workspace = true }
rkyv = { workspace = true }
rustc-hash = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
tempfile = { workspace = true }
textwrap = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
toml = { workspace = true }
toml_edit = { workspace = true }
tracing = { workspace = true }
tracing-durations-export = { workspace = true, features = ["plot"], optional = true }
tracing-subscriber = { workspace = true, features = ["json"] }
tracing-tree = { workspace = true }
unicode-width = { workspace = true }
url = { workspace = true }
version-ranges = { workspace = true }
walkdir = { workspace = true }
which = { workspace = true }
zip = { workspace = true }
[target.'cfg(target_os = "windows")'.dependencies]
arrayvec = { workspace = true }
self-replace = { workspace = true }
windows = { workspace = true }
windows-result = { workspace = true }
[dev-dependencies]
assert_cmd = { version = "2.0.16" }
assert_fs = { version = "1.1.2" }
base64 = { workspace = true }
byteorder = { version = "1.5.0" }
filetime = { version = "0.2.25" }
flate2 = { workspace = true, default-features = false }
ignore = { version = "0.4.23" }
indoc = { workspace = true }
insta = { version = "1.40.0", features = ["filters", "json"] }
predicates = { version = "3.1.2" }
regex = { workspace = true }
reqwest = { workspace = true, features = ["blocking"], default-features = false }
similar = { version = "2.6.0" }
tar = { workspace = true }
tempfile = { workspace = true }
whoami = { version = "1.6.0" }
wiremock = { workspace = true }
zip = { workspace = true }
[target.'cfg(unix)'.dependencies]
nix = { workspace = true }
[package.metadata.cargo-shear]
ignored = [
"flate2",
"uv-performance-memory-allocator",
]
[features]
default = ["performance", "uv-distribution/static", "default-tests"]
# Use better memory allocators, etc.
performance = ["performance-memory-allocator"]
performance-memory-allocator = ["dep:uv-performance-memory-allocator"]
# Adds self-update functionality. This feature is only enabled for uv's cargo-dist installer
# and should be left unselected when building uv for package managers.
self-update = ["axoupdater", "uv-cli/self-update"]
# Features for development only.
tracing-durations-export = ["dep:tracing-durations-export", "uv-resolver/tracing-durations-export"]
# Features that only apply when running tests, no-ops otherwise.
default-tests = [
"crates-io",
"git",
"pypi",
"python",
"python-managed",
"python-eol",
"slow-tests",
"test-ecosystem"
]
# Introduces a testing dependency on crates.io.
crates-io = []
# Introduces a testing dependency on Git.
git = []
# Introduces a testing dependency on PyPI.
pypi = []
# Introduces a testing dependency on a local Python installation.
python = []
# Introduces a testing dependency on a local Python installation with specific patch versions.
python-patch = []
# Introduces a testing dependency on a local Python installation with an EOL version.
python-eol = []
# Introduces a testing dependency on managed Python installations.
python-managed = []
# Include "slow" test cases.
slow-tests = []
# Includes test cases that require ecosystem packages
test-ecosystem = []
# Build uvw binary on Windows
windows-gui-bin = []
[package.metadata.dist]
dist = true
[[bin]]
name = "uvw"
required-features = ["windows-gui-bin"]