[package]
edition = "2024"
rust-version = "1.97.0"
name = "shepherd-registry"
version = "6.4.9"
authors = [
"FL03 <joe@pzzld.org>",
"Scattered-Systems LLC <support@scsys.io>",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The shepherd registry: the SQLite schema, migration runner, and query surface that every harness reads directly."
homepage = "https://github.com/FL03/shepherd/wiki"
readme = "README.md"
keywords = [
"agent",
"orchestration",
"sprint",
"cli",
"plugin",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "Apache-2.0"
repository = "https://github.com/FL03/shepherd.git"
[package.metadata.docs.rs]
all-features = false
features = ["full"]
rustc-args = [
"--cfg",
"docsrs",
]
version = "v{{version}}"
[package.metadata.release]
no-dev-version = true
tag-name = "v{{version}}"
[features]
alloc = [
"serde?/alloc",
"serde_json?/alloc",
"sha2/alloc",
"shepherd-core/alloc",
]
bundled = ["rusqlite/bundled"]
default = [
"bundled",
"layout",
"std",
]
full = [
"default",
"json",
"tracing",
]
json = [
"alloc",
"dep:serde",
"dep:serde_json",
"shepherd-core/json",
]
layout = [
"std",
"dep:serde",
"dep:serde_json",
"serde/std",
"serde_json/std",
]
native = ["full"]
nightly = ["shepherd-core/nightly"]
sqlite-wasm = ["rusqlite/ffi-sqlite-wasm-rs"]
std = [
"alloc",
"serde?/std",
"serde_json?/std",
"shepherd-core/std",
"thiserror/std",
"tracing?/std",
]
tracing = [
"dep:tracing",
"shepherd-core/tracing",
]
wasi = [
"bundled",
"json",
"std",
"wasi-vfs",
]
wasi-vfs = ["rusqlite/wasm32-wasi-vfs"]
wasm = [
"json",
"sqlite-wasm",
"std",
]
[lib]
name = "shepherd_registry"
crate-type = ["rlib"]
path = "src/lib.rs"
bench = false
[[test]]
name = "default"
path = "tests/default.rs"
required-features = ["bundled"]
[[test]]
name = "layout"
path = "tests/layout.rs"
required-features = ["layout"]
[[test]]
name = "registry"
path = "tests/registry.rs"
required-features = [
"bundled",
"std",
]
[dependencies.rusqlite]
version = "0.40"
features = ["cache"]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
default-features = false
[dependencies.serde_json]
version = "1"
optional = true
default-features = false
[dependencies.sha2]
version = "0.11"
default-features = false
[dependencies.shepherd-core]
version = "6.4.9"
default-features = false
[dependencies.thiserror]
version = "2"
default-features = false
[dependencies.tracing]
version = "0.1"
features = ["attributes"]
optional = true
default-features = false
[lints.clippy]
cast_possible_truncation = "warn"
cast_sign_loss = "warn"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.rust]
unreachable_pub = "warn"
unsafe_code = "deny"