Skip to content

Build the macOS release binaries on macos-latest - #2059

Merged
Mikola Lysenko (mikolalysenko) merged 2 commits into
mainfrom
fix/release-macos-runner
Nov 11, 2026
Merged

Mikola Lysenko (mikolalysenko) merged 2 commits into
mainfrom
fix/release-macos-runner

Conversation

@mikolalysenko

@mikolalysenko Mikola Lysenko (mikolalysenko) commented Nov 11, 2026 •

Copy link
Copy Markdown
Collaborator

Why

The 5.1.0 Release run (43055050241) failed in one second on both macOS legs with:

The configuration 'macos-14-arm64-us-default' is not supported

GitHub retired the macos-14 runner image on 2026-11-02 (changelog). release.yml was the only workflow still pinned to it, and the last release (5.0.1, 2026-10-13) predates the retirement. The run was cancelled before the tag job, so nothing was tagged or published.

What changes

Both macOS legs of the Release build matrix (aarch64-apple-darwin, x86_64-apple-darwin) move from macos-14 to macos-latest. That is the label ci.yml uses and the same -latest convention as the Linux and Windows legs of this matrix. The x86_64-apple-darwin leg still cross-compiles from the arm64 runner.

Verification

A dry-run: true dispatch of this branch's release.yml (version gate and build matrix only; tag, github-release, cargo-publish and npm-publish are skipped): run 43057194305. It ran on the first commit; the second commit only shortens a YAML comment. Result: success. All 14 targets built, including aarch64-apple-darwin and x86_64-apple-darwin on macos-latest, and the four publish jobs were skipped.

Review findings not fixed here

/code-review high found no correctness bug. Three findings are left for a decision outside this unblock:

  • No canary for the release matrix. The matrix, and the x86_64-apple-darwin cross-compile in particular, runs only on release day, so a runner image change is found mid-release. A scheduled dry-run dispatch would catch it earlier. Not added here: it is a new recurring CI cost and belongs in its own PR.
  • Floating image for shipped binaries. macos-latest can change Xcode and SDK without a commit here. Kept because the other 12 targets already build on ubuntu-latest / windows-latest, and the minimum macOS version of the binaries comes from rustc's per-target default, not from the runner. The alternative is to pin macos-15 and bump it before each retirement.
  • Other pinned labels. The compatibility workflows pin ubuntu-22.04 on purpose for old-distro coverage. They will need the same bump when that image is retired; nothing lints for it today.

🤖 Generated with Claude Code

GitHub retired the macos-14 runner image on 2026-11-02. Both macOS legs
of the Release build matrix were pinned to it, so the 5.1.0 release run
failed in one second with "The configuration 'macos-14-arm64-us-default'
is not supported" and the run was cancelled before the tag job.

Use macos-latest, the label ci.yml builds and tests on for every PR and
the same -latest convention as the Linux and Windows legs of this matrix.
The x86_64-apple-darwin leg still cross-compiles from the arm64 runner.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
Review feedback: the incident date belongs in the commit history, and
"about two years" misstated how long a pinned image lives.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
@mikolalysenko Mikola Lysenko (mikolalysenko) added the Ready for review Agent-verified: mergeable, CI green, Bugbot clean — awaiting human review label Nov 11, 2026
@cursor

cursor Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

PR Summary

Low Risk
Workflow-only runner label change; no application code or release packaging logic is modified.

Overview
Unblocks the Release workflow after GitHub retired the macos-14 runner image (which caused macOS legs to fail immediately with an unsupported configuration error).

Both Apple matrix entries (aarch64-apple-darwin and x86_64-apple-darwin) now use macos-latest, matching ci.yml and the other matrix legs’ -latest pattern. A short YAML comment documents why pinned macOS labels are avoided.

Reviewed by Cursor Bugbot for commit 58edfb3. Configure here.

Merged via the queue into main with commit 7208343 Nov 11, 2026
51 checks passed
@mikolalysenko
Mikola Lysenko (mikolalysenko) deleted the fix/release-macos-runner branch November 11, 2026 16:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Ready for review Agent-verified: mergeable, CI green, Bugbot clean — awaiting human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants