
Security News
Socket Releases Free Certified Patches for Critical vm2 Sandbox Escape
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.
ordered-emitter
Advanced tools
Buffer events that may arrive out of order so that they are emitted in order.
Just emit event objects with an "order" key starting at 0.
var OrderedEmitter = require('ordered-emitter');
var em = new OrderedEmitter;
em.on('beep', function (obj) {
console.dir(obj);
});
var objects = [
{ order : 1 },
{ order : 2 },
{ order : 4 },
{ order : 0 },
{ order : 3 },
];
var iv = setInterval(function () {
var obj = objects.shift();
if (!obj) clearInterval(iv)
else em.emit('beep', obj)
}, 500);
output:
{ order: 0 }
{ order: 1 }
{ order: 2 }
{ order: 3 }
{ order: 4 }
var OrderedEmitter = require('ordered-emitter');
var em = new OrderedEmitter({ span : true });
em.on('beep', function (obj) {
console.log('beep ' + obj.x);
});
em.on('boop', function (obj) {
console.log('boop ' + obj.x);
});
em.emit('beep', { order : 1, x : 'b' });
em.emit('beep', { order : 3, x : 'd' });
em.emit('boop', { order : 0, x : 'a' });
em.emit('beep', { order : 2, x : 'c' });
em.emit('boop', { order : 5, x : 'f' });
em.emit('boop', { order : 4, x : 'e' });
output:
boop a
beep b
beep c
beep d
boop e
boop f
var OrderedEmitter = require('ordered-emitter');
OrderedEmitter acts just like an EventEmitter, except that any event that
emits objects as its first argument with numeric order keys will be buffered
so that the events will be emitted in order.
By default, order keys are isolated by event names so the order keys from
different event names won't influence each other. However, you can have order
keys work across multiple event names by setting opts.span to true.
Reset the counter for an ordered emitter back to 0.
If eventName is undefined, reset all the counters to 0.
Clears the event queue for an ordered emitter.
If eventName is undefined, clear all the event queues.
With npm do:
npm install ordered-emitter
MIT/X11
FAQs
emit events in order
The npm package ordered-emitter receives a total of 4,036 weekly downloads. As such, ordered-emitter popularity was classified as popular.
We found that ordered-emitter demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.

Research
Five malicious NuGet packages impersonate Chinese .NET libraries to deploy a stealer targeting browser credentials, crypto wallets, SSH keys, and local files.

Security News
pnpm 11 turns on a 1-day Minimum Release Age and blocks exotic subdeps by default, adding safeguards against fast-moving supply chain attacks.