Skip to content

0.15.0

Compare
Choose a tag to compare
@MaxDesiatov MaxDesiatov released this 19 May 13:30
· 457 commits to main since this release
2d7bc96

This is a major release that adds new features and fixes issues. Specifically:

  • BigInt and BigInt-based JSTypedArray types are now supported. Now, when passing Int64 values from Swift, they will be mapped to BigInt values on the JavaScript side.
  • The constructor property on JSBridgedClass is now an Optional, which allows bridging JavaScript classes that aren't available in every browser or environment.
  • JavaScriptKit runtime files are now supplied as SwiftPM resources. This allows us to resolve a long-standing issue in carton that could lead to a version mismatch between JavaScriptKit dependency in Package.swift or Package.resolved and carton’s bundled JavaScriptKit runtime version.
  • The JSSymbol type has been added, enabling support for JavaScript Symbol values, including accessing Symbol-keyed properties on objects.

Source breaking changes

UInt64.jsValue and Int64.jsValue, which are a part of JavaScriptKit module, have been moved into JavaScriptBigIntSupport module since their implementation changed to require JS-BigInt-integration to avoid implicit casts from 64-bit integer to JS number type.

If you want to keep the behavior so far, please cast the 64-bit integer values to Double.

Merged pull requests: