mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-05 02:20:19 +00:00
Merge branch 'master' into fix/fpcc-workaround
This commit is contained in:
commit
7617350851
@ -4,6 +4,14 @@
|
||||
|
||||
- [#1283](https://github.com/wasmerio/wasmer/pull/1283) Workaround for floating point arguments and return values in `DynamicFunc`s.
|
||||
|
||||
## 0.16.2 - 2020-03-11
|
||||
|
||||
- [#1294](https://github.com/wasmerio/wasmer/pull/1294) Fix bug related to system calls in WASI that rely on reading from WasmPtrs as arrays of length 0. `WasmPtr` will now succeed on length 0 arrays again.
|
||||
|
||||
## 0.16.1 - 2020-03-11
|
||||
|
||||
- [#1291](https://github.com/wasmerio/wasmer/pull/1291) Fix installation packaging script to package the `wax` command.
|
||||
|
||||
## 0.16.0 - 2020-03-11
|
||||
|
||||
- [#1286](https://github.com/wasmerio/wasmer/pull/1286) Updated Windows Wasmer icons. Add wax
|
||||
|
38
Cargo.lock
generated
38
Cargo.lock
generated
@ -1820,7 +1820,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"atty",
|
||||
"byteorder",
|
||||
@ -1851,7 +1851,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-clif-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
"cranelift-codegen",
|
||||
@ -1902,14 +1902,14 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-dev-utils"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-emscripten"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
"getrandom",
|
||||
@ -1922,7 +1922,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-emscripten-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"glob 0.3.0",
|
||||
"wabt",
|
||||
@ -1936,7 +1936,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-interface-types"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"nom",
|
||||
"wast",
|
||||
@ -1952,7 +1952,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-llvm-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
"cc",
|
||||
@ -1983,14 +1983,14 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-middleware-common"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"wasmer-runtime-core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-middleware-common-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"criterion",
|
||||
"wabt",
|
||||
@ -2003,7 +2003,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-runtime"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"criterion",
|
||||
"lazy_static",
|
||||
@ -2020,7 +2020,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-runtime-c-api"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"cbindgen",
|
||||
"libc",
|
||||
@ -2032,7 +2032,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-runtime-core"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"blake3",
|
||||
@ -2060,7 +2060,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-runtime-core-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"wabt",
|
||||
"wasmer-clif-backend",
|
||||
@ -2071,7 +2071,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-singlepass-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"byteorder",
|
||||
@ -2088,7 +2088,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-spectests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"glob 0.3.0",
|
||||
"wabt",
|
||||
@ -2100,7 +2100,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-wasi"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"byteorder",
|
||||
@ -2117,7 +2117,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-wasi-experimental-io-devices"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"log",
|
||||
"minifb",
|
||||
@ -2130,7 +2130,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-wasi-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"glob 0.3.0",
|
||||
"wasmer-clif-backend",
|
||||
@ -2143,7 +2143,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wasmer-win-exception-handler"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
dependencies = [
|
||||
"cmake",
|
||||
"libc",
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
edition = "2018"
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
|
4
Makefile
4
Makefile
@ -288,8 +288,8 @@ build-install-package:
|
||||
cp ./wapm-cli/target/release/wapm ./install/bin/
|
||||
cp ./target/release/wasmer ./install/bin/
|
||||
# Create the wax binary as symlink to wapm
|
||||
cd ./install/bin/ && ln -s wapm wax
|
||||
tar -C ./install -zcvf wasmer.tar.gz bin/wapm bin/wasmer
|
||||
cd ./install/bin/ && ln -sf wapm wax && chmod +x wax
|
||||
tar -C ./install -zcvf wasmer.tar.gz bin
|
||||
|
||||
UNAME_S := $(shell uname -s)
|
||||
|
||||
|
@ -300,6 +300,7 @@ jobs:
|
||||
isDraft: false
|
||||
isPreRelease: false
|
||||
assets: '$(Build.ArtifactStagingDirectory)/**'
|
||||
assetUploadMode: 'replace' # Don't delete previously uploaded assets (default)
|
||||
|
||||
- job: Publish_Docs
|
||||
dependsOn:
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-clif-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime Cranelift compiler backend"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -11,7 +11,7 @@ edition = "2018"
|
||||
readme = "README.md"
|
||||
|
||||
[dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
cranelift-native = "0.59.0"
|
||||
cranelift-codegen = "0.59.0"
|
||||
cranelift-entity = "0.59.0"
|
||||
@ -38,7 +38,7 @@ version = "0.0.7"
|
||||
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
winapi = { version = "0.3", features = ["errhandlingapi", "minwindef", "minwinbase", "winnt"] }
|
||||
wasmer-win-exception-handler = { path = "../win-exception-handler", version = "0.16.0" }
|
||||
wasmer-win-exception-handler = { path = "../win-exception-handler", version = "0.16.2" }
|
||||
|
||||
[features]
|
||||
generate-debug-information = ["wasm-debug"]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-dev-utils"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime core library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-emscripten-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Tests for our Emscripten implementation"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -9,15 +9,15 @@ publish = false
|
||||
build = "build/mod.rs"
|
||||
|
||||
[dependencies]
|
||||
wasmer-emscripten = { path = "../emscripten", version = "0.16.0" }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.0", default-features = false }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.0", optional = true}
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", optional = true, features = ["test"] }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-emscripten = { path = "../emscripten", version = "0.16.2" }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.2", default-features = false }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.2", optional = true}
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", optional = true, features = ["test"] }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
wabt = "0.9.1"
|
||||
wasmer-dev-utils = { path = "../dev-utils", version = "0.16.0"}
|
||||
wasmer-dev-utils = { path = "../dev-utils", version = "0.16.2"}
|
||||
|
||||
[build-dependencies]
|
||||
glob = "0.3"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-emscripten"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime emscripten implementation library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -15,7 +15,7 @@ lazy_static = "1.4"
|
||||
libc = "0.2.60"
|
||||
log = "0.4"
|
||||
time = "0.1"
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
getrandom = "0.1"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-interface-types"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "WebAssembly Interface Types library for Wasmer"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
|
@ -9,8 +9,8 @@ edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
wabt = "0.9.1"
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.0" }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", features = ["test"] }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.2" }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", features = ["test"] }
|
||||
|
||||
[features]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-llvm-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
@ -10,7 +10,7 @@ edition = "2018"
|
||||
readme = "README.md"
|
||||
|
||||
[dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0", features = ["generate-debug-information-no-export-symbols"] }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2", features = ["generate-debug-information-no-export-symbols"] }
|
||||
wasmparser = "0.51.3"
|
||||
smallvec = "0.6"
|
||||
goblin = "0.0.24"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-middleware-common-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
edition = "2018"
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
@ -8,11 +8,11 @@ license = "MIT"
|
||||
publish = false
|
||||
|
||||
[dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-middleware-common = { path = "../middleware-common", version = "0.16.0" }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.0", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", features = ["test"], optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
wasmer-middleware-common = { path = "../middleware-common", version = "0.16.2" }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.2", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", features = ["test"], optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
|
||||
[features]
|
||||
clif = ["wasmer-clif-backend"]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-middleware-common"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
description = "Wasmer runtime common middlewares"
|
||||
license = "MIT"
|
||||
@ -10,4 +10,4 @@ categories = ["wasm"]
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-runtime-c-api"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer C API library"
|
||||
documentation = "https://wasmerio.github.io/wasmer/c/runtime-c-api/"
|
||||
license = "MIT"
|
||||
@ -20,22 +20,22 @@ libc = "0.2.60"
|
||||
[dependencies.wasmer-runtime]
|
||||
default-features = false
|
||||
path = "../runtime"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
|
||||
[dependencies.wasmer-runtime-core]
|
||||
default-features = false
|
||||
path = "../runtime-core"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
|
||||
[dependencies.wasmer-wasi]
|
||||
default-features = false
|
||||
path = "../wasi"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
optional = true
|
||||
|
||||
[dependencies.wasmer-emscripten]
|
||||
path = "../emscripten"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
optional = true
|
||||
|
||||
[features]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-runtime-core-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Tests for the Wasmer runtime core crate"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -9,10 +9,10 @@ publish = false
|
||||
|
||||
[dependencies]
|
||||
wabt = "0.9.1"
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.0", optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", features = ["test"], optional = true }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.2", optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", features = ["test"], optional = true }
|
||||
|
||||
[features]
|
||||
default = ["backend-cranelift"]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-runtime-core"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime core library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -59,3 +59,5 @@ generate-debug-information = ["wasm-debug"]
|
||||
# don't export symbols related to the GDB JIT interafce, LLVM or some other native
|
||||
# code will be providing them
|
||||
generate-debug-information-no-export-symbols = []
|
||||
# enable DynamicFunc's for closures with captured environment.
|
||||
dynamicfunc-fat-closures = []
|
||||
|
@ -130,9 +130,10 @@ impl<T: Copy + ValueType> WasmPtr<T, Array> {
|
||||
// for any index, we will always result an aligned memory access
|
||||
let item_size = mem::size_of::<T>() + (mem::size_of::<T>() % mem::align_of::<T>());
|
||||
let slice_full_len = index as usize + length as usize;
|
||||
let memory_size = memory.size().bytes().0;
|
||||
|
||||
if (self.offset as usize) + (item_size * slice_full_len) > memory.size().bytes().0
|
||||
|| length == 0
|
||||
if (self.offset as usize) + (item_size * slice_full_len) > memory_size
|
||||
|| self.offset as usize >= memory_size
|
||||
|| mem::size_of::<T>() == 0
|
||||
{
|
||||
return None;
|
||||
@ -167,9 +168,10 @@ impl<T: Copy + ValueType> WasmPtr<T, Array> {
|
||||
// for any index, we will always result an aligned memory access
|
||||
let item_size = mem::size_of::<T>() + (mem::size_of::<T>() % mem::align_of::<T>());
|
||||
let slice_full_len = index as usize + length as usize;
|
||||
let memory_size = memory.size().bytes().0;
|
||||
|
||||
if (self.offset as usize) + (item_size * slice_full_len) > memory.size().bytes().0
|
||||
|| length == 0
|
||||
|| self.offset as usize >= memory_size
|
||||
|| mem::size_of::<T>() == 0
|
||||
{
|
||||
return None;
|
||||
@ -190,7 +192,11 @@ impl<T: Copy + ValueType> WasmPtr<T, Array> {
|
||||
/// underlying data can be mutated if the Wasm is allowed to execute or
|
||||
/// an aliasing `WasmPtr` is used to mutate memory.
|
||||
pub fn get_utf8_string(self, memory: &Memory, str_len: u32) -> Option<&str> {
|
||||
if self.offset as usize + str_len as usize > memory.size().bytes().0 || str_len == 0 {
|
||||
let memory_size = memory.size().bytes().0;
|
||||
|
||||
if self.offset as usize + str_len as usize > memory.size().bytes().0
|
||||
|| self.offset as usize >= memory_size
|
||||
{
|
||||
return None;
|
||||
}
|
||||
let ptr = unsafe { memory.view::<u8>().as_ptr().add(self.offset as usize) as *const u8 };
|
||||
@ -271,15 +277,15 @@ mod test {
|
||||
memory::MemoryDescriptor::new(Pages(1), Some(Pages(1)), false).unwrap();
|
||||
let memory = memory::Memory::new(memory_descriptor).unwrap();
|
||||
|
||||
// test that basic access works and that len = 0 is caught correctly
|
||||
// test that basic access works and that len = 0 works, but oob does not
|
||||
let start_wasm_ptr: WasmPtr<u8> = WasmPtr::new(0);
|
||||
let start_wasm_ptr_array: WasmPtr<u8, Array> = WasmPtr::new(0);
|
||||
|
||||
assert!(start_wasm_ptr.deref(&memory).is_some());
|
||||
assert!(unsafe { start_wasm_ptr.deref_mut(&memory).is_some() });
|
||||
assert!(start_wasm_ptr_array.deref(&memory, 0, 0).is_none());
|
||||
assert!(start_wasm_ptr_array.get_utf8_string(&memory, 0).is_none());
|
||||
assert!(unsafe { start_wasm_ptr_array.deref_mut(&memory, 0, 0).is_none() });
|
||||
assert!(start_wasm_ptr_array.deref(&memory, 0, 0).is_some());
|
||||
assert!(start_wasm_ptr_array.get_utf8_string(&memory, 0).is_some());
|
||||
assert!(unsafe { start_wasm_ptr_array.deref_mut(&memory, 0, 0).is_some() });
|
||||
assert!(start_wasm_ptr_array.deref(&memory, 0, 1).is_some());
|
||||
assert!(unsafe { start_wasm_ptr_array.deref_mut(&memory, 0, 1).is_some() });
|
||||
|
||||
@ -293,7 +299,8 @@ mod test {
|
||||
|
||||
assert!(end_wasm_ptr_array.deref(&memory, 0, 1).is_some());
|
||||
assert!(unsafe { end_wasm_ptr_array.deref_mut(&memory, 0, 1).is_some() });
|
||||
let invalid_idx_len_combos: [(u32, u32); 3] = [(0, 0), (0, 2), (1, 1)];
|
||||
let invalid_idx_len_combos: [(u32, u32); 3] =
|
||||
[(last_valid_address_for_u8 + 1, 0), (0, 2), (1, 1)];
|
||||
for &(idx, len) in invalid_idx_len_combos.into_iter() {
|
||||
assert!(end_wasm_ptr_array.deref(&memory, idx, len).is_none());
|
||||
assert!(unsafe { end_wasm_ptr_array.deref_mut(&memory, idx, len).is_none() });
|
||||
@ -323,7 +330,8 @@ mod test {
|
||||
assert!(end_wasm_ptr_array.deref(&memory, 0, 1).is_some());
|
||||
assert!(unsafe { end_wasm_ptr_array.deref_mut(&memory, 0, 1).is_some() });
|
||||
|
||||
let invalid_idx_len_combos: [(u32, u32); 4] = [(0, 0), (1, 0), (0, 2), (1, 1)];
|
||||
let invalid_idx_len_combos: [(u32, u32); 3] =
|
||||
[(last_valid_address_for_u32 + 1, 0), (0, 2), (1, 1)];
|
||||
for &(idx, len) in invalid_idx_len_combos.into_iter() {
|
||||
assert!(end_wasm_ptr_array.deref(&memory, idx, len).is_none());
|
||||
assert!(unsafe { end_wasm_ptr_array.deref_mut(&memory, idx, len).is_none() });
|
||||
@ -339,8 +347,6 @@ mod test {
|
||||
for oob_end_array_ptr in end_wasm_ptr_array_oob_array.into_iter() {
|
||||
assert!(oob_end_array_ptr.deref(&memory, 0, 1).is_none());
|
||||
assert!(unsafe { oob_end_array_ptr.deref_mut(&memory, 0, 1).is_none() });
|
||||
assert!(oob_end_array_ptr.deref(&memory, 0, 0).is_none());
|
||||
assert!(unsafe { oob_end_array_ptr.deref_mut(&memory, 0, 0).is_none() });
|
||||
assert!(oob_end_array_ptr.deref(&memory, 1, 0).is_none());
|
||||
assert!(unsafe { oob_end_array_ptr.deref_mut(&memory, 1, 0).is_none() });
|
||||
}
|
||||
|
@ -375,9 +375,8 @@ impl<'a> DynamicFunc<'a> {
|
||||
}
|
||||
}
|
||||
|
||||
// Disable "fat" closures for possible future changes.
|
||||
if mem::size_of::<F>() != 0 {
|
||||
unimplemented!("DynamicFunc with captured environment is not yet supported");
|
||||
if cfg!(not(feature = "dynamicfunc-fat-closures")) && mem::size_of::<F>() != 0 {
|
||||
unimplemented!("DynamicFunc with captured environment is disabled");
|
||||
}
|
||||
|
||||
let mut builder = TrampolineBufferBuilder::new();
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-runtime"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -11,17 +11,17 @@ edition = "2018"
|
||||
readme = "README.md"
|
||||
|
||||
[dependencies]
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
lazy_static = "1.4"
|
||||
memmap = "0.7"
|
||||
|
||||
[dependencies.wasmer-runtime-core]
|
||||
path = "../runtime-core"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
|
||||
[dependencies.wasmer-clif-backend]
|
||||
path = "../clif-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
optional = true
|
||||
|
||||
# Dependencies for caching.
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-singlepass-backend"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
description = "Wasmer runtime single pass compiler backend"
|
||||
license = "MIT"
|
||||
@ -11,7 +11,7 @@ edition = "2018"
|
||||
readme = "README.md"
|
||||
|
||||
[dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
dynasm = "0.5"
|
||||
dynasmrt = "0.5"
|
||||
lazy_static = "1.4"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-spectests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer spectests library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -9,10 +9,10 @@ edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
glob = "0.3"
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.0", default-features = false}
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.0", optional = true}
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", features = ["test"], optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.2", default-features = false}
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.2", optional = true}
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", features = ["test"], optional = true }
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
|
||||
[build-dependencies]
|
||||
wabt = "0.9.1"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-wasi-experimental-io-devices"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
edition = "2018"
|
||||
repository = "https://github.com/wasmerio/wasmer"
|
||||
@ -14,8 +14,8 @@ maintenance = { status = "experimental" }
|
||||
[dependencies]
|
||||
log = "0.4"
|
||||
minifb = "0.13"
|
||||
wasmer-wasi = { version = "0.16.0", path = "../wasi" }
|
||||
wasmer-runtime-core = { version = "0.16.0", path = "../runtime-core" }
|
||||
wasmer-wasi = { version = "0.16.2", path = "../wasi" }
|
||||
wasmer-runtime-core = { version = "0.16.2", path = "../runtime-core" }
|
||||
ref_thread_local = "0.0"
|
||||
serde = "1"
|
||||
typetag = "0.1"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-wasi-tests"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Tests for our WASI implementation"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -10,18 +10,18 @@ build = "build/mod.rs"
|
||||
|
||||
[dependencies]
|
||||
# We set default features to false to be able to use the singlepass backend properly
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.0", default-features = false }
|
||||
wasmer-wasi = { path = "../wasi", version = "0.16.0" }
|
||||
wasmer-runtime = { path = "../runtime", version = "0.16.2", default-features = false }
|
||||
wasmer-wasi = { path = "../wasi", version = "0.16.2" }
|
||||
# hack to get tests to work
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.0", optional = true}
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.0", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.0", features = ["test"], optional = true }
|
||||
wasmer-clif-backend = { path = "../clif-backend", version = "0.16.2", optional = true}
|
||||
wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.2", optional = true }
|
||||
wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.2", features = ["test"], optional = true }
|
||||
|
||||
[build-dependencies]
|
||||
glob = "0.3"
|
||||
|
||||
[dev-dependencies]
|
||||
wasmer-dev-utils = { path = "../dev-utils", version = "0.16.0"}
|
||||
wasmer-dev-utils = { path = "../dev-utils", version = "0.16.2"}
|
||||
|
||||
[features]
|
||||
clif = ["wasmer-clif-backend", "wasmer-runtime/default-backend-cranelift"]
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-wasi"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime WASI implementation library"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -19,7 +19,7 @@ getrandom = "0.1"
|
||||
time = "0.1"
|
||||
typetag = "0.1"
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
winapi = "0.3"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wasmer-win-exception-handler"
|
||||
version = "0.16.0"
|
||||
version = "0.16.2"
|
||||
description = "Wasmer runtime exception handling for Windows"
|
||||
license = "MIT"
|
||||
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
|
||||
@ -8,7 +8,7 @@ repository = "https://github.com/wasmerio/wasmer"
|
||||
edition = "2018"
|
||||
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.0" }
|
||||
wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" }
|
||||
winapi = { version = "0.3.8", features = ["winbase", "errhandlingapi", "minwindef", "minwinbase", "winnt"] }
|
||||
libc = "0.2.60"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
PREVIOUS_VERSION='0.15.0'
|
||||
NEXT_VERSION='0.16.0'
|
||||
PREVIOUS_VERSION='0.16.1'
|
||||
NEXT_VERSION='0.16.2'
|
||||
|
||||
# quick hack
|
||||
fd Cargo.toml --exec sed -i '' "s/version = \"$PREVIOUS_VERSION\"/version = \"$NEXT_VERSION\"/"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[Setup]
|
||||
AppName=Wasmer
|
||||
AppVersion=0.16.0
|
||||
AppVersion=0.16.2
|
||||
DefaultDirName={pf}\Wasmer
|
||||
DefaultGroupName=Wasmer
|
||||
Compression=lzma2
|
||||
|
Loading…
Reference in New Issue
Block a user