Software 45140 Published by

Node.js 27.0.0-alpha.0.0.0 shipped on October 29, 2026, marking the first release under the project's new annual-release model. Starting with Node 27, there will be one major release per year, and every line becomes LTS, retiring the old odd/even split that separated Current from Long-Term Support. The alpha is packed with upgrades, most notably V8 15.6.75.13 and an OpenSSL 4.1.0 crypto overhaul, alongside a spread of breaking changes that library authors should test against now. Node 27.0.0 lands in April 2027, enters LTS in October 2027, and reaches End of Life around April 2030.



Node.js 27.0.0-alpha.0.0.0 Ships as the First Release Under a New Annual-Release Model

The Node.js team published version 27.0.0-alpha.0.0.0 on October 29, 2026. It's the first alpha under the project's new yearly release cadence and the first real test of the schedule overhaul announced back in June 2026.

Starting with Node 27, there will be one major release per year, and every single one becomes LTS. The odd/even split that used to separate "Current" from "Long-Term Support" lines is gone. Node 26, which shipped in April 2026, is the last release under the old model.

Nodejs

Node.js is the open-source JavaScript runtime built on Google's V8 engine and maintained by the OpenJS Foundation. Built originally as a server-side interpreter, it's now deployed across the planet. It turns up near the top of the Stack Overflow Developer Survey year after year, with first-class integration with the usual suspects: Express, Fastify, Next.js.

The old two-releases-a-year rhythm had served Node well for about a decade before it started cracking. Odd-numbered lines barely got adopted. Most organizations skipped them entirely and waited for LTS. Maintaining four or five concurrent lines was becoming a real burden for a project largely run by volunteers.

Rafael Gonzaga (GitHub handle RafaelGSS), a Node.js TSC member who leads the Release Team, published this alpha and opened the defining discussion (nodejs/Release#1113) in July 2025. He wasn't working solo. James Snell, a longtime core contributor who helped design the original cycle, publicly backed the idea of revisiting it.

Snell's take: "I'm definitely a big +1 on revisiting the release and LTS plan. When I first proposed the current plan a decade ago it was based entirely on corporate adoption cycles that were relevant at that time and we really haven't revisited the plan since."

That last bit is worth sitting with. The whole system had been running on an educated guess for ten years.

The change wasn't universally welcome, though. Enterprise contributors had a legitimate worry about slowing down feature delivery. Kevin Lentin put it plainly: "Our current policy is to run LTS but we upgrade very quickly… If we only get new LTS every 2 years, I'll go nuts waiting for features. Even 1 year without backporting is going to be quite painful."

The new model tries to thread that needle. Enterprises get one predictable annual LTS. Early adopters and library authors get an Alpha channel to see breaking changes before they ship.

The new schedule at a glance

Under the updated plan, each release follows a fixed rhythm. Alpha runs for six months, from October to March, and allows semver-major (breaking) changes. Current runs the next six months, April to October, for stabilization. LTS kicks in for about 30 months. EOL is effectively open-ended.

Version numbers now track the calendar year of a release's first Current phase. So 27.0.0 lands in April 2027, and 28.0.0 follows in 2028. Promotion to LTS comes the following October. Node 27 reaches LTS in October 2027, with End of Life landing around April 2030.

For library authors, the official guidance is blunt. Integrate Alpha releases into your CI as early as possible. Keep in mind that this isn't optional: if you only test on LTS, you'll miss bugs before they reach users.

For teams that only ever touch LTS, the honest summary is simpler. Little changes beyond version numbering.

As for the release you're actually reading about: 27.0.0-alpha.0.0.0. Yes, that triple-zero suffix is real. The team is using standard semver prerelease notation, and this first happens to carry the extra .0.0. It's a bit unusual. But the numbering is deliberate.

What's actually in 27.0.0-alpha.0.0.0

This is an alpha, so expect breaking changes. Two upgrades dominate the package anyway.

First, V8 jumps to 15.6.75.13, up from 14.6. That's almost always the biggest change in any Node release, and this one brings a lot. Default-enabled features include Math.sumPrecise(), a handful of Iterator helpers (join, includes, zip, zipKeyed), and Intl.Locale.prototype.variants. Behind flags you'll find import defer, immutable ArrayBuffer, and RegExp buffer boundaries.

A few of these are easy to miss but could bite. The default heap limit, when --max-old-space-size is unset, is now half of physical memory clamped between 256 MB and 4 GB. Memory held by Buffer and ArrayBuffer now counts toward that cap. If your app silently relied on the old defaults, you may need to set the flag yourself.

There's also a serialization format change. v8.serialize(), structuredClone(), and postMessage() now use a wire format that older Node releases can't read. Cached data and the compile cache change on every V8 patch, so you'll invalidate them more often.

Not cheap. If you build native modules, NODE_MODULE_VERSION was bumped to 153, which means a rebuild against Node 27.

The second big change is a crypto overhaul led by Filip Skokan. Node upgrades to OpenSSL 4.1.0 and will require OpenSSL 3 or later at build time going forward. The bundled FIPS provider and the legacy ncrypto backend are gone. OpenSSL engine support across crypto, https, and tls is ending. Several deprecations (DEP0093, DEP0198, DEP0203/DEP0204) have moved to end-of-life.

The net effect is a cleaner, more modern crypto layer. The catch is that code depending on removed engines or OpenSSL 1.x-era behavior will break.

npm gets bumped to 12.1.0, as it does in every recent release. The team also patched npm's engine checks to accept alpha versions, after an earlier alpha of the previous line surfaced version-mismatch warnings.

The rest of the changelog is a broad spread of breaking changes and new features across core modules. Native glob() and globSync() land in fs, trimming reliance on third-party packages. The long-dead domain module is now runtime-deprecated, reimplemented on top of AsyncLocalStorage. Meanwhile http raises its default keepAliveTimeout to 65 seconds and hands req.headers a null prototype. net gains an experimental net/promises API. And dns no longer consults the hosts file during reverse lookups.

On the feature side, there's fs.mkstemp(), a faster AbortSignal, the --experimental-strip-private-modules flag, and vfs, the in-memory virtual file system used for Secure Executable Archives, now unflagged and stable.

There's also a security fix: CVE-2026-58042 in dns handles large resolveAny replies, closing a potential memory-safety issue.

Here's what this means for you. If you only install the latest LTS, this alpha has almost no direct impact on you today. But it does confirm that Node 27 will be a yearly, always-LTS line with a predictable April/October rhythm, running through at least 2030.

If you maintain libraries or tooling, this is your early-warning system. The new serialization format, changed heap limits, removed crypto engines, and module-level breaking changes mean your CI should start testing against these Alpha builds now, not after they become LTS. Test late and you risk shipping breakage that only shows up in production.

Enterprises get the promise of predictability: one major release a year, around 30 months of LTS support, migration overlaps preserved. The open question stays whether a single annual cadence will satisfy teams used to faster cycles. The Alpha channel is the project's answer to that concern.

Node 27 ships across the usual matrix: 64-bit and ARM 64-bit installers for Windows, an Apple Silicon build for macOS (the Intel build is marked "Coming soon," a nod to the experimental downgrade), plus x64, arm64, ppc64le, s390x, and x64-musl for Linux, and AIX ppc64 with a source tarball. Binaries carry PGP-signed SHASUMS, and documentation lives at nodejs.org/docs/v27.0.0-alpha.0.0.0/api/.

Timeline for those keeping score: Node 27.0.0 arrives in April 2027, enters LTS in October 2027, and reaches EOL around April 2030.

Head here to the official release blog to grab the alpha and read the full changelog.