Skip to content

Conversation

tgross35
Copy link
Contributor

@tgross35 tgross35 commented Jul 10, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Daniel-Aaron-Bloom and others added 28 commits June 12, 2025 01:13
now does proper parsing of git's output and falls back to
assuming all files are modified if `git` doesn't work.

accepts a closure so extensions can be checked.
currently this just uses a very simple
extension-based heirustic.
Give a more user-friendly diagnostic about the following:

* Trailing tokens within braces, e.g. `${foo() extra}`
* Missing parentheses, e.g. `${foo}`
* Incorrect number of arguments, with a hint about correct usage.
Change to a structural diagnostic, update the valid list, and move the
valid list to a note.
…=petrochenkov

Fix `proc_macro::Ident`'s handling of `$crate`

This PR is addresses a few minor bugs, all relating to `proc_macro::Ident`'s support for `$crate`. `Ident` currently supports `$crate` (as can be seen in the `mixed-site-span` test), but:
* `proc_macro::Symbol::can_be_raw` is out of sync with `rustc_span::Symbol::can_be_raw`
  * former doesn't cover `$crate` while the latter does cover `kw::DollarCrate`
* `Ident::new` rejects `$crate`
  * This conflicts with the [reference definition](https://doc.rust-lang.org/nightly/reference/macros-by-example.html#r-macro.decl.meta.specifier) of `ident` which includes `$crate`.
  * This also conflicts with the documentation on [`Display for Ident`](https://doc.rust-lang.org/proc_macro/struct.Ident.html#impl-Display-for-Ident) which says the output "should be losslessly convertible back into the same identifier".

This PR fixes the above issues and extends the `mixed-site-span` test to exercise these fixed code paths, as well as validating the different possible spans resolve `$crate`  as expected (for both the new and old `$crate` construction code paths).
… r=petrochenkov

mbe: Rework diagnostics for metavariable expressions

Make the diagnostics for metavariable expressions more user-friendly. This mostly addresses syntactic errors; I will be following up with improvements to `concat(..)`.
…to-error, r=petrochenkov

Make lint `ambiguous_glob_imports` deny-by-default and report-in-deps

This pr aims to finish the second part of rust-lang#114095. It converts the `ambiguous_glob_imports` lint from a warning to an error.

Currently, only the lint definition and the related tests are changed, a crater run should provide us with information on whether we should go for this.
…heemdev

Mention as_chunks in the docs for chunks

and `as_rchunks_mut` from `rchunks_exact_mut`, and such.

As suggested in rust-lang#76354 (comment) (but does not close that issue).
tests/codegen/enum/enum-match.rs: accept negative range attribute

The test current fails when `rustc` is built with HEAD LLVM: https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds/38097/steps/canvas?sid=0197c492-5661-4c42-8ae7-3d789e85c6ca

I suspect the change was caused by llvm/llvm-project@545cdca

``@rustbot`` label llvm-main
`tests/ui`: A New Order [23/N]

> [!NOTE]
>
> Intermediate commits are intended to help review, but will be squashed prior to merge.

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang#133895.

r? ``@tgross35``
…gross35

Move NaN tests to floats/mod.rs

This PR moves NaN tests to `floats/mod.rs`, as discussed in rust-lang#141726. Since this is my first PR against Rust, I'm keeping it as small as possible, but I intend to work my way through the remaining tests and can do that work in this PR if that's preferable.

r? RalfJung
…o, r=Kobzol

tidy: add support for `--extra-checks=auto:` feature

in preparation for rust-lang#142924

also heavily refactored the parsing of the `--extra-checks` argument to warn about improper usage.

cc ```@GuillaumeGomez```

r? ```@Kobzol```
Add triagebot stdarch mention ping

r? ````@Amanieu````
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. rollup A PR which is a rollup labels Jul 10, 2025
@tgross35
Copy link
Contributor Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Jul 10, 2025

📌 Commit d50eb9f has been approved by tgross35

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 Jul 10, 2025
@bors
Copy link
Collaborator

bors commented Jul 10, 2025

⌛ Testing commit d50eb9f with merge 119574f...

@bors
Copy link
Collaborator

bors commented Jul 10, 2025

☀️ Test successful - checks-actions
Approved by: tgross35
Pushing 119574f to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jul 10, 2025
@bors bors merged commit 119574f into rust-lang:master Jul 10, 2025
1 check passed
@rustbot rustbot added this to the 1.90.0 milestone Jul 10, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#141996 Fix proc_macro::Ident's handling of $crate a40ad4045a72df0ea9dec45de84e807ee5811d31 (link)
#142950 mbe: Rework diagnostics for metavariable expressions 6258c972f68fc28f9b0b3766079e7c42a11d8e41 (link)
#143011 Make lint ambiguous_glob_imports deny-by-default and repo… 3cd1c7d1ee24efcefe85e15d39826f96156fdb77 (link)
#143265 Mention as_chunks in the docs for chunks 8df617e2d4ef6eacd8455d5867577d9dfb2a9b9c (link)
#143270 tests/codegen/enum/enum-match.rs: accept negative range att… e6846428605ed9aed80325e65f83ece3ef986ea2 (link)
#143298 tests/ui: A New Order [23/N] 631f9f0fbe056e40a830780209f04922ad7cf53c (link)
#143396 Move NaN tests to floats/mod.rs b48d6aeb9158de278b1d5a748b2943539214e114 (link)
#143398 tidy: add support for --extra-checks=auto: feature b554ff97f5200fae45b655c4b16585a93ad0161a (link)
#143644 Add triagebot stdarch mention ping 16aa0bc3c3a5d80da339949c0a838ccd62abb2d2 (link)

previous master: cf3fb768db

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

Copy link
Contributor

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 cf3fb76 (parent) -> 119574f (this PR)

Test differences

Show 329 test diffs

Stage 1

  • [ui] tests/ui/codegen/output-slot-init-vs-noninit.rs: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#all: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#inline: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#merge1: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#merge2: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/shift-right-operand-mutation.rs: [missing] -> pass (J0)
  • [ui] tests/ui/codegen/sret-aliasing-rules.rs: [missing] -> pass (J0)
  • [ui] tests/ui/macros/macro-paren-span-diagnostic.rs: [missing] -> pass (J0)
  • [ui] tests/ui/optimization-remark.rs#all: pass -> [missing] (J0)
  • [ui] tests/ui/optimization-remark.rs#inline: pass -> [missing] (J0)
  • [ui] tests/ui/optimization-remark.rs#merge1: pass -> [missing] (J0)
  • [ui] tests/ui/optimization-remark.rs#merge2: pass -> [missing] (J0)
  • [ui] tests/ui/out-pointer-aliasing.rs: pass -> [missing] (J0)
  • [ui] tests/ui/output-slot-variants.rs: pass -> [missing] (J0)
  • [ui] tests/ui/over-constrained-vregs.rs: pass -> [missing] (J0)
  • [ui] tests/ui/panic-while-printing.rs: pass -> [missing] (J0)
  • [ui] tests/ui/panic_implementation-closures.rs: pass -> [missing] (J0)
  • [ui] tests/ui/panics/panic-during-display-formatting.rs: [missing] -> pass (J0)
  • [ui] tests/ui/panics/panic-handler-closures.rs: [missing] -> pass (J0)
  • [ui] tests/ui/paren-span.rs: pass -> [missing] (J0)
  • [ui] tests/ui/parser/ufcs-return-unused-parens.rs: [missing] -> pass (J0)
  • [ui] tests/ui/partialeq_help.rs: pass -> [missing] (J0)
  • [ui] tests/ui/path-lookahead.rs: pass -> [missing] (J0)
  • [ui] tests/ui/traits/partialeq-ref-mismatch-diagnostic.rs: [missing] -> pass (J0)
  • errors::metavar_exprs::verify_expand_mve_extra_tokens_44: [missing] -> pass (J2)
  • errors::metavar_exprs::verify_expand_mve_missing_paren_45: [missing] -> pass (J2)
  • errors::metavar_exprs::verify_expand_mve_unrecognized_expr_46: [missing] -> pass (J2)
  • errors::metavar_exprs::verify_expand_mve_unrecognized_var_44: pass -> [missing] (J2)
  • errors::metavar_exprs::verify_expand_mve_unrecognized_var_47: [missing] -> pass (J2)
  • floats::f32::test_nan: pass -> [missing] (J3)
  • floats::f64::test_nan: pass -> [missing] (J3)
  • floats::nan::const_::test_f128: [missing] -> pass (J3)
  • floats::nan::const_::test_f16: [missing] -> pass (J3)
  • floats::nan::const_::test_f32: [missing] -> pass (J3)
  • floats::nan::const_::test_f64: [missing] -> pass (J3)
  • floats::nan::test_f32: [missing] -> pass (J3)
  • floats::nan::test_f64: [missing] -> pass (J3)
  • floats::f128::test_nan: pass -> [missing] (J4)
  • floats::nan::test_f128: [missing] -> pass (J4)
  • floats::f16::test_nan: pass -> [missing] (J5)
  • floats::nan::test_f16: [missing] -> pass (J5)

Stage 2

  • [ui] tests/ui/codegen/output-slot-init-vs-noninit.rs: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#all: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#inline: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#merge1: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/remark-flag-functionality.rs#merge2: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/shift-right-operand-mutation.rs: [missing] -> pass (J1)
  • [ui] tests/ui/codegen/sret-aliasing-rules.rs: [missing] -> pass (J1)
  • [ui] tests/ui/macros/macro-paren-span-diagnostic.rs: [missing] -> pass (J1)
  • [ui] tests/ui/optimization-remark.rs#all: pass -> [missing] (J1)
  • [ui] tests/ui/optimization-remark.rs#inline: pass -> [missing] (J1)
  • [ui] tests/ui/optimization-remark.rs#merge1: pass -> [missing] (J1)
  • [ui] tests/ui/optimization-remark.rs#merge2: pass -> [missing] (J1)
  • [ui] tests/ui/out-pointer-aliasing.rs: pass -> [missing] (J1)
  • [ui] tests/ui/output-slot-variants.rs: pass -> [missing] (J1)
  • [ui] tests/ui/over-constrained-vregs.rs: pass -> [missing] (J1)
  • [ui] tests/ui/panic-while-printing.rs: pass -> [missing] (J1)
  • [ui] tests/ui/panic_implementation-closures.rs: pass -> [missing] (J1)
  • [ui] tests/ui/panics/panic-during-display-formatting.rs: [missing] -> pass (J1)
  • [ui] tests/ui/panics/panic-handler-closures.rs: [missing] -> pass (J1)
  • [ui] tests/ui/paren-span.rs: pass -> [missing] (J1)
  • [ui] tests/ui/parser/ufcs-return-unused-parens.rs: [missing] -> pass (J1)
  • [ui] tests/ui/partialeq_help.rs: pass -> [missing] (J1)
  • [ui] tests/ui/path-lookahead.rs: pass -> [missing] (J1)
  • [ui] tests/ui/traits/partialeq-ref-mismatch-diagnostic.rs: [missing] -> pass (J1)

Additionally, 264 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 119574f83576dc1f3ae067f9a97986d4e2b0826c --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. x86_64-apple-2: 5451.0s -> 4557.4s (-16.4%)
  2. dist-x86_64-apple: 7798.8s -> 8626.1s (10.6%)
  3. dist-apple-various: 7030.0s -> 6285.1s (-10.6%)
  4. x86_64-apple-1: 6142.7s -> 6768.6s (10.2%)
  5. dist-aarch64-apple: 5267.6s -> 5700.1s (8.2%)
  6. test-various: 4687.6s -> 5059.7s (7.9%)
  7. dist-ohos-x86_64: 4178.3s -> 3875.7s (-7.2%)
  8. aarch64-apple: 4631.6s -> 4951.6s (6.9%)
  9. dist-armhf-linux: 4620.5s -> 4926.6s (6.6%)
  10. x86_64-mingw-2: 6927.6s -> 7386.5s (6.6%)
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

Finished benchmarking commit (119574f): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

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

Max RSS (memory usage)

Results (primary -1.0%, secondary 1.5%)

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

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
4.6% [2.2%, 6.6%] 3
Improvements ✅
(primary)
-1.0% [-1.0%, -1.0%] 1
Improvements ✅
(secondary)
-3.1% [-3.1%, -3.0%] 2
All ❌✅ (primary) -1.0% [-1.0%, -1.0%] 1

Cycles

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

Binary size

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

Bootstrap: 463.762s -> 463.013s (-0.16%)
Artifact size: 374.55 MiB -> 374.51 MiB (-0.01%)

github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request Jul 12, 2025
Rollup of 9 pull requests

Successful merges:

 - rust-lang#141996 (Fix `proc_macro::Ident`'s handling of `$crate`)
 - rust-lang#142950 (mbe: Rework diagnostics for metavariable expressions)
 - rust-lang#143011 (Make lint `ambiguous_glob_imports` deny-by-default and report-in-deps)
 - rust-lang#143265 (Mention as_chunks in the docs for chunks)
 - rust-lang#143270 (tests/codegen/enum/enum-match.rs: accept negative range attribute)
 - rust-lang#143298 (`tests/ui`: A New Order [23/N])
 - rust-lang#143396 (Move NaN tests to floats/mod.rs)
 - rust-lang#143398 (tidy: add support for `--extra-checks=auto:` feature)
 - rust-lang#143644 (Add triagebot stdarch mention ping)

r? `@ghost`
`@rustbot` modify labels: rollup
@tgross35 tgross35 deleted the rollup-sjdfp6r branch July 28, 2025 05:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.