Skip to content

Cleanup and optimize render_impls#157540

Merged
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
yotamofek:pr/rustdoc/render_all_impls-cleanup
Jun 8, 2026
Merged

Cleanup and optimize render_impls#157540
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
yotamofek:pr/rustdoc/render_all_impls-cleanup

Conversation

@yotamofek

@yotamofek yotamofek commented Jun 6, 2026

Copy link
Copy Markdown
Contributor
  • take ownership of the Vec<&Impl> instead of copying into another alloc
  • reuse ImplString to do natural sort ordering
  • lazy formatting

Somewhat of a follow-up to #157233 and #157179 (cc @nnethercote - thanks!)
This kinda undoes f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that render_impls will not render anything IFF the list of traits passed to it is empty)

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. 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. labels Jun 6, 2026
@yotamofek

yotamofek commented Jun 6, 2026

Copy link
Copy Markdown
Contributor Author

I doubt it'll register on perf, but I do think this should be an optimization (albeit a small one) so let's run perf anyways

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@rust-bors

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 6, 2026
rust-bors Bot pushed a commit that referenced this pull request Jun 6, 2026
…, r=<try>

Cleanup and optimize `render_impls`
@rust-log-analyzer

This comment has been minimized.

@yotamofek

Copy link
Copy Markdown
Contributor Author

A job failed! Check out the build log: (web) (plain enhanced) (plain)
Click to see the possible cause of the failure (guessed by this bot)

Docker error
hopefully try build will still work

@rust-bors

rust-bors Bot commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 19872c0 (19872c0f5e198bd2f48c9898b0b0e83f77aa8dbf, parent: 8954863c81df429ebf96ea38a16c76f209995833)

@rust-timer

This comment has been minimized.

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (19872c0): comparison URL.

Overall result: ✅ improvements - no action needed

Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf.

@bors rollup=never
@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.2% [-0.5%, -0.1%] 8
Improvements ✅
(secondary)
-0.2% [-0.3%, -0.2%] 3
All ❌✅ (primary) -0.2% [-0.5%, -0.1%] 8

Max RSS (memory usage)

