Closed ntkme closed 3 weeks ago
Thank you for the report, we'll look into it.
From https://github.com/eregon/actions-shell/actions/runs/9318186931/job/25650009861, arm64
is used in ruby -v
, RUBY_PLATFORM
and RbConfig (except build
and build_cpu
which are aarch64
, but I think we don't have those in TruffleRuby anyway).
MRI:
JRuby:
TruffleRuby:
Because MRI normalized
aarch64
toarm64
ondarwin
, prebuilt native gems are shipped asarm64-darwin
. This causes a platform mismatch when a gem is part ofREUSE_AS_BINARY_ON_TRUFFLERUBY
.Historically, the gem platform normalization convention is messy. E.g.
aarch64-linux
,aarch64-mingw-ucrt
, butarm64-darwin
...x86_64-linux
,x86_64-darwin
, butx64-mingw-ucrt
...However, gem authors have been publish gems with these as a naming convention for the known platforms, it's probably better for truffleruby to normalize its
host_cpu
toarm64
ondarwin
.