Technology1 min read

Notable V8 changes from Node.js 26 to 27 (Alpha)

By · Published by Everything Blog

In short

Upgrading to V8 version 15.6 brings a range of new capabilities to the platform, including the Math.sumPrecise method to curb floating-point discrepancies alongside expanded iterator utilities. Core JavaScript behaviors have also shifted, as seen in Array.prototype.sort switching to PowerSort for handling large arrays. While early phases may introduce native addon breaks marked by NODE_MODULE_VERSION bumps, ABI stability will lock in upon entering Long Term Support.

Key points

  • Native addons may require recompilation during the Alpha and Current phases due to potent…: Native addons may require recompilation during the Alpha and Current phases due to potential breaking ABI changes.
  • Core runtime calculations may yield slight floating-point differences because certain Mat…: Core runtime calculations may yield slight floating-point differences because certain Math methods now depend on LLVM libm.
  • Long Term Support will freeze the V8 engine version to prevent future breaking API or ABI…: Long Term Support will freeze the V8 engine version to prevent future breaking API or ABI changes.

Sources checked by our analysis pipeline: 1

Joyee Cheung

The Node.js 27 Alpha release upgrades V8 to version 15.6, from the 14.6 used by Node.js 26, bringing several new JavaScript language features and improvements. In this post, let's explore the notable V8 changes introduced in this release that are interesting for Node.js developers.

Before we dive in, keep in mind that after Node.js switches to a new release schedule with an Alpha phase, Node.js may introduce breaking V8 changes, such as a bulk V8 upgrade, during the Alpha and Current phases. Breakages that affect the native addon ABI will come with a NODE_MODULE_VERSION

bump, allowing toolchains that select prebuilt native addons by ABI version to continue working. Once the 27 release enters LTS, the V8 version in this release line is expected to remain stable, and no ABI or API breaking changes are expected except in exceptional circumstances, such as critical security fixes.

JavaScript language features

New language features available by default

Math.sumPrecise(iterable)

Compared to summing up numbers in a loop, Math.sumPrecise

reduces the accumulation of floating-point errors.

[0.1, 0.2, 0.3].((, ) => + ); // 0.6000000000000001

Technology