Release prep 0.7.0: close-prompt alignment, refreshed docs, safer release workflow - #2
Merged
Conversation
The close prompt's buttons sat unevenly against the right edge on macOS. The window asserted a fixed width and laid the content out inside it, so a platform that measures text or button chrome differently could push the row out past the inset the rest of the content keeps. The content now carries an exact width and the window sizes itself to that instead, and both buttons are one fixed size with symmetric padding and centred content, so the row cannot come out ragged. While there, the default button follows the platform convention: rightmost on macOS, first on Windows and Linux. Keep running is still the default and the Enter key either way. There is no macOS here to reproduce it on, so the fix is to make the geometry explicit rather than derived. Verified on Windows at 175% scale, where the dialog comes out at the intended 420 logical points. The README told you to press Save, to type the day and night times, and that closing the window keeps the app running. None of those are true any more. The screenshot was stale too: v1.0.0 in the status bar, a full-screen caption button, and six flat-colour test tiles. Replaced with a current one, and the install and build sections tightened. CHANGELOG.md had one section, [1.0.0], but the version is 0.7.0 and no tag has ever been pushed, so tagging v0.7.0 would have produced a release with no notes at all. It is now [0.7.0], covering the UI rebuild, the close prompt and the performance work alongside what was already listed. Release workflow: - Tests run on all three platforms before anything is packaged. A tag pointing at a commit CI never saw could previously be released untested. - The changelog section is checked in the first job, so a tag with no notes fails in seconds rather than after three platforms have built. - Linux packaging moved into scripts/publish-linux.sh, so every platform now builds from the same script locally and in CI, and the tarball is size-checked the way the Windows one already was. Confirmed the Linux single file embeds the Skia and HarfBuzz natives, so the bare binary in the tarball is enough. - scripts/release-notes.sh replaces the awk that was inlined in the workflow, and is used by both the early check and the draft release. - The draft release fails if any platform did not contribute its two artifacts. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the close prompt's button row on macOS, brings the README and changelog in line with what the app actually does, and makes the release workflow safe to run against a tag.
The close prompt
The geometry is now explicit rather than derived: the content carries an exact width and the window sizes itself to that, and both buttons are one fixed size with symmetric padding and centred content. The default button also follows the platform convention now — rightmost on macOS, first on Windows and Linux. "Keep running" is still the default and the Enter key either way.
Release workflow
scripts/publish-linux.sh, so all three platforms now build from the same script locally and in CI, and the tarball is size-checked the way the Windows one already was. Confirmed the Linux single file embeds the Skia and HarfBuzz natives (90 MB), so the bare binary in the tarball is enough.scripts/release-notes.shreplaces the awk that was inlined in the workflow; both the early check and the draft release use it.