Skip to content

Rollup of 12 pull requests #140695

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

Merged
merged 44 commits into from
May 6, 2025
Merged

Rollup of 12 pull requests #140695

merged 44 commits into from
May 6, 2025

Conversation

Zalathar
Copy link
Contributor

@Zalathar Zalathar commented May 6, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

joboet and others added 30 commits April 28, 2025 11:13
Move the public `CommandEnvs` into the `process` module (and make it a wrapper type for an internal iterator type) and everything else into `sys::process` as per rust-lang#117276.
This fixes issues with RustAnalyzer not finding stable_mir crate.
It is also part of the long term architecture plan for these crates,
since we are moving towards having stable_mir depend on rustc_smir and
not the other way around.

I believe this is an utility function that will come handy eventually
for stable_mir users, but I'm keeping it as part of rustc_internal since
it initializes the StableMir context and requires `TyCtxt`.

Finally, I added the rustc_internal crate under a feature since the APIs
from this module shall not be stabilized.
Co-authored-by: Jubilee <workingjubilee@gmail.com>
This is a routine update to pull in some fixes and updates.

Changelog: https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0449
This also causes the coverage-dump unit tests to run in CI and `./x test` by
default.
Actually printing the filenames is deferred to a subsequent commit that will
simultaneously bless all affected tests.
@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs A-rustdoc-search Area: Rustdoc's search feature A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. rollup A PR which is a rollup labels May 6, 2025
@Zalathar
Copy link
Contributor Author

Zalathar commented May 6, 2025

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented May 6, 2025

📌 Commit 546c1c2 has been approved by Zalathar

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 6, 2025
@bors
Copy link
Collaborator

bors commented May 6, 2025

⌛ Testing commit 546c1c2 with merge 651e9cf...

@bors
Copy link
Collaborator

bors commented May 6, 2025

☀️ Test successful - checks-actions
Approved by: Zalathar
Pushing 651e9cf to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 6, 2025
@bors bors merged commit 651e9cf into rust-lang:master May 6, 2025
7 checks passed
@rustbot rustbot added this to the 1.88.0 milestone May 6, 2025
Copy link

github-actions bot commented May 6, 2025

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 7295b08 (parent) -> 651e9cf (this PR)

Test differences

Show 2291 test diffs

