Here’s What You Need to Know About Node.js v8.0.0

blog_img
Node.js has been updated. Here’s a list of some notable features and changes that every Node.js developer needs to know.

After a month’s delay, Node.js 8 was finally released on 30th May 2017. Being a Node.js developer, we know you’re excited to know what exactly it packs within and how it’ll impact the app development process. The latest version comes with exclusive features and improvements that are aimed at improving the quality of apps along with reducing the work load of developers.

“Carbon” is the codename given to the version 8.0.0 of recently released Node.js that’ll enter the Long-Term Support (LTS) from October 2017 till December 31st, 2019. Also, there is a possibility of Node.js version 6 to enter its maintenance mode after April 2018.

The opportunities on offer for developers are immense. The newly added features will make things quick, eliminating the unnecessary delays.

After our deep research and study, here’s what we have curated for you.

List of new and exciting features of Node.js 8 for developers

1. npm 5 integration

The latest Node.js 8 have been integrated with npm 5 (newest version of npm client), which is now available by default for the developers.

What does this mean?

  • A new lockfile feature (package-lock.json) is available for cross-package-manager compatibility
  • You don’t have to wait for network connectivity and retry again for network requests
  • There is no need to save your work as installs will be saved by default
  • Both the checksums,sha512 and sha1 are included
  • Packages will be installed from the latest registry you switch to

2. TurboFan and Ignition

This is one of the most prominent improvements in Node.js 8 that’ll help reduce memory consumption and speed up the startup. Ignition is the interpreter whereas TurboFan is the optimizing compiler.

Earlier, V8 compilation pipeline looked like the one shown below, which loaded developers with substantial work due to the implementation of new language features in different segments of the pipeline.

turbofan and ignition

Photo credit: BenediktMeurer

However, the implementation process has now been improved with this version release as FullCode Generator and Crankshaft have been ditched completely- making the new pipeline look like,

implementation process

Photo credit: BenediktMeurer

Here’s what Daniel Clifford and his team had to say, “The combined Ignition and TurboFan pipeline has been in development for almost 3½ years. It represents the culmination of the collective insight that the V8 team has gleaned from measuring real-world JavaScript performance and carefully considering the shortcomings of Full-codegen and Crankshaft. It is a foundation with which we will be able to continue to optimize the entirety of the JavaScript language for years to come.”

3. N-API inclusion

Used for building native addons, this API is now included in Node.js 8 with the aim to separate addons from periodic changes in the underlying JavaScript engine. This will not only help in using addons for multiple Nide.js versions without compiling them time and again but also in keeping Application Binary Interface (ABI) stable. It will be maintained individually as a part of Node.js, away from the core JavaScript engine.

4. Async Hooks API

Formerly known as async_wrap, the API has been updated to async_hooks for Node.js 8.0.0. This API enables developers to track event loops and asynchronous requests in addition to the complete handling of the process. It is still an experimental module with incomplete documentation; hence, it is advised to use it with caution.

5. Buffer improvements

The security issues were encountered when new Buffer(Number) constructor was used because it did not initialize the default memory space to zero- which made the new Buffer instances vulnerable to an information leak. This issue, however, is now taken care of in Node.js 8 with buffers allocated using new Buffer(Number), or Buffer(Number) will get a default value zero.

6. URL implementation

The WHATWG URL implementation is no more an experimental API, instead it is a fully-supported Node.js API. This means code files that contain URLs can now be shared across development environment with ease.

7. Console fixes

Significant changes have been introduced to prevent undesired errors and bugs while writing console outputs. The new Node.js version is capable of suppressing error events that were emitted unwillingly using console methods.

Apart from the ones mentioned above, there are few more changes including child process methods, domain awareness, string interface removal, debugger variations and more that have been done to improve the existing mechanism and to reduce the unnecessary development load.

Node.js is known for its single thread operations capable of running thousands of concurrent functions. The latest Node.js 8.0.0 is more powerful and refined. You can develop scalable networking applications with less efforts and time. The community has worked really hard in upgrading its performance and security- making it more reliable and robust than ever.

There are far too many changes to be displayed on a blog like this; therefore, we have covered only the most significant ones.

To learn more, you can check out the official Node.js blog here.

YOU MAY ALSO LIKE
About Author
Mrityunjay Kumar

Mrityunjay Kumar

Mrityunjay is a content developer at Konstant Infosolutions- a leading mobile app development firm that caters to enterprises of all scales and industries with cutting-edge tech solutions. Being an engineer by education, a reader by passion, and a writer by profession, he finds no topic truly boring, yet nothing seems to content his craving as well- an essence he leaves in everything he writes.

MAKE YOUR IDEA REACH ITS GRAND DESTINY

WITH PRO WEB AND MOBILE SOLUTIONS

Looking for a development partner?

Portfolio

Visit Our Portfolio

Top Mobile Blog Winner

Top 15 Latest Mobile Blogs

Mobile App Blog Winner

Mobile App Blogs

SUBSCRIBE TO OUR BLOG

Top

Get a perfect quote

We’re eager to work with you. Please share your project goals and contact information. We respond to 97% of messages within 1-2 business day. Really!

Or send us an email at: [email protected]