Changelog

1.40.1 (2021-07-24)

Bug Fixes

  • connection hangs with failed connection fixes #656 (c465611)

1.40.0 (2021-07-22)

Features

  • worker: retry with delay errors in run loop (409fe7f)

1.39.5 (2021-07-21)

Bug Fixes

  • move-to-finished: remove stalled jobs when finishing (3867126)

1.39.4 (2021-07-21)

Bug Fixes

  • repeatable: validate endDate when adding next repeatable job (1324cbb)

1.39.3 (2021-07-16)

Bug Fixes

  • connect if redis client has status "wait" (f711717)

1.39.2 (2021-07-15)

Bug Fixes

  • queue: ensure the Queue constructor doesn't try to set queue options if the client is closed (b40c6eb)

1.39.1 (2021-07-15)

Bug Fixes

  • sandbox: use updateProgress method name (27d62c3)

1.39.0 (2021-07-13)

Features

  • worker+scheduler: add a "running" attribute for healthchecking (aae358e)

1.38.1 (2021-07-12)

Bug Fixes

  • reprocess: do not store job.id in added list (9c0605e)

1.38.0 (2021-07-12)

Features

  • queue: add missing events typings (b42e78c)

1.37.1 (2021-07-02)

Bug Fixes

  • stalled-jobs: move stalled jobs to wait in batches (a23fcb8), closes #422

1.37.0 (2021-06-30)

Features

  • job: add changeDelay method for delayed jobs (f0a9f9c)

1.36.1 (2021-06-22)

Bug Fixes

  • worker: change active event typing (220b4f6)

1.36.0 (2021-06-20)

Bug Fixes

  • queue-events: fix drained typing (9cf711d)

Features

  • worker: add active event typing (5508cdf)

  • worker: add progress event typing (119cb7c)

1.35.0 (2021-06-19)

Features

  • worker: add drained event typing (ed5f315)

1.34.2 (2021-06-18)

Bug Fixes

  • worker: await for processing functions (0566804)

1.34.1 (2021-06-18)

Bug Fixes

  • redis-connection: remove error event listener from client (2d70fe7)

1.34.0 (2021-06-11)

Features

1.33.1 (2021-06-10)

Bug Fixes

  • job: destructure default opts for pagination (73363a5)

1.33.0 (2021-06-10)

Features

  • job: add getDependenciesCount method (ae39a4c)

1.32.0 (2021-06-07)

Features

  • flow-producer: add getFlow method (ce93d04)

1.31.1 (2021-06-07)

Bug Fixes

  • worker: remove processed key when removeOnComplete (4ec1b73)

1.31.0 (2021-06-04)

Features

  • job: extend getDependencies to support pagination (9b61bbb)

1.30.2 (2021-06-03)

Bug Fixes

  • job: parse results in getDependencies for processed jobs (6fdc701)

1.30.1 (2021-06-02)

Bug Fixes

  • move-to-waiting-children: make opts optional (33bd76a)

1.30.0 (2021-06-02)

Features

1.29.1 (2021-05-31)

Bug Fixes

  • move-stalled-jobs-to-wait: send failedReason to queueEvents (7c510b5)

1.29.0 (2021-05-31)

