From b38a663c5df0fd5ac7bb65ded7b02a3f7af3b636 Mon Sep 17 00:00:00 2001 From: fufesou Date: Sat, 12 Sep 2026 11:28:42 +0800 Subject: [PATCH] Pass --force-non-host unconditionally --- .github/workflows/ci.yml | 1 - README.md | 4 ---- action.yml | 13 ++++--------- 3 files changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a2eaa52..a1c0d42 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,7 +53,6 @@ jobs: - uses: ./ with: toolchain: stable-i686-pc-windows-msvc - force-non-host: true - name: Check the active toolchain and compiler host run: | test "$(rustup show active-toolchain)" = "stable-i686-pc-windows-msvc (default)" diff --git a/README.md b/README.md index 7ac5260..296681d 100644 --- a/README.md +++ b/README.md @@ -53,10 +53,6 @@ All inputs are optional. components Comma-separated string of additional components to install e.g. clippy, rustfmt - - force-non-host - Pass --force-non-host to rustup when installing and selecting the default toolchain. Defaults to false. Set to true when intentionally using a non-host toolchain that the host can run. -
diff --git a/action.yml b/action.yml index 00b5d9d..5db2edd 100644 --- a/action.yml +++ b/action.yml @@ -18,12 +18,6 @@ inputs: components: description: Comma-separated list of components to be additionally installed required: false - # Rustup 1.29.1 requires explicit opt-in for i686 toolchains on x64 Windows. - # https://github.com/rust-lang/rustup/pull/4935 - force-non-host: - description: Allow installing and selecting a toolchain that does not match the host platform - required: false - default: "false" outputs: cachekey: @@ -66,7 +60,6 @@ runs: echo "targets=$(for t in ${targets//,/ }; do echo -n ' --target' $t; done)" >> $GITHUB_OUTPUT echo "components=$(for c in ${components//,/ }; do echo -n ' --component' $c; done)" >> $GITHUB_OUTPUT echo "downgrade=${{steps.parse.outputs.toolchain == 'nightly' && inputs.components && ' --allow-downgrade' || ''}}" >> $GITHUB_OUTPUT - echo "force-non-host=${{inputs.force-non-host == 'true' && ' --force-non-host' || ''}}" >> $GITHUB_OUTPUT env: targets: ${{inputs.targets || inputs.target || ''}} components: ${{inputs.components}} @@ -95,14 +88,16 @@ runs: if: runner.os == 'Windows' shell: bash + # Let rustc below check whether the requested toolchain can run on this host. + # This also permits i686 on x64 Windows: https://github.com/rust-lang/rustup/pull/4935. - name: rustup toolchain install ${{steps.parse.outputs.toolchain}} - run: rustup toolchain install ${{steps.parse.outputs.toolchain}}${{steps.flags.outputs.targets}}${{steps.flags.outputs.components}} --profile minimal${{steps.flags.outputs.downgrade}} --no-self-update${{steps.flags.outputs.force-non-host}} + run: rustup toolchain install ${{steps.parse.outputs.toolchain}}${{steps.flags.outputs.targets}}${{steps.flags.outputs.components}} --profile minimal${{steps.flags.outputs.downgrade}} --no-self-update --force-non-host env: RUSTUP_PERMIT_COPY_RENAME: 1 shell: bash - name: rustup default ${{steps.parse.outputs.toolchain}} - run: rustup default ${{steps.parse.outputs.toolchain}}${{steps.flags.outputs.force-non-host}} + run: rustup default ${{steps.parse.outputs.toolchain}} --force-non-host shell: bash continue-on-error: true # https://github.com/dtolnay/rust-toolchain/issues/127