Boa release v0.21 - a new release of Boa, a JavaScript engine written in Rust

42 points by nekevss


nekevss

Hi all! If you have any questions about Boa, feel free to ask.

In this release, our conformance has grown to 94.12% in the official ECMAScript Test Suite (Test262).

Highlights

Polished our implementation of the Temporal proposal to reach ~97% conformance on Temporal-related tests.
Added support for span nodes and error backtraces.
Enhanced Boa's compatibility with async Rust by revamping JobQueue and asyncifying ModuleLoader.
Introduced a new set of macros to facilitate creating ECMAScript values, classes and modules from Rust code.
Implemented several runtime features in boa_runtime, including fetch, setTimeout, and queueMicrotask.
Added some support for conformance testing runtime features against the Web Platform Tests (WPT).
JsValue now uses a Nan-boxing representation, reducing the memory footprint of the engine.
Migrated from a stack-based VM to a register based VM.

New built-ins

Implemented Atomics.waitAsync.
Implemented new Set methods.
Implemented Float16 support in TypedArray, Dataview and Math built-ins.
Implemented Error.isError.
Implemented Math.sumPrecise.
Implemented Array.fromAsync.