Latest in branch 11.x
11.15.0
Released 30 Apr 2019
(7 years ago)
SoftwareNode.js
Version11.x
Status
End of life
Initial release11.0.0
23 Oct 2018
(7 years ago)
Latest release11.15.0
30 Apr 2019
(7 years ago)
End of bug fixes01 Jun 2019
(Ended 6 years, 11 months ago)
End of security fixes01 Jun 2019
(Ended 6 years, 11 months ago)
Release noteshttps://github.com/nodejs/node/releases/tag/v11.15.0
Source codehttps://github.com/nodejs/node/tree/v11.15.0
Documentationhttps://nodejs.org/dist/latest-v11.x/docs/api/
Downloadhttps://nodejs.org/download/release/latest-v11.x/
Node.js 11.x ReleasesView full list

What Is New in Node.js 11?

CategoryChange
New FeaturesV8 7.0 -- Array.prototype.flat/flatMap, Object.fromEntries
New FeaturesUnhandled rejections default changed to warn-with-error-code mode
ImprovementsReadable streams: async iteration support
ImprovementsWorker threads (experimental)
ImprovementsICU full-icu by default on all platforms
Improvementshttp: removed legacy URL (req.url now always a string)
SecurityOpenSSL 1.1.0j

Array.flat(), flatMap(), and Object.fromEntries()

Three often-requested array and object utilities land natively in Node.js 11 via V8 7.0.

// flat() -- flatten nested arrays
[1, [2, [3]]].flat();      // [1, 2, [3]]
[1, [2, [3]]].flat(Infinity); // [1, 2, 3]

// flatMap() -- map + one-level flatten in one pass
['hello world', 'foo'].flatMap(s => s.split(' ')); // ['hello', 'world', 'foo']

// Object.fromEntries() -- reverse of Object.entries()
const map = new Map([['a', 1], ['b', 2]]);
Object.fromEntries(map); // { a: 1, b: 2 }

Async Iteration for Readable Streams

Node.js 11 adds for await...of support for readable streams. This lets you consume streaming data with clean async iteration instead of event listeners.

import { createReadStream } from 'node:fs';

const stream = createReadStream('./large.csv', { encoding: 'utf8' });
for await (const chunk of stream) {
  processChunk(chunk);
}

Backpressure is still handled automatically. This is a more readable pattern for sequential stream processing.

Full ICU by Default

Node.js 11 bundles full ICU data on all platforms by default. Prior to this, the default build only included a small subset of locales. Full ICU means Intl APIs (date formatting, number formatting, collation) work correctly for all locales without building a custom Node.js binary.

FAQ

Is Node.js 11 an LTS release?
No. Node.js 11 is a Current release that reached end-of-life in June 2019. The concurrent LTS was Node.js 10.

Do for await...of loops on streams handle errors?
Yes, but you need a try/catch around the loop. If the stream emits an error, the for await loop throws, which you catch normally.

Is Object.fromEntries() available in TypeScript targeting Node.js 11?
Set "lib": ["ES2019"] or later in tsconfig.json and TypeScript will include the type definition for Object.fromEntries().

What happened to unhandled rejections in Node.js 11?
The default mode changed to output a deprecation warning and exit with code 1, signaling that future versions would make this a hard crash. Node.js 15 completes that transition.

Does full ICU significantly increase the Node.js binary size?
Yes, by roughly 20-25 MB. If binary size is critical (embedded systems, containers), you can build Node.js with --with-intl=small-icu to restore the smaller footprint.

Releases In Branch 11.x

VersionRelease datenpm version
11.15.030 Apr 2019
(7 years ago)
6.7.0
11.14.010 Apr 2019
(7 years ago)
6.7.0
11.13.028 Mar 2019
(7 years ago)
6.7.0
11.12.014 Mar 2019
(7 years ago)
6.7.0
11.11.005 Mar 2019
(7 years ago)
6.7.0
11.10.128 Feb 2019
(7 years ago)
6.7.0
11.10.014 Feb 2019
(7 years ago)
6.7.0
11.9.030 Jan 2019
(7 years ago)
6.5.0
11.8.024 Jan 2019
(7 years ago)
6.5.0
11.7.017 Jan 2019
(7 years ago)
6.5.0
11.6.026 Dec 2018
(7 years ago)
6.5.0-next.0
11.5.018 Dec 2018
(7 years ago)
6.4.1
11.4.007 Dec 2018
(7 years ago)
6.4.1
11.3.027 Nov 2018
(7 years ago)
6.4.1
11.2.015 Nov 2018
(7 years ago)
6.4.1
11.1.030 Oct 2018
(7 years ago)
6.4.1
11.0.023 Oct 2018
(7 years ago)
6.4.1