Skip to content

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

RalfJung and others added 28 commits April 10, 2025 15:45
run all 'thread' tests on FreeBSD, and also on 32bit
Bumps [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam) from 0.5.14 to 0.5.15.
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases)
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/master/CHANGELOG.md)
- [Commits](crossbeam-rs/crossbeam@crossbeam-channel-0.5.14...crossbeam-channel-0.5.15)

---
updated-dependencies:
- dependency-name: crossbeam-channel
  dependency-version: 0.5.15
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
…ssbeam-channel-0.5.15

Bump crossbeam-channel from 0.5.14 to 0.5.15
Implement RtlNtStatusToDosError and shim test for it
Fix Build Fail on MacOs because of libffi-sys
so the merging step doesn't fail for `opt-dist local` on Windows
Avoid cloning in `Cloned<I>` or copying in `Copied<I>` when elements are
only needed by reference or not at all. There is already some precedent
for this, given that `__iterator_get_unchecked` is implemented, which
can skip elements. The reduced clones are technically observable by a
user impl of `Clone`.
…, r=joboet

Avoid unused clones in `Cloned<I>` and `Copied<I>`

Avoid cloning in `Cloned<I>` or copying in `Copied<I>` when elements are only needed by reference or not at all. There is already some precedent for this, given that `__iterator_get_unchecked` is implemented, which can skip elements. The reduced clones are technically observable by a user impl of `Clone`.

r? libs-api
opt-dist: use executable-extension for host llvm-profdata

because it's used for target llvm-profdata too

r? Kobzol
…lcnr

Add test for issue 34834

closes: rust-lang#34834

This PR adds a UI test for a case where a trait with an associated type using a higher-ranked trait bound (HRTB) failed to compile in Rust 1.55.0 but succeeded starting from 1.56.0.

```rust
pub trait Provides<'a> {
    type Item;
}

pub trait Selector: for<'a> Provides<'a> {
    type Namespace: PartialEq + for<'a> PartialEq<<Self as Provides<'a>>::Item>;

    fn get_namespace(&self) -> <Self as Provides>::Item;
}

pub struct MySelector;

impl<'a> Provides<'a> for MySelector {
    type Item = &'a str;
}

impl Selector for MySelector {
    type Namespace = String;

    fn get_namespace(&self) -> &str {
        unimplemented!()
    }
}

fn main() {}
```

