Skip to content

Bump github.com/netresearch/go-cron from 0.14.0 to 0.15.0#955

Merged
jfantinhardesty merged 2 commits into
mainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.15.0
Jul 14, 2026
Merged

Bump github.com/netresearch/go-cron from 0.14.0 to 0.15.0#955
jfantinhardesty merged 2 commits into
mainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.15.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 22, 2026

Copy link
Copy Markdown
Contributor

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

Release notes

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

v0.15.0

Added — DrainAndUpsertJob

A windowless variant of UpsertJob for gracefully rescheduling a named entry.

// Two-step: a cron tick can still fire the OLD schedule between these calls.
cr.WaitForJobByName("my-job")
cr.UpsertJob(newSpec, newJob, cron.WithName("my-job"))
// Windowless: no invocation can start under the stale schedule.
cr.DrainAndUpsertJob(newSpec, newJob, cron.WithName("my-job"))

It pauses the entry, drains any in-flight invocation, swaps the schedule and job, then restores the entry's prior paused state. Pausing before the drain guarantees the old schedule cannot fire again between the wait and the replacement — closing the narrow stale-fire window of the two-step WaitForJobByNameUpsertJob sequence. It composes existing serialized methods, so the drain never holds a scheduler lock (no run-loop stall, no deadlock). If the named entry doesn't exist, it creates one.

Motivated by the weaviate object-TTL scheduler. Design rationale and the windowless proof: ADR-022. See #381.

Full Changelog: netresearch/go-cron@v0.14.0...v0.15.0

Supply Chain Security

This release includes:

  • SBOM: CycloneDX (sbom-0.15.0.cyclonedx.json) and SPDX (sbom-0.15.0.spdx.json)
  • Checksums: checksums.txt
  • Signature: keyless Sigstore/Cosign bundle (checksums.txt.sigstore.json)

Verify with Cosign

Signing is performed by the shared netresearch/.github release workflow, so the certificate identity is that workflow (not this repo):

gh release download v0.15.0 -R netresearch/go-cron
cosign verify-blob 
--bundle checksums.txt.sigstore.json 
--certificate-identity-regexp "^https://github\.com/netresearch/\.github/\.github/workflows/golib-create-release\.yml@" 
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" 
checksums.txt
sha256sum -c checksums.txt

Changelog

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

[0.15.0] - 2026-06-02

Added

  • DrainAndUpsertJob ([PR#381]): windowless variant of UpsertJob for graceful reschedule. Pauses the named entry, drains any in-flight invocation, swaps the schedule and job, then restores the entry's prior paused state — closing the narrow window in which the two-step WaitForJobByNameUpsertJob sequence could let the old schedule fire once more between the wait and the replacement. Composes existing serialized methods, so the drain never holds a cron lock. Motivated by the weaviate object-TTL scheduler; see ADR-022.
Commits
  • cd4bf69 ci: grant id-token and attestations to release workflow caller (#383)
  • d3b58c9 ci: grant id-token and attestations to release workflow caller
  • 4bc3552 chore: release v0.15.0 (#382)
  • af0eca1 chore: release v0.15.0
  • b8c1734 feat: add DrainAndUpsertJob for windowless graceful reschedule (#381)
  • d526e2f feat: add DrainAndUpsertJob for windowless graceful reschedule
  • 627b18c ci: sync with netresearch/.github templates/go-lib (#380)
  • e1beda3 ci: sync with netresearch/.github templates/go-lib
  • 4621745 fix(lint): extract repeated cron descriptors into constants (#379)
  • c1e6618 refactor(lint): consolidate @​every descriptor and clarify constant docs
  • 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 Jun 22, 2026
@dependabot dependabot Bot added the go Pull requests that update Go code label Jun 22, 2026
@dependabot
dependabot Bot force-pushed the dependabot/go_modules/github.com/netresearch/go-cron-0.15.0 branch from 85d28af to f4d4c72 Compare July 13, 2026 17:30
Bumps [github.com/netresearch/go-cron](https://github.com/netresearch/go-cron) from 0.14.0 to 0.15.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.14.0...v0.15.0)

---
updated-dependencies:
- dependency-name: github.com/netresearch/go-cron
  dependency-version: 0.15.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.15.0 branch from f4d4c72 to 940105a Compare July 13, 2026 21:28
@jfantinhardesty
jfantinhardesty merged commit f6c42d0 into main Jul 14, 2026
27 of 28 checks passed
@jfantinhardesty
jfantinhardesty deleted the dependabot/go_modules/github.com/netresearch/go-cron-0.15.0 branch July 14, 2026 21:11
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.

1 participant