Every gate check read against the cited ADR text: the key encoding holds byte-exact against ADR-002 (tags, lengths, rejects, sort order, preamble abstraction, live git-CLI interop, lowercase oid policy recorded); the trait + I/O seams + engine-state seam match ADR-003/ 010 and ADR-012 §5's reduced table; the error model's five variants and single-enum altitude reading match store-api.md/ADR-012 §6.5; the feature graph matches ADR-013 §4; all named design points audited consistent; the suite convention and backlog are traceable; family conventions clean. One inline fix: publish keyword `bao` -> `git` (excluded technology named in metadata). Wave 2 decomposition unblocked, no amendments. Verified: cargo test (26 lib + 4 conformance + 3 git-interop passed), cargo clippy --all-targets -- -D warnings, cargo clippy --all-features --all-targets -- -D warnings, cargo fmt --check, cargo check --all-features, cargo check --no-default-features --features pg-lo.
39 lines
1.2 KiB
TOML
39 lines
1.2 KiB
TOML
[package]
|
|
name = "alkblobs"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
rust-version = "1.88"
|
|
license = "MIT OR Apache-2.0"
|
|
description = "Content-addressed blob storage: multi-hash put/get/verify store with pluggable backends, transport- and protocol-agnostic"
|
|
repository = "https://git.alk.dev/alkdev/alkblobs"
|
|
keywords = ["blobs", "content-addressed", "storage", "git", "gix"]
|
|
categories = ["asynchronous", "filesystem", "database"]
|
|
exclude = [".opencode/", "AGENTS.md", "docs/reviews/", "docs/research/", "docs/plans/", "tasks/", "docs/sdd_process.md"]
|
|
|
|
[workspace]
|
|
members = ["."]
|
|
exclude = []
|
|
|
|
[lib]
|
|
name = "alkblobs"
|
|
|
|
[features]
|
|
default = ["sqlite"]
|
|
sqlite = ["dep:rusqlite"]
|
|
postgres = ["dep:tokio-postgres", "dep:deadpool-postgres"]
|
|
mem = []
|
|
pg-lo = ["dep:tokio-postgres", "dep:deadpool-postgres"]
|
|
ops = ["dep:alkcall"]
|
|
|
|
[dependencies]
|
|
tokio = { version = "1", default-features = false, features = ["rt", "sync", "io-util", "macros"] }
|
|
thiserror = "2"
|
|
parking_lot = "0.12"
|
|
|
|
alkcall = { version = "0.8.1", optional = true }
|
|
deadpool-postgres = { version = "0.14", optional = true }
|
|
hex = "0.4"
|
|
rusqlite = { version = "0.40", features = ["bundled"], optional = true }
|
|
sha1 = "0.10"
|
|
sha2 = "0.10"
|
|
tokio-postgres = { version = "0.7", optional = true } |