[package]
edition = "2024"
rust-version = "1.97"
name = "polyc-payments"
version = "2026.9.0"
authors = ["Official Unofficial, Inc."]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Machine Payments Protocol (MPP/Tempo) integration for polychrome: the control-plane composition/glue layer over the standalone outbound, inbound, wallet-delegation, egress, and spend-policy primitive crates, plus the payment proxy/wallet views."
readme = false
license = "Apache-2.0 OR MIT"
repository = "https://github.com/officialunofficial/polychrome"
resolver = "2"
[package.metadata.polychrome]
layer = "component"
foundation = true
plane_role = "shared"
[lib]
name = "polyc_payments"
path = "src/lib.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.hex]
version = "0.4"
[dependencies.mpp]
version = "=0.11.0"
features = [
"client",
"server",
"tempo",
"reqwest-rustls-tls",
]
default-features = false
[dependencies.polyc-crypto]
version = "=2026.9.0"
[dependencies.polyc-egress]
version = "=2026.9.0"
[dependencies.polyc-payments-client]
version = "=2026.9.0"
[dependencies.polyc-payments-server]
version = "=2026.9.0"
[dependencies.polyc-spend-policy]
version = "=2026.9.0"
[dependencies.polyc-wallet-delegation]
version = "=2026.9.0"
[dependencies.prometheus]
version = "0.14"
[dependencies.reqwest]
version = "0.13.4"
features = [
"rustls",
"json",
"stream",
]
default-features = false
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"time",
]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
[dev-dependencies.tracing-test]
version = "0.2"
features = ["no-env-filter"]
[dev-dependencies.wiremock]
version = "0.6"
[lints.clippy]
dbg_macro = "deny"
module_name_repetitions = "allow"
redundant_pub_crate = "allow"
unwrap_used = "deny"
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "deny"
unreachable_pub = "warn"
unsafe_code = "forbid"
[lints.rustdoc]
all = "warn"