Cargo Features
[dependencies]
wasmtime-cli = { version = "45.0.1", default-features = false, features = ["all-arch", "winch", "wmemcheck", "trace-log", "memory-protection-keys", "profile-pulley", "component-model-async", "rr", "gdbstub", "disable-logging", "wasi-nn", "wasi-tls", "wasi-threads", "wasi-http", "wasi-config", "wasi-keyvalue", "pooling-allocator", "backtrace", "component-model", "wat", "cache", "parallel-compilation", "logging", "demangle", "cranelift", "profiling", "coredump", "addr2line", "debug-builtins", "threads", "gc", "gc-drc", "gc-null", "gc-copying", "pulley", "stack-switching", "debug", "serve", "explore", "wast", "config", "compile", "run", "completion", "objdump", "hot-blocks", "wizer"] }
=============================================================================
Features for the Wasmtime CLI executable
Note that many of these features are inherited from Wasmtime itself or otherwise configure the
wasmtimecrate's execution. Features are provided as compile-time switches to disable functionality primarily if one is interested in configuring binary size and or exploring the binary size implications of various features. Most features are enabled by default but most embeddings likely won't need all features.When adding or removing a feature, make sure to keep the C API in sync by modifying locations marked WASMTIME_FEATURE_LIST
- default = addr2line, backtrace, cache, compile, completion, component-model, component-model-async, config, coredump, cranelift, debug, debug-builtins, demangle, explore, gc, gc-copying, gc-drc, gc-null, hot-blocks, logging, objdump, parallel-compilation, pooling-allocator, profiling, pulley, run, serve, stack-switching, threads, wasi-config, wasi-http, wasi-keyvalue, wasi-nn, wasi-threads, wasi-tls, wast, wat, winch, wizer
-
These default features are set whenever
wasmtime-cliis added withoutsomewhere in the dependency tree.default-features = false - all-arch
-
========================================
Off-by-default features
These features are off-by-default but may optionally be enabled.depend again on wasmtime to activate its default features for tests
- winch default
- wmemcheck
- trace-log
- memory-protection-keys
-
Enables memory-protection-keys of wasmtime-cli-flags
- profile-pulley
-
Enables profile-pulley of wasmtime
- component-model-async default = component-model
-
Enables futures, component-model-async of wasmtime-cli-flags, p3 of optional wasmtime-wasi, optional wasmtime-wasi-http, and optional wasmtime-wasi-tls
- rr = component-model, run
-
Enables rr of wasmtime and wasmtime-cli-flags
- gdbstub = debug
-
Enabled in release builds. We cannot enable the built-in gdbstub component in the default build because the published-to-crates.io crates cannot build the artifact (a limitation caused by lack of artifact dependencies).
Enables wasmtime-internal-gdbstub-component-artifact
Affects
common::RunCommon.gdbstub… - disable-logging
-
This feature, when enabled, will statically compile out all logging statements throughout Wasmtime and its dependencies.
Enables max_level_off of log and tracing
- wasi-nn default
-
======================================== On-by-default features
These features are all included in the
defaultset above and this is the internal mapping for what they enable in Wasmtime itself.Enables wasmtime-wasi-nn
- wasi-tls default
-
Enables wasmtime-wasi-tls
- wasi-threads default = threads
-
Enables wasmtime-wasi-threads
- wasi-http default serve = component-model
-
Enables hyper and tokio, default-send-request of wasmtime-wasi-http
Affects
common::HttpHooks… - wasi-config default
-
Enables wasmtime-wasi-config
- wasi-keyvalue default
-
Enables wasmtime-wasi-keyvalue
- pooling-allocator default
-
Enables pooling-allocator of wasmtime and wasmtime-cli-flags
- backtrace default
- component-model default component-model-async debug rr? serve wasi-http
-
Enables component-model of wasmtime, wasmtime-cli-flags, optional wasmtime-wast, and optional wasmtime-wizer
- wat default
- cache default config
-
Enables wasmtime-internal-cache, cache of wasmtime-cli-flags
- parallel-compilation default
-
Enables parallel-compilation of wasmtime-cli-flags
- logging default
-
Enables logging of wasmtime-cli-flags
- demangle default
- cranelift default compile
-
Enables wasmtime-internal-cranelift, cranelift of wasmtime-cli-flags
- profiling default
- coredump default
-
Enables coredump of wasmtime-cli-flags
- addr2line default
- debug-builtins default
-
Enables debug-builtins of wasmtime
- threads default wasi-threads
-
Enables threads of wasmtime-cli-flags
- gc default gc-copying gc-drc gc-null
-
Enables gc of wasmtime and wasmtime-cli-flags
- gc-drc default = gc
-
Enables gc-drc of wasmtime and wasmtime-cli-flags
- gc-null default = gc
-
Enables gc-null of wasmtime and wasmtime-cli-flags
- gc-copying default = gc
-
Enables gc-copying of wasmtime and wasmtime-cli-flags
- pulley default
-
Enables pulley of wasmtime-cli-flags
- stack-switching default
-
Enables stack-switching of wasmtime and wasmtime-cli-flags
- debug default gdbstub? = component-model
-
Enables debug of wasmtime and wasmtime-cli-flags
- serve default = component-model, wasi-http
-
CLI subcommands for the
wasmtimeexecutable. Seewasmtime $cmd --helpfor more information on each subcommand.Enables http and http-body-util, async of wasmtime-cli-flags, component-model-async and p2 of wasmtime-wasi-http
- explore default
-
Enables tempfile and wasmtime-internal-explorer
- wast default
-
Enables wasmtime-wast
- config default = cache
- compile default = cranelift
- run default rr?
-
Enables wasmtime-internal-debugger and wasmtime-wasi, listenfd, tokio, and wasi-common, runtime and wave of wasmtime, async of wasmtime-cli-flags, p2 of optional wasmtime-wasi-http
- completion default
-
Enables clap_complete
Affects
wasmtime-cli::CompletionCommand… - objdump default
-
Enables termcolor, capstone ^0.13.0, cranelift-codegen, gimli, and object, disas of pulley-interpreter
- hot-blocks default
-
Enables capstone ^0.13.0, tempfile, and wasmprinter ^0.248.0
- wizer default = wasmtime-wizer
-
Enables wasmtime-wasi, tokio and wasi-common, wave of wasmtime
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.