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

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