Skip to content

Rollup of 19 pull requests #145552

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 57 commits into from
Closed

Conversation

Zalathar
Copy link
Contributor

@Zalathar Zalathar commented Aug 18, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Kixunil and others added 30 commits May 13, 2025 23:41
Comparison of paths and strings is expected to be possible and needed
e.g. in tests. This change adds the impls os `PartialEq` between strings
and paths, both owned and unsized, in both directions.

ACP: rust-lang/libs-team#151
Migrate the standard library from using the external `cfg_if` crate to
using the now-built-in `cfg_select` macro.

This does not yet eliminate the dependency from
`library/std/Cargo.toml`, because while the standard library itself no
longer uses `cfg_if`, it also incorporates the `backtrace` crate, which
does.

Migration assisted by the following vim command (after selecting the
full `cfg_if!` invocation):

```
'<,'>s/\(cfg_if::\)\?cfg_if/cfg_select/ | '<,'>s/^\( *\)} else {/\1}\r\1_ => {/c | '<,'>s/^\( *\)} else if #\[cfg(\(.*\))\] /\1}\r\1\2 => /e | '<,'>s/if #\[cfg(\(.*\))\] {/\1 => {/e
```

This is imperfect, but substantially accelerated the process. This
prompts for confirmation on the `} else {` since that can also appear
inside one of the arms. This also requires manual intervention to handle
any multi-line conditions.
@rustbot rustbot added O-windows Operating system: Windows 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. 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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels Aug 18, 2025
@Zalathar
Copy link
Contributor Author

Rollup of everything not in #145551.

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Aug 18, 2025

📌 Commit 052b913 has been approved by Zalathar

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 Aug 18, 2025
@Zalathar
Copy link
Contributor Author

@bors try jobs=test-various,x86_64-gnu-llvm-19-3,dist-ohos-x86_64,aarch64-apple

@rust-bors

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Aug 18, 2025
Rollup of 19 pull requests

try-job: test-various
try-job: x86_64-gnu-llvm-19-3
try-job: dist-ohos-x86_64
try-job: aarch64-apple
@rust-bors
Copy link

rust-bors bot commented Aug 18, 2025

☀️ Try build successful (CI)
Build commit: 516ae4f (516ae4fb01ea79a2fc18c179312f529434633068, parent: 425a9c0a0e365c0b8c6cfd00c2ded83a73bed9a0)

@bors
Copy link
Collaborator

bors commented Aug 18, 2025

⌛ Testing commit 052b913 with merge 867877d...

bors added a commit that referenced this pull request Aug 18, 2025
Rollup of 19 pull requests

Successful merges:

 - #140956 (`impl PartialEq<{str,String}> for {Path,PathBuf}`)
 - #141744 (Stabilize `ip_from`)
 - #144804 (Don't warn on never to any `as` casts as unreachable)
 - #144983 (Rehome 37 `tests/ui/issues/` tests to other subdirectories under `tests/ui/`)
 - #145025 (run spellcheck as a tidy extra check in ci)
 - #145041 (rework GAT borrowck limitation error)
 - #145243 (take attr style into account in diagnostics)
 - #145359 (Fix bug where `rustdoc-js` tester would not pick the right `search.js` file if there is more than one)
 - #145429 (Couple of codegen_fn_attrs improvements)
 - #145452 (Do not strip binaries in bootstrap everytime if they are unchanged)
 - #145486 (Fix `unicode_data.rs` mention message)
 - #145489 (library: Migrate from `cfg_if` to `cfg_select`)
 - #145493 (remove `should_render` in `PrintAttribute` derive)
 - #145500 (Port must_use to the new target checking)
 - #145505 (Simplify span caches)
 - #145511 (Rust build fails on OpenBSD after using file_lock feature)
 - #145516 (Weekly `cargo update`)
 - #145533 (Reorder `lto` options from most to least optimizing)
 - #145550 (Avoid using `()` in `derive(From)` output.)

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

The job dist-loongarch64-musl failed! Check out the build log: (web) (plain enhanced) (plain)

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

error[E0659]: `STATX_NLINK` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:79:26
    |
 79 |         const NLINK = c::STATX_NLINK;
    |                          ^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_NLINK` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_NLINK` to disambiguate

