Registry / testing / consumer-queue

consumer-queue

JSON →
library1.1.0jsnpmunverified

Simple unbounded asynchronous producer-consumer queue (like Java's BlockingQueue) with promises. Version 1.1.0 is stable, last updated in 2016. Low maintenance, no breaking changes, ships TypeScript types. Differentiated by minimal API and no dependencies.

npm install consumer-queue
INSTALL
IMPORT
SIG · CONSUMER-QUEUE
C
consumer-queue
testingjavascriptv1.1.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

ConsumerQueue
import { ConsumerQueue } from 'consumer-queue'
const ConsumerQueue = require('consumer-queue')
ESM and CJS both supported; named export for ESM, default for CJS.
default
import ConsumerQueue from 'consumer-queue'
import { ConsumerQueue } from 'consumer-queue'
Default export also available as ESM named export.
type ConsumerQueue
import type { ConsumerQueue } from 'consumer-queue'
TypeScript users can import the type separately.

Demonstrates basic producer-consumer pattern with push and pop methods.

import { ConsumerQueue } from 'consumer-queue'; const queue = new ConsumerQueue(); // Producer queue.push('data1'); queue.push('data2'); // Consumer async function consume() { while (true) { const value = await queue.pop(); console.log('Consumed:', value); } } consume();
Debug
Known issues
gotchapop() returns a promise that may never resolve if no push() is called and no cancellation is used.
fix
Always ensure cancellation or termination logic, e.g., with cancelWait().
affects: >=0.0.0
gotchacancelWait() rejects the waiting promise with a generic Error if no error argument provided.
fix
Always pass a meaningful error to cancelWait() to avoid silent failures.
affects: >=0.0.0
gotchatryPop() returns null when queue is empty, indistinguishable from a pushed null value.
fix
Avoid pushing null values or use pop() with a sentinel.
affects: >=0.0.0
gotchaMultiple consumers not supported; only one waiting pop() is ever resolved.
fix
Design for single consumer pattern or implement your own multi-consumer queue.
affects: >=0.0.0
Errors
Common errors & fixes
TypeError: ConsumerQueue is not a constructor
Wrong import: using default import when package exports named export.
fix
Use `import { ConsumerQueue } from 'consumer-queue'` for ESM.
Cannot find module 'consumer-queue'
Package not installed or name mistyped.
fix
Run `npm install consumer-queue` and check import path.
consumer-queue is not a function
Attempted to call require('consumer-queue')() instead of new ConsumerQueue()
fix
Use `new ConsumerQueue()` after require.
Upgrade
Version history
1.1.0latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
10 hits · last 30 days
node
9
OpenAI (training)
1
Resources
consumer-queue — npm install consumer-queue · libregistry