Releases: boringnode/queue
Knex adapter & connection management
This release adds a Knex adapter, bringing SQL database support alongside Redis.
Connection handling has been improved: Redis now only closes connections it owns, making it safer to use shared/external connections. Adapter instances are now cached to avoid unnecessary re-instantiation.
On the performance side, pool filling now uses parallelized pop operations for faster job retrieval.
Commits
- feat(adapter): add knex adapter (c41fc8b)
- fix(manager): cache adapter instances (8cd76b8)
- feat(redis): only quit the connection when we own it (89cb921)
- docs(readme): add benchmark value with 100k jobs (45579d9)
- docs(readme): update benchmark results with real stuff (b998045)
- refactor(benchmark): allow to take duration as a params (df13753)
- refactor(worker): parallelize pop for filling the pool (15cdc86)
Full Changelog: v0.0.1-alpha.0...v0.0.1-alpha.1
Concurrency overhaul & reliability fixes
This release introduces a JobPool system for proper concurrency management, along with worker timeouts via AbortSignal. The Redis adapter has been refactored to use atomic Lua scripts, replacing the previous lock-based approach for better performance.
Workers now ensure pool completion before shutdown, making graceful termination more predictable.
Commits
- docs(readme): add more features (784f410)
- docs(readme): add benchmark section (b12d59f)
- test(adapter): improve active tracking cleanup (c7c785f)
- refactor(redis): remove verrou in favor of atomic lua script (ba69213)
- refactor(redis): do not check for delayed jobs every pop (648163e)
- chore: add some benchmark (458763e)
- refactor(worker): use AbortSignal for timeout (1da0daa)
- fix(worker): remove console.log (7830615)
- fix(worker): avoid memory leak with job initialization fail (47442eb)
- fix(worker): avoid memory leak when job class is not found (eed85f5)
- fix(worker): avoid memory leak by releasing the lease when job fail (db5fdd3)
- style: lint (62f34d6)
- fix(worker): ensure pool completion before shutting down (690cf06)
- style: lint fix (8e89885)
- feat(worker): add timeout possibility (8ac461f)
- feat: use job pool to ensure proper concurrency (38fd333)
- feat: add JobPool system (34bbbc8)
- chore: add basic readme (96ee73d)
Full Changelog: v0.0.1-alpha...v0.0.1-alpha.0
v0.0.1-alpha
Commits
- feat: setup build process (284c174)
- fix: correct typescript typing (d7539fc)
- chore: initial commit (d2548ce)
Full Changelog: https://github.com/boringnode/queue/commits/v0.0.1-alpha