npm / croner
croner
What changed in croner 10, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.
3 breaking1 deprecations14 new APIs and options1 behavior and defaults5 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initcroner 1024 changes
Breaking changes 3
The ? character now acts as a wildcard alias for *, rather than substituting current time values.
The minimum supported Deno version increased from 1.16 to 2.0.
Range parsing is strict by default; legacy non-standard stepping syntax requires sloppyRanges: true.
Deprecations 1
legacyMode is deprecated in favor of domAndDow but remains supported.
New APIs and options 14
Enable Quartz-style weekday numbering, with Sunday as 1 and Saturday as 7.
The + modifier enables explicit AND logic for matching days.
The + modifier provides explicit AND logic for day matching.
Offset scheduled dates by days before or after pattern matches.
Use domAndDow to select day-of-month and day-of-week matching logic in place of legacyMode; legacyMode remains supported.
Return the original run-once date for date-based jobs.
Check whether a date matches a cron pattern.
The @midnight pattern nickname is supported.
Control expected pattern field counts and how seconds and years are handled, with automatic, fixed, or flexible modes.
Enumerate past scheduled execution times, complementing nextRuns.
The @reboot pattern nickname is supported.
Enable relaxed, backward-compatible non-standard range and stepping syntax.
The W modifier schedules for the nearest weekday to a specified date.
Seven-field patterns can specify an optional year from 1 to 9999, restricting scheduled runs to that year.
Behavior and default changes 1
Patterns accept leading and trailing whitespace and consecutive whitespace.
Fixes and other changes 5
Fixed the distribution structure and TypeScript issues in the distributed version of 10.0.0.
A cron job no longer stops when the catch callback throws with protect enabled.
Fixes prevent rapid-fire execution during timezone transitions and hour skipping during local DST transitions with UTC.
getPattern() no longer returns the wrong value for date-based jobs.
L and W modifiers in cron patterns are case-insensitive.