Skip to content

Exclude arm-linux-musl from native gem builds - #180

Merged
dduugg merged 1 commit into
mainfrom
exclude-arm-linux-musl
Sep 26, 2026
Merged

dduugg merged 1 commit into
mainfrom
exclude-arm-linux-musl

Conversation

@dduugg

@dduugg dduugg commented Sep 26, 2026

Copy link
Copy Markdown
Contributor

Problem

The CD run for #179 (run 36254752545) didn't publish 2.2.0. Every platform built except arm-linux-musl, which failed compiling magnus:

error[E0063]: missing fields `_bitfield_1` and `_bitfield_align_1` in initializer of `timespec`
error: could not compile `magnus`

release depends on every build job, so it was skipped. Nothing reached RubyGems and no GitHub release was created.

arm-linux-musl has never shipped. 2.1.4's platforms were aarch64-linux, aarch64-linux-musl, aarch64-mingw-ucrt, arm64-darwin, x64-mingw-ucrt, x86_64-darwin, x86_64-linux, and x86_64-linux-musl. The build matrix comes from oxidize-rb/actions/fetch-ci-data, which has since started including this platform. magnus 0.8 builds a timespec literal that doesn't account for the padding bitfields on 32-bit musl.

Changes

  • Add arm-linux-musl to the supported-ruby-platforms exclude list, next to arm-linux. This restores the exact platform set 2.1.4 shipped.
  • Skip notify_on_release when dry_run is set. It gated only on release succeeding, and a dry run succeeds without publishing, so it would have posted "🎉 Released … v2.2.0" to Slack for a release that didn't happen.

After merge

CI on main then triggers CD, which sees that 2.2.0 isn't on RubyGems and publishes it. No version bump is needed.

  • I bumped the gem version (or don't need to) 💎

fetch-ci-data started returning arm-linux-musl, which has never shipped.
magnus 0.8 fails to compile for it (32-bit musl's `timespec` has padding
bitfields), and that one failure skipped the 2.2.0 release entirely.

Also skip the Slack release notification on dry runs, which publish nothing.
@dduugg
dduugg requested a review from a team as a code owner September 26, 2026 16:25
@dduugg
dduugg merged commit ddbce0a into main Sep 26, 2026
26 checks passed
@dduugg
dduugg deleted the exclude-arm-linux-musl branch September 26, 2026 16:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant