Releases: go-co-op/gocron
Releases · go-co-op/gocron
v1.3.1
Fixed
- A bug in the scheduler was preventing hour and minute range use in cron expressions (#154) @JohnRoesler - thanks to @zry98 for reporting (#153)
v1.3.0
Added
- cron expression support (#150) @JohnRoesler
- thanks to the robfig/cron repo for the great work we're leveraging to support cron
v1.2.0
Added
- add support for running all jobs with a given tag -
RunByTag
&RunByTagWithDelay
(#149) @arjunmahishi - add support for rescheduling jobs (#145) @JohnRoesler
Fixed
- fixed the
RemoveByTag
function so that it removes all jobs with a given tag. Not just the first job encountered (#149) @arjunmahishi
Chores
- create a SECURITY.md @JohnRoesler
- add codeql for security code scanning (#146) @JohnRoesler
- add dependabot for actions and go deps (#147) @JohnRoesler
- bump actions/setup-go from v1 to v2.1.3 (#148) @dependabot
v1.1.0
Added
- validation of the length of
Do()
function parameters - a mismatch returns an error (#144) - thanks @mikhailbolshakov
First stable release!
Here we go folks. Thanks for all the feedback as we've worked towards this major release. It's been a long time coming and it's finally here.
Keep the issue reports and feature requests coming! Keep on coding out there.
v0.8.0
Added
- when multiple errors occur creating a job, they are now wrapped and returned (#130) @JohnRoesler
- allowing the enforcement of unique tags when set through the scheduler with
Scheduler.TagsUnique()
(#136) @JohnRoesler - a new explicit interval func
Milliseconds()
- this was already available throughEvery(500ms)
(#137) @JohnRoesler
Changed
- the
Job.Err
func has been renamedJob.Error
(#137) @JohnRoesler - the default behavior of
LimitRunsTo
removes the job from the scheduler (#137) @JohnRoesler- nothing can be done with a stopped job in the scheduler so we opted to remove the job instead
At()
now accepts eitherstring
ortime.Time
(parses out only h,m,s) (#137) @JohnRoesler
Removed
- the
RemoveAfterLastRun
func has been removed (#137) @JohnRoesler
Chores
- to go 1.16 (#135) @JohnRoesler
- updates to the readme including a design diagram (513e278, 740bcdb) @JohnRoesler
- added a code of conduct (88fbecc) @JohnRoesler
- updated the gitignore (a55ceb8) @JohnRoesler
v0.7.1
Fixed
Clear()
now properly stops all jobs before removing them from the scheduler (#134) @JohnRoesler
Chores
- Updated the readme with details around different job modes and combinations of schedule options (2a8757a) @JohnRoesler
v0.7.0
Added
- singleflight mode, if the same job tries to run again while a previous run hasn't finished yet, it will either wait to run or skip the run (#123) thanks @farwydi
- the ability to limit the number of concurrent jobs, useful for resource intensive jobs (#126) thanks @dustin-decker
Changed
- we now send jobs to a job executor through channels instead of handling them directly in the scheduler, allowing us to get rid of many mutexes (#122) @JohnRoesler
Fixed
- a race condition issue on some getter methods (#124) thanks @amirhosseinvz94
v0.6.0
Added
- allow starting Jobs at a date in the past (#113) @calvinmclean
- add job limit and remove after last run to scheduler chain (#116) @JohnRoesler
scheduler.Every()
now accepts int, time.Duration, and string to allow any desired duration between runs (#119) @JohnRoesler
Changed
- sets the default unit to seconds (#112) @JohnRoesler
- catches a bad interval of 0 with an error (#112) @JohnRoesler
- clarified several function names and accepted values (#121) @JohnRoesler
- The job
Tag
func now accepts a variadic string parameter instead of a slice - The scheduler
SetTag
is nowTag
and also accepts a variadic string parameter - The scheduler
RemoveJobByTag
is nowRemoveByTag
to be consistent withRemove
andRemoveByReference
- The scheduler
RunAllWithDelay
func now accepts a time.Duration instead of an int representing seconds - The scheduler
Scheduled
func is nowTaskPresent
- scheduled was confusing name because until the scheduler is started, it's not actually "scheduled to run". Now you can check whether the task is present in the scheduler.
- The job
Fixed
- fixed the bug with jobs not being stopped upon removal (5027f53) thanks @huage1994
- catches nil timer with stopTimer() func (#112) @JohnRoesler
- fix a bug where the monthly calculation failed rounding to midnight (#104) @sdw2330976
- fix bug with limit runs to not stopping jobs (#114) @JohnRoesler
Removed
- remove stopChan from Scheduler (#105) @arjunmahishi
Chores
- documentation clean up (#112) @JohnRoesler
- add golangci to actions - and address lint issues (#117) (#118) @JohnRoesler
- add examples for all funcs to godoc (#121) @JohnRoesler
v0.5.1
Fixed
- fix bug with StartAt() in v0.5.0 (#103) @JohnRoesler