Node.js 13 releases with an upgraded V8, full ICU support, stable Worker Threads API and more

3 min read

Yesterday was a super exciting day for Node.js developers as Node.js foundation announced of Node.js 12 transitions to Long Term Support (LTS) with the release of Node.js 13.

As per the team, Node.js 12 becomes the newest LTS release along with version 10 and 8. This release marks the transition of Node.js 12.x into LTS with the codename ‘Erbium’. The 12.x release line now moves into “Active LTS” and will remain so until October 2020. Then it will move into “Maintenance” until the end of life in April 2022.

The new Node.js 13 release will deliver faster startup and better default heap limits. It includes updates to V8, TLS and llhttp and new features like diagnostic report, bundled heap dump capability and updates to Worker Threads, N-API, and more.

Key features in Node.js 13

Let us take a look at the key features included in Node.js 13.

V8 gets an upgrade to V8 7.8

This release is compatible with the new version V8 7.8. This new version of the V8 JavaScript engine brings performance tweaks and improvements to keep Node.js up with the ongoing improvements in the language and runtime.

Full ICU enabled by default in Node.js 13

As of Node.js 13, full-icu is now available as default, which means hundreds of other local languages are now supported out of the box. This will simplify development and deployment of applications for non-English deployments.

Stable workers API

Worker Threads API is now a stable feature in both Node.js 12 and Node.js 13. While Node.js already performs well with the single-threaded event loop, there are some use-cases where additional threads can be leveraged for better results.

New compiler and platform support

Node.js and V8 continue to embrace newer C++ features and take advantage of newer compiler optimizations and security enhancements. With the release of Node.js 13, the codebase will now require a minimum of version 10 for the OS X development tools and version 7.2 of the AIX operating system.

In addition to this there has been progress on supporting Python 3 for building Node.js applications. Systems that have Python 2 and Python 3 installed will still be able to use Python 2, however, systems with only Python 3 should now be able to build using Python 3.

Developers discuss pain points in Node.js 13

On Hacker News, users discuss various pain-points in Node.js 13 and some of the functionalities missing in this release. One of the users commented, “To save you the clicks: Node.js 13 doesn’t support top-level await. Node includes V8 7.8, released Sep 27. Top-level await merged into V8 on Sep 24, but didn’t make it in time for the 7.8 release.”

Response on this comment came in from V8 team, they say, “TLA is only in modules. Once node supports modules, it will also have TLA. We’re also pushing out a version with 7.9 fairly soonish.”

Other users discussed how Node.js performs with TypeScript, “I’ve been using node with typescript and it’s amazing. VERY productive. The key thing is you can do a large refactoring without breaking anything. The biggest challenge I have right now is actually the tooling. Intellij tends to break sometimes. I’m using lerna for a monorepo with sub-modules and it’s buggy with regular npm. For example ‘npm audit’ doesn’t work. I might have to migrate to yarn…”

If you are interested to know more about this release, check out the official Node.js blog post as well as the GitHub page for release notes.

Read Next

The OpenJS Foundation accepts NVM as its first new incubating project since the Node.js Foundation and JSF merger

12 Visual Studio Code extensions that Node.js developers will love [Sponsored by Microsoft]

5 reasons Node.js developers might actually love using Azure [Sponsored by Microsoft]

Introducing Node.js 12 with V8 JavaScript engine, improved worker threads, and much more

Google is planning to bring Node.js support to Fuchsia

Being a Senior Content Marketing Editor at Packt Publishing, I handle vast array of content in the tech space ranging from Data science, Web development, Programming, Cloud & Networking, IoT, Security and Game development. With prior experience and understanding of Marketing I aspire to grow leaps and bounds in the Content & Digital Marketing field. On the personal front I am an ambivert and love to read inspiring articles and books on life and in general.