wavefnd / wavefnd/Wave

Find MSVC Cargo build outputs in the Wave case runner

Open
#499 0 comments 0 reactions 0 assignees View on GitHub
build cross-platform good first issue
Dominant language
Rust
Stars
53
Forks
16
Avg merge
4h 22m
Merged PRs (30d)
46

Description

`tools/run_tests.py::resolve_wavec()` probes default Cargo outputs and explicit `x86_64-pc-windows-gnu` directories. It omits explicit `x86_64-pc-windows-msvc` and `aarch64-pc-windows-msvc` outputs. Consequently an MSVC build performed with `cargo build --target ...` can leave the case runner reporting no compiler, or selecting an unrelated stale build.

Add both MSVC output locations with deliberate precedence. Prefer an explicit compiler-path option if one is supplied and ensure a selected host architecture cannot silently run a different compiler. Isolate path selection enough to test it using temporary directories without starting LLVM or importing the runner's executable main path.

Acceptance: tests cover debug/release, both MSVC architectures, an absent compiler, and conflicting stale binaries; existing GNU/default output selection keeps working. Document the selected compiler in test output. This is a small Python tooling task; no Rust compiler or frontend redesign is required.

Related: #292, #493. Keep Windows GNU support.

Contributor guide

Open the contributing guide

Research direction

Start in tools/run_tests.py at resolve_wavec() and trace how default and GNU Cargo output paths are selected. Isolate path selection so temporary-directory tests can cover debug/release, both MSVC architectures, absent and stale binaries, while preserving existing GNU/default behavior. Done means the runner selects the explicit host-compatible compiler with deliberate precedence and documents the selected compiler in test output.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, rust
Domain
build-system, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
78/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.