Implement Wasmtime's new API as designed by RFC 11. This is quite a large commit which has had lots of discussion externally, so for more information it's best to read the RFC thread and the PR thread.
66 lines
2.2 KiB
TOML
66 lines
2.2 KiB
TOML
[package]
|
|
name = "wiggle"
|
|
version = "0.27.0"
|
|
authors = ["Pat Hickey <phickey@fastly.com>", "Jakub Konka <kubkonk@jakubkonka.com>", "Alex Crichton <alex@alexcrichton.com>"]
|
|
edition = "2018"
|
|
license = "Apache-2.0 WITH LLVM-exception"
|
|
description = "Runtime components of wiggle code generator"
|
|
categories = ["wasm"]
|
|
keywords = ["webassembly", "wasm"]
|
|
repository = "https://github.com/bytecodealliance/wasmtime"
|
|
include = ["src/**/*", "LICENSE"]
|
|
|
|
[dependencies]
|
|
thiserror = "1"
|
|
witx = { path = "../wasi-common/WASI/tools/witx", version = "0.9.0", optional = true }
|
|
wiggle-macro = { path = "macro", version = "0.27.0" }
|
|
tracing = "0.1.15"
|
|
bitflags = "1.2"
|
|
async-trait = "0.1.42"
|
|
wasmtime = { path = "../wasmtime", version = "0.27.0", optional = true, default-features = false }
|
|
anyhow = "1.0"
|
|
|
|
[badges]
|
|
maintenance = { status = "actively-developed" }
|
|
|
|
[dev-dependencies]
|
|
wiggle-test = { path = "test-helpers" }
|
|
anyhow = "1"
|
|
proptest = "1.0.0"
|
|
|
|
[[test]]
|
|
name = "wasmtime_async"
|
|
path = "tests/wasmtime_async.rs"
|
|
required-features = ["wasmtime_async", "wasmtime/wat"]
|
|
|
|
[[test]]
|
|
name = "wasmtime_sync"
|
|
path = "tests/wasmtime_sync.rs"
|
|
required-features = ["wasmtime_integration", "wasmtime/wat"]
|
|
|
|
[[test]]
|
|
name = "wasmtime_integration"
|
|
path = "tests/wasmtime_integration.rs"
|
|
required-features = ["wasmtime_integration", "wasmtime/wat"]
|
|
|
|
|
|
[features]
|
|
# The wiggle proc-macro emits some code (inside `pub mod metadata`) guarded
|
|
# by the `wiggle_metadata` feature flag. We use this feature flag so that
|
|
# users of wiggle are not forced to take a direct dependency on the `witx`
|
|
# crate unless they want it.
|
|
wiggle_metadata = ['witx', "wiggle-macro/wiggle_metadata"]
|
|
|
|
# The `tracing` crate can use the `log` ecosystem of backends with this
|
|
# non-default feature. We don't need to provide this by default, but its
|
|
# useful for users that don't want to use `tracing-subscriber` to get
|
|
# the logs out of wiggle-generated libraries.
|
|
tracing_log = [ "tracing/log" ]
|
|
|
|
# Generate adapters for wasmtime, and expose the wasmtime_integration macro.
|
|
wasmtime_integration = [ "wasmtime", "wiggle-macro/wasmtime" ]
|
|
# Support for async in the wasmtime crates.
|
|
wasmtime_async = [ "wasmtime_integration", "wasmtime/async" ]
|
|
|
|
default = ["wiggle_metadata", "wasmtime_integration" ]
|