<!– wp:paragraph –>
<p>Node.js 26 enables the Temporal API by default and is due to enter LTS this month. Here’s what’s new, what was removed, and how to prepare an upgrade from Node 24.</p>
<!– /wp:paragraph –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>Where Node.js 26 stands</h2>
<!– /wp:heading –>
<!– wp:paragraph –>
<p><strong>Node.js 26</strong> shipped as a Current release on 5 May 2026, and the official release notes say it enters long-term support in October. Coverage points to the last week of the month, so check the Node.js release schedule for the exact date. Until the LTS tag lands, Node 24 remains the safer production line, and this is the window to test the next one.</p>
<!– /wp:paragraph –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>Temporal is on by default</h2>
<!– /wp:heading –>
<!– wp:paragraph –>
<p>The headline change is that the <strong>Temporal API</strong> no longer needs a flag. It’s the long-awaited replacement for the awkward <code>Date</code> object, with proper time zones, calendars, durations and exact instants.</p>
<!– /wp:paragraph –>
<!– wp:code –>
<pre class=”wp-block-code”><code>const now = Temporal.Now.zonedDateTimeISO(“Europe/London”);
const meeting = now.add({ days: 7 }).with({ hour: 9, minute: 0 });
console.log(meeting.toString());</code></pre>
<!– /wp:code –>
<!– wp:paragraph –>
<p>You don’t have to migrate existing <code>Date</code> code, but new code that handles time zones or durations is noticeably safer written against Temporal from the start.</p>
<!– /wp:paragraph –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>Engine and dependency updates</h2>
<!– /wp:heading –>
<!– wp:list –>
<ul class=”wp-block-list”><!– wp:list-item –>
<li><strong>V8 14.6</strong> (Chromium 146), adding <code>Map.prototype.getOrInsert()</code>, <code>getOrInsertComputed()</code> and <code>Iterator.concat()</code></li>
<!– /wp:list-item –><!– wp:list-item –>
<li><strong>Undici 8</strong> behind the built-in <code>fetch()</code></li>
<!– /wp:list-item –><!– wp:list-item –>
<li>ICU 78.3 and libuv 1.52.1</li>
<!– /wp:list-item –><!– wp:list-item –>
<li>A fix for a V8 array-index hash collision tracked as CVE-2026-21717</li>
<!– /wp:list-item –></ul>
<!– /wp:list –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>What was removed or deprecated</h2>
<!– /wp:heading –>
<!– wp:paragraph –>
<p>This is the part worth reading carefully before upgrading. A few long-deprecated items are finally gone or on the way out:</p>
<!– /wp:paragraph –>
<!– wp:list –>
<ul class=”wp-block-list”><!– wp:list-item –>
<li><code>http.Server.prototype.writeHeader()</code> has been removed – use <code>writeHead()</code> instead</li>
<!– /wp:list-item –><!– wp:list-item –>
<li>Legacy stream modules such as <code>_stream_readable</code> are no longer importable</li>
<!– /wp:list-item –><!– wp:list-item –>
<li><code>module.register()</code> is now runtime-deprecated and will warn</li>
<!– /wp:list-item –></ul>
<!– /wp:list –>
<!– wp:paragraph –>
<p>If you build Node from source, note it now needs GCC 13.2 and no longer supports Python 3.9 in the build process.</p>
<!– /wp:paragraph –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>Testing the upgrade from Node 24</h2>
<!– /wp:heading –>
<!– wp:list {“ordered”:true} –>
<ol class=”wp-block-list”><!– wp:list-item –>
<li>Install it alongside Node 24 with a version manager such as nvm or fnm, so the old version stays available.</li>
<!– /wp:list-item –><!– wp:list-item –>
<li>Run your test suite with deprecation tracing enabled and read every new warning.</li>
<!– /wp:list-item –><!– wp:list-item –>
<li>Search your dependencies for the removed APIs above – older packages are the usual culprit.</li>
<!– /wp:list-item –><!– wp:list-item –>
<li>Soak it in staging for a week before the LTS promotion, then move production once the LTS tag actually lands.</li>
<!– /wp:list-item –></ol>
<!– /wp:list –>
<!– wp:heading –>
<h2 class=”wp-block-heading”>Should you wait?</h2>
<!– /wp:heading –>
<!– wp:paragraph –>
<p>Production services should wait for the LTS tag, as always. Tooling, scripts, and new projects can move now, and anything doing serious date arithmetic is worth trying on Temporal sooner rather than later.</p>
<!– /wp:paragraph –>

Leave a Reply
You must be logged in to post a comment.