Publishes prebuilt binaries - #2
Merged
Merged
Conversation
Package each target as a tar.gz and publish all three to a release tagged "latest" on every push to main that passes the suite on Linux, macOS, and Windows. tar rather than zip on all three platforms because bsdtar has shipped with Windows since 10 1803, and because a tarball carries the executable bit that a bare binary served over HTTPS does not. The tag has to move to the commit that produced the binaries, and no gh invocation repoints an existing tag, so the release is deleted and recreated. That leaves a window with no release, which two rules narrow. cancel-in-progress is false, so a second push queues behind this job instead of killing it mid-window. The assets are counted before anything is deleted, so a missing artifact fails while the old release still stands. A tag can also outlive its release: deleting a release in the web UI leaves the tag, and so does a run that dies after the delete. Since "gh release create" ignores --target when the tag already exists, a leftover ref would publish these binaries under a release pointing at an older commit. It is removed explicitly rather than trusted to be absent.
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.
Summary by cubic
Publishes prebuilt binaries for Linux, macOS, and Windows as a rolling GitHub Release tagged
lateston every push tomainthat passes tests. Previously binaries were short‑lived CI artifacts; users now get stable, public tarballs with documented one‑line downloads.Notes for review/rollout
releasejob that runs only onpushtomain, needscheckandbuild, and keeps only the newestlatestrelease..tar.gz(including Windows viabsdtar) to preserve the executable bit; asset names arecommentflow-<target>.tar.gz.latestrelease and tag so both point at the current commit; uses a concurrency group withcancel-in-progress: falseto avoid mid-window cancellation.ghAPI status checks to distinguish 200/404 from failures and explicitly removes a stalelatesttag if present.*.swpto.gitignore.Written for commit 6460822. Summary will update on new commits.