[package]
name = "namada_vm"
description = "The Namada VM"
resolver = "2"
authors.workspace = true
edition.workspace = true
documentation.workspace = true
homepage.workspace = true
keywords.workspace = true
license.workspace = true
readme.workspace = true
repository.workspace = true
version.workspace = true

[features]
default = ["wasm-runtime"]
wasm-runtime = [
  "parity-wasm",
  "rayon",
  "wasm-instrument",
  "wasmer-cache",
  "wasmer-compiler-singlepass",
  "wasmer-vm",
  "wasmer",
]
testing = ["namada_account/testing", "namada_core/testing", "tempfile"]

[dependencies]
namada_account.workspace = true
namada_core = { workspace = true, features = ["control_flow"] }
namada_events.workspace = true
namada_gas.workspace = true
namada_parameters.workspace = true
namada_state.workspace = true
namada_token.workspace = true
namada_tx.workspace = true
namada_vp.workspace = true

borsh.workspace = true
clru.workspace = true
parity-wasm = { workspace = true, optional = true }
rayon = { workspace = true, optional = true }
smooth-operator.workspace = true
tempfile = { workspace = true, optional = true }
thiserror.workspace = true
tracing.workspace = true
wasm-instrument = { workspace = true, optional = true }
wasmer = { workspace = true, optional = true }
wasmer-cache = { workspace = true, optional = true }
wasmer-compiler-singlepass = { workspace = true, optional = true }
wasmer-vm = { workspace = true, optional = true }
wasmparser.workspace = true

[dev-dependencies]
namada_core = { path = "../core", features = ["testing"] }
namada_state = { path = "../state", features = ["testing"] }
namada_test_utils.path = "../test_utils"
namada_tx = { path = "../tx", features = ["testing"] }

assert_matches.workspace = true
byte-unit.workspace = true
itertools.workspace = true
tempfile.workspace = true
test-log.workspace = true
wasmer-compiler.workspace = true
wasmer-types.workspace = true