Update dependency @monque/core to ^1.7.0#287
Conversation
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #287 +/- ##
=======================================
Coverage ? 99.54%
=======================================
Files ? 12
Lines ? 220
Branches ? 54
=======================================
Hits ? 219
Misses ? 1
Partials ? 0 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
db48db4 to
653d794
Compare
Renovate Ignore NotificationBecause you closed this PR without merging, Renovate will ignore this update ( If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR. |
This PR contains the following updates:
^1.6.0→^1.7.0Release Notes
ueberBrot/monque (@monque/core)
v1.7.0Compare Source
Minor Changes
#249
2c7c079Thanks @ueberBrot! - Add deprecation console warning fordefaultConcurrencyandmaxConcurrencyoptions.#260
c11798bThanks @ueberBrot! - Parallelized job acquisition in the poll loop usingPromise.allSettledto lower wall-clock acquisition latency / reduce serialized DB waits (fans out onefindOneAndUpdateper free slot).Patch Changes
#269
cb707b9Thanks @ueberBrot! - Validate job names and unique keys at the public API boundary so invalid identifiers fail fast before reaching MongoDB operations.#266
9c75d1cThanks @ueberBrot! - Fix.then()to.finally()inexecutePollAndScheduleNextto ensure the next poll is always scheduled, even ifscheduleNextPollthrows. This prevents silently swallowed rejections when the callback in.then()throws.#258
218d398Thanks @ueberBrot! - ReplacegetActiveJobs()array allocation withgetActiveJobCount()in shutdown path. The previous implementation created a throw-awaystring[]on every call just to check.length. The new method returns a count directly usingMap.size, avoiding unnecessary array allocations during shutdown polling.#259
b0babc4Thanks @ueberBrot! - Replace the O(workers) iteration ingetTotalActiveJobs()with an O(1) counter that updates on job acquisition and completion.#263
a30186fThanks @ueberBrot! - Add compound index for job retention to avoid collection scan during cleanup#264
c2b046eThanks @ueberBrot! - Deduplicatenew Date()calls in update operations. Instead of creating multiplenew Date()instances milliseconds apart within the same logical operation, methods likecancelJob,retryJob, andcompleteJobnow capture a singleconst now = new Date()and reuse it for all timestamp fields, ensuring consistent timestamps.#265
79300c0Thanks @ueberBrot! - OptimizecancelJob,retryJob, andrescheduleJobby removing redundantfindOnepre-checks. These operations now use an optimisticfindOneAndUpdatefirst, reducing database round-trips for the common happy paths.#262
1b6e29fThanks @ueberBrot! - Removed redundant$unsetoperations forheartbeatIntervalon job completion/failure to improve performance and retain observability metadata.#257
d71049dThanks @ueberBrot! - Replace thesetInterval(100)busy-loop instop()with a reactive drain promise that resolves instantly when all active jobs finish.#267
965f8aaThanks @ueberBrot! - Set maxListeners to 20 on Monque EventEmitter to prevent memory leaks in long-running processes.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.