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

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