Denis 346b78aee1 first commit 2 ani în urmă
..
LICENSE 346b78aee1 first commit 2 ani în urmă
README.md 346b78aee1 first commit 2 ani în urmă
all.js 346b78aee1 first commit 2 ani în urmă
allLimit.js 346b78aee1 first commit 2 ani în urmă
allSeries.js 346b78aee1 first commit 2 ani în urmă
angelFall.js 346b78aee1 first commit 2 ani în urmă
any.js 346b78aee1 first commit 2 ani în urmă
anyLimit.js 346b78aee1 first commit 2 ani în urmă
anySeries.js 346b78aee1 first commit 2 ani în urmă
apply.js 346b78aee1 first commit 2 ani în urmă
applyEach.js 346b78aee1 first commit 2 ani în urmă
applyEachSeries.js 346b78aee1 first commit 2 ani în urmă
async.js 346b78aee1 first commit 2 ani în urmă
async.min.js 346b78aee1 first commit 2 ani în urmă
asyncify.js 346b78aee1 first commit 2 ani în urmă
auto.js 346b78aee1 first commit 2 ani în urmă
autoInject.js 346b78aee1 first commit 2 ani în urmă
cargo.js 346b78aee1 first commit 2 ani în urmă
compose.js 346b78aee1 first commit 2 ani în urmă
concat.js 346b78aee1 first commit 2 ani în urmă
concatLimit.js 346b78aee1 first commit 2 ani în urmă
concatSeries.js 346b78aee1 first commit 2 ani în urmă
constant.js 346b78aee1 first commit 2 ani în urmă
createLogger.js 346b78aee1 first commit 2 ani în urmă
detect.js 346b78aee1 first commit 2 ani în urmă
detectLimit.js 346b78aee1 first commit 2 ani în urmă
detectSeries.js 346b78aee1 first commit 2 ani în urmă
dir.js 346b78aee1 first commit 2 ani în urmă
doDuring.js 346b78aee1 first commit 2 ani în urmă
doUntil.js 346b78aee1 first commit 2 ani în urmă
doWhilst.js 346b78aee1 first commit 2 ani în urmă
during.js 346b78aee1 first commit 2 ani în urmă
each.js 346b78aee1 first commit 2 ani în urmă
eachLimit.js 346b78aee1 first commit 2 ani în urmă
eachOf.js 346b78aee1 first commit 2 ani în urmă
eachOfLimit.js 346b78aee1 first commit 2 ani în urmă
eachOfSeries.js 346b78aee1 first commit 2 ani în urmă
eachSeries.js 346b78aee1 first commit 2 ani în urmă
ensureAsync.js 346b78aee1 first commit 2 ani în urmă
every.js 346b78aee1 first commit 2 ani în urmă
everyLimit.js 346b78aee1 first commit 2 ani în urmă
everySeries.js 346b78aee1 first commit 2 ani în urmă
fast.js 346b78aee1 first commit 2 ani în urmă
filter.js 346b78aee1 first commit 2 ani în urmă
filterLimit.js 346b78aee1 first commit 2 ani în urmă
filterSeries.js 346b78aee1 first commit 2 ani în urmă
find.js 346b78aee1 first commit 2 ani în urmă
findLimit.js 346b78aee1 first commit 2 ani în urmă
findSeries.js 346b78aee1 first commit 2 ani în urmă
foldl.js 346b78aee1 first commit 2 ani în urmă
foldr.js 346b78aee1 first commit 2 ani în urmă
forEach.js 346b78aee1 first commit 2 ani în urmă
forEachLimit.js 346b78aee1 first commit 2 ani în urmă
forEachOf.js 346b78aee1 first commit 2 ani în urmă
forEachOfLimit.js 346b78aee1 first commit 2 ani în urmă
forEachOfSeries.js 346b78aee1 first commit 2 ani în urmă
forEachSeries.js 346b78aee1 first commit 2 ani în urmă
forever.js 346b78aee1 first commit 2 ani în urmă
groupBy.js 346b78aee1 first commit 2 ani în urmă
groupByLimit.js 346b78aee1 first commit 2 ani în urmă
groupBySeries.js 346b78aee1 first commit 2 ani în urmă
inject.js 346b78aee1 first commit 2 ani în urmă
iterator.js 346b78aee1 first commit 2 ani în urmă
log.js 346b78aee1 first commit 2 ani în urmă
map.js 346b78aee1 first commit 2 ani în urmă
mapLimit.js 346b78aee1 first commit 2 ani în urmă
mapSeries.js 346b78aee1 first commit 2 ani în urmă
mapValues.js 346b78aee1 first commit 2 ani în urmă
mapValuesLimit.js 346b78aee1 first commit 2 ani în urmă
mapValuesSeries.js 346b78aee1 first commit 2 ani în urmă
memoize.js 346b78aee1 first commit 2 ani în urmă
nextTick.js 346b78aee1 first commit 2 ani în urmă
omit.js 346b78aee1 first commit 2 ani în urmă
omitLimit.js 346b78aee1 first commit 2 ani în urmă
omitSeries.js 346b78aee1 first commit 2 ani în urmă
package.json 346b78aee1 first commit 2 ani în urmă
parallel.js 346b78aee1 first commit 2 ani în urmă
parallelLimit.js 346b78aee1 first commit 2 ani în urmă
pick.js 346b78aee1 first commit 2 ani în urmă
pickLimit.js 346b78aee1 first commit 2 ani în urmă
pickSeries.js 346b78aee1 first commit 2 ani în urmă
priorityQueue.js 346b78aee1 first commit 2 ani în urmă
queue.js 346b78aee1 first commit 2 ani în urmă
race.js 346b78aee1 first commit 2 ani în urmă
reduce.js 346b78aee1 first commit 2 ani în urmă
reduceRight.js 346b78aee1 first commit 2 ani în urmă
reflect.js 346b78aee1 first commit 2 ani în urmă
reflectAll.js 346b78aee1 first commit 2 ani în urmă
reject.js 346b78aee1 first commit 2 ani în urmă
rejectLimit.js 346b78aee1 first commit 2 ani în urmă
rejectSeries.js 346b78aee1 first commit 2 ani în urmă
retry.js 346b78aee1 first commit 2 ani în urmă
retryable.js 346b78aee1 first commit 2 ani în urmă
safe.js 346b78aee1 first commit 2 ani în urmă
select.js 346b78aee1 first commit 2 ani în urmă
selectLimit.js 346b78aee1 first commit 2 ani în urmă
selectSeries.js 346b78aee1 first commit 2 ani în urmă
seq.js 346b78aee1 first commit 2 ani în urmă
series.js 346b78aee1 first commit 2 ani în urmă
setImmediate.js 346b78aee1 first commit 2 ani în urmă
some.js 346b78aee1 first commit 2 ani în urmă
someLimit.js 346b78aee1 first commit 2 ani în urmă
someSeries.js 346b78aee1 first commit 2 ani în urmă
sortBy.js 346b78aee1 first commit 2 ani în urmă
sortByLimit.js 346b78aee1 first commit 2 ani în urmă
sortBySeries.js 346b78aee1 first commit 2 ani în urmă
timeout.js 346b78aee1 first commit 2 ani în urmă
times.js 346b78aee1 first commit 2 ani în urmă
timesLimit.js 346b78aee1 first commit 2 ani în urmă
timesSeries.js 346b78aee1 first commit 2 ani în urmă
transform.js 346b78aee1 first commit 2 ani în urmă
transformLimit.js 346b78aee1 first commit 2 ani în urmă
transformSeries.js 346b78aee1 first commit 2 ani în urmă
tryEach.js 346b78aee1 first commit 2 ani în urmă
unmemoize.js 346b78aee1 first commit 2 ani în urmă
until.js 346b78aee1 first commit 2 ani în urmă
waterfall.js 346b78aee1 first commit 2 ani în urmă
whilst.js 346b78aee1 first commit 2 ani în urmă
wrapSync.js 346b78aee1 first commit 2 ani în urmă

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts FOSSA

