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

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