sov-modules-api 0.3.0

Defines the interface of the Sovereign SDK module system
[package]
name = "sov-modules-api"
description = "Defines the interface of the Sovereign SDK module system"
authors = { workspace = true }
edition = { workspace = true }
homepage = { workspace = true }
license = { workspace = true }
repository = { workspace = true }

version = { workspace = true }
readme = "README.md"
resolver = "2"

[dependencies]
jsonrpsee = { workspace = true, optional = true }
anyhow = { workspace = true }
arbitrary = { workspace = true, optional = true }
sov-first-read-last-write-cache = { path = "../utils/sov-first-read-last-write-cache", version = "0.3" }
sov-state = { path = "../sov-state", version = "0.3" }
sov-rollup-interface = { path = "../../rollup-interface", version = "0.3" }
sov-modules-macros = { path = "../sov-modules-macros", version = "0.3", optional = true }
serde = { workspace = true }
borsh = { workspace = true }
proptest = { workspace = true, optional = true }
proptest-derive = { workspace = true, optional = true }
thiserror = { workspace = true }
sha2 = { workspace = true }
bech32 = { workspace = true }
derive_more = { workspace = true }
jmt = { workspace = true }
serde_json = { workspace = true, optional = true }
hex = { workspace = true }
clap = { workspace = true, optional = true }
schemars = { workspace = true, optional = true, features = [] }

ed25519-dalek = { version = "2.0.0", default-features = false, features = ["serde"] }
rand = { version = "0.8", optional = true }

sov-zk-cycle-macros = { path = "../../utils/zk-cycle-macros", version = "0.3", optional = true }
risc0-zkvm = { workspace = true, default-features = false, features = ["std"], optional = true }
risc0-zkvm-platform = { workspace = true, optional = true }

[dev-dependencies]
bincode = { workspace = true }
sov-modules-api = { path = ".", features = ["native"] }
sov-bank = { path = "../module-implementations/sov-bank", features = ["native"] }
tempfile = { workspace = true }

[features]
arbitrary = [
    "dep:arbitrary",
    "dep:proptest",
    "dep:proptest-derive",
    "sov-state/arbitrary",
]
bench = ["sov-zk-cycle-macros", "risc0-zkvm", "risc0-zkvm-platform"]
default = ["macros"]
native = [
    "serde_json",
    "rand",
    "schemars",
    "ed25519-dalek/default",
    "ed25519-dalek/rand_core",
    "clap",
    "jsonrpsee",
    "macros",
    "sov-modules-macros/native",
    "sov-state/native",
]
macros = ["sov-modules-macros"]