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