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

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