make wasi-cap-std-async work with wasmtime-wasi
This commit is contained in:
1
Cargo.lock
generated
1
Cargo.lock
generated
@@ -3533,6 +3533,7 @@ name = "wasmtime-wasi"
|
|||||||
version = "0.26.0"
|
version = "0.26.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
|
"wasi-cap-std-async",
|
||||||
"wasi-cap-std-sync",
|
"wasi-cap-std-sync",
|
||||||
"wasi-common",
|
"wasi-common",
|
||||||
"wasmtime",
|
"wasmtime",
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ build = "build.rs"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
wasi-common = { path = "../wasi-common", version = "0.26.0" }
|
wasi-common = { path = "../wasi-common", version = "0.26.0" }
|
||||||
wasi-cap-std-sync = { path = "../wasi-common/cap-std-sync", version = "0.26.0", optional = true }
|
wasi-cap-std-sync = { path = "../wasi-common/cap-std-sync", version = "0.26.0", optional = true }
|
||||||
|
wasi-cap-std-async = { path = "../wasi-common/cap-std-async", version = "0.26.0", optional = true }
|
||||||
wiggle = { path = "../wiggle", default-features = false, version = "0.26.0" }
|
wiggle = { path = "../wiggle", default-features = false, version = "0.26.0" }
|
||||||
wasmtime-wiggle = { path = "../wiggle/wasmtime", default-features = false, version = "0.26.0" }
|
wasmtime-wiggle = { path = "../wiggle/wasmtime", default-features = false, version = "0.26.0" }
|
||||||
wasmtime = { path = "../wasmtime", default-features = false, version = "0.26.0" }
|
wasmtime = { path = "../wasmtime", default-features = false, version = "0.26.0" }
|
||||||
@@ -23,3 +24,4 @@ anyhow = "1.0"
|
|||||||
[features]
|
[features]
|
||||||
default = ["sync"]
|
default = ["sync"]
|
||||||
sync = ["wasi-cap-std-sync"]
|
sync = ["wasi-cap-std-sync"]
|
||||||
|
async = ["wasi-cap-std-async", "wasmtime/async", "wasmtime-wiggle/async"]
|
||||||
|
|||||||
@@ -20,6 +20,13 @@ pub mod sync {
|
|||||||
pub use wasi_cap_std_sync::*;
|
pub use wasi_cap_std_sync::*;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Re-export the wasi-cap-std-async crate here. This saves consumers of this library from having
|
||||||
|
/// to keep additional dependencies in sync.
|
||||||
|
#[cfg(feature = "async")]
|
||||||
|
pub mod async_ {
|
||||||
|
pub use wasi_cap_std_async::*;
|
||||||
|
}
|
||||||
|
|
||||||
/// An instantiated instance of all available wasi exports. Presently includes
|
/// An instantiated instance of all available wasi exports. Presently includes
|
||||||
/// both the "preview1" snapshot and the "unstable" (preview0) snapshot.
|
/// both the "preview1" snapshot and the "unstable" (preview0) snapshot.
|
||||||
pub struct Wasi {
|
pub struct Wasi {
|
||||||
@@ -79,6 +86,7 @@ necessary. Additionally [`Wasi::get_export`] can be used to do name-based
|
|||||||
resolution.",
|
resolution.",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
async: { wasi_snapshot_preview1::{ poll_oneoff, sched_yield } }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
pub mod preview_0 {
|
pub mod preview_0 {
|
||||||
@@ -106,6 +114,7 @@ necessary. Additionally [`Wasi::get_export`] can be used to do name-based
|
|||||||
resolution.",
|
resolution.",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
async: { wasi_unstable::{ poll_oneoff, sched_yield } }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user