Neo-Async is thought to be used as a drop-in replacement for Async, it almost fully covers its functionality and runs faster.

Benchmark is here!

Bluebird's benchmark is here!

Code Coverage

coverage

Installation

In a browser

<script src="async.min.js"></script>

In an AMD loader

require(['async'], function(async) {});

Promise and async/await

I recommend to use Aigle.

It is optimized for Promise handling and has almost the same functionality as neo-async.

Node.js

standard

$ npm install neo-async
var async = require('neo-async');

replacement

$ npm install neo-async
$ ln -s ./node_modules/neo-async ./node_modules/async
var async = require('async');

Bower

bower install neo-async

Feature

JSDoc

* not in Async

Collections

Control Flow

Utils

Mode

Benchmark

Benchmark: Async vs Neo-Async

How to check

$ node perf

Environment

  • Darwin 17.3.0 x64
  • Node.js v8.9.4
  • async v2.6.0
  • neo-async v2.5.0
  • benchmark v2.1.4

Result

The value is the ratio (Neo-Async/Async) of the average speed.

Collections

function benchmark
each/forEach 2.43
eachSeries/forEachSeries 1.75
eachLimit/forEachLimit 1.68
eachOf 3.29
eachOfSeries 1.50
eachOfLimit 1.59
map 3.95
mapSeries 1.81
mapLimit 1.27
mapValues 2.73
mapValuesSeries 1.59
mapValuesLimit 1.23
filter 3.00
filterSeries 1.74
filterLimit 1.17
reject 4.59
rejectSeries 2.31
rejectLimit 1.58
detect 4.30
detectSeries 1.86
detectLimit 1.32
reduce 1.82
transform 2.46
sortBy 4.08
some 2.19
someSeries 1.83
someLimit 1.32
every 2.09
everySeries 1.84
everyLimit 1.35
concat 3.79
concatSeries 4.45

Control Flow

funciton benchmark
parallel 2.93
series 1.96
waterfall 1.29
whilst 1.00
doWhilst 1.12
until 1.12
doUntil 1.12
during 1.18
doDuring 2.42
times 4.25
auto 1.97

License

FOSSA Status