npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

try-node-8

v1.0.2

Published

Node 8.0.0 on RunKit

Downloads

8

Readme

The node 8.0.0 release blog post, originally found on the Node.js website, re-posted here for convenience:

The next major release of Node.js brings a range of significant changes and additions, far too many for us to cover adequately in a blog post such as this. This article contains a summary of the most significant changes and features.

Say hello to npm version 5.0.0

npm, Inc. recently announced the release of version 5.0.0 of the npm client and we are happy to include this significant new version within Node.js 8.0.0.

Say hello to V8 5.8

Node.js 8.0.0 ships with V8 5.8, a significant update to the JavaScript runtime that includes major improvements in performance and developer facing APIs. Most significant for Node.js developers is the fact that V8 5.8 is guaranteed to have forwards ABI compatibility with V8 5.9 and the upcoming V8 6.0, which will help to ensure stability of the Node.js native addon ecosystem. During Node.js 8's lifetime, we plan to move to 5.9 and possibly even 6.0.

The V8 5.8 engine also helps set up a pending transition to the new TurboFan + Ignition compiler pipeline, which promises to provide significant new performance optimizations for all Node.js applications. Although they have existed in previous versions of V8, TurboFan and Ignition will be enabled by default for the first time in V8 5.9. The new compiler pipeline represents such a significant change that the Node.js Core Technical Committee (CTC) chose to postpone the Node.js 8 release, originally scheduled for April, in order to better accommodate it.

Say hello to the Node.js API (N-API)

For Node.js developers who use or create native addons, the new experimental Node.js API (N-API) is a significant advancement over the existing Native Abstractions for Node.js (nan) that will allow native addons to be compiled once on a system and used across multiple versions of Node.js.

By providing a new virtual machine agnostic Application Binary Interface (ABI), it becomes possible for native addons to work not only against multiple versions of the V8 JavaScript runtime, but Microsoft's Chakra-Core runtime as well.

The N-API is experimental in Node.js 8.0.0, so significant changes in the implementation and API should be expected. Native addon developers are encouraged to begin working with the API as soon as possible and to provide feedback that will be necessary to ensure that the new API meets the needs of the ecosystem.

Say hello to async_hooks

The experimental async_hooks module (formerly async_wrap) has received a major upgrade in 8.0.0. This diagnostics API allows developers a means of monitoring the operation of the Node.js event loop, tracking asynchronous requests and handles through their complete lifecycle. Complete documentation for the new module is still incomplete and users should take great care when using the experimental new module.

Say hello to the WHATWG URL parser

An experimental URL API implemented around the WHATWG URL Standard was added to Node.js 7.x last year and has been under active development ever since. We are excited to announce that as of 8.0.0, the new URL implementation is now a fully supported, non-experimental API within Node.js. An example usage is shown below, with more details available in the official documentation.

const URL = require('url').URL;

const myUrl = new URL('/a/path', 'https://example.org/');

This new URL implementation is most significant in that it matches the URL implementation and API available in modern Web Browsers like Chrome, Firefox, Edge, and Safari, allowing code using URLs to be shared across environments.

Buffer changes

A number of important changes have been made to the Buffer API within Node.js. Most significant is the fact that calling the deprecated Buffer(num) constructor (with or without the new keyword) will return a zero-filled Buffer instance. Prior versions of Node.js would return uninitialized memory, which could contain potentially sensitive data.

In Node.js 6.0.0, a new set of Buffer construction methods were introduced as an alternative to calling the Buffer(num) constructor in order to address a number of security and usability concerns. The existing constructor, however, is used extensively throughout the Node.js ecosystem, making it infeasible for us to fully deprecate or disable it without causing significant breakage.

Zero-filling new instances of Buffer(num) by default will have a significant impact on performance. Developers should move to the new Buffer.allocUnsafe(num) API if they wish to allocate Buffer instances with uninitialized memory. Examples of zero-filled and uninitialized Buffer creation in Node.js 8 are shown below.

// Zero-filled Buffers
const safeBuffer1 = Buffer.alloc(10);
const safeBuffer2 = new Buffer(10);

// Uninitialized Buffer
const unsafeBuffer = Buffer.allocUnsafe(10);

Note that while there are no current plans to remove the Buffer(num) constructor from Node.js, its continued use is deprecated.

Pending Deprecations

To make it easier to catch uses of Buffer(num) within an application at development time or within CI testing environments, a new --pending-deprecation command-line flag and matching NODE_PENDING_DEPRECATION=1 environment variable have been added that will cause Node.js to emit DeprecationWarning process warnings when Buffer(num) (and other potential pending deprecations) are used. These are off by default in order to keep such deprecations from impacting production applications. An example which enables pending deprecations is shown below.

$ ./node --pending-deprecation
> Buffer(num)
<Buffer 00>
> (node:2896) [DEP0005] DeprecationWarning: The Buffer() and new Buffer() constructors are not recommended for use due to security and usability concerns. Please use the new Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() construction methods instead.

Improved support for Promises

Node.js 8.0.0 includes a new util.promisify() API that allows standard Node.js callback style APIs to be wrapped in a function that returns a Promise. An example use of util.promisify() is shown below.

