Skip to content

Conversation

@heathdutton
Copy link
Contributor

@heathdutton heathdutton commented Dec 25, 2025

Fixes #150211

When a module contains both pub extern crate and pub use items, they were being rendered under two separate "Re-exports" section headers instead of one.

This fix tracks the current section and only renders a new header when the section actually changes, consolidating items that belong to the same section under a single header.

@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 Dec 25, 2025
@rustbot
Copy link
Collaborator

rustbot commented Dec 25, 2025

r? @notriddle

rustbot has assigned @notriddle.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot

This comment has been minimized.

Comment on lines 3 to 7
// Regression test for issue #150211.
// When a module has both `pub extern crate` and `pub use` items,
// they should both appear under a single "Re-exports" section,
// not two separate sections.
// https://github.com/rust-lang/rust/issues/150211
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Regression test for issue #150211.
// When a module has both `pub extern crate` and `pub use` items,
// they should both appear under a single "Re-exports" section,
// not two separate sections.
// https://github.com/rust-lang/rust/issues/150211
// Regression test for issue <https://github.com/rust-lang/rust/issues/150211>.
// When a module has both `pub extern crate` and `pub use` items,
// they should both appear under a single "Re-exports" section,
// not two separate sections.

I don't think there's a need to duplicate issue numbers.

@rust-log-analyzer

This comment has been minimized.

@heathdutton heathdutton marked this pull request as draft December 25, 2025 05:26
@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 25, 2025
When a module contains both `pub extern crate` and `pub use` items,
they were being rendered under two separate "Re-exports" section
headers instead of one. This happened because the code iterated over
each ItemType separately and rendered a section header for each,
even though both ExternCrate and Import map to the same ItemSection.

This fix tracks the current section and only renders a new header
when the section actually changes, consolidating items that belong
to the same section under a single header.
@heathdutton heathdutton force-pushed the fix-rustdoc-duplicate-reexports-150211 branch from 1e1f75f to b2f19ea Compare December 25, 2025 17:31
@heathdutton heathdutton marked this pull request as ready for review December 25, 2025 17:31
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Dec 25, 2025
@notriddle
Copy link
Contributor

@bors r+

@bors
Copy link
Collaborator

bors commented Dec 27, 2025

📌 Commit b2f19ea has been approved by notriddle

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 Dec 27, 2025
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Dec 27, 2025
…reexports-150211, r=notriddle

rustdoc: fix duplicate Re-exports sections

Fixes rust-lang#150211

When a module contains both `pub extern crate` and `pub use` items, they were being rendered under two separate "Re-exports" section headers instead of one.

This fix tracks the current section and only renders a new header when the section actually changes, consolidating items that belong to the same section under a single header.
bors added a commit that referenced this pull request Dec 27, 2025
…uwer

Rollup of 4 pull requests

Successful merges:

 - #150362 (rustdoc: fix duplicate Re-exports sections)
 - #150397 (Update hir.rs: fix typo ("aligement" -> "alignment"), conform to max_width)
 - #150410 (Document default SOCK_CLOEXEC flag on new UnixStream)
 - #150429 (Improve missing core error for tier 3 targets)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit af77f2d into rust-lang:main Dec 27, 2025
11 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Dec 27, 2025
rust-timer added a commit that referenced this pull request Dec 27, 2025
Rollup merge of #150362 - heathdutton:fix-rustdoc-duplicate-reexports-150211, r=notriddle

rustdoc: fix duplicate Re-exports sections

Fixes #150211

When a module contains both `pub extern crate` and `pub use` items, they were being rendered under two separate "Re-exports" section headers instead of one.

This fix tracks the current section and only renders a new header when the section actually changes, consolidating items that belong to the same section under a single header.
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.

Duplicate Re-exports section in generated docs

6 participants