solid-pod-rs-git 0.5.0-alpha.13

Git HTTP smart-protocol backend for solid-pod-rs, mirroring JavaScriptSolidServer's src/handlers/git.js (PARITY rows 69, 100, 199, 200).
Documentation
[package]
name = "solid-pod-rs-git"
version.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
rust-version.workspace = true
description = "Git HTTP smart-protocol backend for solid-pod-rs, mirroring JavaScriptSolidServer's src/handlers/git.js (PARITY rows 69, 100, 199, 200)."
keywords = ["solid", "git", "http-backend", "nip98", "cgi"]
categories = ["web-programming::http-server"]
readme = "README.md"

[dependencies]
# Core library: provides the NIP-98 verifier (`auth::nip98::verify_at`)
# and associated `PodError`. No explicit feature needed — the auth
# module lives in the always-on surface.
solid-pod-rs = { version = "0.5.0-alpha.13", path = "../solid-pod-rs", default-features = false, features = ["tokio-runtime", "git-auto-init", "did-nostr-types"] }

tokio = { version = "1", features = ["process", "rt", "rt-multi-thread", "io-util", "macros", "sync"] }
bytes = "1"
base64 = "0.22"
thiserror = "1"
tracing = "0.1"
async-trait = "0.1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
hex = "0.4"
# Derives the controller's full public key from `nostr.privkey` so
# `agent.did.json` carries the key's actual parity (nostrcg/did-nostr#145).
k256 = { version = "0.13", default-features = false, features = ["arithmetic"] }
zeroize = "1"

[dev-dependencies]
tempfile = "3"
tokio = { version = "1", features = ["full"] }
sha2 = "0.10"
hex = "0.4"
serde_json = "1"

[features]
# When the `git-http-backend` CGI binary is present in the test
# environment, enable the end-to-end integration tests that actually
# spawn the CGI. Unit tests for auth/guard/config always run.
default = []
with-git-binary = []
# Exposes `GitAutoInit` as a `solid_pod_rs::provision::GitInitHook`
# implementor. Requires the `git-auto-init` feature on `solid-pod-rs`.
# Enabled by default in this crate because `tokio::process` (already a
# dependency here) is all it needs — no new transitive deps.
git-auto-init = ["solid-pod-rs/git-auto-init"]