mirror of
https://github.com/nodejs/node.git
synced 2026-11-09 15:11:11 -05:00
Update ESLint to 2.1.0. ESLint has a number of potentially-useful new features but this change attempts to be minimal in its changes. However, some things could not be avoided reasonably. ESLint 2.1.0 found a few lint issues that ESLing 1.x missed with template strings that did not take advantage of any features of template strings, and `let` declarations where `const` sufficed. Additionally, ESLint 2.1.0 removes some granularity around enabling ES6 features. Some features (e.g., spread operator) that had been turned off in our configuration for ESLint 1.x are now permitted. PR-URL: https://github.com/nodejs/node/pull/5214 Reviewed-By: Michaël Zasso <mic.besace@gmail.com> Reviewed-By: jbergstroem - Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Roman Reiss <me@silverwind.io> Reviewed-By: Myles Borins <myles.borins@gmail.com>
Run Async
Utility method to run function either synchronously or asynchronously using the common this.async() style.
This is useful for library author accepting sync or async functions as parameter. runAsync will always run them as async method, and normalize the function handling.
Installation
npm install --save run-async
Usage
var runAsync = require('run-async');
// In Async mode:
var asyncFn = function (a) {
var done = this.async();
setTimeout(function () {
done('running: ' + a);
}, 10);
};
runAsync(asyncFn, function (answer) {
console.log(answer); // 'running: async'
}, 'async');
// In Sync mode:
var syncFn = function (a) {
return 'running: ' + a;
};
runAsync(asyncFn, function (answer) {
console.log(answer); // 'running: sync'
}, 'sync');
Licence
Copyright (c) 2014 Simon Boudrias (twitter: @vaxilart) Licensed under the MIT license.