Skip to content

Bump github.com/netresearch/go-cron from 0.13.4 to 0.14.0#903

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.14.0
Open

Bump github.com/netresearch/go-cron from 0.13.4 to 0.14.0#903
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.14.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 28, 2026

Bumps github.com/netresearch/go-cron from 0.13.4 to 0.14.0.

Release notes

Sourced from github.com/netresearch/go-cron's releases.

v0.14.0

This release adds a public helper for custom job wrappers and fixes a high-severity concurrency bug in the test clock.

RunJob helper for custom wrappers

Writing a custom JobWrapper that correctly handles both plain Job and JobWithContext required reimplementing the same type-switch every time. The new RunJob(ctx, job) function encapsulates this dispatch — if the job implements JobWithContext, it calls RunWithContext(ctx); otherwise it calls Run(). All built-in wrappers and the internal scheduler now use RunJob, consolidating what was previously duplicated logic.

See the updated custom wrapper example in the architecture docs.

(#355, PR#356 — contributed by @​jrouzierinverse)

FakeClock BlockUntil race condition fix

FakeClock.BlockUntil had a classic missed-wakeup race: after releasing the mutex, it waited on a channel — but if a timer was created in that gap, the notification was lost and the caller hung indefinitely. The fix replaces the channel-based waiter list with sync.Cond, where Wait() atomically releases the mutex and sleeps, guaranteeing no missed broadcasts. The redundant fired field on fakeTimer was also removed since timer activity is already tracked by heap presence.

A regression stress test (100 iterations of concurrent BlockUntil vs NewTimer) is included to prevent this from returning.

(#357, PR#358 — contributed by @​jrouzierinverse)

Other changes

  • CI: Org reusable workflow references now use @main instead of SHA pins, so upstream improvements propagate automatically (PR#359)
  • Toolchain: Updated from go1.25.5 to go1.26.2; minimum go 1.25 unchanged (PR#360)
  • DST docs: Added industry context and references — POSIX, ISC cron, systemd, Kubernetes CronJob (PR#354)

Contributors

Supply Chain Security

This release includes:

  • SBOM: Software Bill of Materials in CycloneDX and SPDX formats
  • Checksums: SHA256 checksums for all artifacts
  • Signatures: Keyless Sigstore/Cosign signatures for verification
  • SLSA Provenance: Generated by separate workflow after release

Verify with Cosign

# Install cosign: https://docs.sigstore.dev/cosign/installation/
Download release artifacts
gh release download v0.14.0 -R netresearch/go-cron
Verify checksums signature
cosign verify-blob 
--certificate checksums.txt.pem 
</tr></table>

... (truncated)

Changelog

Sourced from github.com/netresearch/go-cron's changelog.

[0.14.0] - 2026-04-16

Added

  • RunJob helper (#355, [PR#356]): Exported RunJob(ctx, job) dispatches to JobWithContext.RunWithContext(ctx) or Job.Run() automatically. Intended for custom JobWrapper implementations so they don't need to reimplement the type-switch. The internal startJobWithExecution in cron.go now uses RunJob to consolidate the duplicated dispatch logic.

Fixed

  • FakeClock BlockUntil missed-wakeup race (#357, [PR#358]): The channel-based waiter list had a classic missed-wakeup race — if a timer was created between the mutex unlock and channel receive in BlockUntil, the notification was lost and the caller hung indefinitely. Replaced with sync.Cond where Wait() atomically releases the mutex and sleeps, guaranteeing no missed broadcasts. Also removed the redundant fired field from fakeTimer.

Changed

  • CI: org workflow references ([PR#359]): Reusable workflows from netresearch/.github now reference @main instead of SHA-pinned commits, so upstream improvements propagate automatically.
  • Toolchain ([PR#360]): Updated from go1.25.5 to go1.26.2 (minimum go 1.25 unchanged).
  • DST documentation ([PR#354]): Added industry context and references (POSIX, ISC cron, systemd, Kubernetes CronJob) to DST handling docs.

#355: netresearch/go-cron#355 [PR#356]: netresearch/go-cron#356 #357: netresearch/go-cron#357 [PR#358]: netresearch/go-cron#358 [PR#359]: netresearch/go-cron#359 [PR#360]: netresearch/go-cron#360 [PR#354]: netresearch/go-cron#354

Commits
  • c7df199 chore: update CHANGELOG for v0.13.4 and v0.14.0 (#361)
  • 4f81f82 chore: update CHANGELOG for v0.13.4 and v0.14.0
  • eda90f1 chore(deps): update toolchain to go1.26.2 (#360)
  • 72a4dc8 chore(deps): update toolchain to go1.26.2
  • 338c62e fix(clock): resolve missed-wakeup race in FakeClock BlockUntil (#358)
  • fa0cafa test: add BlockUntil missed-wakeup regression test
  • fb5056d Remove redundant fired
  • ba010aa Use sync.NewCond
  • af218d3 fix(clock): resolve race conditions in FakeClock
  • 5d9d487 feat: export RunJob helper for custom job wrappers (#356)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Apr 28, 2026
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Apr 28, 2026
@dependabot dependabot Bot requested a review from brayan-trejo as a code owner April 28, 2026 02:15
@dependabot dependabot Bot added the go Pull requests that update Go code label Apr 28, 2026
Bumps [github.com/netresearch/go-cron](https://github.com/netresearch/go-cron) from 0.13.4 to 0.14.0.
- [Release notes](https://github.com/netresearch/go-cron/releases)
- [Changelog](https://github.com/netresearch/go-cron/blob/main/CHANGELOG.md)
- [Commits](netresearch/go-cron@v0.13.4...v0.14.0)

---
updated-dependencies:
- dependency-name: github.com/netresearch/go-cron
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/go_modules/github.com/netresearch/go-cron-0.14.0 branch from fef0cce to 4a17d01 Compare April 28, 2026 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants