[package]
edition = "2024"
rust-version = "1.85"
name = "theway-contract"
version = "0.1.21"
authors = ["theway contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "theway shared leaf contract — raw session persistence interfaces, persisted DAG snapshots, sidecar models, and path layout; no engine, protocol, or runtime dependencies."
homepage = "https://github.com/ptlzc/theway"
readme = "README.md"
license = "MIT"
repository = "https://github.com/ptlzc/theway"
resolver = "2"
[lib]
name = "theway_contract"
path = "src/lib.rs"
[[example]]
name = "generate_extension_artifacts"
path = "examples/generate_extension_artifacts.rs"
[[test]]
name = "dag"
path = "tests/dag.rs"
[[test]]
name = "extension"
path = "tests/extension.rs"
[[test]]
name = "session"
path = "tests/session.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = [
"clock",
"serde",
]
default-features = false
[dependencies.hex]
version = "0.4"
[dependencies.schemars]
version = "1"
[dependencies.semver]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[lints.clippy]
await_holding_lock = "allow"
field_reassign_with_default = "allow"
large_enum_variant = "allow"
manual_div_ceil = "allow"
module_inception = "allow"
new_without_default = "allow"
redundant_guards = "allow"
too_many_arguments = "allow"
type_complexity = "allow"