const fs = require('fs');
const util = require('util');

const readfile = util.promisify(fs.readFile);

readfile('/some/file')
  .then((data) => { /** ... **/ })
  .catch((err) => { /** ... **/ });

Console changes

console.log(), console.error() and other methods available through the console module in Node.js allow application output to be directed either to stdout, stderr or pipes. Previously, errors that occurred while attempting to write console output to the underlying stream would cause the Node.js application to crash. Starting with 8.0.0 such errors will be silently ignored, making use of console.log() and the other APIs safer. It will be possible to maintain legacy behavior related to errors via an ignoreErrors option passed to the Console constructor.

Static Error Codes

We have started the process of assigning static error codes to all errors generated by Node.js. While it will take some time for every error to be assigned a code, a handful have been updated within 8.0.0. These error codes are guaranteed not to change even if the error type or message changes.

Codes are manifest to the user in two ways:

  • Using the code property on Error object instances
  • Printing the [ERR_CODE] in the stack trace of an Error

For instance, calling assert(false) will generate the following AssertionError:

> assert(false)
AssertionError [ERR_ASSERTION]: false == true
    at repl:1:1
    at ContextifyScript.Script.runInThisContext (vm.js:44:33)
    at REPLServer.defaultEval (repl.js:239:29)
    at bound (domain.js:301:14)
    at REPLServer.runBound [as eval] (domain.js:314:12)
    at REPLServer.onLine (repl.js:433:10)
    at emitOne (events.js:120:20)
    at REPLServer.emit (events.js:210:7)
    at REPLServer.Interface._onLine (readline.js:278:10)
    at REPLServer.Interface._line (readline.js:625:8)

Information for static error codes can be queried quickly by referencing the Node.js documentation. For instance, the URL to lookup information about the ERR_ARG_NOT_ITERABLE error code is https://nodejs.org/dist/latest-v8.x/docs/api/errors.html#ERR_ARG_NOT_ITERABLE.

Redirecting Process Warnings

Processing warnings such as deprecations may now be redirected to a file by using either the --redirect-warnings={file} command line argument or matching NODE_REDIRECT_WARNINGS={file} environment variable. Rather than printing warnings out to stderr by default, warnings will be written out to the specified file, allowing those to be analyzed separately from an application's primary output.

Stream API improvements

For users of the Stream API, new standard mechanisms for destroying and finalizing Stream instances have been added. Every Stream instance will now inherit a destroy() method, the implementation of which can be customized and extended by providing a custom implementation of the _destroy() method.

Debugger changes

The legacy command line debugger is being removed in Node.js 8. As a command line replacement, node-inspect has been integrated directly into the Node.js runtime. Additionally, the V8 Inspector debugger, which arrived previously as an experimental feature in Node.js 6, is being upgraded to a fully supported feature.

Experimental inspector JavaScript API

A new experimental JavaScript API for the Inspector protocol has been introduced enabling developers new ways of leveraging the debug protocol to inspect running Node.js processes.

const inspector = require('inspector');

const session = new inspector.Session();
session.connect();

// Listen for inspector events
session.on('inspectorNotification', (message) => { /** ... **/ });

// Send messages to the inspector
session.post(message);

session.disconnect();

Note that the inspector API is experimental and may change significantly.

Long Term Support

Node.js 8 is the next release line to enter Long Term Support (LTS). This is scheduled to happen in October 2017. Once Node.js 8 transitions to LTS, it will receive the code name Carbon.

Node.js Long Term Support Schedule

Note that, when referring to Node.js release versions, we have dropped the "v" in Node.js 8. Previous versions were commonly referred to as v0.10, v0.12, v4, v6, etc. In order to avoid confusion with V8, the underlying JavaScript engine, we've dropped the "v" and call it Node.js 8.

Notable Changes

  • Async Hooks

  • Buffer

    • Using the --pending-deprecation flag will cause Node.js to emit a deprecation warning when using new Buffer(num) or Buffer(num). [d2d32ea5a2] #11968.
    • new Buffer(num) and Buffer(num) will zero-fill new Buffer instances [7eb1b4658e] #12141.
    • Many Buffer methods now accept Uint8Array as input [beca3244e2] #10236.
  • Child Process

  • Console

    • Error events emitted when using console methods are now supressed. [f18e08d820] #9744.
  • Dependencies

  • Domains

  • Errors

    • We have started assigning static error codes to errors generated by Node.js. This has been done through multiple commits and is still a work in progress.
  • File System

    • The utility class fs.SyncWriteStream has been deprecated [7a55e34ef4] #10467.
    • The deprecated fs.read() string interface has been removed [3c2a9361ff] #9683.
  • HTTP

    • Improved support for userland implemented Agents [90403dd1d0] #11567.
    • Outgoing Cookie headers are concatenated into a single string [d3480776c7] #11259.
    • The httpResponse.writeHeader() method has been deprecated [fb71ba4921] #11355.
    • New methods for accessing HTTP headers have been added to OutgoingMessage [3e6f1032a4] #10805.
  • Lib

  • N-API

  • Process

    • Process warning output can be redirected to a file using the --redirect-warnings command-line argument [03e89b3ff2] #10116.
    • Process warnings may now include additional detail [dd20e68b0f] #12725.
  • REPL

  • Src

    • NODE_MODULE_VERSION has been updated to 57 [ec7cbaf266] #12995.
    • Add --pending-deprecation command-line argument and NODE_PENDING_DEPRECATION environment variable [a16b570f8c] #11968.
    • The --debug command-line argument has been deprecated. Note that using --debug will enable the new Inspector-based debug protocol as the legacy Debugger protocol previously used by Node.js has been removed. [010f864426] #12949.
    • Throw when the -c and -e command-line arguments are used at the same time [a5f91ab230] #11689.
    • Throw when the --use-bundled-ca and --use-openssl-ca command-line arguments are used at the same time. [8a7db9d4b5] #12087.
  • Stream

  • TLS

    • The rejectUnauthorized option now defaults to true [348cc80a3c] #5923.
    • The tls.createSecurePair() API now emits a runtime deprecation [a2ae08999b] #11349.
    • A runtime deprecation will now be emitted when dhparam is less than 2048 bits [d523eb9c40] #11447.
  • URL

    • The WHATWG URL implementation is now a fully-supported Node.js API [d080ead0f9] #12710.
  • Util

  • Zlib

