| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
Send a message to Zulip when a sync finishes
|
|
|
|
rustc pull
|
|
|
|
|
|
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- #134276 (fully de-stabilize all custom inner attributes)
- #135237 (Match Ergonomics 2024: document and reorganize the currently-implemented feature gates)
- #135310 (Always force non-trimming of path in `unreachable_patterns` lint)
- #135446 (further improve panic_immediate_abort by removing rtprintpanic! messages)
- #135491 (Remove dead rustc_allowed_through_unstable_modules for std::os::fd contents)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
RalfJung:remove-dead-rustc_allowed_through_unstable_modules, r=Mark-Simulacrum
Remove dead rustc_allowed_through_unstable_modules for std::os::fd contents
As far as I was able to reconstruct, the history here is roughly as follows:
- https://github.com/rust-lang/rust/pull/99723 added some `rustc_allowed_through_unstable_modules` to the types in `std::os::fd::raw` since they were accessible on stable via the unstable `std::os::wasi::io::AsRawFd` path. (This was needed to fix https://github.com/rust-lang/rust/issues/99502.)
- Shortly thereafter, https://github.com/rust-lang/rust/pull/98368 re-organized things so that instead of re-exporting from an internal `std::os::wasi::io::raw`, `std::os::wasi::io::AsRawFd` is now directly re-exported from `std::os::fd`. This also made `library/std/src/os/wasi/io/raw.rs` entirely dead code as far as I can tell, it's not imported by anything any more.
- Shortly thereafter, https://github.com/rust-lang/rust/pull/103308 stabilizes `std::os::wasi::io`, so `rustc_allowed_through_unstable_modules` is not needed any more to access `std::os::wasi::io::AsRawFd`. There is even a comment in `library/std/src/os/wasi/io/raw.rs` saying the attribute can be removed now, but that file is dead code so it is not touched as part of the stabilization.
I did a grep for `pub use crate::os::fd` and all the re-exports I could find are in stable modules. So given all that, we can remove the `rustc_allowed_through_unstable_modules` (hoping they are not also re-exported somewhere else, it's really hard to be sure about this).
I have checked that std still builds after this PR on the wasm32-wasip2 target.
|
|
further improve panic_immediate_abort by removing rtprintpanic! messages
Reduces binary size using `panic_immediate_abort` by removing strings used by `rtprintpanic!`.
for `main.rs`
```rust
fn main() {
println!("Hello, world!");
}
```
with `Cargo.toml`
```toml
[package]
name = "tst"
version = "0.1.0"
edition = "2024"
[dependencies]
[profile.release]
lto = true
codegen-units = 1
panic = "abort"
```
and build with `RUSTFLAGS="-Zlocation-detail=none -Zfmt-debug=none" cargo +stage-1 b -r -Z build-std=std,panic_abort -Z build-std-features=optimize_for_size,panic_immediate_abort` for `x86_64-unknown-linux-gnu`
This reduces size:
| before | after | type |
| - | - | - |
| 25256 | 21880 | unstripped |
| 18072 | 15288 | stripped |
|
|
Always force non-trimming of path in `unreachable_patterns` lint
Creating a "trimmed DefID path" when no error is being emitted is an ICE (on purpose). If we create a trimmed path for a lint that is then silenced before being emitted causes a known ICE. This side-steps the issue by always using `with_no_trimmed_path!`.
This was verified to fix https://github.com/quinn-rs/quinn/, but couldn't write a repro case for the test suite.
Fix #135289.
|
|
Match Ergonomics 2024: document and reorganize the currently-implemented feature gates
The hope here is to make it easier to adjust, understand, and test the experimental pattern typing rules implemented in the compiler. This PR doesn't (or at isn't intended to) change any behavior or add any new tests; I'll be handling that later. I've also included some reasoning/commentary on the more involved changes in the commit messages.
Relevant tracking issue: #123076
r? `@Nadrieril`
|
|
fully de-stabilize all custom inner attributes
`#![test]` and `#![rustfmt::skip]` were accidentally accepted in more places than they should. These have been marked as soft-unstable since forever (https://github.com/rust-lang/rust/pull/82399) and shown in future-compat reports since Rust 1.77 (https://github.com/rust-lang/rust/pull/116274).
Cc `@rust-lang/lang` `@petrochenkov`
|
|
|
|
Co-authored-by: Boxy <rust@boxyuwu.dev>
|
|
|
|
|
|
This adds explanation of inherited references and how they relate to the default binding mode.
Co-authored-by: Nadrieril <Nadrieril@users.noreply.github.com>
|
|
Miri subtree update
r? `@ghost`
|
|
Automatic Rustup
|
|
|
|
|
|
Weekly `cargo update`
Automation to keep dependencies in `Cargo.lock` current.
The following is the output from `cargo update`:
```txt
compiler & tools dependencies:
Locking 13 packages to latest compatible versions
Updating anstyle-wincon v3.0.6 -> v3.0.7
Updating bitflags v2.7.0 -> v2.8.0
Updating chrono-tz v0.10.0 -> v0.10.1
Updating js-sys v0.3.76 -> v0.3.77
Updating log v0.4.22 -> v0.4.25
Updating miniz_oxide v0.8.2 -> v0.8.3
Updating uuid v1.11.1 -> v1.12.0
Updating valuable v0.1.0 -> v0.1.1
Updating wasm-bindgen v0.2.99 -> v0.2.100
Updating wasm-bindgen-backend v0.2.99 -> v0.2.100
Updating wasm-bindgen-macro v0.2.99 -> v0.2.100
Updating wasm-bindgen-macro-support v0.2.99 -> v0.2.100
Updating wasm-bindgen-shared v0.2.99 -> v0.2.100
note: pass `--verbose` to see 41 unchanged dependencies behind latest
library dependencies:
Locking 1 package to latest compatible version
Updating miniz_oxide v0.8.2 -> v0.8.3
note: pass `--verbose` to see 4 unchanged dependencies behind latest
rustbook dependencies:
Locking 12 packages to latest compatible versions
Updating anstyle-wincon v3.0.6 -> v3.0.7
Updating bitflags v2.7.0 -> v2.8.0
Updating cc v1.2.8 -> v1.2.10
Updating js-sys v0.3.76 -> v0.3.77
Updating log v0.4.22 -> v0.4.25
Updating miniz_oxide v0.8.2 -> v0.8.3
Adding rustversion v1.0.19
Updating wasm-bindgen v0.2.99 -> v0.2.100
Updating wasm-bindgen-backend v0.2.99 -> v0.2.100
Updating wasm-bindgen-macro v0.2.99 -> v0.2.100
Updating wasm-bindgen-macro-support v0.2.99 -> v0.2.100
Updating wasm-bindgen-shared v0.2.99 -> v0.2.100
```
|
|
Rollup of 5 pull requests
Successful merges:
- #134858 (Provide structured suggestion for `#![feature(..)]` in more cases)
- #135679 (create an issue template for bootstrap)
- #135685 (Remove unused `item-row` CSS class)
- #135716 (Don't skip argument parsing when running `rustc` with no arguments)
- #135723 (Fix dev guide docs for error-pattern)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Fix dev guide docs for error-pattern
I know it would have made more sense to make this PR to the dev guide repo but I had already made the fix before I realized that.
r? `@jieyouxu`
|
|
Don't skip argument parsing when running `rustc` with no arguments
Setting up the argument parser to parse no arguments is a tiny bit of wasted work, but avoids an otherwise-unnecessary special case, in a scenario (printing a help message and quitting) where perf at this scale really doesn't matter anyway.
In particular, this lets us avoid having to deal with multiple different APIs to determine whether the compiler is nightly or not.
---
This special-case handling for rustc with no arguments is very very old (long predating 1.0), and used to be much simpler, without any need to set up boolean values to handle various conditional cases. So I don't think it was ever explicitly decided that having this special case was worth the extra complexity; it just started out simple and accumulated complexity over time.
|
|
Remove unused `item-row` CSS class
Seems like a CSS class we forgot to remove at some point.
r? `@notriddle`
|
|
create an issue template for bootstrap
Resolves #135593
cc `@rust-lang/bootstrap`
|
|
Provide structured suggestion for `#![feature(..)]` in more cases
Fix #81370.
|
|
|
|
I know it would have made more sense to make this PR to the dev guide
repo but I had already made the fix before I realized that.
|
|
Signed-off-by: onur-ozkan <work@onurozkan.dev>
|
|
Improve `select_nth_unstable` documentation clarity
* Instead uses `before` and `after` variable names in the example
where `greater` and `lesser` are flipped.
* Uses `<=` and `>=` instead of "less than or equal to" and "greater
than or equal to" to make the docs more concise.
* General attempt to remove unnecessary words and be more precise. For
example it seems slightly wrong to say "its final sorted position",
since this implies there is only one sorted position for this element.
|
|
Temporarily bring back `Rvalue::Len`
r? `@compiler-errors` as requested in https://github.com/rust-lang/rust/issues/135671#issuecomment-2599580364
> However, in the mean time, I'd rather we not crunch trying to find and more importantly validate the soundness of a solution 🤔
Agreed. To fix the IMO P-critical #135671 for which we somehow didn't have test coverage, this PR temporarily reverts:
- https://github.com/rust-lang/rust/pull/133734
- its bugfix https://github.com/rust-lang/rust/pull/134371
- https://github.com/rust-lang/rust/pull/134330
cc `@scottmcm`
I added the few samples from that issue as a test, but we can add more in the future, in particular it seems `@steffahn` [will work on that](https://github.com/rust-lang/rust/issues/135671#issuecomment-2599714354).
Fixes #135671. And if we want to land this, it should also be nominated for beta backport.
|
|
|
|
|
|
Rollup of 4 pull requests
Successful merges:
- #135641 ([rustdoc] Replace module list items `ul`/`li` with `dl`/`dd`/`dt` elements)
- #135703 (Disallow `A { .. }` if `A` has no fields)
- #135705 (Consolidate ad-hoc MIR lints into real pass-manager-based MIR lints)
- #135708 (Some random compiler nits)
Failed merges:
- #135685 (Remove unused `item-row` CSS class)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Setting up the argument parser to parse no arguments is a tiny bit of wasted
work, but avoids an otherwise-unnecessary special case.
In particular, this lets us avoid having to deal with multiple different APIs
to determine whether the compiler is nightly or not.
|
|
|
|
Co-authored-by: Ibraheem Ahmed <ibraheem@ibraheem.ca>
|
|
Co-authored-by: Ibraheem Ahmed <ibraheem@ibraheem.ca>
|
|
Co-authored-by: Ibraheem Ahmed <ibraheem@ibraheem.ca>
|
|
Co-authored-by: Ibraheem Ahmed <ibraheem@ibraheem.ca>
|
|
Co-authored-by: Ibraheem Ahmed <ibraheem@ibraheem.ca>
|