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

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