Skip to content

chore(deps): update dependency node-cron to v4.6.0#130

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/node-cron-4.x-lockfile
Open

chore(deps): update dependency node-cron to v4.6.0#130
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/node-cron-4.x-lockfile

Conversation

@renovate

@renovate renovate Bot commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
node-cron (source) 4.2.14.6.0 age confidence

Release Notes

node-cron/node-cron (node-cron)

v4.6.0

Compare Source

Added
Fixed
  • background task state transition on stop/destroy without fork (#​584) (9dbc6de)
  • clear jitter timeout on runner stop (#​583) (28b8146)
  • CommonJS type resolution (#​608) (ee9d294)
  • correct falied->failed typo in daemon task error log (#​594) (66c6961)
  • correct shutdown listener typing that broke the build (#​595) (7aac3ad)
  • correlate execute() by id, isolate event hooks, and stop counting manual runs toward maxExecutions (#​607) (0f039a9)
  • daemon serialized task state with wrong field name (#​587) (688d465)
  • expand inverted ranges with wrap-around instead of silently swapping (#​602) (a10ae53)
  • harden cron.shutdown() teardown (#​598) (a0b0d1f)
  • kill orphan child process on background task stop/destroy timeout (#​582) (8179e10)
  • make concurrent background start() await the daemon and time out coordinator lookups (#​605) (446f03a)
  • make lifecycle calls on a destroyed task safe no-ops (#​600) (7fa9795)
  • prevent double destroy on registry remove (#​585) (8ae9f06)
  • release-please: match existing v-prefixed tags (#​575) (e43c152)
  • runner promise bugs that could hang scheduling or crash process (#​581) (0ae62be)
  • unref the IPC channel so background tasks let the process exit (#​599) (534e593)
  • validate the cron expression when scheduling a task (#​603) (196e6cd)
  • validate() consistency and multi-asterisk expansion (#​606) (8cf41c4)
  • weekday 7-to-0 conversion corrupting ranges (#​580) (c8a3943)
Changed
  • replace chai and sinon with native vitest assertions (#​590) (d29d07a)

v4.5.0

Compare Source

Added
  • lastRun() introspection getter on ScheduledTask: returns { date, result } after
    a successful execution, { date, error } after a failed one, or null before the first
    run. ([#​557])
  • Extended day-of-week tokens: <weekday>#<nth> (nth weekday of the month, e.g.
    1#1 for the first Monday) and <weekday>L (last weekday of the month, e.g. 5L
    for the last Friday). ([#​560])
Performance
  • Cache Intl.DateTimeFormat instances per timezone instead of rebuilding on every
    call. ([#​561])
  • Parse the cron expression once per TimeMatcher instead of re-parsing in
    MatcherWalker. ([#​562])
  • Compute the GMT offset lazily (only when formatting ISO strings, not during the
    next-run search). ([#​563])
  • Replace crypto.randomBytes with crypto.randomUUID for internal ID
    generation. ([#​564])
  • Skip setTimeout jitter wrapper when maxRandomDelay is zero. ([#​565])
  • Bundle dist into flat files instead of preserving the module tree (reduces import
    time). ([#​566])
Fixed
  • Flaky should schedule a task test: poll for the first execution instead of
    asserting an exact count after a fixed sleep.
Changed
  • Renamed internal functions interprete to interpret and
    appendSeccondExpression to appendSecondExpression. ([#​567])
  • Rewritten README and package metadata to surface scheduling capabilities
    (overlap prevention, distributed coordination, background tasks). ([#​568])

v4.4.1

Compare Source

Changed
  • Renamed the distributedTtl option to distributedLease (same meaning:
    the safety lease, in ms, for lease-based coordinators). The old name was the
    only abbreviation in the options API; the new one groups with distributed.
    distributedTtl was introduced in 4.4.0 and is removed without an alias.

v4.4.0

Compare Source

Added
  • Task introspection on ScheduledTask: getNextRuns(n) (preview the next N
    run times), match(date), msToNext(), isBusy(), runsLeft() and
    getPattern(). ([#​547])
  • cron.parse(expression) and cron.validateDetailed(expression):
    decompose an expression into its fields, or get every field-level problem
    (without throwing) for tooling and richer error messages. ([#​548])
  • Distributed run coordination — opt-in distributed: true runs a task on a
    single instance per fire across a fleet. Ships a built-in NODE_CRON_RUN
    env-var default (one designated runner, no dependencies) and a pluggable
    RunCoordinator (via setRunCoordinator, or the per-task runCoordinator
    option) for high-availability, per-fire coordination (e.g. a Redis lock).
    Adds the distributedTtl option and an execution:skipped event carrying a
    reason ('not-elected' | 'coordinator-error'). Works for inline and
    background tasks. ([#​549])
Fixed
  • getNextMatch no longer scans every time of day on a day that matches the
    day-of-month but not the weekday. A dense expression constrained by both
    (e.g. * * * 15 * 1) could take minutes to resolve; it is now instant.
Changed
  • Internal-only cleanups (no public API change): fixed the milisecond
    millisecond spelling and the convertion/conversion/ directory name.

v4.3.0

Compare Source

Added
  • L (last day of month) in the day-of-month field — e.g. 0 0 12 L * *,
    leap-year aware and combinable with explicit days (15,L). ([#​147])
  • missedExecutionTolerance option (ms, default 1000): a heartbeat that
    wakes a little late still runs its slot instead of being reported as missed.
    Always capped to the gap to the next slot, so it can never run a slot twice.
    ([#​485])
  • startTimeout option for background tasks (ms, default 5000). ([#​535])
Fixed
  • DST correctness in getNextMatch: no more ~1-year overshoot when a daily time
    falls in the spring-forward gap. ([#​518])
  • Background task start failures now reject with the real cause (e.g.
    unsupported TypeScript syntax, missing file) instead of an opaque timeout, and
    a failed or timed-out start no longer leaves an orphaned daemon running.
    ([#​484])
  • Long-timer drift no longer produces spurious "missed execution" warnings or
    skipped runs on daily/weekly schedules. ([#​485])
Changed
  • Minimum supported Node.js is now >= 20 (was >= 20.11); tested on Node
    20, 22 and 24.

Behavior note: missedExecutionTolerance defaults to 1000ms, so a
scheduled run that wakes up to ~1s late now executes instead of emitting
execution:missed. This is a bug-fix improvement, not an API break.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot enabled auto-merge (squash) July 19, 2026 06:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants