Skip to content

Fix binary build failures: darwin-x64 runner retired, darwin-arm64 API rate limit, Windows missing libs#145

Merged
jasdeepkhalsa merged 2 commits intomasterfrom
feature/fix-releases
Mar 7, 2026
Merged

Fix binary build failures: darwin-x64 runner retired, darwin-arm64 API rate limit, Windows missing libs#145
jasdeepkhalsa merged 2 commits intomasterfrom
feature/fix-releases

Conversation

@jasdeepkhalsa
Copy link
Copy Markdown
Member

Fix binary build failures: darwin-x64 runner retired, darwin-arm64 API rate limit, Windows missing libs

Three separate root causes, all diagnosed from the GHA run logs.

darwin-x64 — macos-13 runner retired

GitHub no longer provides macos-13. The job was failing immediately with
"The configuration 'macos-13-us-default' is not supported".

Fix: Switch to macos-15-intel, the current supported Intel (x64) macOS runner label.

darwin-arm64 — GitHub API 403 rate limit during spc download

doctor --auto-fix on macOS installs re2c, autoconf, automake, libtool, and
bison via Homebrew, each of which makes unauthenticated api.github.com calls.
By the time spc download tries to resolve the OpenSSL release, the anonymous rate
limit is exhausted and GitHub returns 403, aborting the build.

Fix: Add GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} as an env var on the Unix
build step. SPC honours this token for all API calls, including those made by
doctor --auto-fix.

win32-x64 / win32-arm64 — libraries never downloaded

The previous New-Item -Path source fix resolved the php-src extraction crash,
but spc build then immediately failed:

Building required lib [postgresql-win]
Source [postgresql-win] not downloaded or not locked, you should download it first!

The Unix spc download command passes $SPC_LIBS
(libiconv,libxml2,ncurses,libedit,postgresql,sqlite) but the Windows command
only listed extensions — library sources were never fetched.

Fix: Add a SPC_WINDOWS_LIBS env constant (libiconv,libxml2,postgresql,sqlite,
omitting ncurses/libedit which are Unix-only) and pass it into the Windows
spc download invocation. SPC automatically resolves postgresql
postgresql-win and libiconvlibiconv-win on Windows.

…Windows libs to download

darwin-x64: macos-13 runner has been retired by GitHub — switch to
macos-15-intel (the current supported Intel macOS runner label).

darwin-arm64: spc doctor --auto-fix exhausts the anonymous GitHub API
rate limit (403) by the time spc download tries to resolve openssl.
Pass GITHUB_TOKEN as an env var on the Unix build step so SPC uses
authenticated API calls throughout.

win32-x64 / win32-arm64: the previous source/ pre-create fix got past
the php-src extraction failure but spc build then immediately failed
with "Source [postgresql-win] not downloaded". The Windows download
command was missing library sources. Add SPC_WINDOWS_LIBS env constant
(libiconv,libxml2,postgresql,sqlite — omitting ncurses/libedit which
are Unix-only) and pass it into the Windows spc download invocation.
rhysd/actionlint only publishes full semver tags (v1.x.y); there is no
floating v1 alias. Replace the action reference with the official bash
download script which always installs the latest release.
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Mar 7, 2026

@jasdeepkhalsa jasdeepkhalsa merged commit 23e261c into master Mar 7, 2026
36 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