This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/go-co-op/gocron](https://github.com/go-co-op/gocron) | require | major | `v1.37.0` -> `v2.16.1` | --- ### Release Notes <details> <summary>go-co-op/gocron (github.com/go-co-op/gocron)</summary> ### [`v2.16.1`](https://github.com/go-co-op/gocron/releases/tag/v2.16.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.16.0...v2.16.1) #### What's Changed - Fix [#​835](https://github.com/go-co-op/gocron/issues/835) and [#​837](https://github.com/go-co-op/gocron/issues/837) by [@​apocelipes](https://github.com/apocelipes) in https://github.com/go-co-op/gocron/pull/836 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.16.0...v2.16.1 ### [`v2.16.0`](https://github.com/go-co-op/gocron/releases/tag/v2.16.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.15.0...v2.16.0) #### What's Changed - feat:custom-cron interface for own custom cron implimentation by [@​Dojeto](https://github.com/Dojeto) in https://github.com/go-co-op/gocron/pull/834 #### Bug fixes - fixes related to the bug where a job unexpectedly runs twice by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/810 - fix scheduler restart by [@​27149chen](https://github.com/27149chen) in https://github.com/go-co-op/gocron/pull/825 - removes nextRuns in the past when job skipped by locker [#​828](https://github.com/go-co-op/gocron/issues/828) by [@​manuelarte](https://github.com/manuelarte) in https://github.com/go-co-op/gocron/pull/829 #### Chores - go to 1.21, upgrade deps by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/822 - replace "golang.org/x/exp" with standard libraries by [@​apocelipes](https://github.com/apocelipes) in https://github.com/go-co-op/gocron/pull/823 - Bump golangci/golangci-lint-action from 6.2.0 to 6.3.2 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/827 - fix err assertion in TestScheduler_RemoveJob by [@​alexandear](https://github.com/alexandear) in https://github.com/go-co-op/gocron/pull/830 - Bump golangci/golangci-lint-action from 6.3.2 to 6.5.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/831 - re-enable goleak detection in ci by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/832 - chore: add go1.24 to ci by [@​apocelipes](https://github.com/apocelipes) in https://github.com/go-co-op/gocron/pull/833 #### New Contributors - [@​alexandear](https://github.com/alexandear) made their first contribution in https://github.com/go-co-op/gocron/pull/830 - [@​Dojeto](https://github.com/Dojeto) made their first contribution in https://github.com/go-co-op/gocron/pull/834 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.15.0...v2.16.0 ### [`v2.15.0`](https://github.com/go-co-op/gocron/releases/tag/v2.15.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.14.2...v2.15.0) #### What's New - New method WithContext supports providing a parent context by [@​27149chen](https://github.com/27149chen) in https://github.com/go-co-op/gocron/pull/819 & [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/820 ```go // WithContext sets the parent context for the job. // If you set the first argument of your Task func to be a context.Context, // gocron will pass in the provided context to the job and will cancel the // context on shutdown. If you cancel the context the job will no longer be // scheduled as well. This allows you to both control the job via a context // and listen for and handle cancellation within your job. ``` - Job task function now supports passing a ctx if the first argument in your function is a `context.Context` by [@​27149chen](https://github.com/27149chen) in https://github.com/go-co-op/gocron/pull/819 & [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/820 ```go // NewTask provides the job's task function and parameters. // If you set the first argument of your Task func to be a context.Context, // gocron will pass in a context (either the default Job context, or one // provided via WithContext) to the job and will cancel the context on shutdown. // This allows you to listen for and handle cancellation within your job. ``` #### Chores - Bump golangci/golangci-lint-action from 6.1.1 to 6.2.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/817 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.14.2...v2.15.0 ### [`v2.14.2`](https://github.com/go-co-op/gocron/releases/tag/v2.14.2) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.14.1...v2.14.2) #### What's Changed - feat: allow disabling global distributed locker per job by [@​seinshah](https://github.com/seinshah) in https://github.com/go-co-op/gocron/pull/811 - feat(event listener): introduce BeforeJobRunsSkipIfBeforeFuncErrors as a new Eventlistener by [@​FalcoSuessgott](https://github.com/FalcoSuessgott) in https://github.com/go-co-op/gocron/pull/813 #### New Contributors - [@​seinshah](https://github.com/seinshah) made their first contribution in https://github.com/go-co-op/gocron/pull/811 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.14.1...v2.14.2 ### [`v2.14.1`](https://github.com/go-co-op/gocron/releases/tag/v2.14.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.14.0...v2.14.1) #### What's Changed - BUG FIX: creating a new slice in several job options because appending modifies original by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/809 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.14.0...v2.14.1 ### [`v2.14.0`](https://github.com/go-co-op/gocron/releases/tag/v2.14.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.13.0...v2.14.0) #### What's Changed - parse time.Time from AtTime by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/806 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.13.0...v2.14.0 ### [`v2.13.0`](https://github.com/go-co-op/gocron/releases/tag/v2.13.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.12.4...v2.13.0) #### What's Changed - Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/801 - stop timeout timers when no longer needed by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/803 - feat(monitor): introduce MonitorStatus by [@​FalcoSuessgott](https://github.com/FalcoSuessgott) in https://github.com/go-co-op/gocron/pull/780 #### New Contributors - [@​FalcoSuessgott](https://github.com/FalcoSuessgott) made their first contribution in https://github.com/go-co-op/gocron/pull/780 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.12.4...v2.13.0 ### [`v2.12.4`](https://github.com/go-co-op/gocron/releases/tag/v2.12.4) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.12.3...v2.12.4) #### What's Changed - Bump golangci/golangci-lint-action from 6.1.0 to 6.1.1 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/781 - fix overly greedy panic handler by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/800 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.12.3...v2.12.4 ### [`v2.12.3`](https://github.com/go-co-op/gocron/releases/tag/v2.12.3) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.12.2...v2.12.3) #### What's Changed - update mocks with latest job/scheduler changes by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/794 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.12.2...v2.12.3 ### [`v2.12.2`](https://github.com/go-co-op/gocron/releases/tag/v2.12.2) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.12.1...v2.12.2) #### What's Changed - dailyjob should not allow interval zero by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/791 - weekly and monthly jobs should not allow zero interval by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/792 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.12.1...v2.12.2 ### [`v2.12.1`](https://github.com/go-co-op/gocron/releases/tag/v2.12.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.12.0...v2.12.1) #### What's Changed - Fix CPU spike / max-out in One-time job when 2 or more equal times are provided by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/779 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.12.0...v2.12.1 ### [`v2.12.0`](https://github.com/go-co-op/gocron/releases/tag/v2.12.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.11.0...v2.12.0) #### What's Changed - add Rescheduled metric for executor. by [@​Higan](https://github.com/Higan) in https://github.com/go-co-op/gocron/pull/763 - handle crontab and return error with invalid day in a month by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/766 - Bump golangci/golangci-lint-action from 6.0.1 to 6.1.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/764 - fix: cleanup timers by [@​hayotbisonai](https://github.com/hayotbisonai) in https://github.com/go-co-op/gocron/pull/776 #### New Contributors - [@​hayotbisonai](https://github.com/hayotbisonai) made their first contribution in https://github.com/go-co-op/gocron/pull/776 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.11.0...v2.12.0 ### [`v2.11.0`](https://github.com/go-co-op/gocron/releases/tag/v2.11.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.10.1...v2.11.0) #### Features - `WithStopAt` added to `JobOption`'s to allow giving a time for jobs to stop running by [@​Higan](https://github.com/Higan) in https://github.com/go-co-op/gocron/pull/760 #### Fixes - Fix typo in security policy by [@​deining](https://github.com/deining) in https://github.com/go-co-op/gocron/pull/759 #### Internal - internal refactoring by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/761 #### New Contributors - [@​deining](https://github.com/deining) made their first contribution in https://github.com/go-co-op/gocron/pull/759 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.10.1...v2.11.0 ### [`v2.10.1`](https://github.com/go-co-op/gocron/releases/tag/v2.10.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.10.0...v2.10.1) #### What's Changed - fix validation of variadic parameters when the type is interfaceby [@​apocelipes](https://github.com/apocelipes) in https://github.com/go-co-op/gocron/pull/757 #### New Contributors - [@​apocelipes](https://github.com/apocelipes) made their first contribution in https://github.com/go-co-op/gocron/pull/757 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.10.0...v2.10.1 ### [`v2.10.0`](https://github.com/go-co-op/gocron/releases/tag/v2.10.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.9.0...v2.10.0) #### What's Changed - issue-677: support task creation with variadic args by [@​Higan](https://github.com/Higan) in https://github.com/go-co-op/gocron/pull/755 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.9.0...v2.10.0 ### [`v2.9.0`](https://github.com/go-co-op/gocron/releases/tag/v2.9.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.8.0...v2.9.0) #### What's Changed - issue-751: speed up rescheduling when time scheduling from is time.Zero by [@​samuelattwood](https://github.com/samuelattwood) in https://github.com/go-co-op/gocron/pull/752 - feat: add WithIdentifier() as new job option by [@​pcfreak30](https://github.com/pcfreak30) in https://github.com/go-co-op/gocron/pull/754 #### New Contributors - [@​samuelattwood](https://github.com/samuelattwood) made their first contribution in https://github.com/go-co-op/gocron/pull/752 - [@​pcfreak30](https://github.com/pcfreak30) made their first contribution in https://github.com/go-co-op/gocron/pull/754 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.8.0...v2.9.0 ### [`v2.8.0`](https://github.com/go-co-op/gocron/releases/tag/v2.8.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.7.1...v2.8.0) #### What's Changed - issue-747: Provide more details of ErrPanicRecovered by [@​Higan](https://github.com/Higan) in https://github.com/go-co-op/gocron/pull/749 #### New Contributors - [@​Higan](https://github.com/Higan) made their first contribution in https://github.com/go-co-op/gocron/pull/749 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.7.1...v2.8.0 ### [`v2.7.1`](https://github.com/go-co-op/gocron/releases/tag/v2.7.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.7.0...v2.7.1) #### What's Changed - issue-740: ascending time function by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/744 - fix jobs not starting on scheduler restart when using WithLimitConcurrentJobs by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/745 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.7.0...v2.7.1 ### [`v2.7.0`](https://github.com/go-co-op/gocron/releases/tag/v2.7.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.6.0...v2.7.0) #### Added - issue-740: expand oneTimeJob to support multiple times by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/741 - [go doc](https://pkg.go.dev/github.com/go-co-op/gocron/v2#OneTimeJobStartDateTimes) #### Fixed - issue-742: bug in `NextRun` by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/743 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.6.0...v2.7.0 ### [`v2.6.0`](https://github.com/go-co-op/gocron/releases/tag/v2.6.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.5.0...v2.6.0) #### Added - after lock error listener by [@​manuelarte](https://github.com/manuelarte) in https://github.com/go-co-op/gocron/pull/734 - [go doc](https://pkg.go.dev/github.com/go-co-op/gocron/v2#AfterLockError) - Add `AfterJobRunsWithPanic` by [@​trungdlp-wolffun](https://github.com/trungdlp-wolffun) in https://github.com/go-co-op/gocron/pull/733 - [go doc](https://pkg.go.dev/github.com/go-co-op/gocron/v2#AfterJobRunsWithPanic) #### Fixed - issue-738: make withSeconds optional in cron-expression by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/739 - issue-736: moving validation of one-time to by [@​rbroggi](https://github.com/rbroggi) in https://github.com/go-co-op/gocron/pull/737 #### Misc - Bump golangci/golangci-lint-action from 5.3.0 to 6.0.1 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/730 - remove circleci config by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/735 #### New Contributors - [@​manuelarte](https://github.com/manuelarte) made their first contribution in https://github.com/go-co-op/gocron/pull/734 - [@​trungdlp-wolffun](https://github.com/trungdlp-wolffun) made their first contribution in https://github.com/go-co-op/gocron/pull/733 - [@​rbroggi](https://github.com/rbroggi) made their first contribution in https://github.com/go-co-op/gocron/pull/739 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.5.0...v2.6.0 ### [`v2.5.0`](https://github.com/go-co-op/gocron/releases/tag/v2.5.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.4.1...v2.5.0) #### What's Changed - adding Job.NextRuns to provide n next run times by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/729 - Bump golangci/golangci-lint-action from 4.0.0 to 5.3.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/728 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.4.1...v2.5.0 ### [`v2.4.1`](https://github.com/go-co-op/gocron/releases/tag/v2.4.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.4.0...v2.4.1) #### What's Changed - fix memory leak with singleton mode where job is sending duplicate reschedule requests by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/723 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.4.0...v2.4.1 ### [`v2.4.0`](https://github.com/go-co-op/gocron/releases/tag/v2.4.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.3.0...v2.4.0) #### What's Changed - Added JobsWaitingInQueue in Scheduler by [@​giri-vsr](https://github.com/giri-vsr) in https://github.com/go-co-op/gocron/pull/721 - don't trash the incoming slice, match what was done in NewAtTime by [@​cloudkucooland](https://github.com/cloudkucooland) in https://github.com/go-co-op/gocron/pull/724 #### New Contributors - [@​cloudkucooland](https://github.com/cloudkucooland) made their first contribution in https://github.com/go-co-op/gocron/pull/724 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.3.0...v2.4.0 ### [`v2.3.0`](https://github.com/go-co-op/gocron/releases/tag/v2.3.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.10...v2.3.0) #### What's Changed - Add Go 1.22 to test matrix by [@​evgenymarkov](https://github.com/evgenymarkov) in https://github.com/go-co-op/gocron/pull/714 - Monitor: IncrementJob in case of skipped job run by [@​giri-vsr](https://github.com/giri-vsr) in https://github.com/go-co-op/gocron/pull/715 - fix mocks import path by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/720 #### New Contributors - [@​evgenymarkov](https://github.com/evgenymarkov) made their first contribution in https://github.com/go-co-op/gocron/pull/714 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.10...v2.2.11 ### [`v2.2.10`](https://github.com/go-co-op/gocron/releases/tag/v2.2.10) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.9...v2.2.10) #### What's Changed - fix nextRun with singleton mode reporting incorrect time by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/705 - Added Distributed Locker to JobOptions by [@​giri-vsr](https://github.com/giri-vsr) in https://github.com/go-co-op/gocron/pull/711 #### New Contributors - [@​giri-vsr](https://github.com/giri-vsr) made their first contribution in https://github.com/go-co-op/gocron/pull/711 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.9...v2.2.10 ### [`v2.2.9`](https://github.com/go-co-op/gocron/releases/tag/v2.2.9) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.8...v2.2.9) #### What's Changed - fix case where OneTimeJob with concurrent limit and limited runs fails to run by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/703 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.8...v2.2.9 ### [`v2.2.8`](https://github.com/go-co-op/gocron/releases/tag/v2.2.8) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.7...v2.2.8) #### What's Changed - return an error if duration is zero by [@​moyu-x](https://github.com/moyu-x) in https://github.com/go-co-op/gocron/pull/701 - properly report lastRun for limit type jobs and RunNow by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/700 #### New Contributors - [@​moyu-x](https://github.com/moyu-x) made their first contribution in https://github.com/go-co-op/gocron/pull/701 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.7...v2.2.8 ### [`v2.2.7`](https://github.com/go-co-op/gocron/releases/tag/v2.2.7) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.6...v2.2.7) #### What's Changed - Allow more time for requestJobCtx by [@​drewgonzales360](https://github.com/drewgonzales360) in https://github.com/go-co-op/gocron/pull/699 - fix case where job removed causes panic when rescheduling by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/698 #### New Contributors - [@​drewgonzales360](https://github.com/drewgonzales360) made their first contribution in https://github.com/go-co-op/gocron/pull/699 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.6...v2.2.7 ### [`v2.2.6`](https://github.com/go-co-op/gocron/releases/tag/v2.2.6) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.5...v2.2.6) #### What's Changed - Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/684 - elector & locker were failing to send out when not leader by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/688 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.5...v2.2.6 ### [`v2.2.5`](https://github.com/go-co-op/gocron/releases/tag/v2.2.5) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.4...v2.2.5) #### What's Changed - remove codecov by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/672 - Bump golangci/golangci-lint-action from 3.7.0 to 4.0.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/675 - fix cases where default on send out is resulting in job not going out by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/686 - This fixes two bugs related to limit mode and singleton mode having jobs stop running **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.4...v2.2.5 ### [`v2.2.4`](https://github.com/go-co-op/gocron/releases/tag/v2.2.4) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.3...v2.2.4) #### What's Changed - correct AfterJobRuns doc by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/670 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.3...v2.2.4 ### [`v2.2.3`](https://github.com/go-co-op/gocron/releases/tag/v2.2.3) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.2...v2.2.3) #### What's Changed - fix RunNow() when calling from a job returned by Jobs() by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/668 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.2...v2.2.3 ### [`v2.2.2`](https://github.com/go-co-op/gocron/releases/tag/v2.2.2) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.1...v2.2.2) #### What's Changed - Bump github.com/google/uuid from 1.5.0 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/664 - fix unsafe map usage in singletonMode by [@​JohnRoesler](https://github.com/JohnRoesler) & [@​a3sroot](https://github.com/a3sroot) in https://github.com/go-co-op/gocron/pull/665 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.1...v2.2.2 ### [`v2.2.1`](https://github.com/go-co-op/gocron/releases/tag/v2.2.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.2.0...v2.2.1) #### What's Changed - fix monthly jobs when counting days from the end by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/662 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.2.0...v2.2.1 ### [`v2.2.0`](https://github.com/go-co-op/gocron/releases/tag/v2.2.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.1.2...v2.2.0) #### What's Changed - wait for new job to be fully created before returning by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/658 - BETA FEATURE: Add job monitor interface to allow for collecting job metrics by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/659 - This is the first release of the monitor feature - it may be changed as initial implementations are created and feedback comes in **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.1.2...v2.2.0 ### [`v2.1.2`](https://github.com/go-co-op/gocron/releases/tag/v2.1.2) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.1.1...v2.1.2) #### Fixes - fix to handle when next ends up in the past by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/650 - make the order of the returned jobs slice deterministic by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/652 #### Documentation - refactor: fix indent by [@​leedrum](https://github.com/leedrum) in https://github.com/go-co-op/gocron/pull/649 #### New Contributors - [@​leedrum](https://github.com/leedrum) made their first contribution in https://github.com/go-co-op/gocron/pull/649 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.1.1...v2.1.2 ### [`v2.1.1`](https://github.com/go-co-op/gocron/releases/tag/v2.1.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.1.0...v2.1.1) #### What's Changed - [bump golang.org/x/exp](7ee4c50f57) - [fixup Job and Scheduler interface docs](a51820e30f) **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.1.0...v2.1.1 ### [`v2.1.0`](https://github.com/go-co-op/gocron/releases/tag/v2.1.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.0.3...v2.1.0) #### What's Changed - add new features, OneTimeJob and Job.RunNow() by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/646 #### Version bumps - Bump github/codeql-action from 2 to 3 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/644 - Bump github.com/google/uuid from 1.4.0 to 1.5.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/645 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.0.3...v2.1.0 ### [`v2.0.3`](https://github.com/go-co-op/gocron/releases/tag/v2.0.3) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.0.2...v2.0.3) #### Fixes - fix weekly and monthly to handle midnight by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/643 [#​642](https://github.com/go-co-op/gocron/issues/642) **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.0.2...v2.0.3 ### [`v2.0.2`](https://github.com/go-co-op/gocron/releases/tag/v2.0.2) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.0.1...v2.0.2) #### Fixes - fix: check function param length and type by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/638 raised in [#​637](https://github.com/go-co-op/gocron/issues/637) **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.0.1...v2.0.2 ### [`v2.0.1`](https://github.com/go-co-op/gocron/releases/tag/v2.0.1) [Compare Source](https://github.com/go-co-op/gocron/compare/v2.0.0...v2.0.1) #### Fixes - daily job next logic failed to consider 1 midnight attime by [@​JohnRoesler](https://github.com/JohnRoesler) in https://github.com/go-co-op/gocron/pull/635 #### Bumps - Bump actions/checkout from 3 to 4 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/631 - Bump actions/setup-go from 4 to 5 by [@​dependabot](https://github.com/dependabot) in https://github.com/go-co-op/gocron/pull/630 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.0.0...v2.0.1 ### [`v2.0.0`](https://github.com/go-co-op/gocron/releases/tag/v2.0.0) [Compare Source](https://github.com/go-co-op/gocron/compare/v1.37.0...v2.0.0) #### v2.0.0 It's here! 🎉 Take a look at the readme and godoc to see how the new version works! Please give feedback! (Reach out on slack if you're interested in contributing so we can coordinate work 😄 ) And open issues if you find any bugs or have features you'd like to see supported! #### New Contributors - [@​AlphaNecron](https://github.com/AlphaNecron) made their first contribution in https://github.com/go-co-op/gocron/pull/613 **Full Changelog**: https://github.com/go-co-op/gocron/compare/v2.0.0-alpha-1...v2.0.0 </details> --- ### 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 becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNDAuMSIsInVwZGF0ZWRJblZlciI6IjM5LjI0MC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: t.behrendt <t.behrendt@noreply.localhost> Reviewed-on: https://gitea.t000-n.de/t.behrendt/realDynDNS/pulls/35 Co-authored-by: Renovate Bot <renovate@t00n.de> Co-committed-by: Renovate Bot <renovate@t00n.de>
realDynDNS
RealDynDNS aims to be a replacement to "classical" dynDNS solutions that offer a subdomain. Instead realDynDns actually changes your DNS entries.
This service requires your DNS provider to expose an API that allows your DNS entries to be changed. A service that provides your current external IP is also required.
Configuration
The configuration is done via a YAML file called config.yaml. The following example shows the configuration for a domain with two subdomains.
Configuration of the IP provider and the DNS provider is mandatory.
The check_interval is mandatory and follows the cron syntax including seconds. It defines how often the IP is checked and the DNS entries are updated. If you don't own the external ip provider, please be nice and don't set the interval too low.
You may configure multiple top level domains with multiple subdomains. If you also want the top level domain to be updated, add it to the subdomains list with an @.
ip_provider:
type: plain
config:
url: https://ifconfig.me
dns_provider:
type: ionos
config:
api_key: <your-api-key>
base_url: https://api.hosting.ionos.com/dns
notification_provider:
type: gotify
config:
url: <your-gotify-host>
token: <your-token>
priority: 0
domains:
- tld: example.com
subdomains:
- "@"
- www
check_interval: 0 0 0/6 * * * *
mode: Scheduled
log_level: info
The config file is expected to be in the same directory as the binary and called config.yaml. For the OCR image, the root directory is /app.
DNS Providers
The DNS provider abstracts the API of your DNS provider. Currently the following providers are supported:
IONOS
IONOS requires two configuration parameters. You can get your API key here.
api_key: <your-api-key>
base_url: https://api.hosting.ionos.com/dns
External IP Providers
The external IP provider is used to get your current external IP. Currently the following providers are supported:
Plain
Any provider that returns your IP as plain text can be used. The following configuration is required:
url: <your-providers-URL>
Examples for providers are:
Notification Providers
The notification provider is used to send notifications whena IP address changes and a DNS record is updated.
Console
The console notification provider is used to print the notification to the console. This is the default notification provider.
Gotify
The Gotify notification provider is used to send notifications to a Gotify server.
url: <your-gotify-host>
token: <your-token>
priority: 0
The priority must be between 0 and 4.
Mode Selection
Two modes are available:
RunOnce
The RunOnce mode is used to run the application once and exit. This is useful when providing your own external scheduler, like cron.
Set the mode to RunOnce.
Scheduled
The Scheduled mode is used to run the application in a scheduled interval.
Set the mode to Scheduled and provide a cron expression for the check_interval.