Stage 1

  • [rustdoc] tests/rustdoc/anchor-id-trait-tymethod-28478.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/assoc/assoc-type-bindings-20646.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/blanket-impl-29503.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/constant/generic_const_exprs.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/constant/rfc-2632-const-trait-impl.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/decl_macro.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/doc-assoc-item.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/doc-cfg-hide.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/doc-cfg-implicit.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/doc-cfg-traits.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/enum-variant-private-46767.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/impl-trait-precise-capturing.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/impl/impl-trait-precise-capturing.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/impl/method-link-foreign-trait-impl-17476.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/jump-to-def/jump-to-def-doc-links-calls.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/link-extern-crate-title-33178.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/macro-generated-macro.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/must_implement_one_of.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/negative-impl.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/no_std-primitive.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/primitive/primitive-raw-pointer-link-no-inlined-15318-2.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/primitive/primitive-tuple-variadic.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/private/inner-private-110422.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/reexport-check.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/reexport-hidden-macro.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/reexport/alias-reexport2.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/reexport/blanket-reexport-item.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/reexport/duplicated-glob-reexport-60522.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/reexport/foreigntype-reexport.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/reexport/reexport-macro.rs: [missing] -> pass (J0)
  • [rustdoc] tests/rustdoc/rustc-macro-crate.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/source-file.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/src-links-inlined-34274.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/src-mod-path-absolute-26995.rs: pass -> [missing] (J0)
  • [rustdoc] tests/rustdoc/strip-enum-variant.rs: pass -> [missing] (J0)
  • errors::verify_parse_async_impl_160: pass -> [missing] (J2)
  • errors::verify_parse_async_move_block_in_2015_61: pass -> [missing] (J2)
  • errors::verify_parse_async_move_block_in_2015_67: [missing] -> pass (J2)
  • errors::verify_parse_async_use_block_in_2015_68: [missing] -> pass (J2)
  • errors::verify_parse_bounds_not_allowed_on_trait_aliases_73: pass -> [missing] (J2)
  • errors::verify_parse_bounds_not_allowed_on_trait_aliases_79: [missing] -> pass (J2)
  • errors::verify_parse_box_not_pat_155: [missing] -> pass (J2)
  • errors::verify_parse_dotdotdot_rest_pattern_113: [missing] -> pass (J2)
  • errors::verify_parse_fn_pointer_cannot_be_async_133: [missing] -> pass (J2)
  • errors::verify_parse_frontmatter_invalid_infostring_34: [missing] -> pass (J2)
  • errors::verify_parse_inclusive_range_no_end_41: [missing] -> pass (J2)
  • errors::verify_parse_invalid_label_103: [missing] -> pass (J2)
  • errors::verify_parse_missing_const_type_79: pass -> [missing] (J2)
  • errors::verify_parse_missing_fn_params_67: pass -> [missing] (J2)
  • errors::verify_parse_mut_on_non_ident_pattern_118: [missing] -> pass (J2)
  • errors::verify_parse_non_string_abi_literal_37: pass -> [missing] (J2)
  • errors::verify_parse_path_double_colon_65: [missing] -> pass (J2)
  • errors::verify_parse_self_argument_pointer_69: [missing] -> pass (J2)
  • errors::verify_parse_unexpected_token_after_dot_64: pass -> [missing] (J2)
  • errors::verify_parse_unexpected_token_after_struct_name_found_keyword_82: pass -> [missing] (J2)

Stage 2

  • [rustdoc] tests/rustdoc/anchors/anchors.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/async/async-trait.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/auto/auto-impl-primitive.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/auto/auto-trait-bounds-where-51236.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/constant/assoc-consts-underscore.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/constant/assoc-consts-version.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/constant/hide-complex-unevaluated-consts.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/deduplicate-glob-import-impl-21474.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/default-impl.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/doc-cfg-implicit-gate.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/enum/enum-variant-value.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/extern/extern-default-method.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/generic-impl.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/hidden-private.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/hide-complex-unevaluated-consts.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/ice-associated-const-equality-105952.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/impl-associated-items-sidebar.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/impl/deduplicate-trait-impl-22025.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/impl/deprecated-impls.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/impl/universal-impl-trait.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/inline-assoc-type-20727-bounds.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/inner-private-110422.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/macro/decl_macro.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/macro/decl_macro_priv.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/missing-private-inlining-109258.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/multiple-macro-rules-w-same-name-99221.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/primitive-reference.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/primitive/primitive-raw-pointer-link-15318.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/primitive/primitive-slice-auto-trait.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/private/missing-private-inlining-109258.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/private/private-fields-tuple-struct.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/private/private-non-local-fields.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/private/private-type-cycle-110629.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/pub-use-extern-macros.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/reexport/reexport-stability-tags-deprecated-and-portability.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/reexport/reexports-of-same-name.rs: [missing] -> pass (J1)
  • [rustdoc] tests/rustdoc/reexports-of-same-name.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/sidebar-trait-impl-disambiguate-78701.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/trait-impl.rs: pass -> [missing] (J1)
  • [rustdoc] tests/rustdoc/source-code-pages/src-links-inlined-34274.rs: [missing] -> pass (J3)
  • [rustdoc] tests/rustdoc/src-links-implementor-43893.rs: pass -> [missing] (J3)
  • [ui] tests/ui/frontmatter/extra-after-end.rs: [missing] -> pass (J4)
  • [ui] tests/ui/frontmatter/frontmatter-non-lexible-tokens.rs: [missing] -> pass (J4)
  • [ui] tests/ui/frontmatter/proc-macro-observer.rs: [missing] -> pass (J4)
  • [ui] tests/ui/frontmatter/shebang.rs: [missing] -> pass (J4)

