TAP version 13
ok 1 (unnamed assert) Node.js 6.2.1 on Linux 64-bit
1..1
TAP version 13
ok 1 Theoretical max runs without error ok 2 Theoretical max constructed an object ok 3 EventEmitter runs without error ok 4 EventEmitter constructed an object ok 5 EventEmitter2 runs without error ok 6 EventEmitter2 constructed an object ok 7 EventEmitter3 runs without error ok 8 EventEmitter3 constructed an object ok 9 push-stream runs without error ok 10 push-stream constructed an object ok 11 DripEmitter runs without error ok 12 DripEmitter constructed an object ok 13 DripEmitterEnhanced runs without error ok 14 DripEmitterEnhanced constructed an object ok 15 ReactiveProperty runs without error ok 16 ReactiveProperty constructed an object ok 17 JS-Signals runs without error ok 18 JS-Signals constructed an object ok 19 MiniSignals runs without error ok 20 MiniSignals constructed an object ok 21 EventDispatcher runs without error ok 22 EventDispatcher constructed an object ok 23 pull-notify runs without error ok 24 pull-notify constructed an object
DripEmitter x 23,369,383 ops/sec ±4.92% (10 runs sampled)
EventDispatcher x 22,546,392 ops/sec ±1.40% (10 runs sampled)
EventEmitter3 x 22,187,707 ops/sec ±4.53% (10 runs sampled)
EventEmitter2 x 17,499,333 ops/sec ±6.42% (10 runs sampled)
MiniSignals x 16,682,081 ops/sec ±2.53% (10 runs sampled)
Theoretical max x 19,430,280 ops/sec ±31.83% (10 runs sampled) *burn in*
EventEmitter x 12,512,114 ops/sec ±3.00% (10 runs sampled)
DripEmitterEnhanced x 10,148,390 ops/sec ±1.21% (10 runs sampled)
push-stream x 7,576,618 ops/sec ±3.65% (10 runs sampled)
JS-Signals x 1,352,219 ops/sec ±18.08% (10 runs sampled)
ReactiveProperty x 702,431 ops/sec ±19.88% (10 runs sampled)
pull-notify x 558,456 ops/sec ±22.05% (10 runs sampled)
Fastest is DripEmitter, EventDispatcher, EventEmitter3
1..24
TAP version 13
ok 1 Theoretical max runs without error ok 2 handle called four times ok 3 handle2 called four times ok 4 EventEmitter runs without error ok 5 handle called four times ok 6 handle2 called four times ok 7 EventEmitter2 runs without error ok 8 handle called four times ok 9 handle2 called four times ok 10 EventEmitter3 runs without error ok 11 handle called four times ok 12 handle2 called four times ok 13 dripEmitterEnhanced runs without error ok 14 handle called four times ok 15 handle2 called four times ok 16 JS-Signals runs without error ok 17 handle called four times ok 18 handle2 called four times ok 19 MiniSignals runs without error ok 20 handle called four times ok 21 handle2 called four times ok 22 signal-emitter runs without error ok 23 handle called four times ok 24 handle2 called four times ok 25 signal-lite runs without error ok 26 handle called four times ok 27 handle2 called four times
Theoretical max x 3,607,602 ops/sec ±3.70% (10 runs sampled) *burn in*
MiniSignals x 2,117,018 ops/sec ±3.34% (10 runs sampled)
signal-lite x 1,871,899 ops/sec ±8.44% (10 runs sampled)
EventEmitter x 1,041,018 ops/sec ±2.27% (10 runs sampled)
EventEmitter3 x 590,813 ops/sec ±3.90% (10 runs sampled)
EventEmitter2 x 348,027 ops/sec ±1.73% (10 runs sampled)
dripEmitterEnhanced x 166,108 ops/sec ±4.05% (10 runs sampled)
signal-emitter x 81,953 ops/sec ±2.96% (10 runs sampled)
JS-Signals x 51,677 ops/sec ±11.64% (10 runs sampled)
Fastest is MiniSignals
1..27
TAP version 13
ok 1 Theoretical max runs without error ok 2 handle called one time ok 3 handle2 called one time ok 4 EventEmitter runs without error ok 5 handle called one time ok 6 handle2 called one time ok 7 EventEmitter2 runs without error ok 8 handle called one time ok 9 handle2 called one time ok 10 EventEmitter3 runs without error ok 11 handle called one time ok 12 handle2 called one time ok 13 push-stream runs without error ok 14 handle called one time ok 15 handle2 called one time ok 16 dripEmitter runs without error ok 17 handle called one time ok 18 handle2 called one time ok 19 dripEmitterEnhanced runs without error ok 20 handle called one time ok 21 handle2 called one time ok 22 RXJS runs without error ok 23 handle called one time ok 24 handle2 called one time ok 25 ReactiveProperty runs without error ok 26 handle called one time ok 27 handle2 called one time ok 28 JS-Signals runs without error ok 29 handle called one time ok 30 handle2 called one time ok 31 MiniSignals runs without error ok 32 handle called one time ok 33 handle2 called one time ok 34 signal-emitter runs without error ok 35 handle called one time ok 36 handle2 called one time ok 37 event-signal runs without error ok 38 handle called one time ok 39 handle2 called one time ok 40 signal-lite runs without error ok 41 handle called one time ok 42 handle2 called one time ok 43 pull-notify runs without error ok 44 handle called one time ok 45 handle2 called one time
Theoretical max x 17,044,221 ops/sec ±10.83% (10 runs sampled) *burn in*
signal-lite x 8,958,610 ops/sec ±4.63% (10 runs sampled)
MiniSignals x 9,978,625 ops/sec ±17.03% (10 runs sampled)
ReactiveProperty x 7,598,214 ops/sec ±3.13% (10 runs sampled)
push-stream x 7,537,762 ops/sec ±2.92% (10 runs sampled)
dripEmitter x 6,290,191 ops/sec ±1.39% (10 runs sampled)
EventEmitter3 x 5,161,516 ops/sec ±0.69% (10 runs sampled)
EventEmitter x 3,999,675 ops/sec ±2.39% (10 runs sampled)
event-signal x 2,561,107 ops/sec ±3.07% (10 runs sampled)
EventEmitter2 x 1,902,381 ops/sec ±1.74% (10 runs sampled)
RXJS x 1,721,544 ops/sec ±4.44% (10 runs sampled)
dripEmitterEnhanced x 825,976 ops/sec ±3.41% (10 runs sampled)
signal-emitter x 309,572 ops/sec ±10.21% (10 runs sampled)
pull-notify x 285,677 ops/sec ±7.56% (10 runs sampled)
JS-Signals x 170,349 ops/sec ±5.36% (10 runs sampled)
Fastest is signal-lite, MiniSignals
1..45
TAP version 13
ok 1 Theoretical max runs without error ok 2 Theoretical max called handle once ok 3 Theoretical max called handle2 once ok 4 EventEmitter runs without error ok 5 EventEmitter called handle once ok 6 EventEmitter called handle2 once ok 7 EventEmitter2 runs without error ok 8 EventEmitter2 called handle once ok 9 EventEmitter2 called handle2 once ok 10 EventEmitter3 runs without error ok 11 EventEmitter3 called handle once ok 12 EventEmitter3 called handle2 once ok 13 dripEmitter runs without error ok 14 dripEmitter called handle once ok 15 dripEmitter called handle2 once ok 16 push-stream-patch runs without error ok 17 push-stream-patch called handle once ok 18 push-stream-patch called handle2 once ok 19 push-stream runs without error ok 20 push-stream called handle once ok 21 push-stream called handle2 once ok 22 dripEmitterEnhanced runs without error ok 23 dripEmitterEnhanced called handle once ok 24 dripEmitterEnhanced called handle2 once ok 25 d3-dispatch runs without error ok 26 d3-dispatch called handle once ok 27 d3-dispatch called handle2 once ok 28 namespace-emitter runs without error ok 29 namespace-emitter called handle once ok 30 namespace-emitter called handle2 once ok 31 ReactiveProperty runs without error ok 32 ReactiveProperty called handle once ok 33 ReactiveProperty called handle2 once ok 34 observable runs without error ok 35 observable called handle once ok 36 observable called handle2 once ok 37 observ runs without error ok 38 observ called handle once ok 39 observ called handle2 once ok 40 RXJS runs without error ok 41 RXJS called handle once ok 42 RXJS called handle2 once ok 43 JS-Signals runs without error ok 44 JS-Signals called handle once ok 45 JS-Signals called handle2 once ok 46 MiniSignals runs without error ok 47 MiniSignals called handle once ok 48 MiniSignals called handle2 once ok 49 MicroSignals runs without error ok 50 MicroSignals called handle once ok 51 MicroSignals called handle2 once ok 52 signal-emitter runs without error ok 53 signal-emitter called handle once ok 54 signal-emitter called handle2 once ok 55 event-signal runs without error ok 56 event-signal called handle once ok 57 event-signal called handle2 once ok 58 signal-lite runs without error ok 59 signal-lite called handle once ok 60 signal-lite called handle2 once ok 61 minivents runs without error ok 62 minivents called handle once ok 63 minivents called handle2 once ok 64 pull-notify runs without error ok 65 pull-notify called handle once ok 66 pull-notify called handle2 once
Theoretical max x 12,074,328 ops/sec ±2.67% (10 runs sampled) *burn in*
signal-lite x 7,957,114 ops/sec ±0.84% (10 runs sampled)
MiniSignals x 8,837,979 ops/sec ±13.86% (10 runs sampled)
push-stream-patch x 7,592,261 ops/sec ±3.50% (10 runs sampled)
push-stream x 7,492,212 ops/sec ±5.08% (10 runs sampled)
dripEmitter x 6,715,187 ops/sec ±1.06% (10 runs sampled)
EventEmitter3 x 5,882,330 ops/sec ±0.95% (10 runs sampled)
MicroSignals x 5,672,303 ops/sec ±3.36% (10 runs sampled)
ReactiveProperty x 5,214,479 ops/sec ±7.38% (10 runs sampled)
EventEmitter x 4,515,865 ops/sec ±2.98% (10 runs sampled)
observ x 2,662,429 ops/sec ±9.59% (10 runs sampled)
event-signal x 2,440,429 ops/sec ±12.51% (10 runs sampled)
EventEmitter2 x 2,123,555 ops/sec ±1.50% (10 runs sampled)
RXJS x 1,760,425 ops/sec ±1.54% (10 runs sampled)
d3-dispatch x 1,059,151 ops/sec ±3.48% (10 runs sampled)
dripEmitterEnhanced x 600,012 ops/sec ±23.71% (10 runs sampled)
pull-notify x 354,020 ops/sec ±3.59% (10 runs sampled)
observable x 345,808 ops/sec ±1.26% (10 runs sampled)
signal-emitter x 341,262 ops/sec ±6.69% (10 runs sampled)
namespace-emitter x 189,199 ops/sec ±10.63% (10 runs sampled)
JS-Signals x 162,120 ops/sec ±2.11% (10 runs sampled)
minivents x 136,667 ops/sec ±8.37% (10 runs sampled)
Fastest is signal-lite
1..66
TAP version 13
ok 1 Theoretical max runs without error ok 2 Theoretical max called handle once ok 3 EventEmitter runs without error ok 4 EventEmitter called handle once ok 5 EventEmitter2 runs without error ok 6 EventEmitter2 called handle once ok 7 EventEmitter3 runs without error ok 8 EventEmitter3 called handle once ok 9 dripEmitter runs without error ok 10 dripEmitter called handle once ok 11 barracks runs without error ok 12 barracks called handle once ok 13 push-stream runs without error ok 14 push-stream called handle once ok 15 push-stream-patch runs without error ok 16 push-stream-patch called handle once ok 17 mini-pipe runs without error ok 18 mini-pipe called handle once ok 19 dripEmitterEnhanced runs without error ok 20 dripEmitterEnhanced called handle once ok 21 d3-dispatch runs without error ok 22 d3-dispatch called handle once ok 23 namespace-emitter runs without error ok 24 namespace-emitter called handle once ok 25 ReactiveProperty runs without error ok 26 ReactiveProperty called handle once ok 27 observable runs without error ok 28 observable called handle once ok 29 observ runs without error ok 30 observ called handle once ok 31 RXJS runs without error ok 32 RXJS called handle once ok 33 JS-Signals runs without error ok 34 JS-Signals called handle once ok 35 MiniSignals runs without error ok 36 MiniSignals called handle once ok 37 MicroSignals runs without error ok 38 MicroSignals called handle once ok 39 signal-emitter runs without error ok 40 signal-emitter called handle once ok 41 event-signal runs without error ok 42 event-signal called handle once ok 43 signal-lite runs without error ok 44 signal-lite called handle once ok 45 minivents runs without error ok 46 minivents called handle once ok 47 pull-notify runs without error ok 48 pull-notify called handle once ok 49 pull-pushable runs without error ok 50 pull-pushable called handle once
Theoretical max x 22,135,032 ops/sec ±14.92% (10 runs sampled) *burn in*
MiniSignals x 15,737,750 ops/sec ±4.89% (10 runs sampled)
MicroSignals x 14,121,806 ops/sec ±6.33% (10 runs sampled)
mini-pipe x 12,882,513 ops/sec ±2.19% (10 runs sampled)
signal-lite x 12,425,271 ops/sec ±6.41% (10 runs sampled)
push-stream x 11,342,204 ops/sec ±5.03% (10 runs sampled)
EventEmitter3 x 9,996,325 ops/sec ±1.79% (10 runs sampled)
ReactiveProperty x 10,340,315 ops/sec ±8.91% (10 runs sampled)
push-stream-patch x 9,985,006 ops/sec ±5.65% (10 runs sampled)
dripEmitter x 9,636,642 ops/sec ±30.51% (10 runs sampled)
EventEmitter x 7,634,834 ops/sec ±3.96% (10 runs sampled)
EventEmitter2 x 7,447,886 ops/sec ±42.93% (10 runs sampled)
observ x 5,157,424 ops/sec ±3.10% (10 runs sampled)
event-signal x 3,427,856 ops/sec ±15.45% (10 runs sampled)
barracks x 2,601,444 ops/sec ±8.35% (10 runs sampled)
RXJS x 2,556,626 ops/sec ±6.74% (10 runs sampled)
pull-pushable x 2,048,718 ops/sec ±9.43% (10 runs sampled)
d3-dispatch x 1,650,887 ops/sec ±9.81% (10 runs sampled)
dripEmitterEnhanced x 788,315 ops/sec ±4.63% (10 runs sampled)
observable x 450,004 ops/sec ±4.11% (10 runs sampled)
pull-notify x 411,396 ops/sec ±6.30% (10 runs sampled)
signal-emitter x 346,988 ops/sec ±10.23% (10 runs sampled)
minivents x 254,876 ops/sec ±11.56% (10 runs sampled)
namespace-emitter x 187,045 ops/sec ±1.15% (10 runs sampled)
JS-Signals x 187,695 ops/sec ±1.93% (10 runs sampled)
Fastest is MiniSignals
1..50
TAP version 13
ok 1 Theoretical max runs without error ok 2 handels called N times ok 3 EventEmitter runs without error ok 4 handels called N times ok 5 EventEmitter2 runs without error ok 6 handels called N times ok 7 EventEmitter3 runs without error ok 8 handels called N times ok 9 push-stream runs without error ok 10 handels called N times ok 11 dripEmitter runs without error ok 12 handels called N times ok 13 dripEmitterEnhanced runs without error ok 14 handels called N times ok 15 RXJS runs without error ok 16 handels called N times ok 17 ReactiveProperty runs without error ok 18 handels called N times ok 19 JS-Signals runs without error ok 20 handels called N times ok 21 MiniSignals runs without error ok 22 handels called N times ok 23 signal-emitter runs without error ok 24 handels called N times ok 25 event-signal runs without error ok 26 handels called N times ok 27 signal-lite runs without error ok 28 handels called N times ok 29 minivents runs without error ok 30 handels called N times
push-stream x 2,390,878 ops/sec ±7.56% (10 runs sampled)
MiniSignals x 2,415,494 ops/sec ±11.24% (10 runs sampled)
dripEmitter x 2,055,024 ops/sec ±4.89% (10 runs sampled)
signal-lite x 2,026,490 ops/sec ±11.11% (10 runs sampled)
EventEmitter3 x 2,024,985 ops/sec ±12.41% (10 runs sampled)
Theoretical max x 2,059,855 ops/sec ±16.35% (10 runs sampled) *burn in*
EventEmitter x 1,962,966 ops/sec ±14.16% (10 runs sampled)
ReactiveProperty x 1,558,527 ops/sec ±7.84% (10 runs sampled)
EventEmitter2 x 1,228,902 ops/sec ±6.74% (10 runs sampled)
event-signal x 1,188,034 ops/sec ±9.93% (10 runs sampled)
RXJS x 903,828 ops/sec ±10.89% (10 runs sampled)
dripEmitterEnhanced x 614,516 ops/sec ±8.27% (10 runs sampled)
signal-emitter x 334,740 ops/sec ±10.40% (10 runs sampled)
JS-Signals x 112,678 ops/sec ±10.20% (10 runs sampled)
minivents x 48,153 ops/sec ±4.90% (10 runs sampled)
Fastest is push-stream, MiniSignals
1..30
TAP version 13
ok 1 Theoretical max runs without error ok 2 handle called one time ok 3 handle2 called one time ok 4 EventEmitter runs without error ok 5 handle called one time ok 6 handle2 called one time ok 7 EventEmitter2 runs without error ok 8 handle called one time ok 9 handle2 called one time ok 10 EventEmitter3 runs without error ok 11 handle called one time ok 12 handle2 called one time ok 13 push-stream runs without error ok 14 handle called one time ok 15 handle2 called one time ok 16 dripEmitter runs without error ok 17 handle called one time ok 18 handle2 called one time ok 19 dripEmitterEnhanced runs without error ok 20 handle called one time ok 21 handle2 called one time ok 22 RXJS runs without error ok 23 handle called one time ok 24 handle2 called one time ok 25 ReactiveProperty runs without error ok 26 handle called one time ok 27 handle2 called one time ok 28 JS-Signals runs without error ok 29 handle called one time ok 30 handle2 called one time ok 31 MiniSignals runs without error ok 32 handle called one time ok 33 handle2 called one time ok 34 signal-emitter runs without error ok 35 handle called one time ok 36 handle2 called one time ok 37 event-signal runs without error ok 38 handle called one time ok 39 handle2 called one time ok 40 signal-lite runs without error ok 41 handle called one time ok 42 handle2 called one time ok 43 pull-notify runs without error ok 44 handle called one time ok 45 handle2 called one time
Theoretical max x 17,459,478 ops/sec ±13.20% (10 runs sampled) *burn in*
ReactiveProperty x 7,843,272 ops/sec ±2.13% (10 runs sampled)
push-stream x 7,336,447 ops/sec ±5.04% (10 runs sampled)
dripEmitter x 6,372,555 ops/sec ±1.34% (10 runs sampled)
EventEmitter3 x 5,834,770 ops/sec ±10.52% (10 runs sampled)
EventEmitter x 4,374,629 ops/sec ±5.53% (10 runs sampled)
MiniSignals x 3,162,323 ops/sec ±5.67% (10 runs sampled)
event-signal x 2,296,066 ops/sec ±3.34% (10 runs sampled)
signal-lite x 2,295,662 ops/sec ±8.14% (10 runs sampled)
RXJS x 1,899,191 ops/sec ±4.69% (10 runs sampled)
EventEmitter2 x 1,674,826 ops/sec ±3.02% (10 runs sampled)
dripEmitterEnhanced x 697,575 ops/sec ±2.85% (10 runs sampled)
signal-emitter x 368,414 ops/sec ±7.27% (10 runs sampled)
pull-notify x 301,361 ops/sec ±4.95% (10 runs sampled)
JS-Signals x 172,229 ops/sec ±2.36% (10 runs sampled)
Fastest is ReactiveProperty
1..45
TAP version 13
ok 1 Theoretical max runs without error ok 2 Theoretical max called handle three times ok 3 Theoretical max called handle2 three times ok 4 EventEmitter runs without error ok 5 EventEmitter called handle three times ok 6 EventEmitter called handle2 three times ok 7 EventEmitter2 runs without error ok 8 EventEmitter2 called handle three times ok 9 EventEmitter2 called handle2 three times ok 10 EventEmitter3 runs without error ok 11 EventEmitter3 called handle three times ok 12 EventEmitter3 called handle2 three times ok 13 push-stream runs without error ok 14 push-stream called handle three times ok 15 push-stream called handle2 three times ok 16 dripEmitter runs without error ok 17 dripEmitter called handle three times ok 18 dripEmitter called handle2 three times ok 19 dripEmitterEnhanced runs without error ok 20 dripEmitterEnhanced called handle three times ok 21 dripEmitterEnhanced called handle2 three times ok 22 RXJS runs without error ok 23 RXJS called handle three times ok 24 RXJS called handle2 three times ok 25 ReactiveProperty runs without error ok 26 ReactiveProperty called handle three times ok 27 ReactiveProperty called handle2 three times ok 28 JS-Signals runs without error ok 29 JS-Signals called handle three times ok 30 JS-Signals called handle2 three times ok 31 MiniSignals runs without error ok 32 MiniSignals called handle three times ok 33 MiniSignals called handle2 three times ok 34 MicroSignals runs without error ok 35 MicroSignals called handle three times ok 36 MicroSignals called handle2 three times ok 37 signal-emitter runs without error ok 38 signal-emitter called handle three times ok 39 signal-emitter called handle2 three times ok 40 event-signal runs without error ok 41 event-signal called handle three times ok 42 event-signal called handle2 three times ok 43 signal-lite runs without error ok 44 signal-lite called handle three times ok 45 signal-lite called handle2 three times ok 46 EventDispatcher runs without error ok 47 EventDispatcher called handle three times ok 48 EventDispatcher called handle2 three times ok 49 pull-notify runs without error ok 50 pull-notify called handle three times ok 51 pull-notify called handle2 three times
Theoretical max x 4,641,805 ops/sec ±5.36% (10 runs sampled) *burn in*
MicroSignals x 2,899,698 ops/sec ±10.28% (10 runs sampled)
MiniSignals x 2,872,679 ops/sec ±11.46% (10 runs sampled)
signal-lite x 2,567,964 ops/sec ±4.93% (10 runs sampled)
push-stream x 2,344,479 ops/sec ±2.07% (10 runs sampled)
ReactiveProperty x 2,200,263 ops/sec ±1.36% (10 runs sampled)
EventEmitter3 x 2,049,841 ops/sec ±2.79% (10 runs sampled)
dripEmitter x 1,959,869 ops/sec ±8.36% (10 runs sampled)
EventEmitter x 1,545,811 ops/sec ±13.17% (10 runs sampled)
EventDispatcher x 1,153,175 ops/sec ±11.29% (10 runs sampled)
event-signal x 980,754 ops/sec ±16.51% (10 runs sampled)
EventEmitter2 x 904,418 ops/sec ±16.60% (10 runs sampled)
RXJS x 637,906 ops/sec ±6.66% (10 runs sampled)
dripEmitterEnhanced x 259,431 ops/sec ±1.99% (10 runs sampled)
signal-emitter x 118,771 ops/sec ±8.85% (10 runs sampled)
pull-notify x 103,872 ops/sec ±11.17% (10 runs sampled)
JS-Signals x 63,834 ops/sec ±15.31% (10 runs sampled)
Fastest is MicroSignals, MiniSignals
1..51
TAP version 13
ok 1 Theoretical max runs without error ok 2 Theoretical max called handle three times ok 3 EventEmitter runs without error ok 4 EventEmitter called handle three times ok 5 EventEmitter2 runs without error ok 6 EventEmitter2 called handle three times ok 7 EventEmitter3 runs without error ok 8 EventEmitter3 called handle three times ok 9 push-stream runs without error ok 10 push-stream called handle three times ok 11 mini-pipe runs without error ok 12 mini-pipe called handle three times ok 13 dripEmitter runs without error ok 14 dripEmitter called handle three times ok 15 dripEmitterEnhanced runs without error ok 16 dripEmitterEnhanced called handle three times ok 17 RXJS runs without error ok 18 RXJS called handle three times ok 19 ReactiveProperty runs without error ok 20 ReactiveProperty called handle three times ok 21 JS-Signals runs without error ok 22 JS-Signals called handle three times ok 23 MiniSignals runs without error ok 24 MiniSignals called handle three times ok 25 signal-emitter runs without error ok 26 signal-emitter called handle three times ok 27 event-signal runs without error ok 28 event-signal called handle three times ok 29 signal-lite runs without error ok 30 signal-lite called handle three times ok 31 EventDispatcher runs without error ok 32 EventDispatcher called handle three times ok 33 pull-notify runs without error ok 34 pull-notify called handle three times ok 35 pull-pushable runs without error ok 36 pull-pushable called handle three times
Theoretical max x 7,483,624 ops/sec ±8.56% (10 runs sampled) *burn in*
signal-lite x 4,885,668 ops/sec ±12.79% (10 runs sampled)
mini-pipe x 4,467,945 ops/sec ±6.37% (10 runs sampled)
push-stream x 3,531,966 ops/sec ±4.82% (10 runs sampled)
MiniSignals x 3,969,980 ops/sec ±19.24% (10 runs sampled)
dripEmitter x 3,384,489 ops/sec ±2.64% (10 runs sampled)
ReactiveProperty x 3,239,622 ops/sec ±19.21% (10 runs sampled)
EventEmitter x 2,675,927 ops/sec ±6.79% (10 runs sampled)
EventEmitter2 x 3,002,733 ops/sec ±28.66% (10 runs sampled)
EventEmitter3 x 2,674,599 ops/sec ±36.67% (10 runs sampled)
EventDispatcher x 1,474,335 ops/sec ±4.89% (10 runs sampled)
event-signal x 857,955 ops/sec ±7.14% (10 runs sampled)
RXJS x 836,926 ops/sec ±6.49% (10 runs sampled)
pull-pushable x 574,393 ops/sec ±2.87% (10 runs sampled)
dripEmitterEnhanced x 256,033 ops/sec ±8.94% (10 runs sampled)
pull-notify x 119,359 ops/sec ±8.16% (10 runs sampled)
signal-emitter x 111,006 ops/sec ±6.31% (10 runs sampled)
JS-Signals x 71,647 ops/sec ±3.64% (10 runs sampled)
Fastest is signal-lite, mini-pipe
1..36
TAP version 13
ok 1 Theoretical max runs without error ok 2 handle called once ok 3 handle2 called once ok 4 EventEmitter runs without error ok 5 handle called once ok 6 handle2 called once ok 7 EventEmitter2 runs without error ok 8 handle called once ok 9 handle2 called once ok 10 EventEmitter3 runs without error ok 11 handle called once ok 12 handle2 called once ok 13 dripEmitterEnhanced runs without error ok 14 handle called once ok 15 handle2 called once ok 16 JS-Signals runs without error ok 17 handle called once ok 18 handle2 called once ok 19 MiniSignals runs without error ok 20 handle called once ok 21 handle2 called once ok 22 signal-emitter runs without error ok 23 handle called once ok 24 handle2 called once ok 25 signal-lite runs without error ok 26 handle called once ok 27 handle2 called once ok 28 minivents runs without error ok 29 handle called once ok 30 handle2 called once
Theoretical max x 8,974,273 ops/sec ±1.75% (10 runs sampled) *burn in*
MiniSignals x 6,934,128 ops/sec ±4.10% (10 runs sampled)
signal-lite x 5,055,053 ops/sec ±8.40% (10 runs sampled)
EventEmitter3 x 443,986 ops/sec ±5.40% (10 runs sampled)
EventEmitter x 396,635 ops/sec ±2.49% (10 runs sampled)
EventEmitter2 x 368,713 ops/sec ±2.21% (10 runs sampled)
dripEmitterEnhanced x 222,802 ops/sec ±26.55% (10 runs sampled)
signal-emitter x 185,812 ops/sec ±9.14% (10 runs sampled)
JS-Signals x 89,118 ops/sec ±1.89% (10 runs sampled)
minivents x 60,473 ops/sec ±1.30% (10 runs sampled)
Fastest is MiniSignals
1..30
TAP version 13
ok 1 Theoretical max runs without error ok 2 handle called three times ok 3 handle2 called three times ok 4 EventEmitter runs without error ok 5 handle called three times ok 6 handle2 called three times ok 7 EventEmitter2 runs without error ok 8 handle called three times ok 9 handle2 called three times ok 10 EventEmitter3 runs without error ok 11 handle called three times ok 12 handle2 called three times ok 13 push-stream runs without error ok 14 handle called three times ok 15 handle2 called three times ok 16 dripEmitter runs without error ok 17 handle called three times ok 18 handle2 called three times ok 19 dripEmitterEnhanced runs without error ok 20 handle called three times ok 21 handle2 called three times ok 22 RXJS runs without error ok 23 handle called three times ok 24 handle2 called three times ok 25 ReactiveProperty runs without error ok 26 handle called three times ok 27 handle2 called three times ok 28 JS-Signals runs without error ok 29 handle called three times ok 30 handle2 called three times ok 31 MiniSignals runs without error ok 32 handle called three times ok 33 handle2 called three times ok 34 signal-emitter runs without error ok 35 handle called three times ok 36 handle2 called three times ok 37 event-signal runs without error ok 38 handle called three times ok 39 handle2 called three times ok 40 signal-lite runs without error ok 41 handle called three times ok 42 handle2 called three times ok 43 pull-notify runs without error ok 44 handle called three times ok 45 handle2 called three times
Theoretical max x 6,054,858 ops/sec ±5.55% (10 runs sampled) *burn in*
MiniSignals x 3,823,553 ops/sec ±7.20% (10 runs sampled)
signal-lite x 3,139,942 ops/sec ±4.08% (10 runs sampled)
push-stream x 2,801,682 ops/sec ±1.11% (10 runs sampled)
dripEmitter x 2,640,390 ops/sec ±6.90% (10 runs sampled)
EventEmitter3 x 2,244,447 ops/sec ±2.94% (10 runs sampled)
ReactiveProperty x 2,376,204 ops/sec ±11.96% (10 runs sampled)
EventEmitter x 1,499,359 ops/sec ±3.82% (10 runs sampled)
event-signal x 830,619 ops/sec ±2.03% (10 runs sampled)
EventEmitter2 x 740,954 ops/sec ±4.45% (10 runs sampled)
RXJS x 646,300 ops/sec ±1.49% (10 runs sampled)
dripEmitterEnhanced x 326,690 ops/sec ±1.54% (10 runs sampled)
pull-notify x 122,032 ops/sec ±9.64% (10 runs sampled)
signal-emitter x 89,101 ops/sec ±9.49% (10 runs sampled)
JS-Signals x 66,870 ops/sec ±5.03% (10 runs sampled)
Fastest is MiniSignals
1..45
TAP version 13
ok 1 EventEmitter runs without error ok 2 handle never called ok 3 EventEmitter2 runs without error ok 4 handle never called ok 5 EventEmitter3 runs without error ok 6 handle never called ok 7 dripEmitter runs without error ok 8 handle never called ok 9 pushStream runs without error ok 10 handle never called ok 11 dripEmitterEnhanced runs without error ok 12 handle never called ok 13 ReactiveProperty runs without error ok 14 handle never called ok 15 JS-Signals runs without error ok 16 handle never called ok 17 MiniSignals runs without error ok 18 handle never called ok 19 EventDispatcher runs without error ok 20 handle never called
dripEmitter x 16,117,633 ops/sec ±13.12% (10 runs sampled)
MiniSignals x 5,565,582 ops/sec ±21.80% (10 runs sampled)
ReactiveProperty x 2,605,903 ops/sec ±3.39% (10 runs sampled)
EventDispatcher x 2,629,178 ops/sec ±13.34% (10 runs sampled)
pushStream x 1,885,350 ops/sec ±3.38% (10 runs sampled)
EventEmitter x 1,727,449 ops/sec ±14.13% (10 runs sampled)
EventEmitter3 x 1,013,816 ops/sec ±13.01% (10 runs sampled)
EventEmitter2 x 649,416 ops/sec ±15.07% (10 runs sampled)
JS-Signals x 399,229 ops/sec ±6.50% (10 runs sampled)
dripEmitterEnhanced x 226,093 ops/sec ±6.60% (10 runs sampled)
Fastest is dripEmitter
1..20