bunqueue v2.4.6
blog · release
bunqueue v2.4.6
Ships 3 performance improvements and 2 additions. Event-driven dependency resolution - Replaced 100ms setInterval polling with microtask-coalesced flush triggered on job completion.
To install bunqueue v2.4.6
Section titled “To install bunqueue v2.4.6”bun add bunqueue@2.4.6npm install bunqueue@2.4.6To upgrade bunqueue
Section titled “To upgrade bunqueue”bun add bunqueue@latestWhat’s new
Section titled “What’s new”src/benchmark/dependency-latency.bench.ts- Benchmark for dependency chain resolution latencysrc/application/taskErrorTracking.ts- Extracted error tracking for reuse across modules
Performance
Section titled “Performance”-
Event-driven dependency resolution - Replaced 100ms
setIntervalpolling with microtask-coalesced flush triggered on job completion. Dependency chain latency drops from hundreds of milliseconds to microseconds:Scenario Before (P50) After (P50) Speedup Single dep (A→B) 100.05ms 12.5µs ~8,000x Chain (4 levels) 300.43ms 28.2µs ~10,700x Fan-out (1→5) 100.11ms 31.0µs ~3,200x -
The previous 100ms interval is now a 30s safety fallback. Zero functional changes, zero API changes.
-
Bonus: less CPU at idle (no more 10 calls/sec to
processPendingDependencieswhen queue is empty).
Thanks to 1 contributor!
Section titled “Thanks to 1 contributor!”← bunqueue v2.4.5 · Release on GitHub · Commits since v2.4.5 · Full changelog · All posts