[package] name = "wasmtime-cli" version.workspace = true authors.workspace = true description = "Command-line interface for Wasmtime" license = "Apache-2.0 WITH LLVM-exception" documentation = "https://bytecodealliance.github.io/wasmtime/cli.html" categories = ["wasm"] keywords = ["webassembly", "wasm"] repository = "https://github.com/bytecodealliance/wasmtime" readme = "README.md" edition.workspace = true default-run = "wasmtime" rust-version.workspace = true [package.metadata.binstall] pkg-url = "{repo}/releases/download/v{version}/wasmtime-v{version}-{target-arch}-{target-family}{archive-suffix}" bin-dir = "wasmtime-v{version}-{target-arch}-{target-family}/{bin}{binary-ext}" pkg-fmt = "txz" [package.metadata.binstall.overrides.x86_64-apple-darwin] pkg-url = "{repo}/releases/download/v{version}/wasmtime-v{version}-{target-arch}-macos{archive-suffix}" bin-dir = "wasmtime-v{version}-{target-arch}-macos/{bin}{binary-ext}" [package.metadata.binstall.overrides.aarch64-apple-darwin] pkg-url = "{repo}/releases/download/v{version}/wasmtime-v{version}-{target-arch}-macos{archive-suffix}" bin-dir = "wasmtime-v{version}-{target-arch}-macos/{bin}{binary-ext}" [package.metadata.binstall.overrides.x86_64-pc-windows-msvc] pkg-fmt = "zip" [package.metadata.binstall.overrides.x86_64-pc-windows-gnu] pkg-fmt = "zip" [package.metadata.binstall.overrides.x86_64-unknown-linux-musl] pkg-url = "{repo}/releases/download/v{version}/wasmtime-v{version}-{target-arch}-musl{archive-suffix}" bin-dir = "wasmtime-v{version}-{target-arch}-musl/{bin}{binary-ext}" [lints] workspace = true [lib] doctest = false [[bin]] name = "wasmtime" path = "src/bin/wasmtime.rs" doc = false [dependencies] wasmtime = { workspace = true, features = ['std'] } wasmtime-cache = { workspace = true, optional = true } wasmtime-cli-flags = { workspace = true } wasmtime-cranelift = { workspace = true, optional = true } wasmtime-environ = { workspace = true } wasmtime-explorer = { workspace = true, optional = true } wasmtime-wast = { workspace = true, optional = true } wasi-common = { workspace = true, default-features = true, features = ["exit", "tokio"], optional = true } wasmtime-wasi = { workspace = true, default-features = true, optional = true } wasmtime-wasi-nn = { workspace = true, optional = true } wasmtime-wasi-config = { workspace = true, optional = true } wasmtime-wasi-tls = { workspace = true, optional = true } wasmtime-wasi-keyvalue = { workspace = true, optional = true } wasmtime-wasi-threads = { workspace = true, optional = true } wasmtime-wasi-http = { workspace = true, optional = true } wasmtime-unwinder = { workspace = true } wasmtime-wizer = { workspace = true, optional = true, features = ['clap', 'wasmtime'] } clap = { workspace = true } clap_complete = { workspace = true, optional = true } target-lexicon = { workspace = true } listenfd = { version = "1.0.0", optional = true } wat = { workspace = true, optional = true } serde = { workspace = true } serde_derive = { workspace = true } serde_json = { workspace = true } wasmparser = { workspace = true } tracing = { workspace = true, features = ['std'] } log = { workspace = true } tempfile = { workspace = true, optional = true } object = { workspace = true, optional = true } cranelift-codegen = { workspace = true, optional = true, features = ['disas'] } capstone = { workspace = true, optional = true } termcolor = { workspace = true, optional = true } gimli = { workspace = true, optional = true } pulley-interpreter = { workspace = true, optional = true } smallvec = { workspace = true } async-trait = { workspace = true } bytes = { workspace = true } cfg-if = { workspace = true } tokio = { workspace = true, optional = true, features = [ "signal", "macros" ] } hyper = { workspace = true, optional = true } http = { workspace = true, optional = true } http-body-util = { workspace = true, optional = true } futures = { workspace = true, optional = true } [target.'cfg(unix)'.dependencies] rustix = { workspace = true, features = ["mm", "process"] } [dev-dependencies] # depend again on wasmtime to activate its default features for tests wasmtime = { workspace = true, features = ['default', 'anyhow', 'winch', 'pulley', 'all-arch', 'call-hook', 'memory-protection-keys', 'component-model-async'] } env_logger = { workspace = true } log = { workspace = true } filecheck = { workspace = true } tempfile = { workspace = true } tokio = { workspace = true, features = ["rt", "time", "macros", "rt-multi-thread"] } wast = { workspace = true } criterion = { workspace = true } num_cpus = "1.17.0" memchr = "2.4" async-trait = { workspace = true } wat = { workspace = true } rayon = "1.5.0" wasmtime-wast = { workspace = true, features = ['component-model'] } wasmtime-component-util = { workspace = true } wasmtime-test-util = { workspace = true, features = ['wasmtime-wast', 'component'] } bstr = "1.6.0" libc = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } walkdir = { workspace = true } test-programs-artifacts = { workspace = true } bytesize = "2.0.1" wit-component = { workspace = true } cranelift-filetests = { workspace = true } cranelift-codegen = { workspace = true, features = ["disas", "trace-log", "timing"] } cranelift-reader = { workspace = true } toml = { workspace = true } similar = { workspace = true } libtest-mimic = { workspace = true } capstone = { workspace = true } object = { workspace = true, features = ['std'] } wasmtime-test-macros = { path = "crates/test-macros" } pulley-interpreter = { workspace = true, features = ["disas"] } wasm-encoder = { workspace = true } cranelift-native = { workspace = true } futures = { workspace = true } # Should only be used for tests that are explicitly testing `anyhow::Error` and # `wasmtime::Error` integration and conversion. Otherwise, always prefer to use # `wasmtime::Error`. anyhow-for-testing = { workspace = true } [target.'cfg(windows)'.dev-dependencies] windows-sys = { workspace = true, features = ["Win32_System_Memory"] } [target.'cfg(unix)'.dev-dependencies] rustix = { workspace = true, features = ["param"] } [profile.release.build-override] opt-level = 0 [workspace] resolver = '2' members = [ "cranelift", "cranelift/assembler-x64/fuzz", "cranelift/isle/fuzz", "cranelift/isle/islec", "cranelift/isle/veri/veri_engine", "cranelift/isle/veri/veri_ir", "cranelift/serde", "crates/bench-api", "crates/c-api/artifact", "crates/environ/fuzz", "crates/misc/component-async-tests", "crates/test-programs", "crates/wasi-preview1-component-adapter", "crates/wasi-preview1-component-adapter/verify", "crates/wasi-tls-nativetls", "crates/wasi-tls-openssl", "crates/debugger", "crates/wizer/fuzz", "crates/wizer/tests/regex-test", "crates/wizer/benches/regex-bench", "crates/wizer/benches/uap-bench", "examples/fib-debug/wasm", "examples/wasm", "examples/tokio/wasm", "examples/component/wasm", "examples/resource-component/wasm", "examples/min-platform", "examples/min-platform/embedding", "examples/wasip2-plugins", "fuzz", "winch/codegen", ] exclude = [ 'docs/rust_wasi_markdown_parser', ] [workspace.package] version = "43.0.0" authors = ["The Wasmtime Project Developers"] edition = "2024" # Wasmtime's current policy is that this number can be no larger than the # current stable release of Rust minus 2. rust-version = "1.91.0" [workspace.lints.rust] # Turn on some lints which are otherwise allow-by-default in rustc. unused_extern_crates = 'warn' trivial_numeric_casts = 'warn' unstable_features = 'warn' unused_import_braces = 'warn' unused-lifetimes = 'warn' unused-macro-rules = 'warn' # Don't warn about unknown cfgs for pulley [workspace.lints.rust.unexpected_cfgs] level = "warn" check-cfg = [ 'cfg(pulley_tail_calls)', 'cfg(pulley_assume_llvm_makes_tail_calls)', 'cfg(pulley_disable_interp_simd)', ] [workspace.lints.clippy] # The default set of lints in Clippy is viewed as "too noisy" right now so # they're all turned off by default. Selective lints are then enabled below as # necessary. all = { level = 'allow', priority = -1 } clone_on_copy = 'warn' map_clone = 'warn' uninlined_format_args = 'warn' unnecessary_to_owned = 'warn' manual_strip = 'warn' useless_conversion = 'warn' unnecessary_mut_passed = 'warn' unnecessary_fallible_conversions = 'warn' unnecessary_cast = 'warn' allow_attributes_without_reason = 'warn' from_over_into = 'warn' redundant_field_names = 'warn' multiple_bound_locations = 'warn' extra_unused_type_parameters = 'warn' [workspace.dependencies] # Public crates related to Wasmtime. # # These crates are intended to be depended upon publicly to varying degrees. For # example `wasmtime` is very much intended to be used, as well as WASI crates # like `wasmtime-wasi`. Crates like `wasmtime-environ` are useful for ecosystem # tooling but aren't intended to be widely depended on. # # All of these crates are supported though in the sense that wasmtime = { path = "crates/wasmtime", version = "43.0.0", default-features = false } wasmtime-cli-flags = { path = "crates/cli-flags", version = "=43.0.0" } wasmtime-environ = { path = "crates/environ", version = "=43.0.0" } wasmtime-wasi = { path = "crates/wasi", version = "43.0.0", default-features = false } wasmtime-wasi-io = { path = "crates/wasi-io", version = "43.0.0", default-features = false } wasmtime-wasi-http = { path = "crates/wasi-http", version = "43.0.0", default-features = false } wasmtime-wasi-nn = { path = "crates/wasi-nn", version = "43.0.0" } wasmtime-wasi-config = { path = "crates/wasi-config", version = "43.0.0" } wasmtime-wasi-keyvalue = { path = "crates/wasi-keyvalue", version = "43.0.0" } wasmtime-wasi-threads = { path = "crates/wasi-threads", version = "43.0.0" } wasmtime-wasi-tls = { path = "crates/wasi-tls", version = "43.0.0" } wasmtime-wasi-tls-nativetls = { path = "crates/wasi-tls-nativetls", version = "43.0.0" } wasmtime-wasi-tls-openssl = { path = "crates/wasi-tls-openssl", version = "43.0.0" } wasmtime-wast = { path = "crates/wast", version = "=43.0.0" } # Internal Wasmtime-specific crates. # # Note that all crates here are actually named `wasmtime-internal-*` as their # package name which is what will show up on crates.io. This is done to signal # that these are internal unsupported crates for external use. These exist as # part of the project organization of other public crates in Wasmtime and are # otherwise not supported in terms of CVEs for example. wasmtime-core = { path = "crates/core", version = "=43.0.0", package = 'wasmtime-internal-core' } wasmtime-wmemcheck = { path = "crates/wmemcheck", version = "=43.0.0", package = 'wasmtime-internal-wmemcheck' } wasmtime-c-api-macros = { path = "crates/c-api-macros", version = "=43.0.0", package = 'wasmtime-internal-c-api-macros' } wasmtime-cache = { path = "crates/cache", version = "=43.0.0", package = 'wasmtime-internal-cache' } wasmtime-cranelift = { path = "crates/cranelift", version = "=43.0.0", package = 'wasmtime-internal-cranelift' } wasmtime-winch = { path = "crates/winch", version = "=43.0.0", package = 'wasmtime-internal-winch' } wasmtime-explorer = { path = "crates/explorer", version = "=43.0.0", package = 'wasmtime-internal-explorer' } wasmtime-fiber = { path = "crates/fiber", version = "=43.0.0", package = 'wasmtime-internal-fiber' } wasmtime-jit-debug = { path = "crates/jit-debug", version = "=43.0.0", package = 'wasmtime-internal-jit-debug' } wasmtime-component-util = { path = "crates/component-util", version = "=43.0.0", package = 'wasmtime-internal-component-util' } wasmtime-component-macro = { path = "crates/component-macro", version = "=43.0.0", package = 'wasmtime-internal-component-macro' } wasmtime-versioned-export-macros = { path = "crates/versioned-export-macros", version = "=43.0.0", package = 'wasmtime-internal-versioned-export-macros' } wasmtime-jit-icache-coherence = { path = "crates/jit-icache-coherence", version = "=43.0.0", package = 'wasmtime-internal-jit-icache-coherence' } wasmtime-wit-bindgen = { path = "crates/wit-bindgen", version = "=43.0.0", package = 'wasmtime-internal-wit-bindgen' } wasmtime-unwinder = { path = "crates/unwinder", version = "=43.0.0", package = 'wasmtime-internal-unwinder' } wasmtime-debugger = { path = "crates/debugger", version = "=43.0.0", package = "wasmtime-internal-debugger" } wasmtime-wizer = { path = "crates/wizer", version = "43.0.0" } # Miscellaneous crates without a `wasmtime-*` prefix in their name but still # used in the `wasmtime-*` family of crates depending on various features/etc. wiggle = { path = "crates/wiggle", version = "=43.0.0", default-features = false } wiggle-macro = { path = "crates/wiggle/macro", version = "=43.0.0" } wiggle-generate = { path = "crates/wiggle/generate", version = "=43.0.0" } wasi-common = { path = "crates/wasi-common", version = "=43.0.0", default-features = false } pulley-interpreter = { path = 'pulley', version = "=43.0.0" } pulley-macros = { path = 'pulley/macros', version = "=43.0.0" } # Cranelift crates in this workspace cranelift-assembler-x64 = { path = "cranelift/assembler-x64", version = "0.130.0" } cranelift-codegen = { path = "cranelift/codegen", version = "0.130.0", default-features = false, features = ["std", "unwind"] } cranelift-frontend = { path = "cranelift/frontend", version = "0.130.0" } cranelift-entity = { path = "cranelift/entity", version = "0.130.0" } cranelift-native = { path = "cranelift/native", version = "0.130.0" } cranelift-module = { path = "cranelift/module", version = "0.130.0" } cranelift-interpreter = { path = "cranelift/interpreter", version = "0.130.0" } cranelift-reader = { path = "cranelift/reader", version = "0.130.0" } cranelift-filetests = { path = "cranelift/filetests" } cranelift-object = { path = "cranelift/object", version = "0.130.0" } cranelift-jit = { path = "cranelift/jit", version = "0.130.0" } cranelift-fuzzgen = { path = "cranelift/fuzzgen" } cranelift-bforest = { path = "cranelift/bforest", version = "0.130.0" } cranelift-bitset = { path = "cranelift/bitset", version = "0.130.0" } cranelift-control = { path = "cranelift/control", version = "0.130.0", default-features = false } cranelift-srcgen = { path = "cranelift/srcgen", version = "0.130.0" } cranelift = { path = "cranelift/umbrella", version = "0.130.0" } # Winch crates in this workspace. winch-codegen = { path = "winch/codegen", version = "=43.0.0" } # Internal crates not published to crates.io used in testing, builds, etc wasi-preview1-component-adapter = { path = "crates/wasi-preview1-component-adapter" } wasmtime-fuzzing = { path = "crates/fuzzing" } test-programs-artifacts = { path = 'crates/test-programs/artifacts' } wasmtime-test-util = { path = "crates/test-util" } byte-array-literals = { path = "crates/wasi-preview1-component-adapter/byte-array-literals" } pulley-interpreter-fuzz = { path = 'pulley/fuzz' } component-async-tests = { path = "crates/misc/component-async-tests" } # Bytecode Alliance maintained dependencies: # --------------------------- regalloc2 = "0.13.4" wasip1 = { version = "1.0.0", default-features = false } # cap-std family: target-lexicon = "0.13.0" cap-std = "3.4.5" cap-rand = { version = "3.4.5", features = ["small_rng"] } cap-fs-ext = "3.4.5" cap-net-ext = "3.4.5" cap-time-ext = "3.4.5" cap-tempfile = "3.4.5" fs-set-times = "0.20.3" system-interface = { version = "0.27.3", features = ["cap_std_impls"] } io-lifetimes = { version = "2.0.3", default-features = false } io-extras = "0.18.4" rustix = "1.0.8" # wit-bindgen: wit-bindgen = { version = "0.53.0", default-features = false } wit-bindgen-rust-macro = { version = "0.53.0", default-features = false } # wasm-tools family: wasmparser = { version = "0.245.0", default-features = false, features = ['simd'] } wat = "1.245.0" wast = "245.0.0" wasmprinter = "0.245.0" wasm-encoder = "0.245.0" wasm-smith = "0.245.0" wasm-mutate = "0.245.0" wit-parser = "0.245.0" wit-component = "0.245.0" wasm-wave = "0.245.0" wasm-compose = "0.245.0" json-from-wast = "0.245.0" # Non-Bytecode Alliance maintained dependencies: # -------------------------- arbitrary = "1.4.2" backtrace = "0.3.75" mutatis = "0.3.2" cc = "1.2.41" object = { version = "0.38.1", default-features = false, features = ['read_core', 'elf'] } gimli = { version = "0.33.0", default-features = false, features = ['read'] } addr2line = { version = "0.26.0", default-features = false } anyhow = { version = "1.0.100", default-features = false } anyhow-for-testing = { package = "anyhow", version = "1.0.100", default-features = false } windows-sys = "0.61.2" env_logger = "0.11.5" log = { version = "0.4.28", default-features = false } clap = { version = "4.5.48", default-features = false, features = ["std", "derive"] } clap_complete = "4.5.58" hashbrown = { version = "0.16", default-features = false } capstone = "0.13.0" smallvec = { version = "1.15.1", features = ["union"] } tracing = { version = "0.1.41", default-features = false } bitflags = "2.9.4" thiserror = "2.0.17" async-trait = "0.1.89" heck = "0.5" similar = "2.7.0" toml = "0.9.8" mach2 = "0.4.2" memfd = "0.6.5" psm = "0.1.11" proptest = "1.0.0" rand = { version = "0.9.2", features = ["small_rng"] } # serde and serde_derive must have the same version serde = { version = "1.0.228", default-features = false, features = ['alloc'] } serde_derive = "1.0.228" serde_json = "1.0.80" glob = "0.3.3" libfuzzer-sys = "0.4.10" walkdir = "2.5.0" cfg-if = "1.0" tempfile = "3.23.0" filecheck = "0.5.0" libc = { version = "0.2.177", default-features = true } file-per-thread-logger = "0.2.0" tokio = { version = "1.48.0", features = [ "rt", "time" ] } hyper = "1.7.0" http = "1.3.1" http-body = "1.0.1" http-body-util = "0.1.3" bytes = { version = "1.10.1", default-features = false } futures = { version = "0.3.31", default-features = false } indexmap = { version = "2.11.4", default-features = false } syn = "2.0.106" quote = "1.0.41" proc-macro2 = "1.0.101" test-log = { version = "0.2.18", default-features = false, features = ["trace"] } tracing-subscriber = { version = "0.3.20", default-features = false, features = ['fmt', 'env-filter', 'ansi', 'tracing-log'] } url = "2.5.7" postcard = { version = "1.1.3", default-features = false, features = ['alloc'] } criterion = { version = "0.7.0", default-features = false, features = ["html_reports", "rayon"] } rustc-hash = { version = "2.1.1", default-features = false } libtest-mimic = "0.8.1" semver = { version = "1.0.27", default-features = false } ittapi = "0.4.0" libm = "0.2.16" tokio-rustls = "0.25.0" rustls = "0.22.0" tokio-native-tls = "0.3.1" native-tls = "0.2.11" tokio-openssl = "0.6.5" openssl = "0.10.73" openssl-sys = "0.9.109" webpki-roots = "0.26.0" itertools = "0.14.0" base64 = "0.22.1" termcolor = "1.4.1" flate2 = "1.1.4" tokio-util = "0.7.16" arbtest = "0.3.2" rayon = "1.5.3" regex = "1.9.1" pin-project-lite = "0.2.14" # ============================================================================= # # Features for the Wasmtime CLI executable # # # Note that many of these features are inherited from Wasmtime itself or # otherwise configure the `wasmtime` crate'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 [features] default = [ # All subcommands are included by default. "run", "compile", "explore", "serve", "wast", "config", "completion", "objdump", "wizer", # On-by-default WASI features "wasi-nn", "wasi-threads", "wasi-http", "wasi-config", "wasi-keyvalue", "wasi-tls", # Most features of Wasmtime are enabled by default. "backtrace", "wat", "parallel-compilation", "pooling-allocator", "cache", "logging", "demangle", "cranelift", "profiling", "coredump", "addr2line", "debug-builtins", "component-model", "component-model-async", "threads", "gc", "gc-drc", "gc-null", "stack-switching", "winch", "pulley", "debug", # Enable some nice features of clap by default, but they come at a binary size # cost, so allow disabling this through disabling of our own `default` # feature. "clap/default", "clap/wrap_help", ] # ======================================== # Off-by-default features # # These features are off-by-default but may optionally be enabled. all-arch = ["wasmtime/all-arch"] winch = ["wasmtime/winch"] wmemcheck = ["wasmtime/wmemcheck"] trace-log = ["wasmtime/trace-log"] memory-protection-keys = ["wasmtime-cli-flags/memory-protection-keys"] profile-pulley = ["wasmtime/profile-pulley"] component-model-async = [ "wasmtime-cli-flags/component-model-async", "component-model", "wasmtime-wasi?/p3", "wasmtime-wasi-http?/p3", "dep:futures", ] rr = ["wasmtime/rr", "component-model", "wasmtime-cli-flags/rr", "run"] # This feature, when enabled, will statically compile out all logging statements # throughout Wasmtime and its dependencies. disable-logging = ["log/max_level_off", "tracing/max_level_off"] # ======================================== # On-by-default features # # These features are all included in the `default` set above and this is # the internal mapping for what they enable in Wasmtime itself. wasi-nn = ["dep:wasmtime-wasi-nn"] wasi-tls = ["dep:wasmtime-wasi-tls"] wasi-threads = ["dep:wasmtime-wasi-threads", "threads"] wasi-http = ["component-model", "dep:wasmtime-wasi-http", "dep:tokio", "dep:hyper", "wasmtime-wasi-http/default-send-request"] wasi-config = ["dep:wasmtime-wasi-config"] wasi-keyvalue = ["dep:wasmtime-wasi-keyvalue"] pooling-allocator = ["wasmtime/pooling-allocator", "wasmtime-cli-flags/pooling-allocator"] backtrace = ["wasmtime/backtrace"] component-model = [ "wasmtime/component-model", "wasmtime-wast?/component-model", "wasmtime-cli-flags/component-model", "wasmtime-wizer?/component-model", ] wat = ["dep:wat", "wasmtime/wat"] cache = ["dep:wasmtime-cache", "wasmtime-cli-flags/cache"] parallel-compilation = ["wasmtime-cli-flags/parallel-compilation"] logging = ["wasmtime-cli-flags/logging"] demangle = ["wasmtime/demangle"] cranelift = ["wasmtime-cli-flags/cranelift", "dep:wasmtime-cranelift"] profiling = ["wasmtime/profiling", "wasmtime/call-hook"] coredump = ["wasmtime-cli-flags/coredump"] addr2line = ["wasmtime/addr2line"] debug-builtins = ["wasmtime/debug-builtins"] threads = ["wasmtime-cli-flags/threads"] gc = ["wasmtime-cli-flags/gc", "wasmtime/gc"] gc-drc = ["gc", "wasmtime/gc-drc", "wasmtime-cli-flags/gc-drc"] gc-null = ["gc", "wasmtime/gc-null", "wasmtime-cli-flags/gc-null"] pulley = ["wasmtime-cli-flags/pulley"] stack-switching = ["wasmtime/stack-switching", "wasmtime-cli-flags/stack-switching"] debug = ["wasmtime-cli-flags/debug", "wasmtime/debug"] # CLI subcommands for the `wasmtime` executable. See `wasmtime $cmd --help` # for more information on each subcommand. serve = [ "wasi-http", "wasmtime-wasi-http/component-model-async", "component-model", "dep:http-body-util", "dep:http", "wasmtime-cli-flags/async", ] explore = ["dep:wasmtime-explorer", "dep:tempfile"] wast = ["dep:wasmtime-wast"] config = ["cache"] compile = ["cranelift"] run = [ "dep:wasmtime-wasi", "wasmtime/runtime", "wasmtime/wave", "dep:listenfd", "dep:wasi-common", "dep:tokio", "wasmtime-cli-flags/async", ] completion = ["dep:clap_complete"] objdump = [ 'dep:object', 'dep:cranelift-codegen', 'dep:capstone', 'dep:termcolor', 'dep:gimli', 'pulley-interpreter/disas', ] wizer = [ "wasmtime-wizer", "dep:wasmtime-wasi", "dep:wasi-common", "dep:tokio", "wasmtime/wave", ] [[test]] name = "disas" harness = false [[test]] name = "wast" harness = false [[test]] name = "wasi" harness = false [[example]] name = "tokio" required-features = ["wasi-common/tokio"] [[bench]] name = "compile" harness = false [[bench]] name = "instantiation" harness = false [[bench]] name = "thread_eager_init" harness = false [[bench]] name = "trap" harness = false [[bench]] name = "call" harness = false [[bench]] name = "wasi" harness = false [profile.release.package.wasi-preview1-component-adapter] opt-level = 's' strip = 'debuginfo' [profile.dev.package.wasi-preview1-component-adapter] # Make dev look like a release build since this adapter module won't work with # a debug build that uses data segments and such. incremental = false opt-level = 's' # Omit assertions, which include failure messages which require string # initializers. debug-assertions = false # Omit integer overflow checks, which include failure messages which require # string initializers. overflow-checks = false # Same as `wasi-preview1-component-adapter` above [profile.dev.package.wit-bindgen] incremental = false debug-assertions = false overflow-checks = false opt-level = 's' [profile.profiling] inherits = "bench" debug = "line-tables-only" [profile.fastest-runtime] inherits = "release" codegen-units = 1 lto = true