[package]
edition = "2021"
rust-version = "1.78.0"
name = "wasmtime"
version = "24.0.6"
authors = ["The Wasmtime Project Developers"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-level API to expose the Wasmtime runtime"
documentation = "https://docs.rs/wasmtime"
readme = "README.md"
license = "Apache-2.0 WITH LLVM-exception"
repository = "https://github.com/bytecodealliance/wasmtime"
[package.metadata.docs.rs]
all-features = true
[features]
addr2line = [
"dep:addr2line",
"dep:gimli",
"std",
]
all-arch = [
"wasmtime-cranelift?/all-arch",
"wasmtime-winch?/all-arch",
]
async = [
"dep:wasmtime-fiber",
"dep:async-trait",
"wasmtime-component-macro?/async",
"runtime",
"std",
]
cache = [
"dep:wasmtime-cache",
"std",
]
call-hook = []
component-model = [
"wasmtime-environ/component-model",
"wasmtime-cranelift?/component-model",
"wasmtime-winch?/component-model",
"dep:wasmtime-component-macro",
"dep:wasmtime-component-util",
"dep:encoding_rs",
"dep:semver",
]
coredump = [
"dep:wasm-encoder",
"runtime",
"std",
]
cranelift = [
"dep:wasmtime-cranelift",
"std",
]
debug-builtins = [
"dep:wasmtime-jit-debug",
"std",
]
default = [
"async",
"cache",
"gc",
"wat",
"profiling",
"parallel-compilation",
"cranelift",
"pooling-allocator",
"demangle",
"addr2line",
"coredump",
"debug-builtins",
"runtime",
"component-model",
"threads",
"std",
]
demangle = [
"wasmtime-environ/demangle",
"std",
]
gc = [
"wasmtime-environ/gc",
"wasmtime-cranelift?/gc",
]
incremental-cache = [
"wasmtime-cranelift?/incremental-cache",
"std",
]
memory-protection-keys = ["pooling-allocator"]
parallel-compilation = [
"dep:rayon",
"std",
]
pooling-allocator = [
"runtime",
"std",
]
profiling = [
"dep:fxprof-processed-profile",
"dep:wasmtime-jit-debug",
"dep:ittapi",
"dep:rustix",
"rustix/thread",
"dep:serde_json",
"std",
]
runtime = [
"dep:cc",
"dep:smallvec",
"dep:mach2",
"dep:memfd",
"dep:wasmtime-asm-macros",
"dep:wasmtime-jit-icache-coherence",
"dep:wasmtime-slab",
"dep:wasmtime-versioned-export-macros",
"dep:windows-sys",
"dep:psm",
"dep:rustix",
"rustix/mm",
]
std = [
"postcard/use-std",
"wasmtime-component-macro?/std",
"wasmtime-environ/std",
"object/std",
"once_cell/std",
]
threads = [
"wasmtime-cranelift?/threads",
"std",
]
winch = [
"dep:wasmtime-winch",
"std",
]
wmemcheck = [
"dep:wasmtime-wmemcheck",
"wasmtime-cranelift?/wmemcheck",
"wasmtime-environ/wmemcheck",
"std",
]
[lib]
name = "wasmtime"
path = "src/lib.rs"
[dependencies.addr2line]
version = "0.22.0"
optional = true
default-features = false
[dependencies.anyhow]
version = "1.0.22"
default-features = false
[dependencies.async-trait]
version = "0.1.71"
optional = true
[dependencies.bitflags]
version = "2.0"
[dependencies.bumpalo]
version = "3.11.0"
[dependencies.cfg-if]
version = "1.0"
[dependencies.encoding_rs]
version = "0.8.31"
optional = true
[dependencies.fxprof-processed-profile]
version = "0.6.0"
optional = true
[dependencies.gimli]
version = "0.29.0"
features = ["read"]
optional = true
default-features = false
[dependencies.hashbrown]
version = "0.14"
default-features = false
[dependencies.indexmap]
version = "2.0.0"
default-features = false
[dependencies.libc]
version = "0.2.112"
default-features = true
[dependencies.libm]
version = "0.2.7"
[dependencies.log]
version = "0.4.8"
default-features = false
[dependencies.object]
version = "0.36"
features = [
"read_core",
"elf",
]
default-features = false
[dependencies.once_cell]
version = "1.12.0"
default-features = false
[dependencies.paste]
version = "1.0.3"
[dependencies.postcard]
version = "1.0.8"
features = ["alloc"]
default-features = false
[dependencies.rayon]
version = "1.0"
optional = true
[dependencies.semver]
version = "1.0.17"
optional = true
default-features = false
[dependencies.serde]
version = "1.0.188"
features = ["alloc"]
default-features = false
[dependencies.serde_derive]
version = "1.0.188"
[dependencies.serde_json]
version = "1.0.80"
optional = true
[dependencies.smallvec]
version = "1.6.1"
features = ["union"]
optional = true
[dependencies.sptr]
version = "0.3.2"
[dependencies.target-lexicon]
version = "0.12.16"
[dependencies.wasm-encoder]
version = "0.215.0"
optional = true
[dependencies.wasmparser]
version = "0.215.0"
default-features = false
[dependencies.wasmtime-asm-macros]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-cache]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-component-macro]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-component-util]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-cranelift]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-environ]
version = "=24.0.6"
[dependencies.wasmtime-fiber]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-jit-debug]
version = "=24.0.6"
features = [
"gdb_jit_int",
"perf_jitdump",
]
optional = true
[dependencies.wasmtime-jit-icache-coherence]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-slab]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-versioned-export-macros]
version = "=24.0.6"
[dependencies.wasmtime-winch]
version = "=24.0.6"
optional = true
[dependencies.wasmtime-wmemcheck]
version = "=24.0.6"
optional = true
[dependencies.wat]
version = "1.215.0"
optional = true
[dev-dependencies.env_logger]
version = "0.10"
[dev-dependencies.proptest]
version = "1.0.0"
[dev-dependencies.rand]
version = "0.8.3"
features = ["small_rng"]
[dev-dependencies.tempfile]
version = "3.1.0"
[build-dependencies.cc]
version = "1.0"
optional = true
[build-dependencies.wasmtime-versioned-export-macros]
version = "=24.0.6"
optional = true
[target.'cfg(all(target_arch = "x86_64", not(target_os = "android")))'.dependencies.ittapi]
version = "0.4.0"
optional = true
[target.'cfg(target_arch = "s390x")'.dependencies.psm]
version = "0.1.11"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.memfd]
version = "0.6.2"
optional = true
[target.'cfg(target_os = "macos")'.dependencies.mach2]
version = "0.4.2"
optional = true
[target.'cfg(target_os = "windows")'.dependencies.windows-sys]
version = "0.52.0"
features = [
"Win32_Foundation",
"Win32_System_Kernel",
"Win32_System_Memory",
"Win32_System_Diagnostics_Debug",
"Win32_System_SystemInformation",
"Win32_Storage_FileSystem",
"Win32_Security",
]
optional = true
[target."cfg(unix)".dependencies.rustix]
version = "0.38.31"
optional = true
[lints.clippy]
clone_on_copy = "warn"
manual_strip = "warn"
map_clone = "warn"
unnecessary_to_owned = "warn"
[lints.clippy.all]
level = "allow"
priority = -1
[lints.rust]
trivial_numeric_casts = "warn"
unstable_features = "warn"
unused-lifetimes = "warn"
unused_extern_crates = "warn"
unused_import_braces = "warn"