Skip to content

Bump github.com/netresearch/go-cron from 0.16.0 to 0.16.1 - #1075

Merged
jfantinhardesty merged 1 commit into
mainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.16.1
Oct 7, 2026
Merged

jfantinhardesty merged 1 commit into
mainfrom
dependabot/go_modules/github.com/netresearch/go-cron-0.16.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Bumps github.com/netresearch/go-cron from 0.16.0 to 0.16.1.

Release notes

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

v0.16.1

A maintenance release. The public API is unchanged, the minimum Go version stays at 1.26, and no scheduling behaviour differs from v0.16.0. Upgrading needs no code change.

The library change

Three counters now use the atomic types instead of a plain integer reached through package-level atomic functions: entryCount in cron.go, and the circuit breaker's failures and lastFailNano in retry.go. atomic.LoadInt64(&x) became x.Load(), atomic.AddInt64(&x, n) became x.Add(n), and so on.

The memory semantics are identical. What the atomic types add is their own 64-bit alignment, so those fields no longer depend on their position in the struct to stay correct on 32-bit platforms. The CAS loop that ADR-019 requires for lock-free entry counting is unchanged; only its spelling moved. go vet's copylocks check passes, which is the guard that matters here — an atomic field makes its struct non-copyable, so any place copying Cron or circuitState by value would fail the build (#411 by @​CybotTM).

Why it was still open

go fix ./... reports nothing in this repository. Every rewrite above came from a second run with -tags=integration: a file behind //go:build integration is invisible to a run without the tag, so an earlier modernization pass could not have seen these call sites. That run found 38 diagnostics where the plain one found zero.

Tests and benchmarks

The integration-tagged test files got the same treatment — for range n, wg.Go, further atomic.Int32/Int64 conversions (#411).

Benchmarks moved from for i := 0; i < b.N; i++ to for b.Loop() (Go 1.24), which manages the timer itself and keeps the loop body's values alive so the compiler cannot delete the measured work. One benchmark keeps b.N: BenchmarkRemoveWithManyEntries stops the timer before its loop and again as the body's last statement, and b.Loop requires a running timer at each call — converting it aborts with B.Loop called with timer stopped (#412 by @​CybotTM).

Toolchain and tooling

  • Toolchain updated to go1.27.1. Only the toolchain directive moved; the go directive stays at 1.26, so importers are unaffected (#410 by @​CybotTM).
  • Renovate no longer proposes raising the go directive. That line is the library floor, and a bump forces every importer up; the global rangeStrategy: bump had been applying to it. Only the toolchain directive follows the newest patch (#410).
  • Renovate processes this fork again — the Mend app runs in autodiscover mode and passes over forks that do not set forkProcessing (#406 by @​CybotTM).
  • The Dependabot configuration is removed; Renovate is the only updater (#409 by @​CybotTM).
  • Releases are published directly instead of being drafted first (#405 by @​CybotTM).

Documentation

  • ADR-019's example code shows the atomic.Int64 spelling the tree now uses; the decision it records is unchanged (#411).
  • The 0.16.0 entry credits the changes its release cut had missed (#404 by @​CybotTM).

Full changelog: netresearch/go-cron@v0.16.0...v0.16.1

Changelog

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

[0.16.1] - 2026-09-22

Maintenance release. The public API is unchanged, the minimum Go version stays at 1.26, and no scheduling behaviour differs from 0.16.0.

Changed

  • Toolchain updated to go1.27.1. Only the toolchain directive moved; the go directive stays at 1.26, so importers are unaffected ([PR#410])

Internal

  • Library code modernized via go fix: entryCount in cron.go and the circuit breaker's failures and lastFailNano in retry.go are now atomic.Int64 instead of plain int64 reached through atomic.LoadInt64(&x). Same memory semantics; the atomic types additionally carry their own 64-bit alignment, so those fields no longer depend on their position in the struct to stay correct on 32-bit platforms. The CAS loop ADR-019 requires is unchanged ([PR#411])
  • Test files modernized via go fix, this time including the ones behind //go:build integration, which a run without the tag never sees: for range n, wg.Go, and further atomic.Int32/Int64 conversions ([PR#411])
  • Benchmarks converted from for i := 0; i < b.N; i++ to for b.Loop() (Go 1.24), which manages the timer itself and keeps the loop body's values alive. One benchmark keeps b.N: it stops the timer around its per-iteration setup, and b.Loop requires a running timer at each call ([PR#412])

Documentation

  • The 0.16.0 entry credits the changes its release cut had missed ([PR#404])
  • ADR-019's example code shows the atomic.Int64 spelling the tree now uses; the decision it records is unchanged ([PR#411])

CI

  • Releases are published directly instead of being drafted first ([PR#405])
  • Renovate processes this fork again, and no longer proposes raising the go directive — that line is the library floor, and a bump would force every importer up. Only the toolchain directive follows the newest patch ([PR#406], [PR#410])
  • The Dependabot configuration is removed; Renovate is the only updater ([PR#409])
Commits
  • 1e78701 chore(release): v0.16.1 (#413)
  • dbabaf5 chore(release): v0.16.1
  • 10273ad test(bench): use b.Loop instead of counting to b.N (#412)
  • 9487c57 test(bench): use b.Loop instead of counting to b.N
  • 431f713 chore(go): apply go fix modernizers, including the integration-tagged files (...
  • 6881117 docs(adr): show the atomic.Int64 spelling in ADR-019's example
  • c325aeb chore(go): apply go fix modernizers, including the integration-tagged files
  • 6cf6d34 fix(renovate): keep the go directive on the library floor, bump toolchain to ...
  • 596752b fix(renovate): keep the go directive on the library floor, bump toolchain to ...
  • 8dc14a8 chore(dependabot): remove the Dependabot configuration (#409)
  • 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 Oct 5, 2026
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Oct 5, 2026
@dependabot
dependabot Bot deployed to testing October 5, 2026 23:37 Active
@dependabot
dependabot Bot deployed to testing October 5, 2026 23:37 Active
@dependabot
dependabot Bot deployed to testing October 5, 2026 23:37 Active
@dependabot
dependabot Bot deployed to testing October 5, 2026 23:37 Active
@dependabot
dependabot Bot deployed to testing October 5, 2026 23:37 Active
Bumps [github.com/netresearch/go-cron](https://github.com/netresearch/go-cron) from 0.16.0 to 0.16.1.
- [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.16.0...v0.16.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/go_modules/github.com/netresearch/go-cron-0.16.1 branch from 96c368c to 991169c Compare October 7, 2026 16:45
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@dependabot
dependabot Bot deployed to testing October 7, 2026 16:45 Active
@jfantinhardesty
jfantinhardesty merged commit 599e9f8 into main Oct 7, 2026
23 checks passed
@jfantinhardesty
jfantinhardesty deleted the dependabot/go_modules/github.com/netresearch/go-cron-0.16.1 branch October 7, 2026 18:11

This branch was successfully deployed

1 active deployment
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