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

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