Skip to content

ci: fix Intel-Mac release binary (macos-13 retired) + timeout + manual dispatch#25

Merged
saucam merged 1 commit into
mainfrom
ci/fix-intel-mac-release-build
Jul 14, 2026
Merged

ci: fix Intel-Mac release binary (macos-13 retired) + timeout + manual dispatch#25
saucam merged 1 commit into
mainfrom
ci/fix-intel-mac-release-build

Conversation

@saucam

@saucam saucam commented Jul 14, 2026

Copy link
Copy Markdown
Owner

What & why

Prebuilt binaries are already wired (this release.yml builds codeoid-tui and uploads to the release release-plz creates) — but the Intel-Mac binary has been silently missing from every release, and each release run showed "cancelled" after 24h.

Root cause: the x86_64-apple-darwin job ran on macos-13, which GitHub is retiring. The job sat unscheduled until the 24-hour workflow cap and was cancelled — confirmed on both prior releases:

Release linux-x64 macos-arm64 macos-x64 (Intel)
v0.1.0 ❌ missing
v0.1.1 ❌ missing (job cancelled at +24h)

Fix

  • Cross-compile x86_64-apple-darwin on the Apple-Silicon macos-latest runner — drops the retired macos-13 dependency (Apple Silicon cross-compiles to x86_64 cleanly).
  • timeout-minutes: 20 — a stuck/retired runner now fails fast instead of hanging to the 24h cap.
  • workflow_dispatch — a manual build-only run (upload guarded to tag pushes via if: startsWith(github.ref, 'refs/tags/')) so a release can be validated before it's cut.

How it coexists with release-plz (unchanged)

release-plz owns version + CHANGELOG + crates.io publish + the tag + GitHub Release creation; this workflow only builds + uploads binaries to that release on the tag. No overlap, no cargo-dist needed.

⚠️ Merge order

Merge this before merging the release-plz PR (#13). release-plz pushes the v0.2.0 tag using release.yml as it exists on main at that moment — so this fix must be on main first for the Intel-Mac binary to build. After merging, you can optionally trigger release.yml via workflow_dispatch to confirm all three targets build before cutting v0.2.0.

🤖 Generated with Claude Code

… dispatch

The x86_64-apple-darwin binary was built on `macos-13`, which GitHub is
retiring: the job sat unscheduled until the 24h workflow cap and was
cancelled, so the Intel-Mac tarball was missing from every release
(v0.1.0, v0.1.1) and each release run showed "cancelled".

- Cross-compile x86_64-apple-darwin on the Apple-Silicon `macos-latest`
  runner (drops the retired macos-13 dependency).
- `timeout-minutes: 20` so a stuck runner fails fast instead of hanging a day.
- Add `workflow_dispatch` (build + package every target, upload guarded to
  tag pushes only) so releases can be validated before they're cut.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@codecov

codecov Bot commented Jul 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.09%. Comparing base (c7ae732) to head (1488e43).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #25   +/-   ##
=======================================
  Coverage   73.09%   73.09%           
=======================================
  Files          31       31           
  Lines        9002     9002           
=======================================
  Hits         6580     6580           
  Misses       2422     2422           
Flag Coverage Δ
tui 73.09% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

@saucam saucam merged commit c626d8b into main Jul 14, 2026
3 of 4 checks passed
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