sfcode
An Online Competing and Development Environment
util-promisify

Node 8's ‘require('util’).promisify` as a node module, so you can use it right now!

Supports all major node versions.

build status downloads Greenkeeper badge

Usage

const promisify = require('util-promisify');
const fs = require('fs');
const stat = promisify(fs.stat);
stat('/tmp/').then(s => {
// ...
});

Installation

$ npm install util-promisify

API

See util.promisify's API docs.

promisify(original)

(Symbol) promisify.custom

If available, the Symbol is reexported from node core's util module.

License

MIT

Polyfill for util.promisify in node versions < v8

node v8.0.0 added support for a built-in util.promisify: https://github.com/nodejs/node/pull/12442/

This package provides the built-in util.promisify in node v8.0.0 and later, and a replacement in other environments.

Usage

Direct

const promisify = require('util.promisify');
// Use `promisify` just like the built-in method on `util`

Shim

require('util.promisify/shim')();
// `util.promisify` is now defined
const util = require('util');
// Use `util.promisify`

Note: this package requires a native ES5 environment, and for Promise to be globally available. It will throw upon requiring it if these are not present.

Promisifying modules

If you want to promisify a whole module, like the fs module, you can use util.promisify-all.