All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
Additionally we have an Internal
section for changes that are of interest to developers.
Note: This is going to be the last release with the legacy wasmi
engine.
Future releases are going to use the new Wasm execution engines
that are currently in development.
We may consider to publish the legacy wasmi
engine as wasmi-legacy
crate.
- Support allocating 4GB of memory (wasmi-labs#452)
Note: Yanked because of missing wasmi_core
bump.
Note: This is going to be the last release with the legacy wasmi
engine.
Future releases are going to use the new Wasm execution engines
that are currently in development.
We may consider to publish the legacy wasmi
engine as wasmi-legacy
crate.
- Update dependency:
wasmi-validation v0.4.2 -> v0.5.0
wasmi
now depends on thewasmi_core
crate.- Deprecated
RuntimeValue::decode_{f32,f64}
methods.- Reason: These methods expose details about the
F32
andF64
types. TheRuntimeValue
type providesfrom_bits
methods for similar purposes. - Replacement: Replace those deprecated methods with
F{32,64}::from_bits().into()
respectively.
- Reason: These methods expose details about the
- Refactor traps in
wasmi
: PR- This change also renames
TrapKind
toTrapCode
. - The
wasmi
crate now properly reuses theTrapCode
definitions from thewasmi_core
crate.
- This change also renames
- Updated dependency:
parity-wasm v0.42 -> v0.45
memory_units v0.3.0 -> v0.4.0
- Rename
RuntimeValue
toValue
internally. - Now uses
wat
crate dependency instead ofwabt
for reading.wat
files in tests. - Updated dev-dependencies:
assert_matches: v1.1 -> v1.5
rand 0.4.2 -> 0.8.2
- Fix some
clippy
warnings.
- Make
wasmi
traps more conformant with the Wasm specification. (wasmi-labs#300) - Fixed a bug in
{f32, f64}_copysign
implementations. (wasmi-labs#293) - Fixed a bug in
{f32, f64}_{min, max}
implementations. (wasmi-labs#295)
- Optimized Wasm to host calls. (wasmi-labs#291)
- In some artificial benchmarks we saw improvements of up to 42%!
- Introduce a more efficient
LittleEndianConvert
trait. (wasmi-labs#290)
- Refactor and clean up benchmarking code and added more benchmarks.
- Apply some clippy suggestions with respect ot
#[must_use]
. (wasmi-labs#288) - Improve Rust code formatting of imports.
- Improve debug impl of
ValueStack
so that only the live parts are printed.
- Support for virtual memory usage on Windows 64-bit platforms.
- Technically we now support the same set of platforms as the
region
crate does: https://github.com/darfink/region-rs#platforms
- Technically we now support the same set of platforms as the
- The
wasmi
andwasmi-validation
crates now both use Rust edition 2021. - The
README
now better teaches how to test and benchmark the crate. - Updated
num-rational
from version0.2.2
->0.4.0
.
- Deprecated
MemoryInstance::get
method.- Users are recommended to use
MemoryInstance::get_value
orMemoryInstance::get_into
methods instead.
- Users are recommended to use
- Removed support for virtual memory on 32-bit platforms.
- Note that the existing support was supposedly not more efficient than the
Vec
based fallback implementation anyways due to technical design.
- Note that the existing support was supposedly not more efficient than the
- Removed the
core
crate feature that previously has been required forno_std
builds.- Now users only have to specify
--no-default-features
for ano_std
build.
- Now users only have to specify
- Fully deploy GitHub Actions CI and remove deprecated Travis based CI. Added CI jobs for:
- Testing on Linux, MacOS and Windows
- Checking docs and dead links in docs.
- Audit crate dependencies for vulnerabilities.
- Check Wasm builds.
- File test coverage reports to codecov.io.
- Added possibility to forward
reduced_stack_buffers
crate feature toparity-wasm
crate.
- Added a default
rustfmt.toml
configuration file. - Fixed some warnings associated to Rust edition 2021.
- Note: The crate itself remains in Rust edition 2018.
- Updated
parity-wasm
from verion0.41
to0.42
. - Bumped
wasmi-validation
from version0.3.1
to0.4.0
.