Skip to content
Get started
Get started
bunqueue v2.8.39
View Markdown
blog · release

bunqueue v2.8.39

Fixes 4 bugs and ships 2 additions. TCP rate limiting now charges each complete MessagePack frame instead of each socket data event.

bun add bunqueue@2.8.39
npm install bunqueue@2.8.39
bun add bunqueue@latest
  • Real public-TCP production tests now exercise durable enqueueing, worker concurrency, retries, delayed jobs, priorities, flow dependencies, restart recovery, backpressure, health responsiveness, duplicate-effect detection, and complete drain under a large backlog.
  • The generated model now covers multi-queue shard isolation and global conservation. Retention-boundary, protocol-correlation, stale-dependency, and dependency-result regressions bring the executable production register to 56 invariants, with the remaining contract-dependent candidates recorded explicitly in the internal testing reference.
  • TCP rate limiting now charges each complete MessagePack frame instead of each socket data event. Partial frames consume no quota, coalesced frames are limited independently, and overload responses preserve the triggering reqId so multiplexed clients can settle the correct request.
  • Stale dependency cleanup now removes durable SQLite state, buffered writes, reverse dependency edges, queue ownership, custom and unique identifiers, the global job index, and in-memory waiting state as one revalidated transition. Expired dependency-gated jobs can no longer remain readable or retain identifiers after garbage collection.
  • A dependency-result tracker now retains a producer result while at least one live consumer edge needs it. Fan-in, fan-out, single and batch ACK, removeOnComplete, retries, terminal failures, cancellation, cleanup, recovery, drain, and obliteration all update the same edge lifecycle.
  • Dependency result lookup distinguishes a cached null result from a cache miss and falls back to durable storage consistently. Normal result-cache pressure can no longer make a declared flow lose child results before its parent is released.

← bunqueue v2.8.38 · Release on GitHub · Commits since v2.8.38 · Full changelog · All posts