Description
It would be very useful to developers of low- and mid-level Rust libraries, such as https://github.com/Pr0methean/TripleMixPrng and https://github.com/zip-rs/zip2, if we could forward-compatibly specify the "latest" version of an image, even when using the less-popular ISA for that OS family (x86 for MacOS; aarch64 for Windows, Linux and -- if it ever becomes available at all -- BSD). This is also true of JVM apps, especially when building against non-LTS OpenJDK versions. Could we please have windows-arm-latest, ubuntu-arm-latest and macos-intel-latest as actively-maintained aliases for the newest hosted runner specs/images that can build and run Rust programs using respectively the aarch64-pc-windows-msvc, aarch64-unknown-linux-gnu and x86_64-apple-darwin target triples? Thanks very much in advance.
Platforms affected
Runner images affected
Image version and build link
n/a
Is it regression?
n/a
Expected behavior
I can change line 58 of https://github.com/Pr0methean/TripleMixPrng/blob/dc29200c3de90f20f9bcd9f81dfb60494f14135c/.github/workflows/rust.yml#L58 to os: [ ubuntu-latest, ubuntu-arm-latest, macos-intel-latest, macos-latest, windows-latest, windows-arm-latest ] and the unit tests will still run against the Cartesian product of both ISAs and all three operating-system families.
Actual behavior
ubuntu-arm-latest, windows-arm-latest and macos-intel-latest don't exist. I can specify os: [ ubuntu-latest, ubuntu-24.04-arm, macos-26-intel, macos-latest, windows-latest, windows-11-arm ] but that explicitly prevents three of the six combinations of a CPU ISA and an operating-system family from ever being automatically updated to the next major OS version.
Repro steps
See https://github.com/Pr0methean/TripleMixPrng/blob/dc29200c3de90f20f9bcd9f81dfb60494f14135c/.github/workflows/rust.yml
Description
It would be very useful to developers of low- and mid-level Rust libraries, such as https://github.com/Pr0methean/TripleMixPrng and https://github.com/zip-rs/zip2, if we could forward-compatibly specify the "latest" version of an image, even when using the less-popular ISA for that OS family (x86 for MacOS; aarch64 for Windows, Linux and -- if it ever becomes available at all -- BSD). This is also true of JVM apps, especially when building against non-LTS OpenJDK versions. Could we please have
windows-arm-latest,ubuntu-arm-latestandmacos-intel-latestas actively-maintained aliases for the newest hosted runner specs/images that can build and run Rust programs using respectively theaarch64-pc-windows-msvc,aarch64-unknown-linux-gnuandx86_64-apple-darwintarget triples? Thanks very much in advance.Platforms affected
Runner images affected
Image version and build link
n/a
Is it regression?
n/a
Expected behavior
I can change line 58 of https://github.com/Pr0methean/TripleMixPrng/blob/dc29200c3de90f20f9bcd9f81dfb60494f14135c/.github/workflows/rust.yml#L58 to
os: [ ubuntu-latest, ubuntu-arm-latest, macos-intel-latest, macos-latest, windows-latest, windows-arm-latest ]and the unit tests will still run against the Cartesian product of both ISAs and all three operating-system families.Actual behavior
ubuntu-arm-latest,windows-arm-latestandmacos-intel-latestdon't exist. I can specifyos: [ ubuntu-latest, ubuntu-24.04-arm, macos-26-intel, macos-latest, windows-latest, windows-11-arm ]but that explicitly prevents three of the six combinations of a CPU ISA and an operating-system family from ever being automatically updated to the next major OS version.Repro steps
See https://github.com/Pr0methean/TripleMixPrng/blob/dc29200c3de90f20f9bcd9f81dfb60494f14135c/.github/workflows/rust.yml