-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
./x test src/tools/cargo
triggers ~90 test failures on native Windows msvc
#131089
Comments
I am not sure if it's related to bootstrap difference as we run cargo tests on CI. |
Yeah I'm not sure why these tests are failing, I'm just reporting them for now so it's tracked somewhere but haven't tried to debug them. |
I only got 22 failures, And they seem different to yours (or at least some are):
Full output
|
Update: this might be related to which profile I use. By default I use |
Oh right, my profile is library which defaults to stage 0. |
Is it related to the version of stage0 Cargo? When did we last bump the version? |
I'm checking what happens on msvc if I set EDIT: 89 failures, the same ones as mentioned in description. |
With
The "Failed to rename" is an unfortunate hazard on Windows. Maybe Cargo could be more robust here (maybe not) but that's probably a separate issue. It's also possible bootstrap is interfering somehow but I don't know. I'm not sure what's happening with EDIT: stage 2 had 5 failures: failures:
---- freshness::lld_is_fresh stdout ----
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe build`
thread 'freshness::lld_is_fresh' panicked at tests\testsuite\freshness.rs:2786:22:
test failed running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe build`
error: process exited with code 101 (expected 0)
--- stdout
--- stderr
Compiling foo v0.1.0 (F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\tmp\cit\t1507\foo)
error: linker `rust-lld` not found
|
= note: program not found
note: the msvc targets depend on the msvc linker but `link.exe` was not found
note: please ensure that Visual Studio 2017 or later, or Build Tools for Visual Studio were installed with the Visual C++ option.
note: VS Code is a different product, and is not sufficient.
error: could not compile `foo` (lib) due to 1 previous error
---- install_upgrade::change_features_rebuilds stdout ----
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe install foo`
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\tmp\cit\t1819\home\.cargo\bin\foo-0.exe`
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe install foo --no-default-features`
thread 'install_upgrade::change_features_rebuilds' panicked at tests\testsuite\install_upgrade.rs:67:29:
Failed to rename `"F:\\rust\\build\\x86_64-pc-windows-msvc\\stage2-tools\\x86_64-pc-windows-msvc\\tmp\\cit\\t1819\\home\\.cargo\\bin\\foo.exe"` to `"F:\\rust\\build\\x86_64-pc-windows-msvc\\stage2-tools\\x86_64-pc-windows-msvc\\tmp\\cit\\t1819\\home\\.cargo\\bin\\foo-0.exe"`: Access is denied. (os error 5)
---- install_upgrade::switch_sources stdout ----
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe install foo`
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\tmp\cit\t1832\home\.cargo\bin\foo-2.exe`
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe install foo --registry alternative`
thread 'install_upgrade::switch_sources' panicked at tests\testsuite\install_upgrade.rs:67:29:
Failed to rename `"F:\\rust\\build\\x86_64-pc-windows-msvc\\stage2-tools\\x86_64-pc-windows-msvc\\tmp\\cit\\t1832\\home\\.cargo\\bin\\foo.exe"` to `"F:\\rust\\build\\x86_64-pc-windows-msvc\\stage2-tools\\x86_64-pc-windows-msvc\\tmp\\cit\\t1832\\home\\.cargo\\bin\\foo-2.exe"`: Access is denied. (os error 5)
---- package::issue_14354_allowing_dirty_bare_commit stdout ----
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe package --allow-dirty`
thread 'package::issue_14354_allowing_dirty_bare_commit' panicked at tests\testsuite\package.rs:1276:38:
test failed running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe package --allow-dirty`
error: process exited with code 101 (expected 0)
--- stdout
--- stderr
error: revspec 'HEAD' not found; class=Reference (4); code=NotFound (-3)
---- package::normalize_case stdout ----
running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe package`
thread 'package::normalize_case' panicked at tests\testsuite\package.rs:3452:7:
test failed running `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\cargo.exe package`
error: process exited with code 101 (expected 0)
--- stdout
--- stderr
error: could not find `Cargo.toml` in `F:\rust\build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\tmp\cit\t2174\foo` or any parent directory, but found cargo.toml please try to rename it to Cargo.toml
failures:
freshness::lld_is_fresh
install_upgrade::change_features_rebuilds
install_upgrade::switch_sources
package::issue_14354_allowing_dirty_bare_commit
package::normalize_case
test result: FAILED. 3278 passed; 5 failed; 191 ignored; 0 measured; 0 filtered out; finished in 324.41s |
Perhaps unrelated, though 29 tests have failed on my machine recently (since last Friday when I updated Cargo submodule)
Haven't investigated them deeper, but seem to be all about LTO and release builds. I am on aarch64-apple-darwin with Nixpkgs. |
Based on a fresh checkout 07f08ff, not caused by #131060 (as the same failures occur also happen with #131060 reverted, just found out accidentally running the cargo tool tests on msvc natively).
Running
./x test src/tools/cargo
on native Windowsx86_64-pc-windows-msvc
with VS 2022, standard development environment (no unusualPATH
modifications like putting VS 2022 tools; test ran under standard PowerShell; not inside MSYS2) leads to ~90 cargo test failures, seemingly have to do with path differences and not findinglink.exe
. 1I presume this is due to some kind of bootstrap difference, because I imagine these all pass for cargo CI. Unless all of our Windows CIs (rust-lang/rust or rust-lang/cargo) all use MSYS2 environments. I have not tried to dig into this.
Test failures
Footnotes
Note that I can run compiletest-managed test suites just fine (outside of debuginfo due to debugger shenanigans) modulo remaining run-make tests that use
Makefile
s. ↩The text was updated successfully, but these errors were encountered: