Skip to content

Say what changed in the update dialog - #7

Merged
migsilva89 merged 3 commits into
mainfrom
update-notes-in-dialog
Aug 28, 2026
Merged

migsilva89 merged 3 commits into
mainfrom
update-notes-in-dialog

Conversation

@migsilva89

Copy link
Copy Markdown
Owner

0.3.3 gave the app real auto-update, but the feed it publishes carries no release notes — only a link. So Sparkle announces a new version and shows an empty page, and the only way to learn what you are about to install is to go and look the changelog up. People press Install without reading anything.

The release script now extracts that version's own section from CHANGELOG.md, converts it to a small HTML fragment and hands it to generate_appcast under the name Sparkle looks for, with --embed-release-notes so it goes into the feed rather than staying a link. The styling is deliberately plain and uses color-scheme: light dark, so it follows the Mac's appearance instead of forcing black on white into a dark window.

A release whose version has nothing written about it in the changelog is now refused rather than published with an empty dialog — the same shape as the guards already in that script.

Also in here: the self-check used to create a skill called auto-teste and a command called auto-comando, described in Portuguese, on the disk of anyone who ran it. Those are now self-check-skill and self-check-command, and the last Portuguese strings in the scripts and comments are gone.

Verified against a locally built and signed image, not notarised or published: the <description> comes out embedded and escaped (&amp;, &lt;, links intact), xmllint passes, and the existing guards still hold — the disk image is signed, the feed is signed, and it points at the -update copy. 299 tests, 0 failures.

The feed announced a new version and described it with nothing, so the
only thing in front of somebody about to press Install was the version
number. Sparkle takes per-version notes from a file named after the
archive in the directory generate_appcast scans, so appcast.sh now cuts
this version's section out of CHANGELOG.md, turns it into the small
amount of HTML the changelog actually uses, and leaves it there in the
staging directory - nothing new lands in dist/.

The styling follows the Mac's light or dark appearance rather than
fixing black on white, which Sparkle's web view would render unreadable
at night.

A release whose version has no section, or whose section converts to
nothing, now fails instead of publishing the blank dialog it was
supposed to fix.
@migsilva89
migsilva89 merged commit 8f12096 into main Aug 28, 2026
2 checks passed
@migsilva89
migsilva89 deleted the update-notes-in-dialog branch August 28, 2026 17:59
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