Skip to content

feat(updates): automatic background updates - #11

Merged
pantafive merged 2 commits into
mainfrom
arch-review-fixes
Jun 7, 2026
Merged

pantafive merged 2 commits into
mainfrom
arch-review-fixes

Conversation

@pantafive

@pantafive pantafive commented Jun 7, 2026 •

Copy link
Copy Markdown
Owner

Summary

Updates now install themselves. The brew channel fork is gone — Caskroom detection, terminal-command alerts, the copy button — both install channels run the one Sparkle flow. Background checks are forced on every launch (the retired "Check Automatically" toggle could have persisted false, which would dead-end users with no UI to recover); the new "Update Automatically" toggle, default on, controls silent download + install only. With it off, the old flow remains: banner + Update button.

A staged update relaunches the app on the spot only while it's in the background and the output device is idle. Watching a movie or sitting in the popover instead flips the menu and banner to "Restart to Update", with Sparkle's install-on-quit as backstop. The update relaunch skips the multi-output teardown, so the next instance adopts the still-default aggregate and audio never reroutes through the restart.

The README is cut from 836 to 378 words: feature prose to a scannable list, implementation genealogy dropped.

Required follow-up before the release that ships this: add auto_updates true to the cask in pantafive/homebrew-tap. Without it, brew upgrade with a lagging cask downgrades the self-updated app.

Test plan

  • make build, make test, make lint green
  • The download → stage → relaunch → adopt chain needs a published appcast newer than the running build — verify on the first real release

pantafive and others added 2 commits June 7, 2026 11:17
…l fork

One Sparkle flow for both install channels: the cask declares
auto_updates, so brew never fights the self-updated bundle. Checks are
forced on every launch — the retired "Check Automatically" toggle could
have persisted false, which would silently kill both auto-update and
the passive banner. The new "Update Automatically" toggle (default on)
controls silent download + install only.

A staged update relaunches immediately only while the app is in the
background and the output device is idle; otherwise the menu and banner
flip to "Restart to Update" with install-on-quit as the backstop. An
update relaunch skips the multi-output teardown so the next instance
adopts the still-default aggregate and audio never reroutes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@pantafive
pantafive force-pushed the arch-review-fixes branch from 8581f43 to 8fee2ae Compare June 7, 2026 09:17
@pantafive
pantafive merged commit 039226d into main Jun 7, 2026
2 checks passed
@pantafive
pantafive deleted the arch-review-fixes branch June 7, 2026 09:19
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.

1 participant