[package]
edition = "2021"
name = "stwo"
version = "2.3.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core library implementing the Circle STARK prover and verifier"
readme = false
license = "Apache-2.0"
repository = "https://github.com/starkware-libs/stwo"
[package.metadata.cargo-machete]
ignored = ["stwo-std-shims"]
[features]
default = ["std"]
parallel = [
"rayon",
"indexmap/rayon",
]
prover = [
"std",
"tracing/attributes",
]
slow-tests = []
std = [
"blake2/std",
"blake3/std",
"hex/std",
"itertools/use_std",
"indexmap/std",
"num-traits/std",
"starknet-crypto/std",
"thiserror/std",
"tracing/std",
"serde/std",
"tracing-subscriber/std",
"stwo-std-shims/std",
]
tracing = []
[lib]
name = "stwo"
crate-type = ["lib"]
path = "src/lib.rs"
bench = false
[[bench]]
name = "barycentric_eval_at_point"
path = "benches/barycentric_eval_at_point.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "bit_rev"
path = "benches/bit_rev.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "eval_at_point"
path = "benches/eval_at_point.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "eval_at_point_by_folding"
path = "benches/eval_at_point_by_folding.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "fft"
path = "benches/fft.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "field"
path = "benches/field.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "fri"
path = "benches/fri.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "fri_quotients"
path = "benches/fri_quotients.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "lookups"
path = "benches/lookups.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "merkle"
path = "benches/merkle.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "pcs"
path = "benches/pcs.rs"
harness = false
required-features = ["prover"]
[[bench]]
name = "prefix_sum"
path = "benches/prefix_sum.rs"
harness = false
required-features = ["prover"]
[dependencies.blake2]
version = "0.10.6"
default-features = false
[dependencies.blake3]
version = "1.5.0"
default-features = false
[dependencies.bytemuck]
version = "1.14.3"
features = [
"derive",
"extern_crate_alloc",
]
default-features = false
[dependencies.cfg-if]
version = "1.0.0"
[dependencies.dashmap]
version = "6.1.0"
[dependencies.educe]
version = "0.5.0"
[dependencies.fnv]
version = "1.0.7"
default-features = false
[dependencies.hashbrown]
version = ">=0.15.2"
features = ["serde"]
[dependencies.hex]
version = "0.4.3"
features = ["alloc"]
default-features = false
[dependencies.indexmap]
version = "2.10.0"
default-features = false
[dependencies.itertools]
version = "0.12"
features = ["use_alloc"]
default-features = false
[dependencies.num-traits]
version = "0.2.19"
default-features = false
[dependencies.rand]
version = "0.8.5"
features = ["small_rng"]
default-features = false
[dependencies.rayon]
version = "1.10.0"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
default-features = false
[dependencies.starknet-crypto]
version = "0.6.2"
features = ["alloc"]
default-features = false
[dependencies.starknet-ff]
version = "0.3.7"
features = [
"alloc",
"serde",
]
default-features = false
[dependencies.stwo-std-shims]
version = "1.0.0"
default-features = false
[dependencies.thiserror]
version = "2.0.12"
default-features = false
[dependencies.tracing]
version = "0.1.40"
default-features = false
[dependencies.tracing-subscriber]
version = "0.3.18"
default-features = false
[dev-dependencies.aligned]
version = "0.4.2"
[dev-dependencies.test-log]
version = "0.2.15"
features = ["trace"]
[target.'cfg(all(target_family = "wasm", not(target_os = "wasi")))'.dev-dependencies.wasm-bindgen-test]
version = "0.3.43"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.criterion]
version = "0.5.1"
features = ["html_reports"]
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.criterion]
version = "0.5.1"
features = ["html_reports"]
default-features = false
[lints.clippy]
missing_const_for_fn = "warn"
[lints.rust]
future-incompatible = "deny"
nonstandard-style = "deny"
rust-2018-idioms = "deny"