Every four weeks, we create a new branch of V8 as part of our release process. Each version is branched from V8’s Git master immediately before a Chrome Beta milestone. Today we’re pleased to announce our newest branch, V8 version 9.6, which is in beta until its release in coordination with Chrome 96 Stable in several weeks. V8 v9.6 is filled with all sorts of developer-facing goodies. This post provides a preview of some of the highlights in anticipation of the release.
WebAssembly #
Reference Types #
The Reference Types proposal, shipped in V8 v9.6, allows using external references from JavaScript opaquely in WebAssembly modules. The externref
(formerly known as anyref
) data type provides a secure way of holding a reference to a JavaScript object and is fully integrated with V8's garbage collector.
Few toolchains that already have optional support for reference types are wasm-bindgen for Rust and AssemblyScript.
V8 API #
Please use git log branch-heads/9.5..branch-heads/9.6 include/v8\*.h
to get a list of the API changes.
Developers with an active V8 checkout can use git checkout -b 9.6 -t branch-heads/9.6
to experiment with the new features in V8 v9.6. Alternatively you can subscribe to Chrome’s Beta channel and try the new features out yourself soon.