# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.
[package]
edition = "2024"
rust-version = "1.89"
name = "triton-vm"
version = "2.0.0"
authors = ["Triton Software AG"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
A virtual machine that comes with Algebraic Execution Tables (AET) and Arithmetic Intermediate
Representations (AIR) for use in combination with a STARK proof system to allow proving correct
execution of arbitrary programs in zero-knowledge.
"""
homepage = "https://triton-vm.org/"
documentation = "https://triton-vm.org/spec/"
readme = "README.md"
keywords = [
"zero-knowledge",
"STARK",
"virtual-machine",
"recursive",
]
categories = [
"cryptography",
"mathematics",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/TritonVM/triton-vm"
resolver = "2"
[features]
default = ["no_profile"]
no_profile = []
[lib]
name = "triton_vm"
path = "src/lib.rs"
example
name = "factorial"
path = "examples/factorial.rs"
bench
name = "barycentric_eval"
path = "benches/barycentric_eval.rs"
harness = false
bench
name = "bezout_coeffs"
path = "benches/bezout_coeffs.rs"
harness = false
bench
name = "cached_vs_jit_trace"
path = "benches/cached_vs_jit_trace.rs"
harness = false
bench
name = "initialize_array"
path = "benches/initialize_array.rs"
harness = false
bench
name = "mem_io"
path = "benches/mem_io.rs"
harness = false
bench
name = "proof_size"
path = "benches/proof_size.rs"
harness = false
bench
name = "prove_fib"
path = "benches/prove_fib.rs"
harness = false
bench
name = "prove_halt"
path = "benches/prove_halt.rs"
harness = false
bench
name = "trace_mmr_new_peak_calculation"
path = "benches/trace_mmr_new_peak_calculation.rs"
harness = false
bench
name = "verify_halt"
path = "benches/verify_halt.rs"
harness = false
[dependencies.air]
version = "2.0.0"
package = "triton-air"
[dependencies.arbitrary]
version = "1"
features = ["derive"]
[dependencies.colored]
version = "3.0"
[dependencies.constraint-builder]
version = "2.0.0"
package = "triton-constraint-builder"
[dependencies.get-size2]
version = "0.7"
features = ["derive"]
[dependencies.indexmap]
version = "2.10.0"
features = ["rayon"]
[dependencies.isa]
version = "2.0.0"
package = "triton-isa"
[dependencies.itertools]
version = "0.14"
[dependencies.lazy_static]
version = "1.5"
[dependencies.memory-stats]
version = "1.2"
features = ["always_use_statm"]
[dependencies.ndarray]
version = "0.17"
features = ["rayon"]
[dependencies.num-traits]
version = "0.2"
[dependencies.rand]
version = "0.9.1"
[dependencies.rayon]
version = "1.10"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.strum]
version = "0.27"
features = ["derive"]
[dependencies.thiserror]
version = "2.0"
[dependencies.twenty-first]
version = "1.1.0"
[dependencies.unicode-width]
version = "0.2"
[dev-dependencies.assert2]
version = "0.3"
[dev-dependencies.constraint-circuit]
version = "2.0.0"
package = "triton-constraint-circuit"
[dev-dependencies.criterion]
version = "4.0"
features = ["html_reports"]
package = "codspeed-criterion-compat"
[dev-dependencies.fs-err]
version = "3.1"
[dev-dependencies.insta]
version = "1.43.1"
[dev-dependencies.prettyplease]
version = "0.2"
[dev-dependencies.proptest]
version = "1.7"
[dev-dependencies.proptest-arbitrary-interop]
version = "0.1"
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.test-strategy]
version = "0.4.2"
[build-dependencies.air]
version = "2.0.0"
package = "triton-air"
[build-dependencies.constraint-builder]
version = "2.0.0"
package = "triton-constraint-builder"
[build-dependencies.constraint-circuit]
version = "2.0.0"
package = "triton-constraint-circuit"
[build-dependencies.prettyplease]
version = "0.2"
[build-dependencies.proc-macro2]
version = "1.0"
[build-dependencies.syn]
version = "2.0"
[lints.clippy]
cast_lossless = "warn"
cloned_instead_of_copied = "warn"
copy_iterator = "warn"
default_trait_access = "warn"
doc_link_with_quotes = "warn"
enum_glob_use = "warn"
expl_impl_clone_on_copy = "warn"
explicit_into_iter_loop = "warn"
explicit_iter_loop = "warn"
filter_map_next = "warn"
flat_map_option = "warn"
fn_params_excessive_bools = "warn"
from_iter_instead_of_collect = "warn"
if_not_else = "warn"
implicit_clone = "warn"
inconsistent_struct_constructor = "warn"
inefficient_to_string = "warn"
invalid_upcast_comparisons = "warn"
items_after_statements = "warn"
large_digit_groups = "warn"
macro_use_imports = "warn"
manual_assert = "warn"
manual_instant_elapsed = "warn"
manual_let_else = "warn"
manual_ok_or = "warn"
manual_string_new = "warn"
many_single_char_names = "warn"
map_unwrap_or = "warn"
match_wild_err_arm = "warn"
match_wildcard_for_single_variants = "warn"
mismatching_type_param_order = "warn"
mut_mut = "warn"
needless_continue = "warn"
needless_for_each = "warn"
no_effect_underscore_binding = "warn"
option_option = "warn"
range_minus_one = "warn"
range_plus_one = "warn"
redundant_else = "warn"
ref_binding_to_reference = "warn"
ref_option_ref = "warn"
return_self_not_must_use = "warn"
same_functions_in_if_condition = "warn"
should_panic_without_expect = "warn"
stable_sort_primitive = "warn"
struct_field_names = "warn"
trivially_copy_pass_by_ref = "warn"
unchecked_duration_subtraction = "warn"
uninlined_format_args = "warn"
unnecessary_box_returns = "warn"
unnecessary_join = "warn"
unnecessary_wraps = "warn"
unnested_or_patterns = "warn"
unused_async = "warn"
used_underscore_binding = "warn"
verbose_bit_mask = "warn"
wildcard_imports = "warn"
[lints.rust]
let_underscore_drop = "warn"
missing_copy_implementations = "warn"
missing_debug_implementations = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage,coverage_nightly)"]