quilt-cli 0.37.1

Local-first data versioning for AI agent workflows: commit immutable data packages on your own machine, then sync them with S3 to share.
[package]
name = "quilt-cli"
description = "Local-first data versioning for AI agent workflows: commit immutable data packages on your own machine, then sync them with S3 to share."
readme = "README.md"
keywords = ["data", "versioning", "cli", "s3", "reproducibility"]
categories = ["command-line-utilities", "filesystem", "science"]

version = "0.37.1"

# Inherit from workspace
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true

[[bin]]
name = "quilt"
path = "src/main.rs"

[dependencies]
# Library dependencies
quilt-rs = { path = "../quilt-rs", version = "0.46.0" }
quilt-uri = { path = "../quilt-uri", version = "0.4.2" }

# CLI-specific dependencies
clap.workspace = true
dirs.workspace = true
serde.workspace = true
serde_json.workspace = true
tabled.workspace = true
tempfile.workspace = true
thiserror.workspace = true
tokio.workspace = true
tracing.workspace = true
tracing-subscriber = { workspace = true, features = ["env-filter"] }

[dev-dependencies]
# Only for the memory-mapping test: already in the lock, so no new crate.
libc = "0.2"
# Pull quilt-rs with the `testing` feature so CLI tests can drive flows against
# the in-memory mock remote. Kept out of the normal dependency above so the
# mock never leaks into release builds.
quilt-rs = { path = "../quilt-rs", version = "0.46.0", features = ["testing"] }
# Shared test fixtures, such as the fake catalog host.
quilt-uri = { path = "../quilt-uri", version = "0.4.2", features = ["test-support"] }
test-log.workspace = true
# Only for writing `file://` physical keys in test manifests: already in the
# workspace, so no new crate.
url.workspace = true

# pkg-url overridden: workspace tags as `quilt-cli/v<version>`, not
# cargo-binstall's default `v<version>`. `.tar.gz` hardcoded because
# `{ archive-suffix }` expands to `.tgz`. Asset filename mirrors the
# `binaries` job in `.github/workflows/release-crate.yaml` —
# drift breaks `cargo binstall`.
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/{ name }/v{ version }/{ name }-{ target }.tar.gz"
pkg-fmt = "tgz"
bin-dir = "{ name }-{ target }/{ bin }{ binary-ext }"

[lints]
workspace = true