Skip to content

Releases: RyanLamansky/dotnet-webassembly

v1.2.1

14 Aug 15:59
ecd8499
Compare
Choose a tag to compare
  • For .NET 3.1 or higher, BitOperations are leveraged to accelerate 32 and 64-bit WASM instructions for count of leading 0 bits, count of 1 bits, count of trailing 0 bits, rotate left, and rotate right.

v1.2.0

24 May 00:51
d9766ae
Compare
Choose a tag to compare

Fixed the "WebAssemblyValueType 7 not recognized." error encountered during compilation of some WASMs. Thanks @munik!

v1.1.0

16 May 22:33
7338583
Compare
Choose a tag to compare
  • Added a .NET Standard 2.0 build.

v1.0.0

24 Apr 14:16
2c5a983
Compare
Choose a tag to compare
  • Block-type instructions that returned their type in .ToString now more closely match the WAT format; "block (returns i32)" is now "block i32", for example.
  • This is the first formal release, breaking changes should be rare going forward.

v0.11.0

15 Feb 00:10
4a8483e
Compare
Choose a tag to compare
  • First non-preview release!
    • The APIs for creation and modification of WASM files have been stable for a long time, so no need to hold it back any longer.
    • Compilation still has numerous gaps in specification compliance, but has enough "core" functionality to call it a beta.
  • Significantly improved compilation compatibility by fixing multiple issues with branches that continue a loop.
  • Added several constructors to simplify creation of WASM-related objects.

v0.10.2-preview

31 Jan 19:09
e432ed2
Compare
Choose a tag to compare
v0.10.2-preview Pre-release
Pre-release
  • Improved compilation compatibility thanks to #31 by @tana.

v0.10.1-preview

26 Dec 20:50
bf66fe9
Compare
Choose a tag to compare
v0.10.1-preview Pre-release
Pre-release
  • Significantly improved compilation compatibility thanks to #30 by @tana.

v0.10.0-preview

03 Oct 20:25
fe197d3
Compare
Choose a tag to compare
v0.10.0-preview Pre-release
Pre-release
  • .NET Core 3.1 or higher is now required, the .NET Standard builds have been removed.
  • Added support for sign extension and saturating truncation operators thanks to @tgjones.
  • Indirect functions with no parameters and no returns are now supported.
  • Fixed multiple issues with memory imports, unblocking some spec test scenarios.
  • The default .ToString for instructions now returns the native WebAssembly opcode name.

v0.9.0-preview

13 Jun 13:42
1fa793f
Compare
Choose a tag to compare
v0.9.0-preview Pre-release
Pre-release
  • Compiled exports now have an attribute indicating their native export type and name.
  • Runtime global imports now accept raw delegates.
  • Various bug fixes.

Breaking Changes

  • Out of range import types throw ModuleLoadException instead of IndexOutOfRangeException.
  • RuntimeException is now abstract.
  • Missing or incorrectly typed imports now throw ImportException instead of ArgumentException.
  • ImportDictionary's only member, an Add method, was changed to an extension method, which is binary-breaking but not code-breaking.

v0.8.0-preview

08 Dec 16:59
Compare
Choose a tag to compare
v0.8.0-preview Pre-release
Pre-release
  • Contents of grown memory is now initialized to 0 before being made available for use.
    Special thanks to @TYoung86 for identifying and fixing this issue.
  • Memory can now grow from an initial size of zero.
  • Improved disposal tracking of UnmanagedMemory.
    • Previously it was possible to un-dispose objects of this type by calling Grow.
      An object revived in this way would leak memory if it was not explicitly Disposed before being discarded.
  • Added .NET Standard 2.1 build with no dependencies.