Features

  • add move to waiting children for manual processing (#477) (f312f29)

1.28.2 (2021-05-31)

Bug Fixes

  • obliterate: remove job logs (ea91895)

1.28.1 (2021-05-31)

Bug Fixes

  • get-workers: use strict equality on name fixes #564 (4becfa6)

1.28.0 (2021-05-24)

Features

  • flow-producer: expose client connection (17d4263)

1.27.0 (2021-05-24)

Features

  • repeat: add immediately opt for repeat (d095573)

1.26.5 (2021-05-21)

Bug Fixes

  • movetofinished: use parent queue for events (1b17b62)

1.26.4 (2021-05-20)

Bug Fixes

  • removejob: delete processed hash (a2a5058)

1.26.3 (2021-05-19)

Bug Fixes

  • ensure connection reconnects when pausing fixes #160 (f38fee8)

1.26.2 (2021-05-18)

Bug Fixes

  • getjoblogs: no reversed pagination (fb0c3a5)

1.26.1 (2021-05-17)

Bug Fixes

  • flow-producer: use custom jobId as parentId for children fixes #552 (645b576)

1.26.0 (2021-05-16)

Features

  • custombackoff: provide job as third parameter (ddaf8dc)

1.25.2 (2021-05-16)

Bug Fixes

  • flow-producer: process parent with children as empty array fixes #547 (48168f0)

1.25.1 (2021-05-13)

Bug Fixes

  • addbulk: should not consider repeat option (c85357e)

1.25.0 (2021-05-11)

Features

  • job: add sizeLimit option when creating a job (f10aeeb)

1.24.5 (2021-05-08)

Bug Fixes

  • deps: upgrading lodash to 4.17.21 (6e90c3f)

1.24.4 (2021-05-07)

Bug Fixes

  • cluster: add redis cluster support (5a7dd14)

  • redisclient: not reference types from import (022fc04)

1.24.3 (2021-05-05)

Bug Fixes

1.24.2 (2021-05-05)

Bug Fixes

  • sandbox: handle broken processor files (2326983)

1.24.1 (2021-05-05)

Bug Fixes

1.24.0 (2021-05-03)

Features

  • add option for non-blocking getNextJob (13ce2cf)

1.23.1 (2021-05-03)

Bug Fixes

  • add return type for job.waitUntilFinished() (59ede97)

1.23.0 (2021-04-30)

Features

  • job: pass parent opts to addBulk (7f21615)

1.22.2 (2021-04-29)

Bug Fixes

1.22.1 (2021-04-28)

Bug Fixes

  • addjob: fix redis cluster CROSSSLOT (a5fd1d7)

1.22.0 (2021-04-28)

Features

  • jobcreate: allow passing parent in job.create (ede3626)

1.21.0 (2021-04-26)

Features

  • add typing for addNextRepeatableJob (a3be937)

1.20.6 (2021-04-25)

Bug Fixes

  • movetocompleted: should not complete before children (812ff66)

1.20.5 (2021-04-23)

Bug Fixes

  • obliterate: correctly remove many jobs (b5ae4ce)

1.20.4 (2021-04-23)

Bug Fixes

1.20.3 (2021-04-23)

Bug Fixes

1.20.2 (2021-04-22)

Bug Fixes

  • movetodelayed: check if job is in active state (4e63f70)

1.20.1 (2021-04-22)

Bug Fixes

  • worker: make token optional in processor function fixes #490 (3940bd7)

1.20.0 (2021-04-21)

Features

  • worker: passing token in processor function (2249724)

1.19.3 (2021-04-20)

Bug Fixes

  • movetocompleted: throw an error if job is not in active state (c2fe5d2)

1.19.2 (2021-04-19)

Bug Fixes

1.19.1 (2021-04-19)

Bug Fixes

  • remove repeatable with obliterate (1c5e581)

1.19.0 (2021-04-19)

Features

  • add workerDelay option to limiter (9b6ab8a)

1.18.2 (2021-04-16)

Bug Fixes

  • add parentKey property to Job (febc60d)

1.18.1 (2021-04-16)

Bug Fixes

  • rename Flow to FlowProducer class (c64321d)

1.18.0 (2021-04-16)

Features

  • add remove support for flows (4e8a7ef)

1.17.0 (2021-04-16)

Features

  • job: consider waiting-children state (2916dd5)

1.16.2 (2021-04-14)

Bug Fixes

  • read lua scripts serially (69e73b8)

1.16.1 (2021-04-12)

Bug Fixes

1.16.0 (2021-04-12)

Features

  • add support for flows (parent-child dependencies) (#454) (362212c)

1.15.1 (2021-03-19)

Bug Fixes

  • obliterate: safer implementation (82f571f)

1.15.0 (2021-03-18)

Features

  • add method to "obliterate" a queue, fixes #430 (624be0e)

1.14.8 (2021-03-06)

Bug Fixes

  • specify promise type to make TS 4.1 and 4.2 happy. (#418) (702f609)

1.14.7 (2021-02-16)

Bug Fixes

  • remove "client" property of QueueBaseOptions (#324) (e0b9e71)

1.14.6 (2021-02-16)

Bug Fixes

  • remove next job in removeRepeatableByKey fixes #165 (fb3a7c2)

1.14.5 (2021-02-16)

Bug Fixes

  • add jobId support to repeatable jobs fixes #396 (c2dc669)

1.14.4 (2021-02-08)

Bug Fixes

1.14.3 (2021-02-07)

Bug Fixes

  • worker: avoid possible infinite loop fixes #389 (d05566e)

1.14.2 (2021-02-02)

Bug Fixes

  • improve job timeout notification by giving the job name and id in the error message (#387) (ca886b1)

1.14.1 (2021-02-01)

Bug Fixes

  • job finish queue events race condition (355bca5)

1.14.0 (2021-01-06)

Features

  • job: expose extendLock as a public method (17e8431)

1.13.0 (2020-12-30)

Features

  • add support for manually processing jobs fixes #327 (e42bfd2)

1.12.3 (2020-12-28)

Bug Fixes

  • correctly handle "falsy" data values fixes #264 (becad91)

  • worker: setname on worker blocking connection (645b633)

1.12.2 (2020-12-23)

Bug Fixes

1.12.1 (2020-12-21)

Bug Fixes

  • correctly handle "falsy" data values fixes #264 (cf1dbaf)

1.12.0 (2020-12-16)

Features

  • add ability to get if queue is paused or not (e98b7d8)

1.11.2 (2020-12-15)

Bug Fixes

  • promote jobs to the right "list" when paused (d3df615)

1.11.1 (2020-12-15)

Bug Fixes

  • clientCommandMessageReg to support GCP memorystore v5 (8408dda)

1.11.0 (2020-11-24)

Bug Fixes

  • add generic type to processor (d4f6501)

Features

  • add name and return types to queue, worker and processor (4879715)

1.10.0 (2020-10-20)

Bug Fixes

  • job: remove listeners before resolving promise (563ce92)

  • worker: continue processing if handleFailed fails. fixes #286 (4ef1cbc)

  • worker: fix memory leak on Promise.race (#282) (a78ab2b)

  • worker: setname on worker blocking connection (#291) (50a87fc)

  • remove async for loop in child pool fixes #229 (d77505e)

Features

  • sandbox: kill child workers gracefully (#243) (4262837)

1.9.0 (2020-07-19)

Features

  • add grouped rate limiting (3a958dd)

1.8.14 (2020-07-03)

Bug Fixes

  • typescript: fix typings, upgrade ioredis dependencies (#220) (7059f20)

  • worker: return this.closing when calling close (b68c845)

1.8.13 (2020-06-05)

Bug Fixes

  • redis-connection: run the load command for reused redis client (fab9bba)

1.8.12 (2020-06-04)

Bug Fixes

1.8.11 (2020-05-29)

Bug Fixes

  • scheduler: remove unnecessary division by 4096 (4d25e95)

1.8.10 (2020-05-28)

Bug Fixes

  • scheduler: divide timestamp by 4096 in update set fixes #168 (0c5db83)

1.8.9 (2020-05-25)

Bug Fixes

  • scheduler: divide next timestamp by 4096 (#204) (9562d74)

1.8.8 (2020-05-25)

Bug Fixes

  • queue-base: error event is passed through (ad14e77)

  • redis-connection: error event is passed through (a15b1a1)

  • worker: error event is passed through (d7f0374)

1.8.7 (2020-04-10)

Bug Fixes

  • worker: do not use global child pool fixes #172 (bc65f26)

1.8.6 (2020-04-10)

Bug Fixes

  • workers: do not call super.close() (ebd2ae1)

  • make sure closing is returned in every close call (88c5948)

  • scheduler: duplicate connections fixes #174 (011b8ac)

  • worker: return this.closing when calling close (06d3d4f)

1.8.5 (2020-04-05)

Bug Fixes

  • removed deprecated and unused node-uuid (c810579)

1.8.4 (2020-03-17)

Bug Fixes

  • job: added nullable/optional properties (cef134f)

1.8.3 (2020-03-13)

Bug Fixes

  • sandbox: If the child process is killed, remove it from the pool. (8fb0fb5)

1.8.2 (2020-03-03)

Bug Fixes

  • restore the Job timestamp when deserializing JSON data (#138) (#152) (c171bd4)

1.8.1 (2020-03-02)

Bug Fixes

  • modified imports to work when esModuleInterop is disabled (#132) (01681f2)

1.8.0 (2020-03-02)

Bug Fixes

  • cleanup signatures for queue add and addBulk (#127) (48e221b)

  • exit code 12 when using inspect with child process (#137) (43ebc67)

Features

  • types: add sandboxed job processor types (#114) (a50a88c)

1.7.0 (2020-03-02)

Features

1.6.8 (2020-02-22)

Bug Fixes

  • modified QueueGetters.getJob and Job.fromId to also return null to (65183fc)

  • modified QueueGetters.getJob and Job.fromId to return undefined (ede352b)

1.6.7 (2020-01-16)

Bug Fixes

  • don't fail a job when the worker already lost the lock (23c0bf7)

1.6.6 (2020-01-05)

Bug Fixes

  • remove duplicate active entry (1d2cca3)

1.6.5 (2020-01-05)

Bug Fixes

  • get rid of flushdb/flushall in tests (550c67b)

1.6.4 (2020-01-05)

Bug Fixes

  • delete logs when cleaning jobs in set (b11c6c7)

1.6.3 (2020-01-01)

Bug Fixes

1.6.2 (2019-12-16)

Bug Fixes

  • change default QueueEvents lastEventId to $ (3c5b01d)

  • ensure QE ready before adding test events (fd190f4)

  • explicitly test the behavior of .on and .once (ea11087)

1.6.1 (2019-12-16)

Bug Fixes

  • check of existing redis instance (dd466b3)

1.6.0 (2019-12-12)

Features

  • add generic type to job data and return value (87c0531)

1.5.0 (2019-11-22)

Features

1.4.3 (2019-11-21)

Bug Fixes

  • check in moveToFinished to use default val for opts.maxLenEvents (d1118aa)

1.4.2 (2019-11-21)

Bug Fixes

  • avoid Job<->Queue circular json error (5752727)

  • avoid the .toJSON serializer interface #70 (5941b82)

1.4.1 (2019-11-08)

Bug Fixes

1.4.0 (2019-11-06)

Features

  • job.progress() return last progress for sandboxed processors (5c4b146)

1.3.0 (2019-11-05)

Features

  • test worker extends job lock while job is active (577efdf)

1.2.0 (2019-11-03)

Bug Fixes

  • only run coveralls after success (bd51893)

Features

  • added code coverage and coveralls (298cfc4)

  • added missing deps for coverage (6f3ab8d)

  • ignore commitlint file in coverage (f874441)

  • only upload coverage once after all tests pass (a7f73ec)

1.1.0 (2019-11-01)

Bug Fixes

Features

  • initial version of job locking mechanism (1d4fa38)

1.0.1 (2019-10-27)

Bug Fixes

  • save job stacktrace on failure (85dfe52)

  • simplify logic for stackTraceLimit (296bd89)

1.0.0 (2019-10-20)

Bug Fixes

  • add compilation step before running tests (64abc13)

  • add extra client to worker fixes #34 (90bd891)

  • add missing dependency (b92e330)

  • check closing after resuming from pause (7b2cef3)

  • default opts (333c73b)

  • do not block if blockTime is zero (13b2df2)

  • do not exec if closing (b1d1c08)

  • do not trim if maxEvents is undefined (7edd8f4)

  • emit wait event in add job (39cba31)

  • fix a couple of job tests (e66b97b)

  • fix compiling error (3cf2617)

  • fix more tests (6a07b35)

  • fix progress script (4228e27)

  • fix retry functionality (ec41ea4)

  • fix several floating promises (590a4a9)

  • fixed reprocess lua script (b78296f)

  • improve concurrency mechanism (a3f6148)

  • improve disconnection for queue events (56b53a1)

  • initialize events comsumption in constructor (dbb66cd)

  • make ioredis typings a normal dependency (fb80b90)

  • minor fixes (7791cda)

  • parse progres and return value in events (9e43d0e)

  • properly emit event for progress (3f70175)

  • reduce drain delay to 5 seconds (c6cfe7c)

  • remove buggy close() on redis-connection (fixes 5 failing tests) (64c2ede)

  • remove unused dependencies (34293c8)

  • replace init by waitUntilReady (4336161)

  • reworked initialization of redis clients (c17d4be)

  • several fixes to make the lib work on other ts projects (3cac1b0)

  • throw error messages instead of codes (9267541)

  • update tests after merge (51f75a4)

  • wait until ready before trying to get jobs (f3b768f)

  • connections: reused connections (1e808d2)

  • waitUntilFinished improvements (18d4afe)

Features

  • add cleaned event (c544775)

  • add empty method (4376112)

  • add retry errors (f6a7990)

  • add script to generate typedocs (d0a8cb3)

  • add some new tests for compat class, more minor fixes (bc0f653)

  • add support for adding jobs in bulk (b62bddc)

  • add trimEvents method to queue client (b7da7c4)

  • automatically trim events (279bbba)

  • emit global stalled event fixes #10 (241f229)

  • get rid of Job3 in favor of bullmq Job class (7590cea)

  • implement close in redis connection fixes #8 (6de8b48)

  • make delay in backoffs optional (30d59e5)

  • move async initialization to constructors (3fbacd0)

  • port a lot of functionality from bull 3.x (ec9f3d2)

  • port more features from bull 3.x (75bd261)

  • ported tests and functionality from bull 3 (1b6b192)

  • workers: support for async backoffs (c555837)

  • remove support of bull3 config format in compat class (d909486)

  • support global:progress event (60f4d85)

  • trim option to event stream #21 & fix #17 (7eae653)

Changelog

4.0.0-beta.2

Fixed

  • Removed humans, they weren't doing fine with animals.

Changed

  • Animals are now super cute, all of them.

4.0.0-beta.1

Added

  • Introduced animals into the world, we believe they're going to be a neat addition.

4.0.0-beta.0