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

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