Add an on-demand Windows Rust check on the self-hosted runner - #392
Merged
Conversation
Companion to macos-check.yml. Justified twice over in one session: first by finding pre-existing macOS-only clippy issues nothing had ever caught, then for real when download_file silently lost its #[cfg(unix)] gate and shipped a broken Windows build in v0.11.1's first release attempt - undetected by ci.yml (100% ubuntu-latest) or macos-check.yml (macOS also satisfies unix, so it never exercised the Windows-only code path either). Same shape as macos-check.yml: build/clippy/test only, workflow_dispatch only, never touches packaging or uploads.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Companion to `macos-check.yml`, and this time justified by a real incident rather than a hypothetical: `v0.11.1`'s first release attempt shipped a broken Windows build. `download_file` silently lost its `#[cfg(unix)]` gate while being refactored (a new helper inserted directly above it took over the attribute, since a Rust `#[cfg]` only applies to the single following item) and started compiling - and failing to compile, since it called a still-`#[cfg(unix)]`-gated helper - on Windows too. `ci.yml` is 100% `ubuntu-latest` and `macos-check.yml` also satisfies `cfg(unix)`, so neither could have caught it. Only an actual Windows compile could, and none existed until now.
Fixed directly on `main` as an emergency hotfix (bypassed branch protection given the release was live and broken; verified natively on Windows, macOS CI, and WSL before pushing) and the release was re-fired successfully - this PR is the follow-up so it doesn't happen again silently.
Test plan
Purely additive CI config, inert until manually triggered. No app code touched.