Skip to content

Releases: explodingcamera/tinywasm

v0.8.0

29 Aug 13:22
v0.8.0
d2064b9
Compare
Choose a tag to compare

[0.8.0] - 2024-08-29

All Commits: v0.7.0...v0.8.0

Changed

  • Full support for Multi-Memory proposal
  • Extern tables now correctly update their type after growing
  • Increased MSRV to 1.80.0
  • Improved support for WebAssembly 2.0 features
  • Simplify and optimize the interpreter loop
  • Use a seperate stack and locals for 32, 64 and 128 bit values and references (#21)
  • Updated to latest wasmparser version
  • Removed benchmarks comparing TinyWasm to other WebAssembly runtimes to reduce build dependencies
  • Memory and Data Instances are no longer reference counted

v0.7.0

15 May 11:54
v0.7.0
eb6f7c7
Compare
Choose a tag to compare

[0.7.0] - 2024-05-15

All Commits: v0.6.0...v0.7.0

Changed

  • Remove all unsafe code (This includes the public TinyWasmModule::from_twasm_unchecked)
  • Refactor interpreter loop
  • Optimize Call-frames
  • Remove unnecessary reference counter data from store

v0.6.1

09 May 22:16
v0.6.1
2ac04cd
Compare
Choose a tag to compare

[0.6.1] - 2024-05-10

All Commits: v0.6.0...v0.6.1

Changed

  • Switched back to the original wasmparser crate, which recently added support for no_std
  • Performance improvements
  • Updated dependencies

v0.6.0

27 Mar 10:34
v0.6.0
3904c64
Compare
Choose a tag to compare

[0.6.0] - 2024-03-27

All Commits: v0.5.0...v0.6.0

Added

  • Imports and Module are now cloneable (#9)

Changed

  • Improved documentation and added more tests
  • Tests can now be run on more targets (#11)
  • Nightly version has been updated to fix broken builds in some cases (#12)
  • Add aarch64-apple-darwin and armv7-unknown-linux-gnueabihf targets to CI (#12)

Removed

  • Removed the EndFunc instruction, as it was already covered by the Return instruction
    This also fixes a weird bug that only occurred on certain nightly versions of Rust

v0.5.0

01 Mar 15:15
v0.5.0
d2b6c53
Compare
Choose a tag to compare

[0.5.0] - 2024-03-01

All Commits: v0.4.0...v0.5.0

Added

  • Added a CHANGELOG.md
  • Added merged instructions for improved performance and reduced byte code size

Changed

  • Now using a custom wasmparser fork
  • Switched to a visitor pattern for parsing WebAssembly modules
  • Reduced the overhead of control flow instructions
  • Reduced the size of bytecode instructions
  • Fixed issues on the latest nightly Rust compiler
  • Simpliefied a lot of the internal macros

Removed

  • Removed duplicate internal code

v0.4.0

03 Feb 23:09
v0.4.0
712b7da
Compare
Choose a tag to compare

v0.3.0 - Full WebAssembly 1.0 support

  • Added benchmarks
  • Performance improvements
  • Added usage examples
  • Pre-Processed Wasm (.twasm)
  • Support Bulk-Memory proposal

Full Changelog: v0.3.0...v0.4.0

v0.3.0

26 Jan 14:36
v0.3.0
67f0fd6
Compare
Choose a tag to compare

v0.3.0 - Full WebAssembly 1.0 support

  • Better trap handling
  • Implement linker
  • Element instantiation
  • Table Operations
  • FuncRefs
  • Typesafe host functions
  • Host function context
  • Spec compliance improvements
  • Wasm 2.0 testsuite
  • Usage examples
  • End-to-end tests
  • Lots of bug fixes
  • Full no_std support

Full Changelog: v0.2.0...v0.3.0

v0.2.0

10 Jan 23:06
v0.2.0
5879ff0
Compare
Choose a tag to compare
  • Support for br_table
  • Memory trapping improvments
  • Implicit function lable scopes
  • else Instructions
  • All Memory instructions
  • Imports
  • Basic linking
  • Globals
  • Fix function addr resolution
  • Reference Instructions

Full Changelog: v0.1.0...v0.2.0

v0.1.0

27 Dec 21:47
a7ce633
Compare
Choose a tag to compare
  • Now supporting most wasm binary sections
  • Better function resolution
  • Support most number related Op-codes

Full Changelog: v0.0.5...v0.1.0

v0.0.5

19 Dec 14:02
v0.0.5
61e52d2
Compare
Choose a tag to compare