Skip to content

Changelog

What's shipped

v1.2.1

freshdock follows Keep a Changelog and Semantic Versioning. This mirrors the project's CHANGELOG.md, the canonical, always-current source. Full release artifacts (binaries, images) are on the releases page.

1.2.1 (16 June 2026)

Other

  • Bump toml from 0.8.23 to 1.1.2 (spec 1.1.0). (#50)

1.2.0 (16 June 2026)

Added

  • Credential observability. Surface registry-auth state, and survive rejected tokens instead of failing the whole check. (#45)

Other

  • Publish documentation as an mdBook site on GitHub Pages. (#46)
  • Add monthly Dependabot for cargo and GitHub Actions. (#47)
  • Add a funding option, project logo, and README header. (#41, #44)

1.1.0 (10 June 2026)

Added

  • Full environment-variable config coverage, onboarding docs, and node24 release actions. (#39)

1.0.0 (10 June 2026)

First stable release. Same surface as 1.0.0-rc.1, promoted after a homelab beta. watch, read-only check, and the recreate health-gate were verified on Docker, Portainer, and TrueNAS. No functional changes since the candidate.

1.0.0-rc.1 (9 June 2026)

First release candidate. Closes Phases 0 to 7 of the roadmap.

Added

  • freshdock check: read-only update-status table. Lists opted-in containers, resolves the latest registry digest per unique image (deduped to respect Docker Hub's anonymous rate budget), and reports which have updates. Never mutates state.
  • freshdock recreate <name>: manual single-container update. The sequence is inspect → pull → stop → rename → create → start, health-gated with automatic rollback on failure.
  • freshdock run: scheduler daemon polling opted-in containers on their per-mode cadence (--interval, --tick, --stop-timeout); graceful SIGINT/SIGTERM drain.
  • Per-container update modes via Docker labels: live, nightly, weekly, monthly, watch, off. Opt-in by default (freshdock.enable=true).
  • Per-container cron override (freshdock.schedule) with a hand-rolled 5-field parser; calendar modes evaluated in system local time with DST-gap handling.
  • Health-gated rollback: a new container must pass its healthcheck (or a grace period) before the old one is removed; otherwise it is restored.
  • Multi-registry digest checks: Docker Hub (anonymous + authenticated), GHCR, Quay.io, lscr.io, and any OCI bearer-token registry.
  • Notifications: webhook, Discord, Telegram, and SMTP backends, each subscribable to a subset of the available / succeeded / failed triggers.
  • Image cleanup: remove the superseded image after a healthy update; optional daemon-wide dangling prune.
  • Global default mode for enabled containers with no explicit freshdock.mode label.
  • Multi-arch container image (amd64, arm64, armv7) on GHCR and static-musl release binaries for the same three architectures.