Commits

Semver-Major Commits

  • [e48d58b8b2] - (SEMVER-MAJOR) assert: fix AssertionError, assign error code (James M Snell) #12651
  • [758b8b6e5d] - (SEMVER-MAJOR) assert: improve assert.fail() API (Rich Trott) #12293
  • [6481c93aef] - (SEMVER-MAJOR) assert: add support for Map and Set in deepEqual (Joseph Gentle) #12142
  • [efec14a7d1] - (SEMVER-MAJOR) assert: enforce type check in deepStrictEqual (Joyee Cheung) #10282
  • [562cf5a81c] - (SEMVER-MAJOR) assert: fix premature deep strict comparison (Joyee Cheung) #11128
  • [0af41834f1] - (SEMVER-MAJOR) assert: fix misformatted error message (Rich Trott) #11254
  • [190dc69c89] - (SEMVER-MAJOR) benchmark: add parameter for module benchmark (Brian White) #10789
  • [b888bfe81d] - (SEMVER-MAJOR) benchmark: allow zero when parsing http req/s (Brian White) #10558
  • [f53a6fb48b] - (SEMVER-MAJOR) benchmark: add http header setting scenarios (Brian White) #10558
  • [d2d32ea5a2] - (SEMVER-MAJOR) buffer: add pending deprecation warning (James M Snell) #11968
  • [7eb1b4658e] - (SEMVER-MAJOR) buffer: zero fill Buffer(num) by default (James M Snell) #12141
  • [682573c11d] - (SEMVER-MAJOR) buffer: remove error for malformatted hex string (Rich Trott) #12012
  • [9a0829d728] - (SEMVER-MAJOR) buffer: stricter argument checking in toString (Nikolai Vavilov) #11120
  • [beca3244e2] - (SEMVER-MAJOR) buffer: allow Uint8Array input to methods (Anna Henningsen) #10236
  • [3d353c749c] - (SEMVER-MAJOR) buffer: consistent error for length > kMaxLength (Joyee Cheung) #10152
  • [bf5c309b5e] - (SEMVER-MAJOR) build: fix V8 build on FreeBSD (Michaël Zasso) #12784
  • [a1028d5e3e] - (SEMVER-MAJOR) build: remove cares headers from tarball (Gibson Fahnestock) #10283
  • [d08836003c] - (SEMVER-MAJOR) build: build an x64 build by default on Windows (Nikolai Vavilov) #11537
  • [92ed1ab450] - (SEMVER-MAJOR) build: change nosign flag to sign and flips logic (Joe Doyle) #10156
  • [97a77288ce] - (SEMVER-MAJOR) child_process: improve ChildProcess validation (cjihrig) #12348
  • [a9111f9738] - (SEMVER-MAJOR) child_process: minor cleanup of internals (cjihrig) #12348
  • [d75fdd96aa] - (SEMVER-MAJOR) child_process: improve killSignal validations (Sakthipriyan Vairamani (thefourtheye)) #10423
  • [4cafa60c99] - (SEMVER-MAJOR) child_process: align fork/spawn stdio error msg (Sam Roberts) #11044
  • [3268863ebc] - (SEMVER-MAJOR) child_process: add string shortcut for fork stdio (Javis Sullivan) #10866
  • [8f3ff98f0e] - (SEMVER-MAJOR) child_process: allow Infinity as maxBuffer value (cjihrig) #10769
  • [627ecee9ed] - (SEMVER-MAJOR) child_process: support Uint8Array input to methods (Anna Henningsen) #10653
  • [fc7b0dda85] - (SEMVER-MAJOR) child_process: improve input validation (cjihrig) #8312
  • [49d1c366d8] - (SEMVER-MAJOR) child_process: remove extra newline in errors (cjihrig) #9343
  • [f18e08d820] - (SEMVER-MAJOR) console: do not emit error events (Anna Henningsen) #9744
  • [a8f460f12d] - (SEMVER-MAJOR) crypto: support all ArrayBufferView types (Timothy Gu) #12223
  • [0db49fef41] - (SEMVER-MAJOR) crypto: support Uint8Array prime in createDH (Anna Henningsen) #11983
  • [443691a5ae] - (SEMVER-MAJOR) crypto: fix default encoding of LazyTransform (Lukas Möller) #8611
  • [9f74184e98] - (SEMVER-MAJOR) crypto: upgrade pbkdf2 without digest to an error (James M Snell) #11305
  • [e90f38270c] - (SEMVER-MAJOR) crypto: throw error in CipherBase::SetAutoPadding (Kirill Fomichev) #9405
  • [1ef401ce92] - (SEMVER-MAJOR) crypto: use check macros in CipherBase::SetAuthTag (Kirill Fomichev) #9395
  • [7599b0ef9d] - (SEMVER-MAJOR) debug: activate inspector with _debugProcess (Eugene Ostroukhov) #11431
  • [549e81bfa1] - (SEMVER-MAJOR) debugger: remove obsolete _debug_agent.js (Rich Trott) #12582
  • [3c3b36af0f] - (SEMVER-MAJOR) deps: upgrade npm beta to 5.0.0-beta.56 (Kat Marchán) #12936
  • [6690415696] - (SEMVER-MAJOR) deps: cherry-pick a927f81c7 from V8 upstream (Anna Henningsen) #11752
  • [60d1aac8d2] - (SEMVER-MAJOR) deps: update V8 to 5.8.283.38 (Michaël Zasso) #12784
  • [b7608ac707] - (SEMVER-MAJOR) deps: cherry-pick node-inspect#43 (Ali Ijaz Sheikh) #11441
  • [9c9e2d7f4a] - (SEMVER-MAJOR) deps: backport 3297130 from upstream V8 (Michaël Zasso) #11752
  • [07088e6fc1] - (SEMVER-MAJOR) deps: backport 39642fa from upstream V8 (Michaël Zasso) #11752
  • [8394b05e20] - (SEMVER-MAJOR) deps: cherry-pick c5c570f from upstream V8 (Michaël Zasso) #11752
  • [fcc58bf0da] - (SEMVER-MAJOR) deps: cherry-pick a927f81c7 from V8 upstream (Anna Henningsen) #11752
  • [83bf2975ec] - (SEMVER-MAJOR) deps: cherry-pick V8 ValueSerializer changes (Anna Henningsen) #11752
  • [c459d8ea5d] - (SEMVER-MAJOR) deps: update V8 to 5.7.492.69 (Michaël Zasso) #11752
  • [7c0c7baff3] - (SEMVER-MAJOR) deps: fix gyp configuration for v8-inspector (Michaël Zasso) #10992
  • [00a2aa0af5] - (SEMVER-MAJOR) deps: fix gyp build configuration for Windows (Michaël Zasso) #10992
  • [b30ec59855] - (SEMVER-MAJOR) deps: switch to v8_inspector in V8 (Ali Ijaz Sheikh) #10992
  • [7a77daf243] - (SEMVER-MAJOR) deps: update V8 to 5.6.326.55 (Michaël Zasso) #10992
  • [c9e5178f3c] - (SEMVER-MAJOR) deps: hide zlib internal symbols (Sam Roberts) #11082
  • [2739185b79] - (SEMVER-MAJOR) deps: update V8 to 5.5.372.40 (Michaël Zasso) #9618
  • [f2e3a670af] - (SEMVER-MAJOR) dgram: convert to using internal/errors (Michael Dawson) #12926
  • [2dc1053b0a] - (SEMVER-MAJOR) dgram: support Uint8Array input to send() (Anna Henningsen) #11985
  • [32679c73c1] - (SEMVER-MAJOR) dgram: improve signature of Socket.prototype.send (Christopher Hiller) #10473
  • [5587ff1ccd] - (SEMVER-MAJOR) dns: handle implicit bind DNS errors (cjihrig) #11036
  • [eb535c5154] - (SEMVER-MAJOR) doc: deprecate vm.runInDebugContext (Josh Gavant) #12243
  • [75c471a026] - (SEMVER-MAJOR) doc: drop PPC BE from supported platforms (Michael Dawson) #12309
  • [86996c5838] - (SEMVER-MAJOR) doc: deprecate private http properties (Brian White) #10941
  • [3d8379ae60] - (SEMVER-MAJOR) doc: improve assert.md regarding ECMAScript terms (Joyee Cheung) #11128
  • [d708700c68] - (SEMVER-MAJOR) doc: deprecate buffer's parent property (Sakthipriyan Vairamani (thefourtheye)) #8332
  • [03d440e3ce] - (SEMVER-MAJOR) doc: document buffer.buffer property (Sakthipriyan Vairamani (thefourtheye)) #8332
  • [f0b702555a] - (SEMVER-MAJOR) errors: use lazy assert to avoid issues on startup (James M Snell) #11300
  • [251e5ed8ee] - (SEMVER-MAJOR) errors: assign error code to bootstrap_node created error (James M Snell) #11298
  • [e75bc87d22] - (SEMVER-MAJOR) errors: port internal/process errors to internal/errors (James M Snell) #11294
  • [76327613af] - (SEMVER-MAJOR) errors, child_process: migrate to using internal/errors (James M Snell) #11300
  • [1c834e78ff] - (SEMVER-MAJOR) errors,test: migrating error to internal/errors (larissayvette) #11505
  • [2141d37452] - (SEMVER-MAJOR) events: update and clarify error message (Chris Burkhart) #10387
  • [221b03ad20] - (SEMVER-MAJOR) events, doc: check input in defaultMaxListeners (DavidCai) #11938
  • [eed87b1637] - (SEMVER-MAJOR) fs: (+/-)Infinity and NaN invalid unixtimestamp (Luca Maraschi) #11919
  • [71097744b2] - (SEMVER-MAJOR) fs: more realpath*() optimizations (Brian White) #11665
  • [6a5ab5d550] - (SEMVER-MAJOR) fs: include more fs.stat*() optimizations (Brian White) #11665
  • [1c3df96570] - (SEMVER-MAJOR) fs: replace regexp with function (Brian White) #10789
  • [34c9fc2e4e] - (SEMVER-MAJOR) fs: avoid multiple conversions to string (Brian White) #10789
  • [21b2440176] - (SEMVER-MAJOR) fs: avoid recompilation of closure (Brian White) #10789
  • [7a55e34ef4] - (SEMVER-MAJOR) fs: runtime deprecation for fs.SyncWriteStream (James M Snell) #10467
  • [b1fc7745f2] - (SEMVER-MAJOR) fs: avoid emitting error EBADF for double close (Matteo Collina) #11225
  • [3c2a9361ff] - (SEMVER-MAJOR) fs: remove fs.read's string interface (Nikolai Vavilov) #9683
  • [f3cf8e9808] - (SEMVER-MAJOR) fs: do not pass Buffer when toString() fails (Brian White) #9670
  • [85a4e25775] - (SEMVER-MAJOR) http: add type checking for hostname (James M Snell) #12494
  • [90403dd1d0] - (SEMVER-MAJOR) http: should support userland Agent (fengmk2) #11567
  • [d3480776c7] - (SEMVER-MAJOR) http: concatenate outgoing Cookie headers (Brian White) #11259
  • [6b2cef65c9] - (SEMVER-MAJOR) http: append Cookie header values with semicolon (Brian White) #11259
  • [8243ca0e0e] - (SEMVER-MAJOR) http: reuse existing StorageObject (Brian White) #10941
  • [b377034359] - (SEMVER-MAJOR) http: support old private properties and function (Brian White) #10941
  • [940b5303be] - (SEMVER-MAJOR) http: use Symbol for outgoing headers (Brian White) #10941
  • [fb71ba4921] - (SEMVER-MAJOR) http: docs-only deprecation of res.writeHeader() (James M Snell) #11355
  • [a4bb9fdb89] - (SEMVER-MAJOR) http: include provided status code in range error (cjihrig) #11221
  • [fc7025c9c0] - (SEMVER-MAJOR) http: throw an error for unexpected agent values (brad-decker) #10053
  • [176cdc2823] - (SEMVER-MAJOR) http: misc optimizations and style fixes (Brian White) #10558
  • [73d9445782] - (SEMVER-MAJOR) http: try to avoid lowercasing incoming headers (Brian White) #10558
  • [c77ed327d9] - (SEMVER-MAJOR) http: avoid using object for removed header status (Brian White) #10558
  • [c00e4adbb4] - (SEMVER-MAJOR) http: optimize header storage and matching (Brian White) #10558
  • [ec8910bcea] - (SEMVER-MAJOR) http: check statusCode early (Brian White) #10558
  • [a73ab9de0d] - (SEMVER-MAJOR) http: remove pointless use of arguments (cjihrig) #10664
  • [df3978421b] - (SEMVER-MAJOR) http: verify client method is a string (Luca Maraschi) #10111
  • [90476ac6ee] - (SEMVER-MAJOR) lib: remove _debugger.js (Ben Noordhuis) #12495
  • [3209a8ebf3] - (SEMVER-MAJOR) lib: ensure --check flag works for piped-in code (Teddy Katz) #11689
  • [c67207731f] - (SEMVER-MAJOR) lib: simplify Module._resolveLookupPaths (Brian White) #10789
  • [28dc848e70] - (SEMVER-MAJOR) lib: improve method of function calling (Brian White) #10789
  • [a851b868c0] - (SEMVER-MAJOR) lib: remove sources of permanent deopts (Brian White) #10789
  • [62e96096fa] - (SEMVER-MAJOR) lib: more consistent use of module.exports = {} model (James M Snell) #11406
  • [88c3f57cc3] - (SEMVER-MAJOR) lib: refactor internal/socket_list (James M Snell) #11406
  • [f04387e9f2] - (SEMVER-MAJOR) lib: refactor internal/freelist (James M Snell) #11406
  • [d61a511728] - (SEMVER-MAJOR) lib: refactor internal/linkedlist (James M Snell) #11406
  • [2ba4eeadbb] - (SEMVER-MAJOR) lib: remove simd support from util.format() (Ben Noordhuis) #11346
  • [dfdd911e17] - (SEMVER-MAJOR) lib: deprecate node --debug at runtime (Josh Gavant) #10970
  • [5de3cf099c] - (SEMVER-MAJOR) lib: add static identifier codes for all deprecations (James M Snell) #10116
  • [4775942957] - (SEMVER-MAJOR) lib, test: fix server.listen error message (Joyee Cheung) #11693
  • [caf9ae748b] - (SEMVER-MAJOR) lib,src: make constants not inherit from Object (Sakthipriyan Vairamani (thefourtheye)) #10458
  • [e0b076a949] - (SEMVER-MAJOR) lib,src,test: update --debug/debug-brk comments (Ben Noordhuis) #12495
  • [b40dab553f] - (SEMVER-MAJOR) linkedlist: remove unused methods (Brian White) #11726
  • [84a23391f6] - (SEMVER-MAJOR) linkedlist: remove public module (Brian White) #12113
  • [e32425bfcd] - (SEMVER-MAJOR) module: avoid JSON.stringify() for cache key (Brian White) #10789
  • [403b89e72b] - (SEMVER-MAJOR) module: avoid hasOwnProperty() (Brian White) #10789
  • [298a40e04e] - (SEMVER-MAJOR) module: use "clean" objects (Brian White) #10789
  • [cf980b0311] - (SEMVER-MAJOR) net: check and throw on error for getsockname (Daniel Bevenius) #12871
  • [473572ea25] - (SEMVER-MAJOR) os: refactor os structure, add Symbol.toPrimitive (James M Snell) #12654
  • [03e89b3ff2] - (SEMVER-MAJOR) process: add --redirect-warnings command line argument (James M Snell) #10116
  • [5e1f32fd94] - (SEMVER-MAJOR) process: add optional code to warnings + type checking (James M Snell) #10116
  • [a647d82f83] - (SEMVER-MAJOR) process: improve process.hrtime (Joyee Cheung) #10764
  • [4e259b21a3] - (SEMVER-MAJOR) querystring, url: handle repeated sep in search (Daijiro Wachi) #10967
  • [39d9afe279] - (SEMVER-MAJOR) repl: refactor LineParser implementation (Blake Embrey) #6171
  • [3f27f02da0] - (SEMVER-MAJOR) repl: docs-only deprecation of magic mode (Timothy Gu) #11599
  • [b77c89022b] - (SEMVER-MAJOR) repl: remove magic mode semantics (Timothy Gu) #11599
  • [007386ee81] - (SEMVER-MAJOR) repl: remove workaround for function redefinition (Michaël Zasso) #9618
  • [5b63fabfd8] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 55 (Michaël Zasso) #12784
  • [a16b570f8c] - (SEMVER-MAJOR) src: add --pending-deprecation and NODE_PENDING_DEPRECATION (James M Snell) #11968
  • [faa447b256] - (SEMVER-MAJOR) src: allow ArrayBufferView as instance of Buffer (Timothy Gu) #12223
  • [47f8f7462f] - (SEMVER-MAJOR) src: remove support for --debug (Jan Krems) #12197
  • [a5f91ab230] - (SEMVER-MAJOR) src: throw when -c and -e are used simultaneously (Teddy Katz) #11689
  • [8a7db9d4b5] - (SEMVER-MAJOR) src: add --use-bundled-ca --use-openssl-ca check (Daniel Bevenius) #12087
  • [ed12ea371c] - (SEMVER-MAJOR) src: update inspector code to match upstream API (Michaël Zasso) #11752
  • [89d8dc9afd] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 54 (Michaël Zasso) #11752
  • [1125c8a814] - (SEMVER-MAJOR) src: fix typos in node_lttng_provider.h (Benjamin Fleischer) #11723
  • [aae8f683b4] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 53 (Michaël Zasso) #10992
  • [91ab09fe2a] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 52 (Michaël Zasso) #9618
  • [334be0feba] - (SEMVER-MAJOR) src: fix space for module version mismatch error (Yann Pringault) #10606
  • [45c9ca7fd4] - (SEMVER-MAJOR) src: remove redundant spawn/spawnSync type checks (cjihrig) #8312
  • [b374ee8c3d] - (SEMVER-MAJOR) src: add handle check to spawn_sync (cjihrig) #8312
  • [3295a7feba] - (SEMVER-MAJOR) src: allow getting Symbols on process.env (Anna Henningsen) #9631
  • [1aa595e5bd] - (SEMVER-MAJOR) src: throw on process.env symbol usage (cjihrig) #9446
  • [a235ccd168] - (SEMVER-MAJOR) src,test: debug is now an alias for inspect (Ali Ijaz Sheikh) #11441
  • [b6e1d22fa6] - (SEMVER-MAJOR) stream: add destroy and _destroy methods. (Matteo Collina) #12925
  • [f36c970cf3] - (SEMVER-MAJOR) stream: improve multiple callback error message (cjihrig) #12520
  • [202b07f414] - (SEMVER-MAJOR) stream: fix comment for sync flag of ReadableState (Wang Xinyong) #11139
  • [1004b9b4ad] - (SEMVER-MAJOR) stream: remove unused ranOut from ReadableState (Wang Xinyong) #11139
  • [03b9f6fe26] - (SEMVER-MAJOR) stream: avoid instanceof (Brian White) #10558
  • [a3539ae3be] - (SEMVER-MAJOR) stream: use plain objects for write/corked reqs (Brian White) #10558
  • [24ef1e6775] - (SEMVER-MAJOR) string_decoder: align UTF-8 handling with V8 (Brian White) #9618
  • [23fc082409] - (SEMVER-MAJOR) test: remove extra console output from test-os.js (James M Snell) #12654
  • [59c6230861] - (SEMVER-MAJOR) test: cleanup test-child-process-constructor.js (cjihrig) #12348
  • [06c29a66d4] - (SEMVER-MAJOR) test: remove common.fail() (Rich Trott) #12293
  • [0c539faac3] - (SEMVER-MAJOR) test: add common.getArrayBufferViews(buf) (Timothy Gu) #12223
  • [c5d1851ac4] - (SEMVER-MAJOR) test: drop v5.x-specific code path from simd test (Ben Noordhuis) #11346
  • [c2c6ae52ea] - (SEMVER-MAJOR) test: move test-vm-function-redefinition to parallel (Franziska Hinkelmann) #9618
  • [5b30c4f24d] - (SEMVER-MAJOR) test: refactor test-child-process-spawnsync-maxbuf (cjihrig) #10769
  • [348cc80a3c] - (SEMVER-MAJOR) tls: make rejectUnauthorized default to true (ghaiklor) #5923
  • [a2ae08999b] - (SEMVER-MAJOR) tls: runtime deprecation for tls.createSecurePair() (James M Snell) #11349
  • [d523eb9c40] - (SEMVER-MAJOR) tls: use emitWarning() for dhparam < 2048 bits (James M Snell) #11447
  • [e03a929648] - (SEMVER-MAJOR) tools: update test-npm.sh paths (Kat Marchán) #12936
  • [6f202ef857] - (SEMVER-MAJOR) tools: remove assert.fail() lint rule (Rich Trott) #12293
  • [615789b723] - (SEMVER-MAJOR) tools: enable ES2017 syntax support in ESLint (Michaël Zasso) #11210
  • [1b63fa1096] - (SEMVER-MAJOR) tty: remove NODE_TTY_UNSAFE_ASYNC (Jeremiah Senkpiel) #12057
  • [78182458e6] - (SEMVER-MAJOR) url: fix error message of url.format (DavidCai) #11162
  • [c65d55f087] - (SEMVER-MAJOR) url: do not truncate long hostnames (Junshu Okamoto) #9292
  • [3cc3e099be] - (SEMVER-MAJOR) util: show External values explicitly in inspect (Anna Henningsen) #12151
  • [4a5a9445b5] - (SEMVER-MAJOR) util: use \[Array\] for deeply nested arrays (Anna Henningsen) #12046
  • [5bfd13b81e] - (SEMVER-MAJOR) util: display Symbol keys in inspect by default (Shahar Or) #9726
  • [455e6f1dd8] - (SEMVER-MAJOR) util: throw toJSON errors when formatting %j (Timothy Gu) #11708
  • [ec2f098156] - (SEMVER-MAJOR) util: change sparse arrays inspection format (Alexey Orlenko) #11576
  • [aab0d202f8] - (SEMVER-MAJOR) util: convert inspect.styles and inspect.colors to prototype-less objects (Nemanja Stojanovic) #11624
  • [4151ab398b] - (SEMVER-MAJOR) util: add createClassWrapper to internal/util (James M Snell) #11391
  • [f65aa08b52] - (SEMVER-MAJOR) util: improve inspect for (Async|Generator)Function (Michaël Zasso) #11210
  • [efae43f0ee] - (SEMVER-MAJOR) zlib: fix node crashing on invalid options (Alexey Orlenko) #13098
  • [2ced07ccaf] - (SEMVER-MAJOR) zlib: support all ArrayBufferView types (Timothy Gu) #12223
  • [91383e47fd] - (SEMVER-MAJOR) zlib: support Uint8Array in convenience methods (Timothy Gu) #12001
  • [b514bd231e] - (SEMVER-MAJOR) zlib: use RangeError/TypeError consistently (James M Snell) #11391
  • [8e69f7e385] - (SEMVER-MAJOR) zlib: refactor zlib module (James M Snell) #11391
  • [dd928b04fc] - (SEMVER-MAJOR) zlib: be strict about what strategies are accepted (Rich Trott) #10934

