[package]
edition = "2024"
name = "heddle-cli"
version = "0.2.3"
authors = ["Luke"]
build = false
exclude = [
"tests/realworld_git/fixtures/*",
"tests/snapshots/**/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An AI-native version control system"
readme = "README.md"
keywords = [
"vcs",
"version-control",
"ai",
"git",
]
categories = ["development-tools"]
license = "Apache-2.0"
repository = "https://github.com/HeddleCo/heddle"
resolver = "2"
[features]
client = [
"dep:heddle-client",
"dep:tokio-tungstenite",
]
default = [
"git-overlay",
"native",
"local",
"semantic",
"zstd",
]
git-overlay = [
"repo/git-overlay",
"ingest",
]
ingest = ["dep:ingest"]
local = []
mount = [
"dep:mount",
"mount?/fuse",
]
native = ["repo/native"]
observability = [
"dep:opentelemetry",
"dep:opentelemetry-otlp",
"dep:opentelemetry_sdk",
"dep:tracing-opentelemetry",
]
s3 = ["repo/s3"]
semantic = [
"dep:semantic",
"repo/tree-sitter-symbols",
]
semantic-extended = [
"semantic",
"semantic?/extended-languages",
]
zstd = [
"dep:zstd",
"objects/zstd",
"proto/zstd",
"repo/zstd",
"ingest?/zstd",
]
[lib]
name = "cli"
path = "src/lib.rs"
[[bin]]
name = "heddle"
path = "src/main.rs"
[[test]]
name = "agent_api_schema"
path = "tests/agent_api_schema.rs"
[[test]]
name = "cli_integration"
path = "tests/cli_integration.rs"
[[test]]
name = "comprehensive"
path = "tests/comprehensive.rs"
[[test]]
name = "concurrent_access"
path = "tests/concurrent_access.rs"
[[test]]
name = "conflict_resolution"
path = "tests/conflict_resolution.rs"
[[test]]
name = "core_functionality"
path = "tests/core_functionality.rs"
[[test]]
name = "formal_specs"
path = "tests/formal_specs.rs"
[[test]]
name = "idempotency_lint"
path = "tests/idempotency_lint.rs"
[[test]]
name = "multi_agent_worktrees"
path = "tests/multi_agent_worktrees.rs"
[[test]]
name = "op_id_coverage"
path = "tests/op_id_coverage.rs"
[[test]]
name = "performance"
path = "tests/performance.rs"
[[test]]
name = "presence_publish"
path = "tests/presence_publish.rs"
[[test]]
name = "production_features"
path = "tests/production_features.rs"
[[test]]
name = "render_lint"
path = "tests/render_lint.rs"
[[test]]
name = "semantic_diff_integration"
path = "tests/semantic_diff_integration.rs"
[[test]]
name = "serve_local"
path = "tests/serve_local.rs"
[[test]]
name = "state_management"
path = "tests/state_management.rs"
[[test]]
name = "tier_coverage"
path = "tests/tier_coverage.rs"
[[bench]]
name = "local_ops"
path = "benches/local_ops.rs"
harness = false
required-features = ["semantic"]
[dependencies.anstyle]
version = "1"
[dependencies.anyhow]
version = "1"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
version = "0.1"
[dependencies.base32]
version = "0.5"
[dependencies.base64]
version = "0.22"
[dependencies.blake3]
version = "1"
[dependencies.bytes]
version = "1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.clap_complete]
version = "4"
[dependencies.cli-shared]
version = "0.2"
package = "heddle-cli-shared"
[dependencies.crypto]
version = "0.2"
package = "heddle-crypto"
[dependencies.daemon]
version = "0.2"
package = "heddle-daemon"
[dependencies.ed25519-dalek]
version = "2"
features = [
"pem",
"rand_core",
]
[dependencies.fs2]
version = "0.4.3"
[dependencies.futures]
version = "0.3"
[dependencies.gix]
version = "=0.80.0"
features = [
"revision",
"tree-editor",
"blocking-network-client",
"blocking-http-transport-reqwest-rust-tls",
]
default-features = false
[dependencies.gix-index]
version = "0.48"
[dependencies.gix-pack]
version = "0.67"
[dependencies.gix-protocol]
version = "0.58"
features = ["blocking-client"]
[dependencies.gix-transport]
version = "0.55"
features = ["http-client-insecure-credentials"]
[dependencies.grpc]
version = "0.2"
package = "heddle-grpc"
[dependencies.heddle-client]
version = "0.2"
optional = true
[dependencies.hex]
version = "0.4"
[dependencies.hyper-util]
version = "0.1"
features = [
"tokio",
"server-auto",
]
[dependencies.ignore]
version = "0.4"
[dependencies.ingest]
version = "0.2"
optional = true
default-features = false
package = "heddle-ingest"
[dependencies.libc]
version = "0.2"
[dependencies.memmap2]
version = "0.9"
[dependencies.notify]
version = "8"
[dependencies.objects]
version = "0.2"
features = ["memory-backend"]
package = "heddle-objects"
[dependencies.opentelemetry]
version = "0.31"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.31"
features = [
"grpc-tonic",
"trace",
"metrics",
]
optional = true
[dependencies.opentelemetry_sdk]
version = "0.31"
optional = true
[dependencies.oplog]
version = "0.2"
package = "heddle-oplog"
[dependencies.prost-types]
version = "0.14"
[dependencies.proto]
version = "0.2"
default-features = false
package = "heddle-proto"
[dependencies.rand]
version = "0.10"
[dependencies.refs]
version = "0.2"
package = "heddle-refs"
[dependencies.repo]
version = "0.2"
default-features = false
package = "heddle-repo"
[dependencies.rmp-serde]
version = "1"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"logging",
"std",
"tls12",
]
default-features = false
[dependencies.schemars]
version = "0.8"
features = ["chrono"]
[dependencies.semantic]
version = "0.2"
optional = true
package = "heddle-semantic"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
features = ["oid"]
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"net",
"signal",
"sync",
"time",
"io-util",
"process",
"fs",
"rt-multi-thread",
]
default-features = false
[dependencies.tokio-stream]
version = "0.1"
features = ["sync"]
[dependencies.tokio-tungstenite]
version = "0.24"
features = ["rustls-tls-webpki-roots"]
optional = true
[dependencies.tokio-util]
version = "0.7"
features = ["codec"]
[dependencies.toml]
version = "1.1"
[dependencies.tonic]
version = "0.14"
features = [
"transport",
"tls-webpki-roots",
]
[dependencies.tonic-health]
version = "0.14"
[dependencies.tower]
version = "0.5"
features = ["util"]
default-features = false
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.32"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
]
[dependencies.walkdir]
version = "2"
[dependencies.weft-client-shim]
version = "0.2"
package = "weft-client-shim"
[dependencies.zstd]
version = "0.13"
optional = true
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.gix-transport]
version = "0.55"
features = ["http-client-insecure-credentials"]
[dev-dependencies.hyper-util]
version = "0.1"
features = [
"tokio",
"server-auto",
]
[dev-dependencies.ntest]
version = "0.9"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.serial_test]
version = "3"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tokio-tungstenite]
version = "0.24"
features = ["rustls-tls-webpki-roots"]
[dev-dependencies.uuid]
version = "1"
features = [
"v4",
"v7",
"serde",
]
[target.'cfg(target_os = "linux")'.dependencies.mount]
version = "0.2"
optional = true
package = "heddle-mount"