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