Semver-minor Commits

  • [7e3a3c962f] - (SEMVER-MINOR) async_hooks: initial async_hooks implementation (Trevor Norris) #12892
  • [60a2fe7d47] - (SEMVER-MINOR) async_hooks: implement C++ embedder API (Anna Henningsen) #13142
  • [f1ed19d98f] - (SEMVER-MINOR) async_wrap: use more specific providers (Trevor Norris) #12892
  • [0432c6e91e] - (SEMVER-MINOR) async_wrap: use double, not int64_t, for async id (Trevor Norris) #12892
  • [fe2df3b842] - (SEMVER-MINOR) async_wrap,src: add GetAsyncId() method (Trevor Norris) #12892
  • [6d93508369] - (SEMVER-MINOR) buffer: expose FastBuffer on internal/buffer (Anna Henningsen) #11048
  • [fe5ca3ff27] - (SEMVER-MINOR) child_process: support promisified exec(File) (Anna Henningsen) #12442
  • [f146fe4ed4] - (SEMVER-MINOR) cmd: support dash as stdin alias (Ebrahim Byagowi) #13012
  • [d9f3ec8e09] - (SEMVER-MINOR) crypto: use named FunctionTemplate (Trevor Norris) #12892
  • [0e710aada4] - (SEMVER-MINOR) crypto: add sign/verify support for RSASSA-PSS (Tobias Nießen) #11705
  • [faf6654ff7] - (SEMVER-MINOR) dns: support promisified lookup(Service) (Anna Henningsen) #12442
  • [5077cde71f] - (SEMVER-MINOR) doc: restructure url.md (James M Snell) #12710
  • [d080ead0f9] - (SEMVER-MINOR) doc: graduate WHATWG URL from Experimental (James M Snell) #12710
  • [c505b8109e] - (SEMVER-MINOR) doc: document URLSearchParams constructor (Timothy Gu) #11060
  • [84dabe8373] - (SEMVER-MINOR) domain: support promises (Anna Henningsen) #12489
  • [fbcb4f50b8] - (SEMVER-MINOR) fs: support util.promisify for fs.read/fs.write (Anna Henningsen) #12442
  • [a7f5c9cb7d] - (SEMVER-MINOR) http: destroy sockets after keepAliveTimeout (Timur Shemsedinov) #2534
  • [3e6f1032a4] - (SEMVER-MINOR) http: add new functions to OutgoingMessage (Brian White) #10805
  • [c7182b9d9c] - (SEMVER-MINOR) inspector: JavaScript bindings for the inspector (Eugene Ostroukhov) #12263
  • [4a7233c178] - (SEMVER-MINOR) lib: implement async_hooks API in core (Trevor Norris) #12892
  • [c68ebe8436] - (SEMVER-MINOR) makefile: add async-hooks to test and test-ci (Trevor Norris) #12892
  • [45139e59f3] - (SEMVER-MINOR) n-api: add napi_get_version (Michael Dawson) #13207
  • [56e881d0b0] - (SEMVER-MINOR) n-api: add support for abi stable module API (Jason Ginchereau) #11975
  • [dd20e68b0f] - (SEMVER-MINOR) process: add optional detail to process emitWarning (James M Snell) #12725
  • [c0bde73f1b] - (SEMVER-MINOR) src: implement native changes for async_hooks (Trevor Norris) #12892
  • [e5a25cbc85] - (SEMVER-MINOR) src: expose node::AddPromiseHook (Anna Henningsen) #12489
  • [ec53921d2e] - (SEMVER-MINOR) src: make AtExit callback's per Environment (Daniel Bevenius) #9163
  • [ba4847e879] - (SEMVER-MINOR) src: Node Tracing Controller (misterpoe) #9304
  • [6ff3b03240] - (SEMVER-MINOR) src, inspector: add --inspect-brk option (Josh Gavant) #8979
  • [220186c4a8] - (SEMVER-MINOR) stream: support Uint8Array input to methods (Anna Henningsen) #11608
  • [07c7f198db] - (SEMVER-MINOR) stream: add final method (Calvin Metcalf) #12828
  • [11918c4aed] - (SEMVER-MINOR) stream: fix highWaterMark integer overflow (Tobias Nießen) #12593
  • [c56d6046ec] - (SEMVER-MINOR) test: add AsyncResource addon test (Anna Henningsen) #13142
  • [e3e56f1d71] - (SEMVER-MINOR) test: adding tests for initHooks API (Thorsten Lorenz) #12892
  • [732620cfe9] - (SEMVER-MINOR) test: remove unneeded tests (Trevor Norris) #12892
  • [e965ed16c1] - (SEMVER-MINOR) test: add test for promisify customPromisifyArgs (Gil Tayar) #12442
  • [3ea2301e38] - (SEMVER-MINOR) test: add a bunch of tests from bluebird (Madara Uchiha) #12442
  • [dca08152cb] - (SEMVER-MINOR) test: introduce common.crashOnUnhandledRejection (Anna Henningsen) #12489
  • [e7c51454b0] - (SEMVER-MINOR) timers: add promisify support (Anna Henningsen) #12442
  • [e600fbe576] - (SEMVER-MINOR) tls: accept lookup option for tls.connect() (Fedor Indutny) #12839
  • [c3efe72669] - (SEMVER-MINOR) tls: support Uint8Arrays for protocol list buffers (Anna Henningsen) #11984
  • [29f758731f] - (SEMVER-MINOR) tools: add MDN link for Iterable (Timothy Gu) #11060
  • [4b9d84df51] - (SEMVER-MINOR) tty_wrap: throw when uv_tty_init() returns error (Trevor Norris) #12892
  • [cc48f21c83] - (SEMVER-MINOR) **u