Skip to content

feat: newer version tags, DockPull update banner, flexible scheduling, failure alerts, backups - #107

Merged
StrandedTurtle merged 3 commits into
mainfrom
ccr-44bed3b3-tyenjv
Oct 5, 2026
Merged

StrandedTurtle merged 3 commits into
mainfrom
ccr-44bed3b3-tyenjv

Conversation

@StrandedTurtle

Copy link
Copy Markdown
Owner

Summary

New features

  • Newer version tags. For containers on a version tag (postgres:16.3, app:1.2.0, linuxserver 4.0.14-ls283), DockPull lists the registry's tags. It offers the newest one in the same major version, and the next major if enabled.
    • Tags only compete with tags of the same "shape", so -alpine stays -alpine and -rc/-beta tags never match a stable tag.
    • Switch edits only that service's image: line in the compose file (a .dockpull.bak copy is kept), then updates with the normal health check. A failed pull restores the file, and Revert restores the old tag.
    • Images set via a variable, anchor or digest are refused rather than edited.
    • "Update all" never switches tags. Skip hides one offered tag.
  • DockPull update banner. Shows when a newer release is out, with the release notes and the update command. Read-only: DockPull still never touches its own container.
  • Scheduling. Daily at a time, or every N hours. A scan missed while the server was off runs about a minute after startup. Settings shows when the next scan is due.
  • Failure notifications. A failed or unhealthy update or revert is sent to the configured target (toggle).
  • Sign out everywhere. Invalidates every other session; the current device stays signed in.
  • Backup / restore. Settings, pins and history as JSON. Restore is validated all-or-nothing and won't duplicate history.
  • Release notes for popular images without a source label (curated table plus a linuxserver rule; each repo checked).

Fixes and improvements

  • The post-update health check waits as long as the container's own healthcheck needs (previously a fixed 30s), and catches apps that crash a few seconds after starting (previously reported as success).
  • Prune leaves revert points unticked by default (opt-in checkboxes).
  • Settings saves are now all-or-nothing (a bad value no longer leaves earlier values half-saved).
  • Checker tests run the real runCheck against a fake Docker API and registry (re-pushed index, moved tag, local image, newer tags, concurrent checks).

Note: the session cookie fingerprint changed (sign-out-everywhere generation), so everyone logs in once after upgrading.

Testing

  • 183 server tests pass; the client builds.
  • Live on Docker 29 with a local registry:
    • tag detection, plus compose and standalone switches and reverts (compose file edited, then restored)
    • a failed switch restoring the file
    • crash-after-start detected, with a failure webhook received
    • a 35s healthcheck passing, which the old 30s limit failed
    • sign-out-everywhere, backup/restore, and next-scan scheduling
  • New UI screens rendered with Playwright at phone width; no console errors.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KiL5R3bRpvGk6QP3E21eHF


Generated by Claude Code

@StrandedTurtle
StrandedTurtle merged commit ab3e7d0 into main Oct 5, 2026
2 checks passed
@StrandedTurtle
StrandedTurtle deleted the ccr-44bed3b3-tyenjv branch October 5, 2026 09:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants