From 5edd1b5ab73868e60d8cdb28fbf6a133065733cb Mon Sep 17 00:00:00 2001 From: losfair Date: Thu, 12 Mar 2020 02:58:36 +0800 Subject: [PATCH 1/8] Enable `DynamicFunc` for closures with environment. --- lib/runtime-core/src/typed_func.rs | 5 ----- 1 file changed, 5 deletions(-) diff --git a/lib/runtime-core/src/typed_func.rs b/lib/runtime-core/src/typed_func.rs index 0b29d54ea..b1d1399e9 100644 --- a/lib/runtime-core/src/typed_func.rs +++ b/lib/runtime-core/src/typed_func.rs @@ -349,11 +349,6 @@ impl<'a> DynamicFunc<'a> { } } - // Disable "fat" closures for possible future changes. - if mem::size_of::() != 0 { - unimplemented!("DynamicFunc with captured environment is not yet supported"); - } - let mut builder = TrampolineBufferBuilder::new(); let ctx: Box = Box::new(PolymorphicContext { arg_types: signature.params().to_vec(), From 6c7f49a223bc750eef91abf46eee5791785febe5 Mon Sep 17 00:00:00 2001 From: losfair Date: Thu, 12 Mar 2020 03:14:57 +0800 Subject: [PATCH 2/8] Put fat `DynamicFunc`s behind a feature flag. --- lib/runtime-core/Cargo.toml | 2 ++ lib/runtime-core/src/typed_func.rs | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index 03904ed7c..5242a2bc1 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -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 = [] diff --git a/lib/runtime-core/src/typed_func.rs b/lib/runtime-core/src/typed_func.rs index b1d1399e9..61def512d 100644 --- a/lib/runtime-core/src/typed_func.rs +++ b/lib/runtime-core/src/typed_func.rs @@ -349,6 +349,10 @@ impl<'a> DynamicFunc<'a> { } } + if cfg!(not(feature = "dynamicfunc-fat-closures")) && mem::size_of::() != 0 { + unimplemented!("DynamicFunc with captured environment is disabled"); + } + let mut builder = TrampolineBufferBuilder::new(); let ctx: Box = Box::new(PolymorphicContext { arg_types: signature.params().to_vec(), From 9d6681006daf74e25c92885bda2780e6d2f34adc Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 11 Mar 2020 15:53:51 -0700 Subject: [PATCH 3/8] Fix `wax` command packaging for install script --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 601421c91..7365279ab 100644 --- a/Makefile +++ b/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) From a0d0263e86e04b5451d5a70a2ae418fca45ad3a4 Mon Sep 17 00:00:00 2001 From: Syrus Akbary Date: Wed, 11 Mar 2020 15:57:26 -0700 Subject: [PATCH 4/8] Update azure-pipelines.yml --- azure-pipelines.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index bccae7ddd..07f720e86 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -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: From dc9cc3292c82589dcb0069b802a2e03ad82771a5 Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 11 Mar 2020 16:00:21 -0700 Subject: [PATCH 5/8] Prepare for 0.16.1 release --- CHANGELOG.md | 4 +++ Cargo.lock | 38 ++++++++++----------- Cargo.toml | 2 +- lib/clif-backend/Cargo.toml | 6 ++-- lib/dev-utils/Cargo.toml | 2 +- lib/emscripten-tests/Cargo.toml | 14 ++++---- lib/emscripten/Cargo.toml | 4 +-- lib/interface-types/Cargo.toml | 2 +- lib/llvm-backend-tests/Cargo.toml | 6 ++-- lib/llvm-backend/Cargo.toml | 4 +-- lib/middleware-common-tests/Cargo.toml | 12 +++---- lib/middleware-common/Cargo.toml | 4 +-- lib/runtime-c-api/Cargo.toml | 10 +++--- lib/runtime-core-tests/Cargo.toml | 10 +++--- lib/runtime-core/Cargo.toml | 2 +- lib/runtime/Cargo.toml | 8 ++--- lib/singlepass-backend/Cargo.toml | 4 +-- lib/spectests/Cargo.toml | 10 +++--- lib/wasi-experimental-io-devices/Cargo.toml | 6 ++-- lib/wasi-tests/Cargo.toml | 14 ++++---- lib/wasi/Cargo.toml | 4 +-- lib/win-exception-handler/Cargo.toml | 4 +-- scripts/update_version_numbers.sh | 4 +-- src/installer/wasmer.iss | 2 +- 24 files changed, 90 insertions(+), 86 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c1d93420b..22885af0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ ## 0.16.0 - 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 - [#1284](https://github.com/wasmerio/wasmer/pull/1284) Implement string and memory instructions in `wasmer-interface-types` - [#1272](https://github.com/wasmerio/wasmer/pull/1272) Fix off-by-one error bug when accessing memory with a `WasmPtr` that contains the last valid byte of memory. Also changes the behavior of `WasmPtr` with a length of 0 and `WasmPtr` where `std::mem::size_of::()` is 0 to always return `None` diff --git a/Cargo.lock b/Cargo.lock index 57aba6cea..d1ce82547 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1820,7 +1820,7 @@ dependencies = [ [[package]] name = "wasmer" -version = "0.16.0" +version = "0.16.1" dependencies = [ "atty", "byteorder", @@ -1851,7 +1851,7 @@ dependencies = [ [[package]] name = "wasmer-clif-backend" -version = "0.16.0" +version = "0.16.1" dependencies = [ "byteorder", "cranelift-codegen", @@ -1902,14 +1902,14 @@ dependencies = [ [[package]] name = "wasmer-dev-utils" -version = "0.16.0" +version = "0.16.1" dependencies = [ "libc", ] [[package]] name = "wasmer-emscripten" -version = "0.16.0" +version = "0.16.1" dependencies = [ "byteorder", "getrandom", @@ -1922,7 +1922,7 @@ dependencies = [ [[package]] name = "wasmer-emscripten-tests" -version = "0.16.0" +version = "0.16.1" dependencies = [ "glob 0.3.0", "wabt", @@ -1936,7 +1936,7 @@ dependencies = [ [[package]] name = "wasmer-interface-types" -version = "0.16.0" +version = "0.16.1" dependencies = [ "nom", "wast", @@ -1952,7 +1952,7 @@ dependencies = [ [[package]] name = "wasmer-llvm-backend" -version = "0.16.0" +version = "0.16.1" dependencies = [ "byteorder", "cc", @@ -1983,14 +1983,14 @@ dependencies = [ [[package]] name = "wasmer-middleware-common" -version = "0.16.0" +version = "0.16.1" dependencies = [ "wasmer-runtime-core", ] [[package]] name = "wasmer-middleware-common-tests" -version = "0.16.0" +version = "0.16.1" dependencies = [ "criterion", "wabt", @@ -2003,7 +2003,7 @@ dependencies = [ [[package]] name = "wasmer-runtime" -version = "0.16.0" +version = "0.16.1" dependencies = [ "criterion", "lazy_static", @@ -2020,7 +2020,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-c-api" -version = "0.16.0" +version = "0.16.1" dependencies = [ "cbindgen", "libc", @@ -2032,7 +2032,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-core" -version = "0.16.0" +version = "0.16.1" dependencies = [ "bincode", "blake3", @@ -2060,7 +2060,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-core-tests" -version = "0.16.0" +version = "0.16.1" dependencies = [ "wabt", "wasmer-clif-backend", @@ -2071,7 +2071,7 @@ dependencies = [ [[package]] name = "wasmer-singlepass-backend" -version = "0.16.0" +version = "0.16.1" dependencies = [ "bincode", "byteorder", @@ -2088,7 +2088,7 @@ dependencies = [ [[package]] name = "wasmer-spectests" -version = "0.16.0" +version = "0.16.1" dependencies = [ "glob 0.3.0", "wabt", @@ -2100,7 +2100,7 @@ dependencies = [ [[package]] name = "wasmer-wasi" -version = "0.16.0" +version = "0.16.1" dependencies = [ "bincode", "byteorder", @@ -2117,7 +2117,7 @@ dependencies = [ [[package]] name = "wasmer-wasi-experimental-io-devices" -version = "0.16.0" +version = "0.16.1" dependencies = [ "log", "minifb", @@ -2130,7 +2130,7 @@ dependencies = [ [[package]] name = "wasmer-wasi-tests" -version = "0.16.0" +version = "0.16.1" 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.1" dependencies = [ "cmake", "libc", diff --git a/Cargo.toml b/Cargo.toml index 9a360270f..05874f849 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer" -version = "0.16.0" +version = "0.16.1" authors = ["The Wasmer Engineering Team "] edition = "2018" repository = "https://github.com/wasmerio/wasmer" diff --git a/lib/clif-backend/Cargo.toml b/lib/clif-backend/Cargo.toml index 9a2fc85ec..0cda55de6 100644 --- a/lib/clif-backend/Cargo.toml +++ b/lib/clif-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-clif-backend" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime Cranelift compiler backend" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } 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.1" } [features] generate-debug-information = ["wasm-debug"] diff --git a/lib/dev-utils/Cargo.toml b/lib/dev-utils/Cargo.toml index 404efd77a..c97b4b16f 100644 --- a/lib/dev-utils/Cargo.toml +++ b/lib/dev-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-dev-utils" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/emscripten-tests/Cargo.toml b/lib/emscripten-tests/Cargo.toml index 4df41605d..750583a85 100644 --- a/lib/emscripten-tests/Cargo.toml +++ b/lib/emscripten-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten-tests" -version = "0.16.0" +version = "0.16.1" description = "Tests for our Emscripten implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } +wasmer-runtime = { path = "../runtime", version = "0.16.1", default-features = false } +wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true} +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", optional = true, features = ["test"] } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", 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.1"} [build-dependencies] glob = "0.3" diff --git a/lib/emscripten/Cargo.toml b/lib/emscripten/Cargo.toml index cb946a491..de3469bc7 100644 --- a/lib/emscripten/Cargo.toml +++ b/lib/emscripten/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime emscripten implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } [target.'cfg(windows)'.dependencies] getrandom = "0.1" diff --git a/lib/interface-types/Cargo.toml b/lib/interface-types/Cargo.toml index 6915304af..859986f8f 100644 --- a/lib/interface-types/Cargo.toml +++ b/lib/interface-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-interface-types" -version = "0.16.0" +version = "0.16.1" description = "WebAssembly Interface Types library for Wasmer" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/llvm-backend-tests/Cargo.toml b/lib/llvm-backend-tests/Cargo.toml index 6bb843be5..796655413 100644 --- a/lib/llvm-backend-tests/Cargo.toml +++ b/lib/llvm-backend-tests/Cargo.toml @@ -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.1" } +wasmer-runtime = { path = "../runtime", version = "0.16.1" } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"] } [features] diff --git a/lib/llvm-backend/Cargo.toml b/lib/llvm-backend/Cargo.toml index fa3d05b22..94f786e00 100644 --- a/lib/llvm-backend/Cargo.toml +++ b/lib/llvm-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-llvm-backend" -version = "0.16.0" +version = "0.16.1" license = "MIT" authors = ["The Wasmer Engineering Team "] 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.1", features = ["generate-debug-information-no-export-symbols"] } wasmparser = "0.51.3" smallvec = "0.6" goblin = "0.0.24" diff --git a/lib/middleware-common-tests/Cargo.toml b/lib/middleware-common-tests/Cargo.toml index 943da23a0..117dc79f0 100644 --- a/lib/middleware-common-tests/Cargo.toml +++ b/lib/middleware-common-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-middleware-common-tests" -version = "0.16.0" +version = "0.16.1" authors = ["The Wasmer Engineering Team "] 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.1" } +wasmer-middleware-common = { path = "../middleware-common", version = "0.16.1" } +wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"], optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } [features] clif = ["wasmer-clif-backend"] diff --git a/lib/middleware-common/Cargo.toml b/lib/middleware-common/Cargo.toml index ea39f5958..593fe5b8f 100644 --- a/lib/middleware-common/Cargo.toml +++ b/lib/middleware-common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-middleware-common" -version = "0.16.0" +version = "0.16.1" 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.1" } diff --git a/lib/runtime-c-api/Cargo.toml b/lib/runtime-c-api/Cargo.toml index fb933aa2f..fbb3287b0 100644 --- a/lib/runtime-c-api/Cargo.toml +++ b/lib/runtime-c-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-c-api" -version = "0.16.0" +version = "0.16.1" 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.1" [dependencies.wasmer-runtime-core] default-features = false path = "../runtime-core" -version = "0.16.0" +version = "0.16.1" [dependencies.wasmer-wasi] default-features = false path = "../wasi" -version = "0.16.0" +version = "0.16.1" optional = true [dependencies.wasmer-emscripten] path = "../emscripten" -version = "0.16.0" +version = "0.16.1" optional = true [features] diff --git a/lib/runtime-core-tests/Cargo.toml b/lib/runtime-core-tests/Cargo.toml index 1e5b58f27..aea0fd11b 100644 --- a/lib/runtime-core-tests/Cargo.toml +++ b/lib/runtime-core-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-core-tests" -version = "0.16.0" +version = "0.16.1" description = "Tests for the Wasmer runtime core crate" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } +wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"], optional = true } [features] default = ["backend-cranelift"] diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index 03904ed7c..22f7fc40f 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-core" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/runtime/Cargo.toml b/lib/runtime/Cargo.toml index bc9b1fe3a..6af22a3b8 100644 --- a/lib/runtime/Cargo.toml +++ b/lib/runtime/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1", optional = true } lazy_static = "1.4" memmap = "0.7" [dependencies.wasmer-runtime-core] path = "../runtime-core" -version = "0.16.0" +version = "0.16.1" [dependencies.wasmer-clif-backend] path = "../clif-backend" -version = "0.16.0" +version = "0.16.1" optional = true # Dependencies for caching. diff --git a/lib/singlepass-backend/Cargo.toml b/lib/singlepass-backend/Cargo.toml index 2f3937f3b..564a26809 100644 --- a/lib/singlepass-backend/Cargo.toml +++ b/lib/singlepass-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-singlepass-backend" -version = "0.16.0" +version = "0.16.1" 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.1" } dynasm = "0.5" dynasmrt = "0.5" lazy_static = "1.4" diff --git a/lib/spectests/Cargo.toml b/lib/spectests/Cargo.toml index aed07d65c..26cd21d89 100644 --- a/lib/spectests/Cargo.toml +++ b/lib/spectests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-spectests" -version = "0.16.0" +version = "0.16.1" description = "Wasmer spectests library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1", default-features = false} +wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true} +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"], optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } [build-dependencies] wabt = "0.9.1" diff --git a/lib/wasi-experimental-io-devices/Cargo.toml b/lib/wasi-experimental-io-devices/Cargo.toml index a64b3046a..ebf6b4873 100644 --- a/lib/wasi-experimental-io-devices/Cargo.toml +++ b/lib/wasi-experimental-io-devices/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi-experimental-io-devices" -version = "0.16.0" +version = "0.16.1" authors = ["The Wasmer Engineering Team "] 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.1", path = "../wasi" } +wasmer-runtime-core = { version = "0.16.1", path = "../runtime-core" } ref_thread_local = "0.0" serde = "1" typetag = "0.1" diff --git a/lib/wasi-tests/Cargo.toml b/lib/wasi-tests/Cargo.toml index 19b6c1e88..75a8488ef 100644 --- a/lib/wasi-tests/Cargo.toml +++ b/lib/wasi-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi-tests" -version = "0.16.0" +version = "0.16.1" description = "Tests for our WASI implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1", default-features = false } +wasmer-wasi = { path = "../wasi", version = "0.16.1" } # 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.1", optional = true} +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", 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.1"} [features] clif = ["wasmer-clif-backend", "wasmer-runtime/default-backend-cranelift"] diff --git a/lib/wasi/Cargo.toml b/lib/wasi/Cargo.toml index 13495fd12..f539f82b0 100644 --- a/lib/wasi/Cargo.toml +++ b/lib/wasi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime WASI implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } [target.'cfg(windows)'.dependencies] winapi = "0.3" diff --git a/lib/win-exception-handler/Cargo.toml b/lib/win-exception-handler/Cargo.toml index 7c5faacac..75079fc23 100644 --- a/lib/win-exception-handler/Cargo.toml +++ b/lib/win-exception-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-win-exception-handler" -version = "0.16.0" +version = "0.16.1" description = "Wasmer runtime exception handling for Windows" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } winapi = { version = "0.3.8", features = ["winbase", "errhandlingapi", "minwindef", "minwinbase", "winnt"] } libc = "0.2.60" diff --git a/scripts/update_version_numbers.sh b/scripts/update_version_numbers.sh index ed93c6bde..84418905e 100755 --- a/scripts/update_version_numbers.sh +++ b/scripts/update_version_numbers.sh @@ -1,5 +1,5 @@ -PREVIOUS_VERSION='0.15.0' -NEXT_VERSION='0.16.0' +PREVIOUS_VERSION='0.16.0' +NEXT_VERSION='0.16.1' # quick hack fd Cargo.toml --exec sed -i '' "s/version = \"$PREVIOUS_VERSION\"/version = \"$NEXT_VERSION\"/" diff --git a/src/installer/wasmer.iss b/src/installer/wasmer.iss index 89826ab5e..20f4223c1 100644 --- a/src/installer/wasmer.iss +++ b/src/installer/wasmer.iss @@ -1,6 +1,6 @@ [Setup] AppName=Wasmer -AppVersion=0.16.0 +AppVersion=0.16.1 DefaultDirName={pf}\Wasmer DefaultGroupName=Wasmer Compression=lzma2 From 418edef88fe22c39835e0f7f223af0469ba04503 Mon Sep 17 00:00:00 2001 From: Syrus Akbary Date: Wed, 11 Mar 2020 16:10:06 -0700 Subject: [PATCH 6/8] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22885af0a..afc95820a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## **[Unreleased]** -## 0.16.0 - 2020-03-11 +## 0.16.1 - 2020-03-11 - [#1291](https://github.com/wasmerio/wasmer/pull/1291) Fix installation packaging script to package the `wax` command. From c3865c919c5ff9333a967e102787ca477bff458e Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 11 Mar 2020 18:59:09 -0700 Subject: [PATCH 7/8] Allow zero length arrays and check base offset for being out of bounds --- lib/runtime-core/src/memory/ptr.rs | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/lib/runtime-core/src/memory/ptr.rs b/lib/runtime-core/src/memory/ptr.rs index f9c798af1..9e991cb85 100644 --- a/lib/runtime-core/src/memory/ptr.rs +++ b/lib/runtime-core/src/memory/ptr.rs @@ -130,9 +130,10 @@ impl WasmPtr { // for any index, we will always result an aligned memory access let item_size = mem::size_of::() + (mem::size_of::() % mem::align_of::()); 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::() == 0 { return None; @@ -167,9 +168,10 @@ impl WasmPtr { // for any index, we will always result an aligned memory access let item_size = mem::size_of::() + (mem::size_of::() % mem::align_of::()); 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::() == 0 { return None; @@ -190,7 +192,11 @@ impl WasmPtr { /// 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::().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 = WasmPtr::new(0); let start_wasm_ptr_array: WasmPtr = 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() }); } From fffdba395d85357209460a99138b37ddac3df328 Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 11 Mar 2020 19:15:31 -0700 Subject: [PATCH 8/8] Prepare for 0.16.2 release --- CHANGELOG.md | 4 +++ Cargo.lock | 38 ++++++++++----------- Cargo.toml | 2 +- lib/clif-backend/Cargo.toml | 6 ++-- lib/dev-utils/Cargo.toml | 2 +- lib/emscripten-tests/Cargo.toml | 14 ++++---- lib/emscripten/Cargo.toml | 4 +-- lib/interface-types/Cargo.toml | 2 +- lib/llvm-backend-tests/Cargo.toml | 6 ++-- lib/llvm-backend/Cargo.toml | 4 +-- lib/middleware-common-tests/Cargo.toml | 12 +++---- lib/middleware-common/Cargo.toml | 4 +-- lib/runtime-c-api/Cargo.toml | 10 +++--- lib/runtime-core-tests/Cargo.toml | 10 +++--- lib/runtime-core/Cargo.toml | 2 +- lib/runtime/Cargo.toml | 8 ++--- lib/singlepass-backend/Cargo.toml | 4 +-- lib/spectests/Cargo.toml | 10 +++--- lib/wasi-experimental-io-devices/Cargo.toml | 6 ++-- lib/wasi-tests/Cargo.toml | 14 ++++---- lib/wasi/Cargo.toml | 4 +-- lib/win-exception-handler/Cargo.toml | 4 +-- scripts/update_version_numbers.sh | 4 +-- src/installer/wasmer.iss | 2 +- 24 files changed, 90 insertions(+), 86 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index afc95820a..0380b4f90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ ## **[Unreleased]** +## 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. diff --git a/Cargo.lock b/Cargo.lock index d1ce82547..3cd09fa0d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1820,7 +1820,7 @@ dependencies = [ [[package]] name = "wasmer" -version = "0.16.1" +version = "0.16.2" dependencies = [ "atty", "byteorder", @@ -1851,7 +1851,7 @@ dependencies = [ [[package]] name = "wasmer-clif-backend" -version = "0.16.1" +version = "0.16.2" dependencies = [ "byteorder", "cranelift-codegen", @@ -1902,14 +1902,14 @@ dependencies = [ [[package]] name = "wasmer-dev-utils" -version = "0.16.1" +version = "0.16.2" dependencies = [ "libc", ] [[package]] name = "wasmer-emscripten" -version = "0.16.1" +version = "0.16.2" dependencies = [ "byteorder", "getrandom", @@ -1922,7 +1922,7 @@ dependencies = [ [[package]] name = "wasmer-emscripten-tests" -version = "0.16.1" +version = "0.16.2" dependencies = [ "glob 0.3.0", "wabt", @@ -1936,7 +1936,7 @@ dependencies = [ [[package]] name = "wasmer-interface-types" -version = "0.16.1" +version = "0.16.2" dependencies = [ "nom", "wast", @@ -1952,7 +1952,7 @@ dependencies = [ [[package]] name = "wasmer-llvm-backend" -version = "0.16.1" +version = "0.16.2" dependencies = [ "byteorder", "cc", @@ -1983,14 +1983,14 @@ dependencies = [ [[package]] name = "wasmer-middleware-common" -version = "0.16.1" +version = "0.16.2" dependencies = [ "wasmer-runtime-core", ] [[package]] name = "wasmer-middleware-common-tests" -version = "0.16.1" +version = "0.16.2" dependencies = [ "criterion", "wabt", @@ -2003,7 +2003,7 @@ dependencies = [ [[package]] name = "wasmer-runtime" -version = "0.16.1" +version = "0.16.2" dependencies = [ "criterion", "lazy_static", @@ -2020,7 +2020,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-c-api" -version = "0.16.1" +version = "0.16.2" dependencies = [ "cbindgen", "libc", @@ -2032,7 +2032,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-core" -version = "0.16.1" +version = "0.16.2" dependencies = [ "bincode", "blake3", @@ -2060,7 +2060,7 @@ dependencies = [ [[package]] name = "wasmer-runtime-core-tests" -version = "0.16.1" +version = "0.16.2" dependencies = [ "wabt", "wasmer-clif-backend", @@ -2071,7 +2071,7 @@ dependencies = [ [[package]] name = "wasmer-singlepass-backend" -version = "0.16.1" +version = "0.16.2" dependencies = [ "bincode", "byteorder", @@ -2088,7 +2088,7 @@ dependencies = [ [[package]] name = "wasmer-spectests" -version = "0.16.1" +version = "0.16.2" dependencies = [ "glob 0.3.0", "wabt", @@ -2100,7 +2100,7 @@ dependencies = [ [[package]] name = "wasmer-wasi" -version = "0.16.1" +version = "0.16.2" dependencies = [ "bincode", "byteorder", @@ -2117,7 +2117,7 @@ dependencies = [ [[package]] name = "wasmer-wasi-experimental-io-devices" -version = "0.16.1" +version = "0.16.2" dependencies = [ "log", "minifb", @@ -2130,7 +2130,7 @@ dependencies = [ [[package]] name = "wasmer-wasi-tests" -version = "0.16.1" +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.1" +version = "0.16.2" dependencies = [ "cmake", "libc", diff --git a/Cargo.toml b/Cargo.toml index 05874f849..0bb2e9a82 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer" -version = "0.16.1" +version = "0.16.2" authors = ["The Wasmer Engineering Team "] edition = "2018" repository = "https://github.com/wasmerio/wasmer" diff --git a/lib/clif-backend/Cargo.toml b/lib/clif-backend/Cargo.toml index 0cda55de6..fa24d5ed4 100644 --- a/lib/clif-backend/Cargo.toml +++ b/lib/clif-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-clif-backend" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime Cranelift compiler backend" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -11,7 +11,7 @@ edition = "2018" readme = "README.md" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.16.1" } +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.1" } +wasmer-win-exception-handler = { path = "../win-exception-handler", version = "0.16.2" } [features] generate-debug-information = ["wasm-debug"] diff --git a/lib/dev-utils/Cargo.toml b/lib/dev-utils/Cargo.toml index c97b4b16f..07800ed61 100644 --- a/lib/dev-utils/Cargo.toml +++ b/lib/dev-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-dev-utils" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/emscripten-tests/Cargo.toml b/lib/emscripten-tests/Cargo.toml index 750583a85..5065de08a 100644 --- a/lib/emscripten-tests/Cargo.toml +++ b/lib/emscripten-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten-tests" -version = "0.16.1" +version = "0.16.2" description = "Tests for our Emscripten implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,15 +9,15 @@ publish = false build = "build/mod.rs" [dependencies] -wasmer-emscripten = { path = "../emscripten", version = "0.16.1" } -wasmer-runtime = { path = "../runtime", version = "0.16.1", default-features = false } -wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true} -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", optional = true, features = ["test"] } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", 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.1"} +wasmer-dev-utils = { path = "../dev-utils", version = "0.16.2"} [build-dependencies] glob = "0.3" diff --git a/lib/emscripten/Cargo.toml b/lib/emscripten/Cargo.toml index de3469bc7..3fb904902 100644 --- a/lib/emscripten/Cargo.toml +++ b/lib/emscripten/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime emscripten implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" } [target.'cfg(windows)'.dependencies] getrandom = "0.1" diff --git a/lib/interface-types/Cargo.toml b/lib/interface-types/Cargo.toml index 859986f8f..3bcebd337 100644 --- a/lib/interface-types/Cargo.toml +++ b/lib/interface-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-interface-types" -version = "0.16.1" +version = "0.16.2" description = "WebAssembly Interface Types library for Wasmer" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/llvm-backend-tests/Cargo.toml b/lib/llvm-backend-tests/Cargo.toml index 796655413..e916850aa 100644 --- a/lib/llvm-backend-tests/Cargo.toml +++ b/lib/llvm-backend-tests/Cargo.toml @@ -9,8 +9,8 @@ edition = "2018" [dependencies] wabt = "0.9.1" -wasmer-runtime-core = { path = "../runtime-core", version = "0.16.1" } -wasmer-runtime = { path = "../runtime", version = "0.16.1" } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", 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] diff --git a/lib/llvm-backend/Cargo.toml b/lib/llvm-backend/Cargo.toml index 94f786e00..129d7e374 100644 --- a/lib/llvm-backend/Cargo.toml +++ b/lib/llvm-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-llvm-backend" -version = "0.16.1" +version = "0.16.2" license = "MIT" authors = ["The Wasmer Engineering Team "] 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.1", 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" diff --git a/lib/middleware-common-tests/Cargo.toml b/lib/middleware-common-tests/Cargo.toml index 117dc79f0..22b3d723e 100644 --- a/lib/middleware-common-tests/Cargo.toml +++ b/lib/middleware-common-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-middleware-common-tests" -version = "0.16.1" +version = "0.16.2" authors = ["The Wasmer Engineering Team "] 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.1" } -wasmer-middleware-common = { path = "../middleware-common", version = "0.16.1" } -wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"], optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", 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"] diff --git a/lib/middleware-common/Cargo.toml b/lib/middleware-common/Cargo.toml index 593fe5b8f..345fff897 100644 --- a/lib/middleware-common/Cargo.toml +++ b/lib/middleware-common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-middleware-common" -version = "0.16.1" +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.1" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" } diff --git a/lib/runtime-c-api/Cargo.toml b/lib/runtime-c-api/Cargo.toml index fbb3287b0..618ba71ba 100644 --- a/lib/runtime-c-api/Cargo.toml +++ b/lib/runtime-c-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-c-api" -version = "0.16.1" +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.1" +version = "0.16.2" [dependencies.wasmer-runtime-core] default-features = false path = "../runtime-core" -version = "0.16.1" +version = "0.16.2" [dependencies.wasmer-wasi] default-features = false path = "../wasi" -version = "0.16.1" +version = "0.16.2" optional = true [dependencies.wasmer-emscripten] path = "../emscripten" -version = "0.16.1" +version = "0.16.2" optional = true [features] diff --git a/lib/runtime-core-tests/Cargo.toml b/lib/runtime-core-tests/Cargo.toml index aea0fd11b..7ea842d8c 100644 --- a/lib/runtime-core-tests/Cargo.toml +++ b/lib/runtime-core-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-core-tests" -version = "0.16.1" +version = "0.16.2" description = "Tests for the Wasmer runtime core crate" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,10 +9,10 @@ publish = false [dependencies] wabt = "0.9.1" -wasmer-runtime-core = { path = "../runtime-core", version = "0.16.1" } -wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", 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"] diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index 22f7fc40f..967dbe32e 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-core" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/runtime/Cargo.toml b/lib/runtime/Cargo.toml index 6af22a3b8..cb3a1d700 100644 --- a/lib/runtime/Cargo.toml +++ b/lib/runtime/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -11,17 +11,17 @@ edition = "2018" readme = "README.md" [dependencies] -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", 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.1" +version = "0.16.2" [dependencies.wasmer-clif-backend] path = "../clif-backend" -version = "0.16.1" +version = "0.16.2" optional = true # Dependencies for caching. diff --git a/lib/singlepass-backend/Cargo.toml b/lib/singlepass-backend/Cargo.toml index 564a26809..889492287 100644 --- a/lib/singlepass-backend/Cargo.toml +++ b/lib/singlepass-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-singlepass-backend" -version = "0.16.1" +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.1" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" } dynasm = "0.5" dynasmrt = "0.5" lazy_static = "1.4" diff --git a/lib/spectests/Cargo.toml b/lib/spectests/Cargo.toml index 26cd21d89..a4b6576ce 100644 --- a/lib/spectests/Cargo.toml +++ b/lib/spectests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-spectests" -version = "0.16.1" +version = "0.16.2" description = "Wasmer spectests library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,10 +9,10 @@ edition = "2018" [dependencies] glob = "0.3" -wasmer-runtime = { path = "../runtime", version = "0.16.1", default-features = false} -wasmer-clif-backend = { path = "../clif-backend", version = "0.16.1", optional = true} -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", features = ["test"], optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", 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" diff --git a/lib/wasi-experimental-io-devices/Cargo.toml b/lib/wasi-experimental-io-devices/Cargo.toml index ebf6b4873..06421d396 100644 --- a/lib/wasi-experimental-io-devices/Cargo.toml +++ b/lib/wasi-experimental-io-devices/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi-experimental-io-devices" -version = "0.16.1" +version = "0.16.2" authors = ["The Wasmer Engineering Team "] 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.1", path = "../wasi" } -wasmer-runtime-core = { version = "0.16.1", 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" diff --git a/lib/wasi-tests/Cargo.toml b/lib/wasi-tests/Cargo.toml index 75a8488ef..3a542ab7a 100644 --- a/lib/wasi-tests/Cargo.toml +++ b/lib/wasi-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi-tests" -version = "0.16.1" +version = "0.16.2" description = "Tests for our WASI implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1", default-features = false } -wasmer-wasi = { path = "../wasi", version = "0.16.1" } +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.1", optional = true} -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.16.1", optional = true } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.16.1", 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.1"} +wasmer-dev-utils = { path = "../dev-utils", version = "0.16.2"} [features] clif = ["wasmer-clif-backend", "wasmer-runtime/default-backend-cranelift"] diff --git a/lib/wasi/Cargo.toml b/lib/wasi/Cargo.toml index f539f82b0..e26bf73e3 100644 --- a/lib/wasi/Cargo.toml +++ b/lib/wasi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime WASI implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.16.2" } [target.'cfg(windows)'.dependencies] winapi = "0.3" diff --git a/lib/win-exception-handler/Cargo.toml b/lib/win-exception-handler/Cargo.toml index 75079fc23..02d5c54b4 100644 --- a/lib/win-exception-handler/Cargo.toml +++ b/lib/win-exception-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-win-exception-handler" -version = "0.16.1" +version = "0.16.2" description = "Wasmer runtime exception handling for Windows" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -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.1" } +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" diff --git a/scripts/update_version_numbers.sh b/scripts/update_version_numbers.sh index 84418905e..c436e38b7 100755 --- a/scripts/update_version_numbers.sh +++ b/scripts/update_version_numbers.sh @@ -1,5 +1,5 @@ -PREVIOUS_VERSION='0.16.0' -NEXT_VERSION='0.16.1' +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\"/" diff --git a/src/installer/wasmer.iss b/src/installer/wasmer.iss index 20f4223c1..767409584 100644 --- a/src/installer/wasmer.iss +++ b/src/installer/wasmer.iss @@ -1,6 +1,6 @@ [Setup] AppName=Wasmer -AppVersion=0.16.1 +AppVersion=0.16.2 DefaultDirName={pf}\Wasmer DefaultGroupName=Wasmer Compression=lzma2