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

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