-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
Run main rust-analyzer tests in rust-lang/rust CI #147372
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
Conversation
|
@bors try |
[DO NOT MERGE] Run main rust-analyzer tests try-job: aarch64-gnu try-job: aarch64-apple try-job: x86_64-mingw-1 try-job: i686-msvc-1 try-job: x86_64-msvc-1 try-job: aarch64-msvc-1
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
9f7d76f to
43d7f3e
Compare
This comment was marked as outdated.
This comment was marked as outdated.
43d7f3e to
bcc2aae
Compare
|
Huh. |
[DO NOT MERGE] Run main rust-analyzer tests try-job: aarch64-gnu try-job: aarch64-apple try-job: x86_64-mingw-1 try-job: i686-msvc-1 try-job: x86_64-msvc-1 try-job: aarch64-msvc-1
This comment has been minimized.
This comment has been minimized.
|
I'd consider this a win? |
This comment was marked as resolved.
This comment was marked as resolved.
… r=Kobzol bootstrap: don't build book redirect pages during dry-run/test Currently, `./x test bootstrap` does not automatically transitively checkout submodules needed to pass all involved test steps. Apparently one place where bootstrap's self-test can choke on locally is trying to build book redirect pages without the book submodules checked out. This change is orthogonal to making bootstrap checking out required submodules for self-tests, and IMO is beneficial regardless since IMO we should not be building these redirect pages during test/dry-run _anyway_. This was blocking me trying to rebless bootstrap self-tests for rust-lang#147372. cf. [#t-infra/bootstrap > Bootstrap self-tests @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Bootstrap.20self-tests/near/543157194). r? `@Kobzol` (or bootstrap)
Rollup merge of #147374 - jieyouxu:bootstrap-redirect-pages, r=Kobzol bootstrap: don't build book redirect pages during dry-run/test Currently, `./x test bootstrap` does not automatically transitively checkout submodules needed to pass all involved test steps. Apparently one place where bootstrap's self-test can choke on locally is trying to build book redirect pages without the book submodules checked out. This change is orthogonal to making bootstrap checking out required submodules for self-tests, and IMO is beneficial regardless since IMO we should not be building these redirect pages during test/dry-run _anyway_. This was blocking me trying to rebless bootstrap self-tests for #147372. cf. [#t-infra/bootstrap > Bootstrap self-tests @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Bootstrap.20self-tests/near/543157194). r? `@Kobzol` (or bootstrap)
c72221d to
0af3c68
Compare
This comment was marked as resolved.
This comment was marked as resolved.
We don't really have a good way to get the target pointer width in bootstrap (yet), so I had to resort to hacky target tuple substring matches. This commit currently only gates on `i686-*` targets, which are 32-bits, and does not try to gate on `i586-*` targets (I need to run try jobs to check if r-a tests actually get run.)
5d2a867 to
15e4969
Compare
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment has been minimized.
This comment has been minimized.
Run main rust-analyzer tests in rust-lang/rust CI try-job: dist-i586-gnu-i586-i686-musl
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
Random CI Jobs ™️ go |
This comment has been minimized.
This comment has been minimized.
Run main rust-analyzer tests in rust-lang/rust CI try-job: dist-i586-gnu-i586-i686-musl try-job: i686-msvc-1 try-job: i686-gnu-2
|
@rustbot ready |
|
@bors r+ |
|
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing ce63e5d (parent) -> eb171a2 (this PR) Test differencesShow 15001 test diffsStage 0
Stage 1
(and 14838 additional test diffs) Additionally, 63 doctest diffs were found. These are ignored, as they are noisy. Job group index Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard eb171a227f9e5de5d376b6edb56b174bc8235fb3 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (eb171a2): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -2.8%, secondary 1.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 3.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 476.217s -> 476.004s (-0.04%) |
Part of #147370.
MCP: rust-lang/compiler-team#923
This PR prepares
rust-analyzercrates within-rust-treecargo featues where needed, and and updates bootstrap to run the mainrust-analyzertests in rust-lang/rust CI, not just theproc-macro-srvcrate tests.This supersedes the earlier attempt at #136779. I was honestly expecting more failures in this PR, but looking back at the previous attempt, that makes sense because we no longer run
i686-mingw(32-bit windows-gnu) which had a bunch of these failures. In the earlier attempt I also disabled thei686-mingw-related failures fori686-msvcsince I didn't feel like digging into 32-bit msvc at the time. Try results from this PR shows that it's most likely limited to 32-bit windows-gnu specifically.rust-analyzertest remarksCARGO_WORKSPACE_DIRexpect-test-hack in order forexpect-testto be able to find the test expectation HTML files (forsyntax_highlightingtests inide). When I added the hack, ironically, it madeexpect-testunable to find the expectation files. I think this was because previously the path was of theproc-macro-srvcrate specifically, now we point to the root r-a workspace?cfg-related differences onaarch64-apple-darwinmight've been fixed? I can't tell, but we don't seem to be observing the differences now.config::{generate_config_documentation, generate_package_json_config}no longer fails. Perhaps they were fixed to no longer try to write to source directory?Review remarks
rustc_privatecompiler crates to use thein-rust-treecargo feature. I briefly tried to use a plain--cfg=in_rust_tree, but quickly realized it was very hacky, and needed invasive bootstrap changes. The cargo feature approach seems most "natural"/well-supported to both bootstrap and cargo.proc-macro-srvtests, but the whole r-a tests.proc-macro-srvtests against 32-bit targets, but we don't expect that crate to be have target pointer width differences. Discussed this in #t-compiler/rust-analyzer > 32-bit tests?.// try-job: aarch64-gnu
// try-job: aarch64-apple
// try-job: x86_64-mingw-1
// try-job: i686-msvc-1
// try-job: x86_64-msvc-1
// try-job: aarch64-msvc-1