Skip to content

Node.js 27 alpha brings V8 15.6, drops old OpenSSL

The first Node.js 27 alpha, out October 29, updates V8 to 15.6, requires OpenSSL 3 or later and starts Node's new one-major-release-a-year schedule.

By

3 min read

XLinkedIn

Drafted with AI from the sources linked in this article, then fact-checked and edited by Claire Whitmore before publishing. How we work

Screenshot of the Node.js blog post for 27.0.0-alpha.0.0.0, with the Node.js logo graphic and the release notes' table of contents beside it.

By the numbers

semver-major commits in the first alpha
~100
JavaScript engine, up from 14.6 in Node.js 26
V8 15.6
planned date for Node.js 27.0.0
April 2027
planned end of life for Node.js 27
April 2030

The Node.js project released its first Node.js 27 alpha on October 29, 2026, tagged 27.0.0-alpha.0.0.0. It is the first build under Node's new schedule of one major release a year. The alpha updates the V8 JavaScript engine to version 15.6, requires OpenSSL 3 or later, and carries roughly 100 semver-major commits, meaning changes that can break existing code.

The alpha is not meant for production. It is aimed at library authors and teams who want to catch breaking changes in their test pipelines months before Node.js 27.0.0 ships in April 2027.

The new release schedule

Until now, Node.js put out two major versions a year, and only the even-numbered ones got long-term support (LTS). From Node.js 27, there is one major release a year and every release becomes LTS, according to the project's release schedule post.

Each version now spends six months as an alpha, from October to March. Semver-major changes are still allowed during that window. Alpha builds are signed, tagged and tested, unlike nightly builds, but their APIs can change between releases.

StageNode.js 27
Alpha beginsOctober 2026
27.0.0 (Current)April 2027
Enters LTSOctober 2027
End of lifeApril 2030

LTS still lasts about 30 months, and each line gets 36 months from its first Current release to end of life. Node.js 26 is the last line under the old model. The project says the schedule "is not final and may be amended."

The change grew out of a proposal that TSC member Rafael Gonzaga opened in July 2025, InfoQ reported. The aim was to ease the load on maintainers, who had to backport fixes to release lines few people used. Gonzaga also wrote the alpha release post.

What breaks in the alpha

The release notes list a long set of changes. These are the ones most likely to hit real apps:

  • OpenSSL 3 or later is required. Node.js now bundles OpenSSL 4.1.0, which shipped on October 23 with DTLS 1.3. Support for OpenSSL engines has ended.
  • Native addons must be rebuilt. NODE_MODULE_VERSION is now 153.
  • New default memory limit. Without --max-old-space-size, the heap limit is half of physical memory, between 256 MB and 4 GB. Buffer and ArrayBuffer memory now counts toward it.
  • A new serialization format. Data written by v8.serialize(), structuredClone() and postMessage() cannot be read by older Node.js versions.
  • HTTP defaults changed. The default keepAliveTimeout rises to 65 seconds, and req.headers now has a null prototype.
  • Intel Macs are now experimental. The Intel macOS binary is listed as "Coming soon."
  • npm 12.1.0 is bundled.

V8 15.6 also changes some small behaviors. Math functions now use LLVM's libm library, so results may differ in the last bit. Large arrays are sorted with a new algorithm, though sorting is still stable. New features include Math.sumPrecise() and Iterator.zip().

The domain module is now runtime-deprecated, and a permission flag, --allow-env, has been added.

Docker images are not ready yet

Teams that test in containers will have to wait until that is settled. The official Docker image maintainers closed their tracking issue for Node.js 27 on October 30, saying there was not enough information to prepare in time. They plan to open a new issue to settle how alpha images will be tagged.

The version string also differs from the plan. Planning documents used examples like 27.0.0-alpha.1, but the first build shipped as 27.0.0-alpha.0.0.0.

What this means for developers

  • Add the alpha to CI now, not in April. The project asked library authors to do this as early as possible. A failing alpha job gives you six months to fix breakage before 27.0.0.
  • Rebuild native modules and check them. The new module version means every native addon needs a fresh build for Node.js 27.
  • Test anything that stores serialized data. If one service writes with v8.serialize() and an older one reads it, the new format will break that path.
  • Set heap limits explicitly in containers. The new default ties memory to the host's physical RAM, which may not match your container limit.
  • If you only run LTS, little changes yet. Node.js 26 is the LTS line, at 26.13.0 when the alpha came out. Keep applying its patches, as with the October security release that fixed 10 flaws.

Sources

  1. Node.js 27.0.0-alpha.0.0.0 (Alpha) - Node.js
  2. Evolving the Node.js Release Schedule - Node.js
  3. Node.js Moves to Annual Major Releases - InfoQ
  4. Prepare for Node.js 27 pre-release (Alpha) / release - GitHub (nodejs/docker-node)

Related articles

The weekly digest

One email every Friday with the week's top stories from all six desks: AI, dev tools, coding, the tech industry, startups and what's next. Free, no spam.

Unsubscribe anytime with one click.