[package]
edition = "2021"
rust-version = "1.88"
name = "alkgit"
version = "0.1.0"
build = false
exclude = [
".opencode/",
"AGENTS.md",
"docs/reviews/",
"docs/research/",
"docs/plans/",
"docs/sdd_process.md",
"tasks/",
"fuzz/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Git smart protocol for the alk family: pkt-line substrates, protocol V2 serving (upload-pack/receive-pack), producer/consumer halves on alkcall channels, and the backend seam traits — the shipped alkstore+alkblobs composition is the alkgit-substrate crate (ADR-010/025)"
readme = "README.md"
keywords = [
"git",
"protocol",
"alkcall",
"vcs",
"network",
]
categories = [
"network-programming",
"asynchronous",
]
license = "MIT OR Apache-2.0"
repository = "https://git.alk.dev/alkdev/alkgit"
[features]
default = []
sha256 = ["gix-hash/sha256"]
[lib]
name = "alkgit"
path = "src/lib.rs"
[[test]]
name = "doubles"
path = "tests/doubles.rs"
[[test]]
name = "duplex_serving"
path = "tests/duplex_serving.rs"
[[test]]
name = "fetch_machines"
path = "tests/fetch_machines.rs"
[[test]]
name = "native_transport"
path = "tests/native_transport.rs"
[[test]]
name = "push_machines"
path = "tests/push_machines.rs"
[[test]]
name = "real_client"
path = "tests/real_client.rs"
[[test]]
name = "session_construction"
path = "tests/session_construction.rs"
[[test]]
name = "session_fetch"
path = "tests/session_fetch.rs"
[[test]]
name = "session_push"
path = "tests/session_push.rs"
[[test]]
name = "stateless_serving"
path = "tests/stateless_serving.rs"
[[test]]
name = "v2_machines"
path = "tests/v2_machines.rs"
[dependencies.alkcall]
version = "0.10"
[dependencies.async-trait]
version = "0.1"
[dependencies.bstr]
version = "1"
[dependencies.bytes]
version = "1"
[dependencies.futures]
version = "0.3"
[dependencies.gix-hash]
version = "0.28"
features = ["sha1"]
[dependencies.gix-packetline]
version = "0.24"
features = ["async-io"]
[dependencies.gix-protocol]
version = "0.67"
features = ["async-client"]
[dependencies.gix-transport]
version = "0.61"
features = ["async-client"]
[dependencies.gix-validate]
version = "0.13"
[dependencies.parking_lot]
version = "0.12"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"sync",
"io-util",
"macros",
"time",
]
default-features = false
[dependencies.tokio-util]
version = "0.7"
features = ["compat"]
[dev-dependencies.gix-actor]
version = "0.44"
[dev-dependencies.gix-error]
version = "0.5"
[dev-dependencies.gix-object]
version = "0.66"
features = ["sha1"]
[dev-dependencies.gix-pack]
version = "0.76"
features = [
"generate",
"parallel",
"sha1",
"streaming-input",
]
default-features = false
[dev-dependencies.gix-parallel]
version = "0.50"
features = ["parallel"]
default-features = false
[dev-dependencies.gix-traverse]
version = "0.63"
features = ["sha1"]
[dev-dependencies.gix-utils]
version = "0.5"
features = ["progress"]
[dev-dependencies.gix-zlib]
version = "0.3"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1"
features = [
"full",
"test-util",
"macros",
]
[profile.release]
lto = "thin"