error[E0659]: `STATX_UID` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:82:24
    |
 82 |         const UID = c::STATX_UID;
    |                        ^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_UID` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_UID` to disambiguate

error[E0659]: `STATX_GID` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:85:24
    |
 85 |         const GID = c::STATX_GID;
    |                        ^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_GID` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---

error[E0659]: `STATX_ATIME` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:88:26
    |
 88 |         const ATIME = c::STATX_ATIME;
    |                          ^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_ATIME` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---

error[E0659]: `STATX_MTIME` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:91:26
    |
 91 |         const MTIME = c::STATX_MTIME;
    |                          ^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_MTIME` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_CTIME` to disambiguate

error[E0659]: `STATX_INO` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:97:24
    |
 97 |         const INO = c::STATX_INO;
    |                        ^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_INO` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---

error[E0659]: `STATX_BTIME` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:109:26
    |
109 |         const BTIME = c::STATX_BTIME;
    |                          ^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_BTIME` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_BTIME` to disambiguate

error[E0659]: `STATX_MNT_ID` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:112:27
    |
112 |         const MNT_ID = c::STATX_MNT_ID;
    |                           ^^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_MNT_ID` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_MNT_ID` to disambiguate

error[E0659]: `STATX_DIOALIGN` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:115:29
    |
115 |         const DIOALIGN = c::STATX_DIOALIGN;
    |                             ^^^^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_DIOALIGN` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
  7 | pub(crate) use libc::*;
    |                ^^^^^^^
    = help: consider adding an explicit import of `STATX_DIOALIGN` to disambiguate
note: `STATX_DIOALIGN` could also refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:512:16
    |
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_DIOALIGN` to disambiguate

error[E0659]: `STATX_ALL` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:118:24
    |
118 |         const ALL = c::STATX_ALL;
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_APPEND` to disambiguate

error[E0659]: `STATX_ATTR_NODUMP` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:140:27
    |
140 |         const NODUMP = c::STATX_ATTR_NODUMP as u64;
    |                           ^^^^^^^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_ATTR_NODUMP` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
  7 | pub(crate) use libc::*;
    |                ^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_NODUMP` to disambiguate
note: `STATX_ATTR_NODUMP` could also refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:512:16
    |
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_NODUMP` to disambiguate

error[E0659]: `STATX_ATTR_ENCRYPTED` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:143:30
    |
143 |         const ENCRYPTED = c::STATX_ATTR_ENCRYPTED as u64;
---
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_VERITY` to disambiguate

error[E0659]: `STATX_ATTR_DAX` is ambiguous
   --> /rust/deps/rustix-1.0.8/src/fs/statx.rs:155:24
    |
155 |         const DAX = c::STATX_ATTR_DAX as u64;
    |                        ^^^^^^^^^^^^^^ ambiguous name
    |
    = note: ambiguous because of multiple glob imports of a name in the same module
note: `STATX_ATTR_DAX` could refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:7:16
    |
  7 | pub(crate) use libc::*;
    |                ^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_DAX` to disambiguate
note: `STATX_ATTR_DAX` could also refer to the constant imported here
   --> /rust/deps/rustix-1.0.8/src/backend/libc/c.rs:512:16
    |
512 | pub(crate) use statx_flags::*;
    |                ^^^^^^^^^^^^^^
    = help: consider adding an explicit import of `STATX_ATTR_DAX` to disambiguate

[RUSTC-TIMING] tracing_attributes test:false 2.563
   Compiling tracing v0.1.37
[RUSTC-TIMING] proc_macro_hack test:false 1.085
[RUSTC-TIMING] unic_langid_impl test:false 0.440

@bors
Copy link
Collaborator

bors commented Aug 18, 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 Aug 18, 2025
@Zalathar Zalathar closed this Aug 18, 2025
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 18, 2025
@Zalathar Zalathar deleted the rollup-l0f96kg branch August 18, 2025 11:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface O-wasm Target: WASM (WebAssembly), http://webassembly.org/ O-windows Operating system: Windows rollup A PR which is a rollup 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. 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. 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.