Skip to content

Rollup of 16 pull requests #138548

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 47 commits into from
Mar 16, 2025
Merged

Rollup of 16 pull requests #138548

merged 47 commits into from
Mar 16, 2025

Conversation

jieyouxu
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

lolbinarycat and others added 30 commits March 2, 2025 09:49
These gates are unnecessary now that unit tests for `core` are in a
separate package, `coretests`, instead of in the same files as the
source code. They previously prevented the two `core` versions from
conflicting with each other.
* Clarify relationship to `dyn` after rust-lang#133003.
* Add an example of using it with `dyn` as rust-lang#133003 enabled.
* Add an example of implementing it.
* Add links to Rust Reference for the mentioned concepts.
* Mention that its method should rarely be called.
* Replace parameter name `dst` with `dest` to avoids confusion between
  “DeSTination” and “Dynamically-Sized Type”.
* Various small corrections.
It also now demonstrates how to avoid memory leaks.
* Give example of how to get the offset of an unsized tail field
  (prompted by discussion <rust-lang#133055 (comment)>).
* Specify the return type.
* Add section headings.
* Reduce “Visibility is respected…”, to a single sentence.
Co-authored-by: Thom Chiovoloni <thom@shift.click>
Co-authored-by: Thom Chiovoloni <thom@shift.click>
Co-authored-by: Thom Chiovoloni <thom@shift.click>
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
@rustbot rustbot added 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 Mar 16, 2025
@jieyouxu
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Mar 16, 2025

📌 Commit f4372f5 has been approved by jieyouxu

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 Mar 16, 2025
@bors
Copy link
Collaborator

bors commented Mar 16, 2025

⌛ Testing commit f4372f5 with merge 66678e6...

@bors
Copy link
Collaborator

bors commented Mar 16, 2025

☀️ Test successful - checks-actions
Approved by: jieyouxu
Pushing 66678e6 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Mar 16, 2025
@bors bors merged commit 66678e6 into rust-lang:master Mar 16, 2025
7 checks passed
@rustbot rustbot added this to the 1.87.0 milestone Mar 16, 2025
@jieyouxu jieyouxu deleted the rollup-xpslct5 branch March 16, 2025 05:16
Copy link

This is an experimental post-merge analysis report. You can ignore it.

Post-merge report

Comparing 9f274ba (base) -> 66678e6 (this PR)

Test differences

  • [ui] tests/ui/attributes/outer-mod-attr-applies-only-to-first.rs: [missing] -> pass (J0)
  • [ui] tests/ui/cast/cast_lit_suffix-issue-138392.rs: [missing] -> pass (J0)
  • [ui] tests/ui/dupe-first-attr.rs: pass -> [missing] (J0)
  • [ui] tests/ui/duplicate-label-E0381-issue-129274.rs: pass -> [missing] (J0)
  • [ui] tests/ui/duplicate_entry_error.rs: pass -> [missing] (J0)
  • [ui] tests/ui/error-codes/E0152-duplicate-lang-items.rs: [missing] -> pass (J0)
  • [ui] tests/ui/error-codes/E0381-duplicated-label.rs: [missing] -> pass (J0)
  • [codegen] tests/codegen/issues/issue-129795.rs: [missing] -> ignore (ignored when the LLVM version 18.1.3 is older than 20.0.0) (J1)
  • [codegen] tests/codegen/issues/issue-129795.rs: [missing] -> ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) (J2)
  • [codegen] tests/codegen/issues/issue-129795.rs: [missing] -> pass (J3)
  • [mir-opt] tests/mir-opt/gvn_on_unsafe_binder.rs: [missing] -> pass (J4)
  • [rustdoc] tests/rustdoc/return-type-notation.rs: [missing] -> pass (J5)
  • [rustdoc-json] tests/rustdoc-json/return-type-notation.rs: [missing] -> pass (J6)
  • core::config::tests::test_exclude: [missing] -> pass (J7)

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

Job group index

  • J0: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-2, x86_64-gnu, x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
  • J1: x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-18-3
  • J2: x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3
  • J3: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-1, x86_64-gnu, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
  • J4: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-1, x86_64-gnu, x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
  • J5: aarch64-apple, aarch64-gnu, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, x86_64-apple-2, x86_64-gnu, x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
  • J6: aarch64-apple, aarch64-gnu, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, x86_64-apple-1, x86_64-gnu, x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
  • J7: aarch64-apple, aarch64-gnu, i686-gnu-2, i686-gnu-nopt-2, i686-mingw-1, i686-mingw-3, i686-msvc-2, x86_64-apple-1, x86_64-gnu, x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-2, x86_64-msvc-2

@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#133055 Expand CloneToUninit documentation. 69a2c979cd79f46fe99a4db85294d71d2a7cd49d (link)
#137147 Add exclude to config.toml 3bd10eb52f018a71817fddc1f3e51cbb2b9759b0 (link)
#137864 Don't drop Rvalue::WrapUnsafeBinder during GVN 50a7499843a5f2ea723972c17987067193104ca4 (link)
#137890 doc: clarify that consume can be called after BufReader::pe… 3a09fee8156f8c4616e4c01912f030015244fafd (link)
#137956 Add RTN support to rustdoc cc3d6fc9b29407a7650caeb78b22e6bce90e1ed8 (link)
#137968 Properly escape regexes in Python scripts 32dd584bf3e4639f51c8f9a3dbcee2a3f6472ede (link)
#138082 Remove #[cfg(not(test))] gates in core 8a44e73c543cb121685c3f16ce6f9ecbfc53f95f (link)
#138275 expose is_s390x_feature_detected! from std::arch 33c73a6b861cb6ffadf38c3f60e0138232462395 (link)
#138303 Fix Ptr inconsistency in {Rc,Arc} ba50e4094c81a7220555652fd1b272115734bbc6 (link)
#138309 Add missing doc for intrinsic (Fix PR135334) b5230c094b4a7b8a18b86700089678527191c142 (link)
#138323 Expand and organize offset_of! documentation. f02bb61214618dbfdebf92475d41fe829c261022 (link)
#138329 debug-assert that the size_hint is well-formed in collect 7047d145e6c9cc377a89c1f75ddfff2287f0df49 (link)
#138465 linkchecker: bump html5ever d1ab8a616509dd71887b73f7697153af27ac17e5 (link)
#138471 Clean up some tests in tests/ui cd54e1c79b90b5060ad6ccfa829007c6a7927d7c (link)
#138472 Add codegen test for #129795 d831463d4a1ac15f3792a25e6e20e27a29cb8fc6 (link)
#138484 Use lit span when suggesting suffix lit cast e7371352bc3f645641a4c53dfd52050012dff343 (link)

previous master: 9f274ba399

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 (66678e6): comparison URL.

Overall result: ❌ regressions - please read the text below

Our benchmarks found a performance regression caused by this PR.
This might be an actual regression, but it can also be just noise.

Next Steps:

  • If the regression was expected or you think it can be justified,
    please write a comment with sufficient written justification, and add
    @rustbot label: +perf-regression-triaged to it, to mark the regression as triaged.
  • If you think that you know of a way to resolve the regression, try to create
    a new PR with a fix for the regression.
  • If you do not understand the regression or you think that it is just noise,
    you can ask the @rust-lang/wg-compiler-performance working group for help (members of this group
    were already notified of this PR).

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

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.4% [0.2%, 1.0%] 8
Regressions ❌
(secondary)
0.5% [0.2%, 0.9%] 14
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.4% [0.2%, 1.0%] 8

Max RSS (memory usage)

Results (primary -3.1%, secondary -1.7%)

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
Regressions ❌
(secondary)
2.4% [2.4%, 2.4%] 1
Improvements ✅
(primary)
-3.1% [-3.7%, -1.8%] 6
Improvements ✅
(secondary)
-5.7% [-5.7%, -5.7%] 1
All ❌✅ (primary) -3.1% [-3.7%, -1.8%] 6

Cycles

Results (secondary 1.0%)

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
Regressions ❌
(secondary)
6.0% [6.0%, 6.1%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.3% [-2.5%, -2.2%] 3
All ❌✅ (primary) - - 0

Binary size

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.2% [0.0%, 0.8%] 43
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.2% [-0.7%, -0.0%] 7
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.1% [-0.7%, 0.8%] 50

Bootstrap: 772.91s -> 775.015s (0.27%)
Artifact size: 365.07 MiB -> 365.11 MiB (0.01%)

@rustbot rustbot added the perf-regression Performance regression. label Mar 16, 2025
@rylev
Copy link
Member

rylev commented Mar 18, 2025

@rust-timer build 50a7499

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (50a7499): comparison URL.

Overall result: no relevant changes - no action needed

Instruction count

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

Max RSS (memory usage)

Results (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
Regressions ❌
(secondary)
2.6% [2.6%, 2.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

Results (secondary 0.8%)

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
Regressions ❌
(secondary)
3.6% [3.6%, 3.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.0% [-2.0%, -2.0%] 1
All ❌✅ (primary) - - 0

Binary size

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

Bootstrap: 772.91s -> 772.7s (-0.03%)
Artifact size: 365.07 MiB -> 365.07 MiB (0.00%)

@rylev
Copy link
Member

rylev commented Mar 19, 2025

It's not clear to me which PR could be the culprit. Instead of wasting a bunch of perf time trying to find out, I think it's fine if we cut our losses.

@rustbot label: +perf-regression-triaged

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Mar 19, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-rustdoc-json Area: Rustdoc JSON backend merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. 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.