fix: hotfix v0.9.1#235
Merged
Merged
Conversation
Three bugs prevented v0.9.0 from appearing in appcast.xml: 1. Race condition: the `release: published` and explicit `workflow_dispatch` triggers both fired within 2 seconds of the release being published, before the GitHub API had indexed the new release. The appcast workflow got the pre-release cached list of exactly 30 items and silently skipped v0.9.0 (no zip asset visible yet → jq returned empty → no warning logged → diff showed no changes → no PR created). 2. Pagination: generate-appcast.sh fetched a single page with GitHub's default of 30 releases. With 50+ releases in the repo, any stable release beyond page 1 would be invisible to the generator. Fixes: - Replace `release: published` + explicit `workflow_dispatch` trigger with `workflow_run` on Release workflow completion. The Release workflow takes 30-60 minutes to build/sign/notarize; by the time it completes the API has long indexed the new release. - Add job-level guard to skip appcast update when the Release workflow failed. - Implement page-looping in fetch_releases() (per_page=100&page=N until empty) so all releases are fetched regardless of count. - Add GH_TOKEN auth header to bypass the API response cache. - Fix stale github.event.release.tag_name reference (removed with the release: published trigger) → github.event.workflow_run.head_branch. Co-authored-by: David Collie <support@eyelock.net> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
… record (#234) Harnesses that exist on disk but were never registered via `ynh install` caused `ynh uninstall` to fail with "harness not installed". The fix: - `uninstallHarness(name:)` now detects `installedFrom == nil` and deletes the harness directory via FileManager directly, bypassing the ynh terminal entirely, then cleans associations and refreshes the list - Removed a redundant `FileManager.removeItem` from `performDeleteLocalHarness` in the sidebar (now owned by `uninstallHarness`) - Uninstall confirmation dialogs now show context-aware messages for all three harness provenance states (untracked / ynh-local / registry+git), with the selection logic extracted into a single `Strings.Harnesses.uninstallBaseMessage(for:)` function used by both HarnessDetailView and HarnessesSidebarTab Co-authored-by: David Collie <support@eyelock.net> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…ast forward-port - Open PR to main before waiting for CI (CI runs on the PR) - Always update CHANGELOG.md on the hotfix branch before tagging - Forward-port PR must include CHANGELOG and appcast changes Co-Authored-By: Claude Sonnet 4.6 <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.
Hotfix v0.9.1
Cherry-picks three fixes onto v0.9.0:
bfd6342— fix(ci): fix appcast not updating on stable release (fix(ci): fix appcast not updating on stable release #233)032138e— fix(harnesses): fix uninstall for local harnesses with no YNH install record (fix(harnesses): fix uninstall for local harnesses with no YNH install record #234)ee2d325— docs(skills): update hotfix procedure — PR before CI, CHANGELOG, appcast forward-portChanges
Release checklist
v0.9.1after CI greenrelease.ymluntil GitHub release is publishedupdate-appcast.ymluntil appcast PR merges to mainhotfix/v0.9.1branchdevelop