(and 1301 additional test diffs)

Additionally, 890 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 651e9cf327358b28db7e37a2ae61727f4a2ef232 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. dist-x86_64-apple: 10045.2s -> 7884.2s (-21.5%)
  2. x86_64-apple-2: 4724.5s -> 5133.4s (8.7%)
  3. x86_64-msvc-2: 6583.3s -> 7108.5s (8.0%)
  4. dist-arm-linux: 5215.2s -> 4807.9s (-7.8%)
  5. dist-apple-various: 7972.3s -> 7467.3s (-6.3%)
  6. x86_64-msvc-ext2: 5641.7s -> 5939.8s (5.3%)
  7. dist-riscv64-linux: 5073.0s -> 5327.2s (5.0%)
  8. x86_64-gnu-llvm-19-2: 6289.2s -> 6008.4s (-4.5%)
  9. x86_64-gnu-aux: 6234.9s -> 5964.9s (-4.3%)
  10. x86_64-gnu-llvm-20-3: 6777.1s -> 7060.5s (4.2%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#139550 Fix -Zremap-path-scope rmeta handling 9526dc47bdcc2cdf309eedd8685ebd474638b964 (link)
#139764 Consistent trait bounds for ExtractIf Debug impls edfce758c099d0815c40f0e148463061258d7055 (link)
#139773 Implement Iterator::last for vec::IntoIter 713f63278c3cc198add9ab9524c9de53fb37f641 (link)
#140035 Implement RFC 3503: frontmatters 148238041fa848180042b70de1bc098728d841dd (link)
#140251 coverage-dump: Resolve global file IDs to filenames 4d2066031742e85181f73e3e8304137d20aaf98d (link)
#140393 std: get rid of sys_common::process 5086cfa22e36cee88ae2f94d73aa112e62b18d40 (link)
#140532 Fix RustAnalyzer discovery of rustc's stable_mir crate 68c9f5e12f8765d07adae6ef9b4a91b745337e8c (link)
#140598 Steer docs to utf8_chunks and Iterator::take a499d8400e73f295172bcd0df125dbdbef45e713 (link)
#140634 Use more accurate ELF flags on MIPS 140c26f11c677972b64026deb28fa3d4845a4ed9 (link)
#140673 Clean rustdoc tests folder 78330bdbdcfd37a58bdd7f52f5f92aa2f3d5ab9c (link)
#140678 Be a bit more relaxed about not yet constrained infer vars … e20f301499da38c6d9c6d17945fae9e4eadff8e4 (link)
#140687 Update mdbook to 0.4.49 9d2fd3ab2184ff93fb71f7397064799280daf771 (link)

previous master: 7295b08a17

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (651e9cf): comparison URL.

Overall result: ❌✅ regressions and improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.4% [0.4%, 0.4%] 1
Improvements ✅
(primary)
-0.3% [-0.3%, -0.3%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.3% [-0.3%, -0.3%] 1

Max RSS (memory usage)

Results (primary 0.5%, secondary 2.6%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.8% [0.4%, 2.6%] 16
Regressions ❌
(secondary)
2.6% [2.6%, 2.6%] 1
Improvements ✅
(primary)
-0.9% [-1.3%, -0.6%] 3
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.5% [-1.3%, 2.6%] 19

Cycles

Results (primary -0.1%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.5% [0.4%, 0.7%] 2
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.5% [-0.5%, -0.4%] 3
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.1% [-0.5%, 0.7%] 5

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 771.005s -> 771.17s (0.02%)
Artifact size: 365.42 MiB -> 365.44 MiB (0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs A-rustdoc-search Area: Rustdoc's search feature A-testsuite Area: The testsuite used to check the correctness of rustc merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.
Projects
None yet
Development

Successfully merging this pull request may close these issues.