Skip to content

The x86_64-apple-darwin toolchain is demoted #1365

@wks

Description

@wks

Rust 1.89.0 is Demoting x86_64-apple-darwin to Tier 2 with host tools.

GitHub will soon discontinue providing free macOS x86_64 runners for public repositories. Apple has also announced their plans for discontinuing support for the x86_64 architecture.

This means the x86_64-apple-darwin toolchain will be guaranteed to build, but no longer guaranteed to work.

The direct impact will be GitHub runners. Currently we do minimal tests with the following configurations:

  minimal-tests-core:
    needs: setup-test-matrix
    strategy:
      fail-fast: false
      matrix:
        target:
          - { os: ubuntu-22.04, triple: x86_64-unknown-linux-gnu }
          - { os: ubuntu-22.04, triple: i686-unknown-linux-gnu }
          - { os: macos-15, triple: x86_64-apple-darwin }
        rust: ${{ fromJson(needs.setup-test-matrix.outputs.rust )}}

    name: minimal-tests-core/${{ matrix.target.triple }}/${{ matrix.rust }}
    runs-on: ${{ matrix.target.os }}

According to the list of available runners, the identifier macos-15 is already MacOS 15 ARM64. Our recent CI test logs clearly indicates that it is running on arm64. But even though we set the triplet to x86_64-apple-darwin, it somehow managed to run successfully. It installed the aarch64-apple-darwin host toolchain, added the x86_64 target, compiled mmtk-core for the x86_64 target and ran. I guess some compatibility layers on MacOS allowed it to run x86_64 binaries on ARM64 machines.

But anyway we should migrate to aarch64-apple-darwin because Apple is also dropping support for x86_64.

If needed, we may test on aarch64-unknown-linux-gnu, too, to catch aarch64-specific bugs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions