Changelog

7.5.0 (2024-04-10)

Bug Fixes

  • worker: use 0.002 as minimum timeout for redis version lower than 7.0.8 (#2515) fixes #2466 (44f7d21)

Features

  • allow arbitrary large drainDelay (9693321)

Performance Improvements

  • stalled: remove jobId from stalled after removing lock when moved from active (#2512) (python) (64feec9)

  • add-to-group: skip reinsertion of group (#215) (6823251)

7.4.1 (2024-04-07)

Bug Fixes

7.4.0 (2024-04-04)

Bug Fixes

  • connection: ignore error when setting custom end status (#2473) (3e17e45)

  • job: stack trace limit (#2487) (cce3bc3)

  • scripts: use command name in error message when moving to finished (#2483) (3c335d4)

  • queue: use QueueOptions type in opts attribute (#2481) (51a589f)

  • worker: validate drainDelay must be greater than 0 (#2477) (ab43693)

Features

  • getters: add getWorkersCount (743c7aa)

7.3.1 (2024-03-30)

Bug Fixes

  • group-limit: set rate limiting even when group is empty (#212) (08824cf)

7.3.0 (2024-03-16)

Bug Fixes

  • deps: move fast-glob and minimatch as dev-dependencies (#2452) (cf13b31)

  • worker: set blockTimeout as 0.001 when reach the time to get delayed jobs (#2455) fixes #2450 (2de15ca)

Features

7.2.0 (2024-03-15)

Bug Fixes

  • deps: replaced glob by fast-glob due to security advisory (91cf9a9)

  • sandbox: extend SandboxedJob from JobJsonSandbox (#2446) fixes #2439 (7606e36)

  • add-job: fix parent job cannot be replaced error message (#2441) (1e9a13f)

Features

  • worker: add support for naming workers (7ba2729)

7.1.0 (2024-03-14)

Bug Fixes

  • flow: remove failed children references on auto removal (#2432) (8a85207)

  • redis-connection: close redis connection even when initializing (#2425) fixes #2385 (1bc26a6)

Features

  • flow: add ignoreDependencyOnFailure option (#2426) (c7559f4)

7.0.0 (2024-03-12)

Bug Fixes

  • worker: update processor types (#193) (8ebb72e)

  • flow: parent job cannot be replaced (python) (#2417) (2696ef8)

  • reprocess-job: add marker if needed (#2406) (5923ed8)

  • rate-limit: move job to wait even if ttl is 0 (#2403) (c1c2ccc)

  • stalled: consider adding marker when moving job back to wait (#2384) (4914df8)

  • retry-jobs: add marker when needed (#2374) (1813d5f)

  • security: upgrade msgpackr https://github.com/advisories/GHSA-7hpj-7hhx-2fgx (7ae0953)

  • worker: worker can be closed if Redis is down (#2350) (888dcc2)

  • worker: throw error if connection is missing (6491a18)

Features

Performance Improvements

  • marker: differentiate standard and delayed markers (python) (#2389) (18ebee8)

  • change-delay: add delay marker when needed (#2411) (8b62d28)

  • flow: add marker when moving parent to wait (python) (#2408) (6fb6896)

  • move-to-active: check rate limited once (#2391) (ca6c17a)

BREAKING CHANGES

6.11.0 (2024-02-26)

Features

  • expose sandboxed-job-pro interface (6652e0a)

6.10.0 (2024-02-21)

Features

  • groups: add sandbox support for groups (53be7a0)

6.9.6 (2024-01-31)

Bug Fixes

  • groups: remove group when removing last job (#199) (3066686)

6.9.5 (2024-01-27)

Bug Fixes

  • batches: differentiate movetoBatchFinished responses (#198) (bb74c50)

6.9.4 (2024-01-20)

Bug Fixes

  • backoff: set marker after adding delayed job (#197) (50a012e)

6.9.3 (2024-01-18)

Performance Improvements

  • prioritized: get target list once in addPrioritizedJob (#195) (51cf4a3)

6.9.2 (2024-01-17)

Bug Fixes

  • groups: consider prioritized groups when maxSize is provided (#194) (1c345c5)

6.9.1 (2024-01-15)

Bug Fixes

  • events: emit drained event only when finishing jobs (#192) (22a503d)

6.9.0 (2023-12-28)

Bug Fixes

  • flows: update constructor and methods to match queue base (#2324) (d6c2064)

  • sandboxed: better compatibility with esbuild (8eaf955)

  • child-processor: preserve dynamic imports in commonjs (d97a5e0)

  • flows: add meta key to queues created with flows (272ec69)

  • repeat-strategy: add missing Promise return type (#2301) (6f8f534)

  • update-progress: remove old updateProgress script to prevent conflict (#2298) (python) (e65b819)

  • worker: get dirname by using module.filename (#2296) fixes #2288 (6e4db5a)

  • worker: should cap update progress events (2cab9e9)

Features

  • sandbox: support URL (local files) as processor file (7eea670)

  • queue: add a paginated getDependencies (#2327) (c5b8ba3)

  • sandboxes: use the more compatible dynamic import instead of require (6d2fe6e)

6.8.0 (2023-11-30)

Bug Fixes

  • worker: do not wait for slow jobs fixes #2290 (568d758)

  • utils: use EventEmitter as a type instead of a namespace (#2283) (41c9d1d)

  • job: set delay value on current job instance when it is retried (#2266) (python) (76e075f)

Features

  • worker: better handling of concurrency when fetching jobs (#2242) (d2e2035)

Performance Improvements

  • rate-limit: continue promoting groups when there are in paused state (#187) (17f9e81)

6.7.0 (2023-11-22)

Features

Bug Fixes

  • utils: use EventEmitter as a type instead of a namespace (#2283) (41c9d1d)

  • job: set delay value on current job instance when it is retried (#2266) (python) (76e075f)

  • connection: better handling of attached listeners (02474ad)

  • connection: move redis instance check to queue base (13a339a)

  • update delay job property when moving to delayed set (#2261) (69ece08)

  • add-job: trim events when waiting-children event is published (#2262) (python) (198bf05)

6.6.2 (2023-11-03)

Bug Fixes

  • worker: keep extending locks while closing workers (#2259) (c4d12ea)

  • sandbox: do not return empty object result when it is undefined (#2247) (308db7f)

  • events: do not publish removed event on non-existent jobs (#2227) (c134606)

Performance Improvements

  • redis-connection: check redis version greater or equal than v6 only once (#2252) (a09b15a)

  • events: trim events when removing jobs (#2235) (python) (889815c)

6.6.1 (2023-10-11)

Bug Fixes

6.6.0 (2023-10-06)

Bug Fixes

  • delayed: trim events when moving jobs to delayed (python) (#2211) (eca8c2d)

Features

  • queue: expose addJobLog and updateJobProgress (#2202) (2056939)

6.5.0 (2023-09-28)

Features

  • sandbox: convert wrapJob method as protected for extension (#2182) (1494b55)

Bug Fixes

  • queue: batched unpack now uses range (#2188) (b5e97f4)

  • worker: forward skipVersionCheck to blockingConnection (#2189) ref #2149 (c8aa9a3)

  • worker: throw exception with NaN as concurrency (#2184) (f36ac8b)

  • queue: differentiate score purpose per state in clean method (#2133) fixes #2124 (862f10b)

6.4.0 (2023-09-16)

Features

Bug Fixes

  • remove: change error message when job is locked (python) (#2175) (2f5628f)

  • sandbox: ignore extra params on processor (#2142) (3602c20)

6.3.4 (2023-08-18)

Bug Fixes

  • worker: abort rate-limit delay when closing worker (#179) (4ad650b)

6.3.3 (2023-08-15)

Bug Fixes

  • queue: throw error when name is not provided (#178) (9715bf1)

6.3.2 (2023-08-11)

Bug Fixes

  • correct group rate limit in some edge cases (#177) (c3c87a7)

6.3.1 (2023-08-10)

Performance Improvements

6.3.0 (2023-08-03)

Features

6.2.4 (2023-07-29)

Bug Fixes

6.2.3 (2023-07-27)

Performance Improvements

  • groups: do not move job to paused when promoting rate-limited group (#169) (fa2bb3c)

6.2.2 (2023-07-26)

Features

  • queue: add promoteJobs to promote all delayed jobs (6074592)

  • job: add option for removing children in remove method (python) (#2064) (841dc87)

  • job: add removeDependencyOnFailure option (#1953) (ffd49e2)

6.2.1 (2023-07-25)

Bug Fixes

  • flow: emit delayed event when parent is moved to delayed (#166) (38afe1c)

6.2.0 (2023-07-25)

Features

6.1.1 (2023-07-18)

Bug Fixes

6.1.0 (2023-07-18)

Bug Fixes

  • fix the GroupMaxSizeExceededError prototype (a1b6a96)

Features

6.0.5 (2023-07-11)

Bug Fixes

  • pause-group: do not move job to wait when queue is paused (#162) (458b381)

6.0.4 (2023-07-07)

Bug Fixes

  • group: move job into group list when paused and dynamic rate limit (#161) (1625f36)

6.0.3 (2023-07-05)

Bug Fixes

  • rate-limit: emit waiting event in rateLimitGroup (#160) (eaf3cd7)

6.0.2 (2023-07-04)

Performance Improvements

  • remove-job: do not remove last group id (#159) (f5a3cd5)

6.0.1 (2023-06-29)

Bug Fixes

  • job: save groupId even when the job is a parent (#157) (1debbf4)

6.0.0 (2023-06-26)

Performance Improvements

  • priority: add prioritized as a new state (#155) (b2391ca)

BREAKING CHANGES

  • priority: priority is separated in its own zset, no duplication needed

  • change job method name update to updateData

ref faster priority jobs

5.3.5 (2023-06-16)

Bug Fixes

  • rate-limit: keep priority fifo order (#1991) fixes #1929 (python) (56bd7ad)

  • worker: set redis version always in initialization (#1989) fixes #1988 (a1544a8)

  • worker: use timeout as integer for redis lower than v6.0.0 (python) (#1981) (0df6afa)

  • retry-job: consider priority when moving job to wait (python) (#1969) (e753855)

  • job: import right reference of QueueEvents (#1964) (689c845)

  • job: use QueueEvents type for waitUntilFinished (#1958) (881848c)

  • worker: better worker client naming (c5f63af)

5.3.4 (2023-06-06)

Features

Bug Fixes

5.3.3 (2023-05-30)

Bug Fixes

  • rate-limit: take groups in count in global rate limit counter (#151) (3d8b28d)

5.3.2 (2023-05-24)

Bug Fixes

5.3.1 (2023-05-23)

Bug Fixes

  • remove-job: consider decreasing group concurrency (#149) (25068e2)

5.3.0 (2023-05-23)

Features

  • add support for job batches (1db0c94)

5.2.5 (2023-05-20)

Bug Fixes

  • retry-job: consider promoting delayed jobs (#147) (3efd39e)

5.2.4 (2023-05-16)

Bug Fixes

  • rate-limit: consider groups when global dynamic rate limit (#145) (6f5d1e3)

5.2.3 (2023-05-09)

Features

  • worker: add worker threads support (0820985)

  • upgrade ioredis to 5.3.2 (375b1be)

Bug Fixes

5.2.2 (2023-04-18)

Features

  • upstash: don't throw an error when detecting an upstash host (2e06bca) ref (#143)

5.2.1 (2023-04-15)

Bug Fixes

  • flow-producer-pro: fix opts assignment (#140) (9f8896c)

5.2.0 (2023-03-23)

Features

  • groups: add repair maxed group function (a1fa1d8)

5.1.15 (2023-03-23)

Bug Fixes

  • job: avoid error when job is moved when processing (#1354) fixes #1343 #1602 (78085e4)

  • worker: throw error with invalid concurrency fixes #1723 (2a1cdbe)

  • worker: close lock extended timer (7995f18)

  • worker: correct lock extender logic (6aa3569)

  • worker: start stalled check timer (4763be0)

  • worker: run stalled check directly first time (f71ec03)

  • worker: restore failed event job parameter typing (#1707) (44c2203)

  • worker: failed event receives an optional job parameter (#1702) fixes #1690 (6009906)

Features

  • worker: replace Promise.race with efficient an async fifo (0d94e35) ref (#138)

  • worker: simplify lock extension to one call independent of concurrency (ebf1aeb)

  • worker: add remove on complete and fail options (#1703) (cf13494)

  • worker: add a public method to run the stalled checker (3159266)

  • worker: add support to disable stalled checks (49e860c)

Performance Improvements

  • scripts: reuse keys array to avoid allocations (feac7b4)

  • worker: improve worker memory consumption (4846cf1)

  • move-to-active: remove deprecated limiter reference (#1673) (a97b22f)

5.1.14 (2023-02-15)

Bug Fixes

  • job: check jobKey when saving stacktrace (#1681) fixes #1676 (1856c76)

  • infinite worker process spawned for invalid JS file (a445ba8)

  • worker: add a maximum block time (1a2618b)

5.1.13 (2023-02-07)

Bug Fixes

  • master: copy type declaration (23ade6e)

  • redis: increase minimum default retry time (d521531)

  • connection: apply console.warn in noeviction message (95f171c)

  • error: remove global prototype toJSON (#1642) fixes #1414 (d4e7108)

  • rate-limit: update group concurrency after manual rate-limit (de66ec4)

Features

5.1.12 (2023-01-26)

Bug Fixes

  • move-to-finished: return correct delayUntil (#1643) (c4bf9fa)

  • worker: fix delayed jobs with concurrency fixes #1627 (99a8e6d)

  • move-to-active: delete marker when it is moved to active (#1634) (ad1fcea)

  • move-to-active: validate next marker and return delayUntil (#1630) (3cd3305)

  • worker: add max concurrency from the beginning (#1597) fixes #1589 (6f49db3)

5.1.11 (2023-01-10)

Bug Fixes

Performance Improvements

  • get-dependencies: replace slow object destructuring with single object (#1612) (621748e)

5.1.10 (2022-12-29)

Bug Fixes

Features

5.1.9 (2022-12-23)

Bug Fixes

5.1.8 (2022-12-22)

Bug Fixes

  • worker: avoid calling run on base class (aba70f3)

5.1.7 (2022-12-16)

Performance Improvements

  • counts: delete delayed marker when needed (#1583) (cc26f1c)

  • get-children-values: replace slow object destructuring with single object (#1586) (857d403)

5.1.6 (2022-12-15)

Bug Fixes

5.1.5 (2022-12-13)

Bug Fixes

Features

  • worker: add ready event for blockingConnection (#1577) (992cc9e)

5.1.4 (2022-12-08)

Bug Fixes

  • rate-limit-group: several small fixes related to manual group rate limit. (5b338d6)

5.1.3 (2022-12-08)

Bug Fixes

  • worker: try catch setname call (#1576) fixes #1574 (0c42fd8)

  • do not allow move from active to wait if not owner of the job (dc1a307)

  • floor pexpire to integer (1d5de42)

  • get-workers: set name when ready event in connection (#1564) (de93c17)

  • job: console warn custom job ids when they represent integers (#1569) (6e677d2)

  • add-job: throw error when jobId represents an integer (#1556) (db617d7)

Features

5.1.2 (2022-12-07)

Bug Fixes

5.1.1 (2022-12-05)

Bug Fixes

  • remove-job: check for nil as groupId instead of empty string (#119) (dd63c23)

5.1.0 (2022-11-29)

Features

  • add support for manually rate-limit groups (64006ee)

5.0.3 (2022-11-26)

Bug Fixes

  • global-rate-limit: move job into group list (#116) (75384c4)

5.0.2 (2022-11-25)

Performance Improvements

  • groups: check rate-limit when moving job to active (#117) (d247983)

5.0.1 (2022-11-23)

Bug Fixes

  • ttl: throw error when it's not provided as positive number (#115) (2d8ef2a)

5.0.0 (2022-11-22)

Bug Fixes

BREAKING CHANGES

  • Change global rate limit Move jobs to wait or groups when global rate limit

4.0.3 (2022-11-19)

Bug Fixes

4.0.2 (2022-11-08)

Bug Fixes

4.0.1 (2022-11-07)

Bug Fixes

4.0.0 (2022-10-27)

Bug Fixes

  • job: send failed event when failParentOnFailure (#1481) fixes #1469 (b20eb6f)

  • redis: replace throw exception by console.error (fafa2f8)

  • connection: validate array of strings in Cluster (#1468) fixes #1467 (8355182)

  • worker: clear stalled jobs timer when closing worker (1567a0d)

  • getters: fix return type of getJobLogs (d452927)

  • sandbox: get open port using built-in module instead of get-port (#1446) (6db6288)

  • job: update delay value when moving to wait (#1436) (9560915)

  • connection: throw error when no noeviction policy (3468390)

  • compat: remove Queue3 class (#1421) (fc797f7)

  • delayed: promote delayed jobs instead of picking one by one (1b938af)

  • delayed: remove marker when promoting delayed job (1aea0dc)

  • getters: compensate for "mark" job id (231b9aa)

  • sandbox: remove progress method (b43267b)

  • stalled-jobs: handle job id 0 (829e6e0)

  • worker: do not allow stalledInterval to be less than zero (831ffc5)

  • worker: use connection closing to determine closing status (fe1d173)

Features

  • redis-connection: allow providing scripts for extension (#1472) (f193cfb)

  • flow-producer: allow parent opts in root job when adding a flow (#1110) ref #1097 (3c3ac71)

  • job-options: add failParentOnFailure option (#1339) (65e5c36)

  • improve delayed jobs and remove QueueSchedulerPro (1f66e5a)

  • move stalled jobs check and handling to WorkerPro class from QueueSchedulerPro (13769cb)

Performance Improvements

  • scripts: pre-build scripts (#1441) (7f72603)

  • events: remove data and opts from added event (e13d4b8)

BREAKING CHANGES

  • Remove QueueSchedulerPro class. WorkerPro class should handle QueueSchedulerPro functionalities.

  • compat: The compatibility class for Bullv3 is no longer available.

  • Failed and stalled events are now produced by the WorkerPro class instead of by the QueueSchedulerPro.

  • The minimum Redis recommended version is 6.2.0.

3.0.0 (2022-10-18)

Bug Fixes

  • groups: do not parse gid when deserializing jobs fixes #25 (b03a1e9)

BREAKING CHANGES

  • groups: Group ids must be strings. Numbers are not allowed anymore.

Fixes https://github.com/taskforcesh/bullmq-pro-support/issues/25

2.7.1 (2022-10-13)

Bug Fixes

  • delete-groups: consider rate-limit, max concurrency and paused (#104) (29873f8)

2.7.0 (2022-10-11)

Features

2.6.0 (2022-10-11)

Features

2.5.0 (2022-10-11)

Features

  • add getGroupsByStatus method to getters (949e93b)

2.4.14 (2022-10-07)

Bug Fixes

  • delete-group: consider max-concurrency state (#98) (d897dd9)

2.4.13 (2022-10-05)

Bug Fixes

  • delete-group: consider rate-limit state (#97) (85f7f32)

2.4.12 (2022-09-30)

Bug Fixes

  • global-rate-limit: consider groups (#95) (de95fde)

2.4.11 (2022-09-29)

Bug Fixes

2.4.10 (2022-09-14)

Bug Fixes

2.4.9 (2022-09-13)

Performance Improvements

  • script-loader: use cache to read script once (#93) (04bbeec)

2.4.8 (2022-09-09)

Bug Fixes

  • concurrency: consider base rate limit (#90) (74a4a0b)

2.4.7 (2022-09-06)

Bug Fixes

  • flow-producer-pro: use interim class (#92) (2406cc3)

2.4.6 (2022-09-06)

Bug Fixes

2.4.5 (2022-08-30)

Bug Fixes

2.4.4 (2022-08-30)

Bug Fixes

2.4.3 (2022-08-26)

Bug Fixes

  • waiting-children: consider decreasing group concurrency (#86) (be430a7)

2.4.2 (2022-08-25)

Bug Fixes

2.4.1 (2022-08-18)

Bug Fixes

2.4.0 (2022-08-16)

Features

2.3.13 (2022-08-13)

Bug Fixes

2.3.12 (2022-08-11)

Bug Fixes

  • observables: guarantee store result order (f963557)

  • observables: store last value as returnvalue (7306ae2)

2.3.11 (2022-08-09)

Bug Fixes

2.3.10 (2022-08-03)

Performance Improvements

  • move-to-finished: pass keepJobs into opts arg (#78) (08eb23f)

2.3.9 (2022-08-01)

Bug Fixes

2.3.8 (2022-08-01)

Bug Fixes

  • move-to-active: use local jobId instead of global reference (#77) (1f0b8dd)

2.3.7 (2022-07-28)

Bug Fixes

2.3.6 (2022-07-26)

Performance Improvements

  • retry-jobs: add jobs in batches when groupId is present (#72) (3961da0)

2.3.5 (2022-07-20)

Bug Fixes

2.3.4 (2022-07-16)

Bug Fixes

  • scripts: use tonumber on timestamp args (#71) (5c6a62d)

2.3.3 (2022-07-12)

Bug Fixes

2.3.2 (2022-07-09)

Bug Fixes

  • concurrency: consider retry backoff strategy (#68) (99f17bd)

2.3.1 (2022-07-01)

Bug Fixes

2.3.0 (2022-07-01)

Features

2.2.3 (2022-06-30)

Bug Fixes

  • queue-pro: fix addBulk opts typing (#66) (8b73ed9)

2.2.2 (2022-06-28)

Bug Fixes

  • pause-group: return boolean for execution success (#64) (b665b82)

2.2.1 (2022-06-25)

Bug Fixes

  • groups: rename paused and resumed events in QueueEventsPro (#63) (e2d6abf)

2.2.0 (2022-06-24)

Features

  • pause-group: allow pausing specific group (#61) ref #25 (a5ec201)

2.1.6 (2022-06-10)

Bug Fixes

2.1.5 (2022-06-09)

Bug Fixes

2.1.4 (2022-06-08)

Bug Fixes

2.1.3 (2022-05-25)

Bug Fixes

2.1.2 (2022-05-20)

Bug Fixes

2.1.1 (2022-05-18)

Bug Fixes

  • flow-producer: use JobPro instances (#54) (578d3db)

2.1.0 (2022-05-17)

Features

  • get-state: consider checking groups (#53) (1dad072)

2.0.3 (2022-05-07)

Bug Fixes

2.0.2 (2022-04-27)

Bug Fixes

  • stalled: allow easy transition for stalled changes (#50) (ce40ead)

2.0.1 (2022-04-22)

Bug Fixes

2.0.0 (2022-04-20)

Features

  • groups: improve addGroups to return all groups statuses (3f01d66)

BREAKING CHANGES

  • groups: In order to make the group getter consistent for all statuses we are changing the SET type for groups:active to ZSET. Also we rename the ZSET to groups:max as it represent groups that have maxed the concurrency.

1.4.1 (2022-04-19)

Bug Fixes

1.4.0 (2022-04-12)

Features

1.3.5 (2022-04-06)

Bug Fixes

1.3.4 (2022-03-26)

Bug Fixes

1.3.3 (2022-03-23)

Bug Fixes

1.3.2 (2022-03-16)

Bug Fixes

  • correctly handle stalled jobs when using groups (#37) (97ed889)

1.3.1 (2022-03-16)

Bug Fixes

1.3.0 (2022-03-10)

Features

  • add support for max concurrency per group (d4afb21)

1.2.5 (2022-03-08)

Bug Fixes

1.2.4 (2022-02-17)

Bug Fixes

1.2.3 (2022-02-03)

Bug Fixes

1.2.2 (2022-01-29)

Bug Fixes

1.2.1 (2022-01-13)

Bug Fixes

1.2.0 (2021-12-17)

Features

1.1.6 (2021-12-08)

Bug Fixes

  • bullmq: use fixed version for 1.55.1 (#23) (81368de)

1.1.5 (2021-12-04)

Bug Fixes

1.1.4 (2021-12-02)

Bug Fixes

1.1.3 (2021-12-01)

Bug Fixes

1.1.2 (2021-11-26)

Bug Fixes

1.1.1 (2021-11-25)

Bug Fixes

1.1.0 (2021-11-24)

Features

1.0.4 (2021-11-22)

Bug Fixes

  • add: send missing events in lua script (#13) (a6658dd)

1.0.3 (2021-11-18)

Bug Fixes

1.0.2 (2021-10-18)

Bug Fixes

  • npm: replace npm registry (01518eb)

1.0.1 (2021-10-18)

Bug Fixes

1.0.0 (2021-10-18)

Bug Fixes

Features

  • groups: initial implementation (b1da106)

  • add queue-pro, worker-pro and redis-connection-pro (b9de319)

  • initial commit (7924260)

Last updated

Copyright (c) Taskforce.sh Inc.