* ❌ [compile fail (rustc: 1.55.0)](https://godbolt.org/z/T1jY1Ebo6)
* ⭕ [compile pass (rustc: 1.56.0)](https://godbolt.org/z/e4jo11Ma7)
Use `compiletest-ignore-dir` for bootstrap self-tests

Follow-up to rust-lang#139705 and rust-lang#139740.

I did another survey pass over `//@ ignore-test` under `tests/`, and this is the only 2 non-tests that should use `compiletest-ignore-dir`.

r? `@Zalathar` (or compiler/bootstrap)
…gross35

Allow (but don't require) `#[unsafe(naked)]` so that `compiler-builtins` can upgrade to it

tracking issue: rust-lang#138997

Per rust-lang#134213 (comment), we want to make the `#[naked]` attribute an unsafe attribute. Making that change runs into a cyclic dependency with `compiler-builtins` which uses `#[naked]`, where `rustc` needs an updated `compiler-builtins` and vice versa.

So based on rust-lang#139753 and [#t-compiler/help > updating &rust-lang#96;compiler-builtins&rust-lang#96; and &rust-lang#96;rustc&rust-lang#96;](https://rust-lang.zulipchat.com/#narrow/channel/182449-t-compiler.2Fhelp/topic/updating.20.60compiler-builtins.60.20and.20.60rustc.60), this PR allows, but does not require `#[unsafe(naked)]`, and makes that change for some of the tests to check that both `#[naked]` and `#[unsafe(naked)]` are accepted.

Then we can upgrade and synchronize `compiler-builtins`, and then make `#[naked]` (without `unsafe`) invalid.

r? `@traviscross` (or someone from t-compiler if you're faster and this look allright)
Specify `--print info=file` syntax in `--help`

Closes rust-lang#139794

I moved the listing of information that can be printed to the help string as it's getting rather long and it makes the `[=FILE]` part easier to see
…li-obk

Use `newtype_index!`-generated types more idiomatically

Continuation of sorts of rust-lang#139674
Shouldn't affect anything, just makes some code simpler
Miri subtree update

r? `@ghost`

Fixes build failures on macOS
@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 14, 2025
@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Apr 14, 2025
@bors
Copy link
Collaborator

bors commented Apr 14, 2025

⌛ Testing commit 8587c95 with merge 7a6dca1...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 14, 2025
…iaskrgr

Rollup of 8 pull requests

Successful merges:

 - rust-lang#139745 (Avoid unused clones in `Cloned<I>` and `Copied<I>`)
 - rust-lang#139757 (opt-dist: use executable-extension for host llvm-profdata)
 - rust-lang#139778 (Add test for issue 34834)
 - rust-lang#139783 (Use `compiletest-ignore-dir` for bootstrap self-tests)
 - rust-lang#139797 (Allow (but don't require) `#[unsafe(naked)]` so that `compiler-builtins` can upgrade to it)
 - rust-lang#139799 (Specify `--print info=file` syntax in `--help`)
 - rust-lang#139811 (Use `newtype_index!`-generated types more idiomatically)
 - rust-lang#139813 (Miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-mingw-1 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures:

---- [assembly] tests\assembly\targets\targets-pe.rs#i686_pc_windows_gnu stdout ----

error in revision `i686_pc_windows_gnu`: auxiliary build of D:\a\rust\rust\tests\auxiliary\minicore.rs failed to compile: 
status: exit code: 1
command: PATH="D:\a\rust\rust\build\x86_64-pc-windows-gnu\stage2\bin;D:\a\rust\rust\build\x86_64-pc-windows-gnu\stage0-bootstrap-tools\x86_64-pc-windows-gnu\release\deps;D:\a\rust\rust\build\x86_64-pc-windows-gnu\stage0\bin;D:\a\rust\rust\ninja;D:\a\rust\rust\mingw64\bin;C:\msys64\usr\bin;D:\a\rust\rust\sccache;C:\Program Files\MongoDB\Server\5.0\bin;C:\aliyun-cli;C:\vcpkg;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\3.5.1\x64;C:\cabal\bin;C:\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 8.0\bin;C:\Program Files\R\R-4.4.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.21.13\x64\bin;C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts;C:\hostedtoolcache\windows\Python\3.9.13\x64;C:\hostedtoolcache\windows\Ruby\3.0.7\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.442-6\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\PowerShell\7;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files\Microsoft SQL Server\150\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\WiX Toolset v3.14\bin;C:\Program Files\Microsoft SQL Server\130\DTS\Binn;C:\Program Files\Microsoft SQL Server\140\DTS\Binn;C:\Program Files\Microsoft SQL Server\150\DTS\Binn;C:\Program Files\Microsoft SQL Server\160\DTS\Binn;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.9.9\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps" "D:\\a\\rust\\rust\\build\\x86_64-pc-windows-gnu\\stage2\\bin\\rustc.exe" "D:\\a\\rust\\rust\\tests\\auxiliary\\minicore.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=C:\\Users\\runneradmin\\.cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=D:\\a\\rust\\rust\\vendor" "--sysroot" "D:\\a\\rust\\rust\\build\\x86_64-pc-windows-gnu\\stage2" "--cfg" "i686_pc_windows_gnu" "--check-cfg" "cfg(test,FALSE,aarch64_pc_windows_msvc,aarch64_pc_windows_gnullvm,aarch64_unknown_uefi,aarch64_uwp_windows_msvc,arm64ec_pc_windows_msvc,avr_none,bpfeb_unknown_none,bpfel_unknown_none,i686_pc_windows_gnu,i686_pc_windows_msvc,i686_pc_windows_gnullvm,i686_uwp_windows_gnu,i686_win7_windows_gnu,i686_unknown_uefi,i686_uwp_windows_msvc,i686_win7_windows_msvc,powerpc64_ibm_aix,thumbv7a_uwp_windows_msvc,thumbv7a_pc_windows_msvc,x86_64_pc_windows_gnu,x86_64_pc_windows_gnullvm,x86_64_pc_windows_msvc,x86_64_unknown_uefi,x86_64_uwp_windows_gnu,x86_64_win7_windows_gnu,x86_64_uwp_windows_msvc,x86_64_win7_windows_msvc,x86_64_pc_cygwin)" "-O" "-Cdebug-assertions=no" "-C" "prefer-dynamic" "-o" "D:\\a\\rust\\rust\\build\\x86_64-pc-windows-gnu\\test\\assembly\\targets\\targets-pe.i686_pc_windows_gnu\\libminicore.rlib" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "--target" "i686-pc-windows-gnu" "-Cpanic=abort" "--crate-type" "rlib" "-Cpanic=abort"
stdout: none
--- stderr -------------------------------
error: couldn't create a temp dir: Access is denied. (os error 5) at path "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\rustcOkcyZH"

error: aborting due to 1 previous error
------------------------------------------


---
test result: FAILED. 494 passed; 1 failed; 43 ignored; 0 measured; 0 filtered out; finished in 24.32s

Some tests failed in compiletest suite=assembly mode=assembly host=x86_64-pc-windows-gnu target=x86_64-pc-windows-gnu
Build completed unsuccessfully in 1:37:47
make: *** [Makefile:124: ci-mingw-x] Error 1
  local time: Tue Apr 15 00:52:25 CUT 2025
  network time: Tue, 15 Apr 2025 00:52:25 GMT
##[error]Process completed with exit code 2.
Post job cleanup.
[command]"C:\Program Files\Git\bin\git.exe" version

@bors
Copy link
Collaborator

bors commented Apr 15, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 15, 2025
@thaliaarchi
Copy link
Contributor

The test failure looks spurious

@matthiaskrgr
Copy link
Member Author

@bors retry

@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 Apr 15, 2025
@matthiaskrgr matthiaskrgr added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. CI-spurious-fail-mingw CI spurious failure: target env mingw and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 15, 2025
@bors
Copy link
Collaborator

bors commented Apr 15, 2025

⌛ Testing commit 8587c95 with merge 58c2dd9...

@jieyouxu jieyouxu 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 Apr 15, 2025
@bors
Copy link
Collaborator

bors commented Apr 15, 2025

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 58c2dd9 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Apr 15, 2025
@bors bors merged commit 58c2dd9 into rust-lang:master Apr 15, 2025
7 checks passed
@rustbot rustbot added this to the 1.88.0 milestone Apr 15, 2025
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 2da29db (parent) -> 58c2dd9 (this PR)

Test differences

Show 26 test diffs

Stage 1

  • [ui] tests/ui/bootstrap/self-test/a.rs: ignore (ignored always ((used by bootstrap))) -> [missing] (J0)
  • [ui] tests/ui/bootstrap/self-test/b.rs: ignore (ignored always ((used by bootstrap))) -> [missing] (J0)
  • [ui] tests/ui/traits/associated_type_bound/hrtb-associated.rs: [missing] -> pass (J0)

Stage 2

  • [ui] tests/ui/bootstrap/self-test/a.rs: ignore (ignored always ((used by bootstrap))) -> [missing] (J1)
  • [ui] tests/ui/bootstrap/self-test/b.rs: ignore (ignored always ((used by bootstrap))) -> [missing] (J1)
  • [ui] tests/ui/traits/associated_type_bound/hrtb-associated.rs: [missing] -> pass (J1)

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

Job group index

Job duration changes

  1. x86_64-apple-2: 3952.7s -> 5361.5s (35.6%)
  2. dist-x86_64-apple: 9267.1s -> 7360.7s (-20.6%)
  3. dist-apple-various: 8156.3s -> 7281.4s (-10.7%)
  4. i686-msvc-1: 9396.9s -> 10402.0s (10.7%)
  5. dist-riscv64-linux: 5248.4s -> 5746.2s (9.5%)
  6. dist-i686-linux: 6346.0s -> 5931.3s (-6.5%)
  7. x86_64-gnu-distcheck: 5081.9s -> 4796.8s (-5.6%)
  8. dist-android: 2663.2s -> 2518.7s (-5.4%)
  9. x86_64-mingw-2: 6831.3s -> 7147.6s (4.6%)
  10. x86_64-apple-1: 8246.2s -> 7871.2s (-4.5%)
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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#139745 Avoid unused clones in Cloned<I> and Copied<I> 30106da1c9911b120a9d9d2078e9c4cacfe01db5 (link)
#139757 opt-dist: use executable-extension for host llvm-profdata 5495c699ead2bf659a214552e5f4808e76d7731d (link)
#139778 Add test for issue 34834 55704a80cabdbf29820907742281119697a38e9b (link)
#139783 Use compiletest-ignore-dir for bootstrap self-tests df21b2fda971cc56f3baadb66b2c5bb01b007137 (link)
#139797 Allow (but don't require) #[unsafe(naked)] so that `compi… 59ed346f113181f166778a97fe66abd4d2087729 (link)
#139799 Specify --print info=file syntax in --help 3d99991ce4a2e1e6965edb9b27c9745daaef516f (link)
#139811 Use newtype_index!-generated types more idiomatically 663785bf269df8eadad668afc2afa5adab9e2101 (link)
#139813 Miri subtree update 884ce90dba51f7025961fa71de8af948a866c7a8 (link)

previous master: 2da29dbe8f

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 (58c2dd9): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

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

Max RSS (memory usage)

Results (primary -2.0%, secondary 2.4%)

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)
1.0% [0.4%, 2.5%] 4
Regressions ❌
(secondary)
2.4% [2.4%, 2.4%] 1
Improvements ✅
(primary)
-4.9% [-10.5%, -0.5%] 4
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.0% [-10.5%, 2.5%] 8

Cycles

Results (primary -0.5%, secondary -0.5%)

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.2% [3.2%, 3.2%] 1
Improvements ✅
(primary)
-0.5% [-0.7%, -0.4%] 6
Improvements ✅
(secondary)
-2.3% [-2.3%, -2.2%] 2
All ❌✅ (primary) -0.5% [-0.7%, -0.4%] 6

Binary size

Results (primary -0.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.2% [0.1%, 0.3%] 4
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.1% [-0.3%, -0.0%] 15
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.0% [-0.3%, 0.3%] 19

Bootstrap: 781.17s -> 781.063s (-0.01%)
Artifact size: 365.07 MiB -> 365.12 MiB (0.02%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs CI-spurious-fail-mingw CI spurious failure: target env mingw 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. 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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.