Skip to content

Rollup of 5 pull requests#159180

Closed
jhpratt wants to merge 16 commits into
rust-lang:mainfrom
jhpratt:rollup-fCwQuDr
Closed

Rollup of 5 pull requests#159180
jhpratt wants to merge 16 commits into
rust-lang:mainfrom
jhpratt:rollup-fCwQuDr

Conversation

@jhpratt

@jhpratt jhpratt commented Jul 12, 2026

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

bjorn3 and others added 16 commits July 9, 2026 16:42
The small-buffer path in Stdin::read allocates a one-element UTF-16
scratch buffer. When a pending surrogate exists,
read_u16s_fixup_surrogates requires temporary storage for both the
buffered surrogate and one newly read UTF-16 code unit.

Increase the scratch buffer to two UTF-16 code units so the surrogate
path can complete without panicking.
When bootstrap runs a step by default, without explicit paths, it will normally
act as though the user had explicitly requested all of the paths and aliases
that the step registered through `ShouldRun`.

For the coverage test suite, that gives the wrong outcome. Running a command
like `./x test --skip=tests` or `./x test --skip=coverage` should skip the
coverage tests, but instead the coverage tests would run anyway, due to the
`coverage-map` and `coverage-run` aliases being treated as implied command-line
arguments.

This commit fixes that problem by adding a special flag to `ShouldRun`. When
creating pathsets for a step that is being run by default, if the step has set
the `default_to_suites_only` flag, all non-suite pathsets are discarded. That
gives the desired behavior for skipping coverage tests, without affecting other
steps, since other steps don't set the flag.
… `error_helper.rs` into the `diagnostics` folder in `rustc_resolve`
… r=JonathanBrouwer

Apply MCP 1003 and move diagnostics.rs into its own module

Part of rust-lang#158699.

r? @JonathanBrouwer
…ulacrum

Simplify the unwind crate

Use cfg_select! and unify type definitions.
bootstrap: Allow path-based skipping of the coverage test suite

- Alternative to rust-lang#159079
---

When bootstrap runs a step by default, without explicit paths, it will normally act as though the user had explicitly requested all of the paths and aliases that the step registered through `ShouldRun`.

For the coverage test suite, that gives the wrong outcome. Running a command like `./x test --skip=tests` or `./x test --skip=coverage` should skip the coverage tests, but instead the coverage tests would run anyway, due to the `coverage-map` and `coverage-run` aliases being treated as implied command-line arguments.

This PR fixes that problem by adding a special flag to `ShouldRun`. When creating pathsets for a step that is being run by default, if the step has set the `default_to_suites_only` flag, all non-suite pathsets are discarded. That gives the desired behaviour for skipping coverage tests, without affecting other steps, since other steps don't set the flag.

The end result is that `./x test --skip=tests` should now skip the coverage tests, as intended. This lets us remove some `--skip` arguments from CI scripts, which were only required by the previous incorrect behaviour.

---

The `default_to_suites_only` flag is a bit of a hack, but to me it seems like the cleanest way to resolve this problem without having to completely overhaul how CLI paths work, which is a much bigger task. And I think being able to remove the weird extra `--skip` arguments from CI scripts makes this a net positive.

r? jieyouxu
…, r=Darksonn

std: fix panic in Windows Stdin::read_vectored with pending surrogate

Fixes rust-lang#158096.

The small-buffer path in `Stdin::read_vectored` allocates a one-element UTF-16 scratch buffer before calling `read_u16s_fixup_surrogates`.

When a pending surrogate exists, `read_u16s_fixup_surrogates` needs temporary storage for both the buffered surrogate and one newly read UTF-16 code unit. The one-element buffer causes an out-of-bounds slice before `ReadConsoleW` is called.

Increase the scratch buffer to two UTF-16 code units, matching the  function's requirements while leaving the normal read path unchanged.
…f, r=jieyouxu

compiletest: use VecDeque::pop_front_if

`VecDeque::pop_front_if` has been stable since Rust 1.93 and is now available to bootstrap.

Replace compiletest's local compatibility helper with the standard library method and remove the obsolete FIXME.
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Jul 12, 2026
@rustbot rustbot added A-CI Area: Our Github Actions CI A-compiletest Area: The compiletest test runner 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-infra Relevant to the infrastructure 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. labels Jul 12, 2026
@jhpratt

jhpratt commented Jul 12, 2026

Copy link
Copy Markdown
Member Author

@bors r+ rollup=never p=5

@rust-bors

rust-bors Bot commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e58e2d4 has been approved by jhpratt

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 Jul 12, 2026
@rust-bors rust-bors Bot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 12, 2026
@rust-bors

rust-bors Bot commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved due to being closed.

@rust-bors rust-bors Bot removed the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 12, 2026
@jhpratt jhpratt deleted the rollup-fCwQuDr branch July 12, 2026 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CI Area: Our Github Actions CI A-compiletest Area: The compiletest test runner A-testsuite Area: The testsuite used to check the correctness of rustc rollup A PR which is a rollup S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. 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-infra Relevant to the infrastructure 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants