Releases: 50BytesOfJohn/panqueue
Releases · 50BytesOfJohn/panqueue
worker: v0.0.2
0.0.2 (2026-06-12)
⚠ BREAKING CHANGES
- worker: WorkerErrorEvent.scope replaced by WorkerErrorEvent.kind/jobId/handlerName. WorkerPool constructor options now accepts an optional
eventsfield. - worker: Worker event handler signatures changed. onJobStart → onJobStarted, onJobComplete → onJobCompleted, onJobFail → onJobFailed (all receive event objects). onError → onWorkerError. onJobRecovered removed. Stall terminal failures now emit onJobFailed.
- migrate to Node-first pnpm workspace (npm + JSR)
- config: default global concurrency scope
- worker: Job lifecycle accounting replaces attempts with runs, failures, and stalls.
- worker: add leases and force shutdown
Features
- add async dispose support and connection promise caching (60542cd)
- client: add createQueueClient factory with dual config support (ab97683)
- config: default global concurrency scope (f58c241)
- core,worker,config: add per-queue job retention (e7e58d0)
- migrate to Node-first pnpm workspace (npm + JSR) (788dd51)
- worker: add connection lifecycle hooks, typed errors, and refined WorkerErrorEvent (4d94038)
- worker: add leases and force shutdown (482e8a7)
- worker: add WorkerPool for managing multiple typed queue consumers (34594b6)
- worker: implement Worker with lifecycle state machine and job processing (50aaedc)
- worker: introduce definition-based worker pools (a1f3a62)
- worker: redesign event surface — single-event objects, distinct retry/fail, stall cause (b85a638)
- worker: refine event payloads — add timing, remove attempt copies, report hook failures (a22c597)
Bug Fixes
- type redis lua scripts (8260f97)
Dependencies
- The following workspace dependencies were updated
- dependencies
- @panqueue/config bumped to 0.0.2
- @panqueue/core bumped to 0.0.2
- dependencies
core: v0.0.2
0.0.2 (2026-06-12)
⚠ BREAKING CHANGES
- core: assertJsonSerializable now throws SerializationError instead of TypeError. Callers catching TypeError must update to catch SerializationError or PanqueueError.
- config,core:
QueueConfig.concurrencyis removed.metaKey()andQueueKeys.metaare removed; the meta hash is no longer used. - migrate to Node-first pnpm workspace (npm + JSR)
Features
- core,worker,config: add per-queue job retention (e7e58d0)
- core: add PanqueueError base class and SerializationError (d71ce0c)
- migrate to Node-first pnpm workspace (npm + JSR) (788dd51)
Bug Fixes
Code Refactoring
- config,core: remove concurrency config and meta Redis key (f999d7f)
config: v0.0.2
0.0.2 (2026-06-12)
⚠ BREAKING CHANGES
- config,core:
QueueConfig.concurrencyis removed.metaKey()andQueueKeys.metaare removed; the meta hash is no longer used. - client:
createQueueClient(config)is removed. Usenew QueueClient(config)instead.QueueClientOptionsis removed; the constructor acceptsPanqueueConfig(shared config, types inferred) orQueueClientConfig(standalone).QueueClientConfig.queuesis removed. - migrate to Node-first pnpm workspace (npm + JSR)
- config: default global concurrency scope
- worker: add leases and force shutdown
- config: QueueConfig.mode now accepts "global" instead of "simple"
Features
- client: add createQueueClient factory with dual config support (ab97683)
- config: add shared configuration package with definePanqueueConfig (1985f21)
- config: default global concurrency scope (f58c241)
- core,worker,config: add per-queue job retention (e7e58d0)
- migrate to Node-first pnpm workspace (npm + JSR) (788dd51)
- worker: add leases and force shutdown (482e8a7)
Bug Fixes
- type redis lua scripts (8260f97)
Code Refactoring
- client: remove createQueueClient, accept PanqueueConfig in constructor (f0e3a8c)
- config,core: remove concurrency config and meta Redis key (f999d7f)
- config: rename queue mode from "simple" to "global" (8664e43)
Dependencies
- The following workspace dependencies were updated
- dependencies
- @panqueue/core bumped to 0.0.2
- dependencies
client: v0.0.2
0.0.2 (2026-06-12)
⚠ BREAKING CHANGES
- client: RedisConnection constructor now accepts a second options argument. Disconnect is permanent — ClientClosedError is thrown on post-disconnect access.
- client:
createQueueClient(config)is removed. Usenew QueueClient(config)instead.QueueClientOptionsis removed; the constructor acceptsPanqueueConfig(shared config, types inferred) orQueueClientConfig(standalone).QueueClientConfig.queuesis removed. - migrate to Node-first pnpm workspace (npm + JSR)
- config: default global concurrency scope
- worker: Job lifecycle accounting replaces attempts with runs, failures, and stalls.
Features
- add async dispose support and connection promise caching (60542cd)
- client: add createQueueClient factory with dual config support (ab97683)
- client: add typed errors, connection lifecycle hooks, and producer defaults (757d4e0)
- config: default global concurrency scope (f58c241)
- implement job enqueue with atomic Lua script (0064fa9)
- migrate to Node-first pnpm workspace (npm + JSR) (788dd51)
- worker: introduce definition-based worker pools (a1f3a62)
Bug Fixes
- type redis lua scripts (8260f97)
Code Refactoring
- client: remove createQueueClient, accept PanqueueConfig in constructor (f0e3a8c)
Dependencies
- The following workspace dependencies were updated
- dependencies
- @panqueue/config bumped to 0.0.2
- @panqueue/core bumped to 0.0.2
- dependencies