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

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