Wasmtime

Latest version: v20.0.0

Safety actively analyzes 630566 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 11 of 17

0.38.3

Released 2022-07-20.

Fixed.

* An s390x-specific codegen bug in addition to a mistake introduced in the fix
of CVE-2022-31146 were fixed.
[4491](https://github.com/bytecodealliance/wasmtime/pull/4491)

--------------------------------------------------------------------------------

0.38.2

Released 2022-07-20.

Fixed.

* A miscompilation when handling constant divisors on AArch64 has been fixed.
[CVE-2022-31169](https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-7f6x-jwh5-m9r4)

* A use-after-free possible with accidentally missing stack maps has been fixed.
[CVE-2022-31146](https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-5fhj-g3p3-pq9g)

--------------------------------------------------------------------------------

0.38.1

Released 2022-06-27.

Fixed.

* A register allocator bug was fixed that could affect direct users of
Cranelift who use struct-return (`sret`) arguments. The bug had to do with
the handling of physical register constraints in the function prologue. No
impact should be possible for users of Cranelift via the Wasm frontend,
including Wasmtime.
[regalloc260](https://github.com/bytecodealliance/regalloc2/pull/60)
[4333](https://github.com/bytecodealliance/wasmtime/pull/4333)

* Lowering bugs for the `i8x16.swizzle` and `select`-with-`v128`-inputs
instructions were fixed for the x86\_64 code generator. Note that aarch64 and
s390x are unaffected.
[4334](https://github.com/bytecodealliance/wasmtime/pull/4334)

* A bug in the 8-bit lowering of integer division on x86-64 was fixed in
Cranelift that could cause a register allocator panic due to an undefined
value in a register. (The divide instruction does not take a register `rdx`
as a source when 8 bits but the metadata incorrectly claimed it did.) No
impact on Wasm/Wasmtime users, and impact on direct Cranelift embedders
limited to compilation panics.
[4332](https://github.com/bytecodealliance/wasmtime/pull/4332)

--------------------------------------------------------------------------------

0.38.0

Not secure
Released 2022-06-21

Added

* Enabling or disabling NaN canonicalization in generated code is now exposed
through the C API.
[4154](https://github.com/bytecodealliance/wasmtime/pull/4154)

* A user-defined callback can now be invoked when an epoch interruption happens
via the `Store::epoch_deadline_callback` API.
[4152](https://github.com/bytecodealliance/wasmtime/pull/4152)

* Basic alias analysis with redundant-load elimintation and store-to-load
forwarding optimizations has been added to Cranelift.
[4163](https://github.com/bytecodealliance/wasmtime/pull/4163)

Changed

* Traps originating from epoch-based interruption are now exposed as
`TrapCode::Interrupt`.
[4105](https://github.com/bytecodealliance/wasmtime/pull/4105)

* Binary builds for AArch64 now require glibc 2.17 and for s390x require glibc
2.16. Previously glibc 2.28 was required.
[4171](https://github.com/bytecodealliance/wasmtime/pull/4171)

* The `wasmtime::ValRaw` now has all of its fields listed as private and instead
constructors/accessors are provided for getting at the internal data.
[4186](https://github.com/bytecodealliance/wasmtime/pull/4186)

* The `wasm-backtrace` Cargo feature has been removed in favor of a
`Config::wasm_backtrace` runtime configuration option. Additionally backtraces
are now only captured when an embedder-generated trap actually reaches a
WebAssembly call stack.
[4183](https://github.com/bytecodealliance/wasmtime/pull/4183)

* Usage of `*_unchecked` APIs for `Func` in the `wasmtime` crate and C API now
take a `usize` parameter indicating the number of `ValRaw` values behind
the associated pointer.
[4192](https://github.com/bytecodealliance/wasmtime/pull/4192)

Fixed

* An improvement was made to the spill-slot allocation in code generation to fix
an issue where some stack slots accidentally weren't reused. This issue was
introduced with the landing of regalloc2 in 0.37.0 and may have resulted in
larger-than-intended increases in stack frame sizes.
[4222](https://github.com/bytecodealliance/wasmtime/pull/4222)

--------------------------------------------------------------------------------

0.37.0

Not secure
Released 2022-05-20

Added

* Updated Cranelift to use regalloc2, a new register allocator. This should
result in ~20% faster compile times, and for programs that suffered from
register-allocation pressure before, up to ~20% faster generated code.
[3989](https://github.com/bytecodealliance/wasmtime/pull/3989)

* Pre-built binaries for macOS M1 machines are now available as release
artifacts.
[3983](https://github.com/bytecodealliance/wasmtime/pull/3983)

* Copy-on-write images of memory can now be manually initialized for a `Module`
with an explicit method call, but it is still not required to call this method
and will automatically otherwise happen on the first instantiation.
[3964](https://github.com/bytecodealliance/wasmtime/pull/3964)

Fixed

* Using `InstancePre::instantiate` or `Linker::instantiate` will now panic as
intended when used with an async-configured `Store`.
[3972](https://github.com/bytecodealliance/wasmtime/pull/3972)

Changed

* The unsafe `ValRaw` type in the `wasmtime` crate now always stores its values
in little-endian format instead of the prior native-endian format. Users of
`ValRaw` are recommended to audit their existing code for usage to continue
working on big-endian platforms.
[4035](https://github.com/bytecodealliance/wasmtime/pull/4035)

Removed

* Support for `Config::paged_memory_initialization` and the `uffd` crate feature
have been removed from the `wasmtime` crate. Users should migrate to using
`Config::memory_init_cow` which is more portable and faster at this point.
[4040](https://github.com/bytecodealliance/wasmtime/pull/4040)

--------------------------------------------------------------------------------

0.36.0

Not secure
Released 2022-04-20

Added

* Support for epoch-based interruption has been added to the C API.
[3925](https://github.com/bytecodealliance/wasmtime/pull/3925)

* Support for disabling libunwind-based backtraces of WebAssembly code at
compile time has been added.
[3932](https://github.com/bytecodealliance/wasmtime/pull/3932)

* Async support for call hooks has been added to optionally execute "blocking"
work whenever a wasm module is entered or exited relative to the host.
[3876](https://github.com/bytecodealliance/wasmtime/pull/3876)

Fixed

* Loading a `Module` will now check, at runtime, that the compilation settings
enabled in a `Config` are compatible with the native host. For example this
ensures that if avx2 is enabled that the host actually has avx2 support.
[3899](https://github.com/bytecodealliance/wasmtime/pull/3899)

Removed

* Support for `Config::interruptable` and `InterruptHandle` has been removed
from the `wasmtime` crate. Users should migrate to using epoch-based
interruption instead.
[3925](https://github.com/bytecodealliance/wasmtime/pull/3925)

* The module linking implementation of Wasmtime has been removed to make room
for the upcoming support for the component model.
[3958](https://github.com/bytecodealliance/wasmtime/pull/3958)

--------------------------------------------------------------------------------

Page 11 of 17

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.