* Remove usage of `CompilationStrategy` from `Config` This commit removes the public API usage of the internal `CompilationStrategy` enumeration from the `Config` type in the `wasmtime` crate. To do this the `enum` was copied locally into the crate and renamed `Strategy`. The high-level description of this change is: * The `Config::strategy` method now takes a locally-defined `Strategy` enumeration instead of an internal type. * The contents of `Strategy` are always the same, not relying on Cargo features to indicate which variants are present. This avoids unnecessary downstream `#[cfg]`. * A `lightbeam` feature was added to the `wasmtime` crate itself to lightbeam compilation support. * The `Config::strategy` method is now fallible. It returns a runtime error if support for the selected strategy wasn't compiled in. * The `Strategy` enum is listed as `#[non_exhaustive]` so we can safely add variants over time to it. This reduces the public crate dependencies of the `wasmtime` crate itself, removing the need to reach into internal crates even more! cc #708 * Fix fuzz targets * Update nightly used to build releases * Run rustfmt
71 lines
1.9 KiB
TOML
71 lines
1.9 KiB
TOML
[package]
|
|
name = "wasmtime-cli"
|
|
version = "0.7.0"
|
|
authors = ["The Wasmtime Project Developers"]
|
|
description = "Command-line interface for Wasmtime"
|
|
license = "Apache-2.0 WITH LLVM-exception"
|
|
documentation = "https://cranelift.readthedocs.io/"
|
|
categories = ["wasm"]
|
|
keywords = ["webassembly", "wasm"]
|
|
repository = "https://github.com/bytecodealliance/wasmtime"
|
|
readme = "README.md"
|
|
edition = "2018"
|
|
default-run = "wasmtime"
|
|
publish = false
|
|
|
|
[dependencies]
|
|
# Enable all supported architectures by default.
|
|
wasmtime = { path = "crates/api" }
|
|
wasmtime-debug = { path = "crates/debug" }
|
|
wasmtime-environ = { path = "crates/environ" }
|
|
wasmtime-interface-types = { path = "crates/interface-types" }
|
|
wasmtime-runtime = { path = "crates/runtime" }
|
|
wasmtime-jit = { path = "crates/jit" }
|
|
wasmtime-obj = { path = "crates/obj" }
|
|
wasmtime-wast = { path = "crates/wast" }
|
|
wasmtime-wasi = { path = "crates/wasi" }
|
|
wasmtime-wasi-c = { path = "crates/wasi-c", optional = true }
|
|
wasi-common = { path = "crates/wasi-common" }
|
|
docopt = "1.0.1"
|
|
serde = { "version" = "1.0.94", features = ["derive"] }
|
|
faerie = "0.13.0"
|
|
anyhow = "1.0.19"
|
|
target-lexicon = { version = "0.9.0", default-features = false }
|
|
pretty_env_logger = "0.3.0"
|
|
file-per-thread-logger = "0.1.1"
|
|
wat = "1.0.2"
|
|
libc = "0.2.60"
|
|
rayon = "1.2.1"
|
|
wasm-webidl-bindings = "0.6"
|
|
|
|
[dev-dependencies]
|
|
more-asserts = "0.2.1"
|
|
# This feature requires the wasm32-wasi target be installed. It enables
|
|
# wasm32-wasi integration tests. To enable, run
|
|
# `cargo test --features test-programs`.
|
|
test-programs = { path = "crates/test-programs" }
|
|
|
|
[build-dependencies]
|
|
anyhow = "1.0.19"
|
|
|
|
[workspace]
|
|
members = [
|
|
"crates/fuzzing",
|
|
"crates/misc/rust",
|
|
"crates/misc/py",
|
|
"fuzz",
|
|
]
|
|
|
|
[features]
|
|
lightbeam = [
|
|
"wasmtime-environ/lightbeam",
|
|
"wasmtime-jit/lightbeam",
|
|
"wasmtime-wast/lightbeam",
|
|
"wasmtime/lightbeam",
|
|
]
|
|
wasi-c = ["wasmtime-wasi-c"]
|
|
test_programs = ["test-programs/test_programs"]
|
|
|
|
[badges]
|
|
maintenance = { status = "actively-developed" }
|