Releases: reugn/go-quartz
Releases · reugn/go-quartz
v0.12.0
Features
- feat(scheduler)!: handle errors in the GetJobKeys method by @reugn in #126
- feat(scheduler): add a channel to handle misfired jobs by @reugn in #129
- feat(scheduler): export the reset method by @reugn in #131
- feat(scheduler)!: support custom mutex for job queue operations by @reugn in #133
- feat(queue): handle errors in ScheduledJobs and Size methods by @reugn in #125
- feat(queue): export the job queue constructor by @reugn in #134
Fixes
- fix(scheduler): recover from unhandled job panics by @reugn in #130
Improvements
- refactor: remove excessive queue empty check by @reugn in #124
Full Changelog: v0.11.2...v0.12.0
v0.11.2
Fixes
- fix: ensure atomicity of the fetch and reschedule operation (#121)
- fix: export the expired field to allow proper trigger unmarshalling (#120)
Improvements
- refactor(cron): make delimiter runes constant variables (#123)
- refactor: extract retry interval into a separate configuration option (#122)
v0.11.1
Fixes
- fix: parsing compound cron expression fields (#115)
- fix: trim cron expression string (#112)
- fix: potential nil pointer dereference in log (#113)
- fix(job): check response for nil in (*CurlJob).DumpResponse (#117)
Maintenance
- test: improve code coverage (#116)
v0.11.0
Features
- feat: add the ability to pause and resume jobs (#102)
- feat: introduce matchers to filter jobs (#107)
- feat: add Get method to the JobQueue interface (#101)
- feat: classify quartz error messages (#103)
Maintenance
- docs: add package documentation (#108)
- test: enhance assertions in unit tests (#104)
- ci: update versions in workflows (#109)
- ci: update golangci-lint configuration (#105)
v0.10.0
⚠ BREAKING CHANGES
- refactor!: module package structure (#87)
- feat(scheduler)!: introduce JobQueue abstraction (#80)
- feat!: introduce JobDetail and JobKey for job scheduling (#84)
- fix(scheduler)!: reset the queue after deleting a job (#83)
- fix!: reset scheduler after successfully clearing job queue (#86)
Features
- feat(cron): expose validate cron expression function (#95)
- feat(quartz): organize package error types (#94)
Fixes
- fix(logger): call depth for logging events (#97)
- fix(scheduler): rescheduling outdated jobs (#96)
- fix: break statement in execute with retries (#93)
- fix: validate location in NewCronTriggerWithLoc (#90)
- fix: normalize description format for serialization (#89)
Maintenance
- docs(example): add sample implementation of job queue (#98)
- docs: update Job interface description in readme (#91)
- test: improve code coverage (#88)
v0.9.0
⚠ BREAKING CHANGES
- refactor(job)!: eliminate data race; add callback (#76)
Fixes
- fix: alternative Logger utilization (#75)
Maintenance
- test: improve code coverage (#78)
v0.8.0
⚠ BREAKING CHANGES
- feat!: refactor curl job structure (#60)
Features
- feat: support mixed range type in cron expression (#72)
- feat: implement logger adapter (#67)
- feat: extend shell job (#64)
- util: shorten outdated grace period (#56)
Fixes
- fix: return error on NextFireTime for expired cron expression (#70)
- fix: data race for isStarted (#65)
- fix: typos in comments (#57)
Maintenance
- ci: update versions in GitHub Actions workflows (#73)
- docs: format annotation (#62)
- chore: add signal context in examples (#61)
- test: add unit test for NewFunctionJobWithDesc and Key (#58)
v0.7.0
Features
- Allow year field specification in cron expressions (#53)
Fixes
- Fix CronTrigger.NextFireTime() implementation (#52)
- Fix division by zero when parsing step field (#47)
- Fix function redefinition linter warning (#48)
Maintenance
- Add go1.20 to the build workflow (#54)
v0.6.0
Features
- Add contexts to interfaces (#41)
- Add Scheduler options (#39)
- Add isolated Job wrapper (#42)
Maintenance
- Add go1.18 to the build workflow (#44)
v0.5.0
Features
- Require Go 1.18
- Add support for generic
FunctionJob
(#37)
Maintenance
- Make assertion functions generic