
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
Add callbacks to requests in flight to avoid async duplication
var inflight = require('inflight')
// some request that does some stuff
function req(key, callback) {
// key is any random string. like a url or filename or whatever.
//
// will return either a falsey value, indicating that the
// request for this key is already in flight, or a new callback
// which when called will call all callbacks passed to inflightk
// with the same key
callback = inflight(key, callback)
// If we got a falsey value back, then there's already a req going
if (!callback) return
// this is where you'd fetch the url or whatever
// callback is also once()-ified, so it can safely be assigned
// to multiple events etc. First call wins.
setTimeout(function() {
callback(null, key)
}, 100)
}
// only assigns a single setTimeout
// when it dings, all cbs get called
req('foo', cb1)
req('foo', cb2)
req('foo', cb3)
req('foo', cb4)
The async package provides a collection of utilities to work with asynchronous JavaScript. While it doesn't offer the exact same functionality as inflight, it does include methods like 'async.queue' and 'async.cargo' which can be used to manage concurrency and ensure that certain tasks are not overlapped.
p-limit is a package that limits the number of promises that are running at any one time. It can be used to control concurrency similar to inflight, but it works specifically with promises rather than general asynchronous operations.
The once package ensures a function can only be called once. It's similar to inflight in that it prevents duplicate execution, but it's more general-purpose and not specifically designed for tracking the state of asynchronous operations.
FAQs
Add callbacks to requests in flight to avoid async duplication
The npm package inflight receives a total of 59,463,021 weekly downloads. As such, inflight popularity was classified as popular.
We found that inflight demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers 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.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.