Results (primary 0.6%, secondary 2.7%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
7.0% [6.8%, 7.1%] 2
Regressions ❌
(secondary)
3.9% [2.6%, 6.0%] 4
Improvements ✅
(primary)
-3.6% [-5.2%, -2.6%] 3
Improvements ✅
(secondary)
-2.0% [-2.0%, -2.0%] 1
All ❌✅ (primary) 0.6% [-5.2%, 7.1%] 5

Cycles

Results (primary 3.4%, secondary 3.5%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
3.4% [1.5%, 6.0%] 102
Regressions ❌
(secondary)
3.5% [2.1%, 7.0%] 90
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 3.4% [1.5%, 6.0%] 102

Binary size

Results (primary 0.0%, secondary 0.0%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
0.0% [0.0%, 0.1%] 30
Regressions ❌
(secondary)
0.0% [0.0%, 0.1%] 6
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.0% [0.0%, 0.1%] 30

Bootstrap: 514.086s -> 513.359s (-0.14%)
Artifact size: 400.74 MiB -> 400.64 MiB (-0.03%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 6, 2026
@yotamofek yotamofek force-pushed the pr/rustdoc/render_all_impls-cleanup branch from 1b36eaf to 183502d Compare June 6, 2026 21:25
@rustbot

rustbot commented Jun 6, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@yotamofek

Copy link
Copy Markdown
Contributor Author

Perf results are a pleasant surprise! 🦆
Force pushed without any changes to trigger new CI run

@GuillaumeGomez

Copy link
Copy Markdown
Member

Nice, well done! r=me once CI pass.

@rust-log-analyzer

This comment has been minimized.

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting
@yotamofek

Copy link
Copy Markdown
Contributor Author

The test failed because the order of the IDs changed, the displayed order actually didn't.
(and the IDs kinda make more sense now as they're ordered by display order, not by appearing-in-source order. not that it matters)

so updated the test accordingly

this is the diff of the HTML output before and after this PR:

diff --git a/struct.S.html b/struct.S.html
index 627987947fb..32dd5469c2c 100644
--- a/struct.S.html
+++ b/struct.S.html
@@ -99,27 +99,27 @@
                             </section>
                         </summary>
                         <div class="impl-items">
-                            <section id="associatedconstant.C-2" class="associatedconstant trait-impl"><a
+                            <section id="associatedconstant.C" class="associatedconstant trait-impl"><a
                                     class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#associatedconstant.C-2" class="anchor">§</a>
+                                    href="#associatedconstant.C" class="anchor">§</a>
                                 <h4 class="code-header">const <a href="trait.T.html#associatedconstant.C"
                                         class="constant">C</a>: (<a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>, <a
                                         class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>)</h4>
                             </section>
-                            <section id="associatedconstant.D-2" class="associatedconstant trait-impl"><a
+                            <section id="associatedconstant.D" class="associatedconstant trait-impl"><a
                                     class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#associatedconstant.D-2" class="anchor">§</a>
+                                    href="#associatedconstant.D" class="anchor">§</a>
                                 <h4 class="code-header">const <a href="trait.T.html#associatedconstant.D"
                                         class="constant">D</a>: <a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></h4>
                             </section>
-                            <section id="method.ignore-2" class="method trait-impl"><a class="src rightside"
+                            <section id="method.ignore" class="method trait-impl"><a class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#method.ignore-2" class="anchor">§</a>
+                                    href="#method.ignore" class="anchor">§</a>
                                 <h4 class="code-header">fn <a href="trait.T.html#method.ignore" class="fn">ignore</a>(_:
                                     <a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;X</a>)
@@ -180,28 +180,28 @@
                             </section>
                         </summary>
                         <div class="impl-items">
-                            <section id="associatedconstant.C" class="associatedconstant trait-impl"><a
+                            <section id="associatedconstant.C-2" class="associatedconstant trait-impl"><a
                                     class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#associatedconstant.C" class="anchor">§</a>
+                                    href="#associatedconstant.C-2" class="anchor">§</a>
                                 <h4 class="code-header">const <a href="trait.T.html#associatedconstant.C"
                                         class="constant">C</a>: [<a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>; <a
                                         class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.array.html">16</a>]</h4>
                             </section>
-                            <section id="method.ignore" class="method trait-impl"><a class="src rightside"
+                            <section id="method.ignore-2" class="method trait-impl"><a class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#method.ignore" class="anchor">§</a>
+                                    href="#method.ignore-2" class="anchor">§</a>
                                 <h4 class="code-header">fn <a href="trait.T.html#method.ignore" class="fn">ignore</a>(_:
                                     <a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;X</a>)
                                 </h4>
                             </section>
-                            <section id="associatedconstant.D" class="associatedconstant trait-impl"><a
+                            <section id="associatedconstant.D-2" class="associatedconstant trait-impl"><a
                                     class="src rightside"
                                     href="../src/issue_33302/const-rendering-macros-33302.rs.html#54">Source</a><a
-                                    href="#associatedconstant.D" class="anchor">§</a>
+                                    href="#associatedconstant.D-2" class="anchor">§</a>
                                 <h4 class="code-header">const <a href="trait.T.html#associatedconstant.D"
                                         class="constant">D</a>: <a class="primitive"
                                         href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a> = _</h4>
@@ -443,10 +443,10 @@
                         <div class="impl-items">
                             <details class="toggle" open>
                                 <summary>
-                                    <section id="associatedtype.Error-1" class="associatedtype trait-impl"><a
+                                    <section id="associatedtype.Error" class="associatedtype trait-impl"><a
                                             class="src rightside"
                                             href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#831">Source</a><a
-                                            href="#associatedtype.Error-1" class="anchor">§</a>
+                                            href="#associatedtype.Error" class="anchor">§</a>
                                         <h4 class="code-header">type <a
                                                 href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error"
                                                 class="associatedtype">Error</a> = <a class="enum"
@@ -496,10 +496,10 @@
                         <div class="impl-items">
                             <details class="toggle" open>
                                 <summary>
-                                    <section id="associatedtype.Error" class="associatedtype trait-impl"><a
+                                    <section id="associatedtype.Error-1" class="associatedtype trait-impl"><a
                                             class="src rightside"
                                             href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#815">Source</a><a
-                                            href="#associatedtype.Error" class="anchor">§</a>
+                                            href="#associatedtype.Error-1" class="anchor">§</a>
                                         <h4 class="code-header">type <a
                                                 href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error"
                                                 class="associatedtype">Error</a> = &lt;U as <a class="trait"

@yotamofek yotamofek force-pushed the pr/rustdoc/render_all_impls-cleanup branch from 183502d to 0053d76 Compare June 7, 2026 08:06
@yotamofek

Copy link
Copy Markdown
Contributor Author

@GuillaumeGomez just making sure you're still ok with r=you with the modification to the test

@GuillaumeGomez

Copy link
Copy Markdown
Member

Yup all good, thanks again!

@bors r+ rollup=iffy

@rust-bors

rust-bors Bot commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 0053d76 has been approved by GuillaumeGomez

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Jun 7, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 7, 2026
…pls-cleanup, r=GuillaumeGomez

Cleanup and optimize `render_impls`

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting

Somewhat of a follow-up to rust-lang#157233 and rust-lang#157179 (cc @nnethercote - thanks!)
This kinda undoes rust-lang@f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that `render_impls` will not render anything IFF the list of traits passed to it is empty)
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 7, 2026
…pls-cleanup, r=GuillaumeGomez

Cleanup and optimize `render_impls`

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting

Somewhat of a follow-up to rust-lang#157233 and rust-lang#157179 (cc @nnethercote - thanks!)
This kinda undoes rust-lang@f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that `render_impls` will not render anything IFF the list of traits passed to it is empty)
rust-bors Bot pushed a commit that referenced this pull request Jun 7, 2026
…uwer

Rollup of 10 pull requests

Successful merges:

 - #157447 (Move cross crate tests into the appropriate folder)
 - #145108 (Resolver: Batched Import Resolution)
 - #156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - #157289 (Add infallible primitive type lookups to template arg resolver)
 - #157540 (Cleanup and optimize `render_impls`)
 - #157543 (Reorganize `tests/ui/issues` [5/N])
 - #156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - #157323 (Document Repeat::last panic behavior)
 - #157545 (Suggest using comma to separate valid attribute list items)
 - #157559 (chore: Update annotate-snippets to 0.12.16)
rust-bors Bot pushed a commit that referenced this pull request Jun 7, 2026
…uwer

Rollup of 10 pull requests

Successful merges:

 - #157447 (Move cross crate tests into the appropriate folder)
 - #145108 (Resolver: Batched Import Resolution)
 - #156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - #157289 (Add infallible primitive type lookups to template arg resolver)
 - #157540 (Cleanup and optimize `render_impls`)
 - #157543 (Reorganize `tests/ui/issues` [5/N])
 - #156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - #157323 (Document Repeat::last panic behavior)
 - #157545 (Suggest using comma to separate valid attribute list items)
 - #157559 (chore: Update annotate-snippets to 0.12.16)
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 7, 2026
…pls-cleanup, r=GuillaumeGomez

Cleanup and optimize `render_impls`

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting

Somewhat of a follow-up to rust-lang#157233 and rust-lang#157179 (cc @nnethercote - thanks!)
This kinda undoes rust-lang@f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that `render_impls` will not render anything IFF the list of traits passed to it is empty)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 7, 2026
…pls-cleanup, r=GuillaumeGomez

Cleanup and optimize `render_impls`

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting

Somewhat of a follow-up to rust-lang#157233 and rust-lang#157179 (cc @nnethercote - thanks!)
This kinda undoes rust-lang@f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that `render_impls` will not render anything IFF the list of traits passed to it is empty)
rust-bors Bot pushed a commit that referenced this pull request Jun 7, 2026
Rollup of 25 pull requests

Successful merges:

 - #157447 (Move cross crate tests into the appropriate folder)
 - #145108 (Resolver: Batched Import Resolution)
 - #156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - #157224 (Manually unroll loop in `str::floor_char_boundary`)
 - #157289 (Add infallible primitive type lookups to template arg resolver)
 - #157540 (Cleanup and optimize `render_impls`)
 - #157444 (Couple of work product cleanups)
 - #157543 (Reorganize `tests/ui/issues` [5/N])
 - #153513 (Syntactically reject equality predicates)
 - #155797 (LineWriter: cap write_vectored newline scan to avoid quadratic write_all_vectored)
 - #156155 (macros: report unbound metavariables directly)
 - #156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - #156666 (Clarify meaning of ranges in pointer offset docs)
 - #157078 (Document equivalence of `highest_one` and `ilog2` methods on integers)
 - #157129 (ci: update download-artifact action to v8)
 - #157169 (triagebot: Update messages to direct changes to appropriate repositories)
 - #157323 (Document Repeat::last panic behavior)
 - #157370 (Clarify MaybeUninit::zeroed padding docs)
 - #157399 (Silence llbc's output by default to prevent rustc's linker output warning)
 - #157500 (Improve documentation of `align_of` and `Alignment`.)
 - #157545 (Suggest using comma to separate valid attribute list items)
 - #157559 (chore: Update annotate-snippets to 0.12.16)
 - #157560 (In `copy_nonoverlapping`, use `mul nuw nsw` to compute the byte size)
 - #157580 (Importing suggestion reported twice when reporting privacy error)
 - #157581 (Test fixup)
rust-bors Bot pushed a commit that referenced this pull request Jun 7, 2026
Rollup of 25 pull requests

Successful merges:

 - #157447 (Move cross crate tests into the appropriate folder)
 - #145108 (Resolver: Batched Import Resolution)
 - #156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - #157224 (Manually unroll loop in `str::floor_char_boundary`)
 - #157289 (Add infallible primitive type lookups to template arg resolver)
 - #157540 (Cleanup and optimize `render_impls`)
 - #157444 (Couple of work product cleanups)
 - #157543 (Reorganize `tests/ui/issues` [5/N])
 - #153513 (Syntactically reject equality predicates)
 - #155797 (LineWriter: cap write_vectored newline scan to avoid quadratic write_all_vectored)
 - #156155 (macros: report unbound metavariables directly)
 - #156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - #156666 (Clarify meaning of ranges in pointer offset docs)
 - #157078 (Document equivalence of `highest_one` and `ilog2` methods on integers)
 - #157129 (ci: update download-artifact action to v8)
 - #157169 (triagebot: Update messages to direct changes to appropriate repositories)
 - #157323 (Document Repeat::last panic behavior)
 - #157370 (Clarify MaybeUninit::zeroed padding docs)
 - #157399 (Silence llbc's output by default to prevent rustc's linker output warning)
 - #157500 (Improve documentation of `align_of` and `Alignment`.)
 - #157545 (Suggest using comma to separate valid attribute list items)
 - #157559 (chore: Update annotate-snippets to 0.12.16)
 - #157560 (In `copy_nonoverlapping`, use `mul nuw nsw` to compute the byte size)
 - #157580 (Importing suggestion reported twice when reporting privacy error)
 - #157581 (Test fixup)
@rust-bors rust-bors Bot merged commit 5e09019 into rust-lang:main Jun 8, 2026
12 checks passed
@rustbot rustbot added this to the 1.98.0 milestone Jun 8, 2026
rust-timer added a commit that referenced this pull request Jun 8, 2026
Rollup merge of #157540 - yotamofek:pr/rustdoc/render_all_impls-cleanup, r=GuillaumeGomez

Cleanup and optimize `render_impls`

- take ownership of the `Vec<&Impl>` instead of copying into another alloc
- reuse `ImplString` to do natural sort ordering
- lazy formatting

Somewhat of a follow-up to #157233 and #157179 (cc @nnethercote - thanks!)
This kinda undoes f7c8bc2 but IMHO it makes more sense to be explicit about negative impl ordering, and also seems kinda wasteful to "render" the negativity into a string and rely on however ASCII decided to order characters. I can also undo this part, I think this PR is still a positive change even without it.

r? @GuillaumeGomez

LLM disclosure:
I used LLM for reviewing my changes and making sure some assumptions I was making were correct (i.e. that `render_impls` will not render anything IFF the list of traits passed to it is empty)
github-actions Bot pushed a commit to rust-lang/stdarch that referenced this pull request Jun 8, 2026
Rollup of 25 pull requests

Successful merges:

 - rust-lang/rust#157447 (Move cross crate tests into the appropriate folder)
 - rust-lang/rust#145108 (Resolver: Batched Import Resolution)
 - rust-lang/rust#156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - rust-lang/rust#157224 (Manually unroll loop in `str::floor_char_boundary`)
 - rust-lang/rust#157289 (Add infallible primitive type lookups to template arg resolver)
 - rust-lang/rust#157540 (Cleanup and optimize `render_impls`)
 - rust-lang/rust#157444 (Couple of work product cleanups)
 - rust-lang/rust#157543 (Reorganize `tests/ui/issues` [5/N])
 - rust-lang/rust#153513 (Syntactically reject equality predicates)
 - rust-lang/rust#155797 (LineWriter: cap write_vectored newline scan to avoid quadratic write_all_vectored)
 - rust-lang/rust#156155 (macros: report unbound metavariables directly)
 - rust-lang/rust#156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - rust-lang/rust#156666 (Clarify meaning of ranges in pointer offset docs)
 - rust-lang/rust#157078 (Document equivalence of `highest_one` and `ilog2` methods on integers)
 - rust-lang/rust#157129 (ci: update download-artifact action to v8)
 - rust-lang/rust#157169 (triagebot: Update messages to direct changes to appropriate repositories)
 - rust-lang/rust#157323 (Document Repeat::last panic behavior)
 - rust-lang/rust#157370 (Clarify MaybeUninit::zeroed padding docs)
 - rust-lang/rust#157399 (Silence llbc's output by default to prevent rustc's linker output warning)
 - rust-lang/rust#157500 (Improve documentation of `align_of` and `Alignment`.)
 - rust-lang/rust#157545 (Suggest using comma to separate valid attribute list items)
 - rust-lang/rust#157559 (chore: Update annotate-snippets to 0.12.16)
 - rust-lang/rust#157560 (In `copy_nonoverlapping`, use `mul nuw nsw` to compute the byte size)
 - rust-lang/rust#157580 (Importing suggestion reported twice when reporting privacy error)
 - rust-lang/rust#157581 (Test fixup)
asukaminato0721 pushed a commit to asukaminato0721/rust-analyzer that referenced this pull request Jun 8, 2026
Rollup of 25 pull requests

Successful merges:

 - rust-lang/rust#157447 (Move cross crate tests into the appropriate folder)
 - rust-lang/rust#145108 (Resolver: Batched Import Resolution)
 - rust-lang/rust#156119 (Further optimize `SliceIndex<str>` impl for `Range<usize>`)
 - rust-lang/rust#157224 (Manually unroll loop in `str::floor_char_boundary`)
 - rust-lang/rust#157289 (Add infallible primitive type lookups to template arg resolver)
 - rust-lang/rust#157540 (Cleanup and optimize `render_impls`)
 - rust-lang/rust#157444 (Couple of work product cleanups)
 - rust-lang/rust#157543 (Reorganize `tests/ui/issues` [5/N])
 - rust-lang/rust#153513 (Syntactically reject equality predicates)
 - rust-lang/rust#155797 (LineWriter: cap write_vectored newline scan to avoid quadratic write_all_vectored)
 - rust-lang/rust#156155 (macros: report unbound metavariables directly)
 - rust-lang/rust#156188 (riscv: promote d, e, and f target_features to CfgStableToggleUnstable)
 - rust-lang/rust#156666 (Clarify meaning of ranges in pointer offset docs)
 - rust-lang/rust#157078 (Document equivalence of `highest_one` and `ilog2` methods on integers)
 - rust-lang/rust#157129 (ci: update download-artifact action to v8)
 - rust-lang/rust#157169 (triagebot: Update messages to direct changes to appropriate repositories)
 - rust-lang/rust#157323 (Document Repeat::last panic behavior)
 - rust-lang/rust#157370 (Clarify MaybeUninit::zeroed padding docs)
 - rust-lang/rust#157399 (Silence llbc's output by default to prevent rustc's linker output warning)
 - rust-lang/rust#157500 (Improve documentation of `align_of` and `Alignment`.)
 - rust-lang/rust#157545 (Suggest using comma to separate valid attribute list items)
 - rust-lang/rust#157559 (chore: Update annotate-snippets to 0.12.16)
 - rust-lang/rust#157560 (In `copy_nonoverlapping`, use `mul nuw nsw` to compute the byte size)
 - rust-lang/rust#157580 (Importing suggestion reported twice when reporting privacy error)
 - rust-lang/rust#157581 (Test fixup)
@yotamofek yotamofek deleted the pr/rustdoc/render_all_impls-cleanup branch June 8, 2026 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.

5 participants