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

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