#1401 - RuntimeErrors are now much more explicit about how they failed allowing better insight into the internal workings of Wasmer when things go wrong.
#1320 - Allow multiple custom sections with the same name as per the Wasm spec
#1313 - New APIs for interfacing with Wasmer (currently experimental, expect breakage in this new crate)
#1303 - NaN canonicalization for the Singlepass backend
We had a bug in the Wasm pointer implementation that was not caught by our tests. Sorry for the inconvenience!
Install the latest version of Wasmer with:
curl https://get.wasmer.io -sSfL | sh
Changelog
#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
This release fixes a small bug in the install script that prevented wax from running.
0.16.0
This version of Wasmer ships some fixes into the WASI memory, a better Wasmer integration in Windows and a completely new tool for WAPM: wax. Read more here.
#1284 Implement string and memory instructions in wasmer-interface-types
#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<T, Array> with a length of 0 and WasmPtr<T> where std::mem::size_of::<T>() is 0 to always return None
0.15.0
This version of Wasmer ships Polymorphic functions support, along with a new debugger for WebAssembly modules and some other small improvements π
#1401 Make breaking change to RuntimeError: RuntimeError is now more explicit about its possible error values allowing for better insight into why a call into Wasm failed.
#1335 Change mutability of memory to const in wasmer_memory_data_length in the C API
#1329 New numbers and strings instructions for WIT
#1332 Add option to CompilerConfig to force compiler IR verification off even when debug_assertions are enabled. This can be used to make debug builds faster, which may be important if you're creating a library that wraps Wasmer and depend on the speed of debug builds.
#1320 Change custom_sections field in ModuleInfo to be more standards compliant by allowing multiple custom sections with the same name. To get the old behavior with the new API, you can add .last().unwrap() to accesses. For example, module_info.custom_sections["custom_section_name"].last().unwrap().
#1313 Add new high-level public API through wasmer crate. Includes many updates including:
Minor improvement: imports! macro now handles no trailing comma as well as a trailing comma in namespaces and between namespaces.
New methods on Module: exports, imports, and custom_sections.
New way to get exports from an instance with let func_name: Func<i32, i64> = instance.exports.get("func_name");.
Improved Table APIs including set which now allows setting functions directly. TODO: update this more if Table::get gets made public in this PR
TODO: finish the list of changes here
#1303 NaN canonicalization for singlepass backend.
#1292 Experimental Support for Android (x86_64 and AArch64)
#1301 Update supported stable Rust version to 1.41.1.
#1300 Add support for multiple versions of WASI tests: wasitests now test all versions of WASI.
#1285 Greatly improve errors in wasmer-interface-types
#1283 Workaround for floating point arguments and return values in DynamicFuncs.
0.16.2 - 2020-03-11
#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 Fix installation packaging script to package the wax command.
#1284 Implement string and memory instructions in wasmer-interface-types
#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<T, Array> with a length of 0 and WasmPtr<T> where std::mem::size_of::<T>() is 0 to always return None
0.15.0 - 2020-03-04
#1263 Changed the behavior of some WASI syscalls to now handle preopened directories more properly. Changed default --debug logging to only show Wasmer-related messages.
#1217 Polymorphic host functions based on dynamic trampoline generation.
Add --generate-debug-info and -g flags to wasmer run to generate debug information during compilation. The debug info is passed via the GDB JIT interface to a debugger to allow source-level debugging of Wasm files. Currently only available on clif-backend.
Break public middleware APIs: there is now a source_loc parameter that should be passed through if applicable.
Break compiler trait methods such as feed_local, feed_event as well as ModuleCodeGenerator::finalize.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps wasmer-runtime-c-api from 0.14.1 to 0.17.0.
Release notes
Sourced from wasmer-runtime-c-api's releases.
Changelog
Sourced from wasmer-runtime-c-api's changelog.
Commits
80d9935
Merge #143720af25e
Create 0.17.0 section in CHANGELOG.md6d01b7f
Prepare for 0.17.0 release1e72081
Merge #1436254f9bb
Fixed ignores685af7b
Added custom tests to the infrastructurefd63ee9
Apply review suggestioneeb608c
Add int-extend-garbage test6790702
Add comment to explain the change to I64ExtendI32U.51e085a
Garbage in upper 32 bits shouldn't propagate to I64ExtendI32U's result.Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)