pod2/Cargo.toml
Eduard S. 88a75986b8
Integrate recursion into MainPod (#243)
* calculate MainPod id in a dynamic-friendly way

The MainPod id is now calculated with front padding and a fixed size
independent of max_public_statements so that introduction gadgets can be
verified by a MainPod while paying only for the number of statements
they use.  This is because with front padding of none-statements we can
precompute the poseidon state corresponding to absorbing all the padding
statements and only pay constraints for the non-padding statements.

The id is calculated as follows:
`id = hash(serialize(reverse(statements || none-statements)))`

* add time feature and disable timing by default

* apply suggestions from @arnaucube

* link issues in todos
2025-05-29 17:10:19 +02:00

42 lines
1 KiB
TOML

[package]
name = "pod2"
version = "0.1.0"
edition = "2021"
[lib]
name = "pod2"
path = "src/lib.rs"
[dependencies]
hex = "0.4.3"
itertools = "0.14.0"
strum = "0.26"
strum_macros = "0.26"
anyhow = "1.0.56"
dyn-clone = "1.0.18"
log = "0.4"
env_logger = "0.11"
lazy_static = "1.5.0"
thiserror = { version = "2.0.12" }
# enabled by features:
plonky2 = { git = "https://github.com/0xPolygonZero/plonky2", optional = true }
serde = "1.0.219"
serde_json = "1.0.140"
base64 = "0.22.1"
schemars = "0.8.22"
hashbrown = { version = "0.14.3", default-features = false, features = ["serde"] }
# Uncomment for debugging with https://github.com/ed255/plonky2/ at branch `feat/debug`. The repo directory needs to be checked out next to the pod2 repo directory.
# [patch."https://github.com/0xPolygonZero/plonky2"]
# plonky2 = { path = "../plonky2/plonky2" }
[dev-dependencies]
pretty_assertions = "1.4.1"
# Used only for testing JSON Schema generation and validation.
jsonschema = "0.30.0"
[features]
default = ["backend_plonky2"]
backend_plonky2 = ["plonky2"]
metrics = []
time = []