| Age | Commit message (Collapse) | Author | Lines |
|
compiler & tools dependencies:
Locking 93 packages to latest compatible versions
Updating addr2line v0.24.2 -> v0.25.1
Removing android-tzdata v0.1.1
Updating anyhow v1.0.99 -> v1.0.100
Updating backtrace v0.3.75 -> v0.3.76
Updating bitflags v2.9.3 -> v2.9.4
Updating camino v1.1.11 -> v1.2.0
Updating cfg-if v1.0.1 -> v1.0.3
Updating chrono v0.4.41 -> v0.4.42
Updating clap v4.5.45 -> v4.5.48
Updating clap_builder v4.5.44 -> v4.5.48
Updating clap_derive v4.5.45 -> v4.5.47
Updating ctrlc v3.4.7 -> v3.5.0
Updating cxx v1.0.185 -> v1.0.186
Updating cxx-build v1.0.185 -> v1.0.186
Updating cxxbridge-cmd v1.0.185 -> v1.0.186
Updating cxxbridge-flags v1.0.185 -> v1.0.186
Updating cxxbridge-macro v1.0.185 -> v1.0.186
Updating dbus v0.9.7 -> v0.9.9
Adding dispatch v0.2.0
Updating dyn-clone v1.0.19 -> v1.0.20
Updating erased-serde v0.4.6 -> v0.4.8
Updating errno v0.3.13 -> v0.3.14
Updating filetime v0.2.25 -> v0.2.26
Updating form_urlencoded v1.2.1 -> v1.2.2
Updating gimli v0.32.0 -> v0.32.3
Adding hashbrown v0.16.0
Updating humantime v2.2.0 -> v2.3.0
Updating iana-time-zone v0.1.63 -> v0.1.64
Updating idna v1.0.3 -> v1.1.0
Updating indexmap v2.10.0 -> v2.11.4
Updating ipc-channel v0.20.1 -> v0.20.2
Updating jobserver v0.1.33 -> v0.1.34
Updating js-sys v0.3.77 -> v0.3.81
Updating libdbus-sys v0.2.5 -> v0.2.6
Updating libffi v4.1.1 -> v4.1.2
Updating libffi-sys v3.3.2 -> v3.3.3
Updating libloading v0.8.8 -> v0.8.9
Updating libredox v0.1.9 -> v0.1.10
Updating linux-raw-sys v0.9.4 -> v0.11.0
Updating log v0.4.27 -> v0.4.28
Updating matchers v0.1.0 -> v0.2.0
Updating memchr v2.7.5 -> v2.7.6
Updating normpath v1.3.0 -> v1.5.0
Removing nu-ansi-term v0.46.0
Removing overload v0.1.1
Updating percent-encoding v2.3.1 -> v2.3.2
Updating pest v2.8.1 -> v2.8.2
Updating pest_derive v2.8.1 -> v2.8.2
Updating pest_generator v2.8.1 -> v2.8.2
Updating pest_meta v2.8.1 -> v2.8.2
Updating potential_utf v0.1.2 -> v0.1.3
Updating regex v1.11.1 -> v1.11.3
Removing regex-automata v0.1.10
Removing regex-automata v0.4.9
Adding regex-automata v0.4.11
Updating regex-lite v0.1.6 -> v0.1.7
Removing regex-syntax v0.6.29
Removing regex-syntax v0.8.5
Adding regex-syntax v0.8.6
Updating rustix v1.0.8 -> v1.1.2
Updating schannel v0.1.27 -> v0.1.28
Updating semver v1.0.26 -> v1.0.27
Updating serde v1.0.219 -> v1.0.228
Updating serde-untagged v0.1.8 -> v0.1.9
Adding serde_core v1.0.228
Updating serde_derive v1.0.219 -> v1.0.228
Updating serde_json v1.0.142 -> v1.0.145
Updating serde_path_to_error v0.1.17 -> v0.1.20
Updating sysinfo v0.37.0 -> v0.37.1
Updating tempfile v3.20.0 -> v3.23.0
Updating thiserror v2.0.15 -> v2.0.16
Updating thiserror-impl v2.0.15 -> v2.0.16
Updating tinyvec v1.9.0 -> v1.10.0
Updating tracing-subscriber v0.3.18 -> v0.3.20
Updating twox-hash v2.1.1 -> v2.1.2
Updating unicode-ident v1.0.18 -> v1.0.19
Updating url v2.5.4 -> v2.5.7
Updating uuid v1.18.0 -> v1.18.1
Updating wasi v0.14.2+wasi-0.2.4 -> v0.14.7+wasi-0.2.4
Updating wasi-preview1-component-adapter-provider v36.0.1 -> v36.0.2
Adding wasip2 v1.0.1+wasi-0.2.4
Updating wasm-bindgen v0.2.100 -> v0.2.104
Updating wasm-bindgen-backend v0.2.100 -> v0.2.104
Updating wasm-bindgen-macro v0.2.100 -> v0.2.104
Updating wasm-bindgen-macro-support v0.2.100 -> v0.2.104
Updating wasm-bindgen-shared v0.2.100 -> v0.2.104
Updating winapi-util v0.1.9 -> v0.1.11
Removing windows v0.58.0
Updating windows-core v0.58.0 -> v0.62.1
Removing windows-implement v0.58.0
Removing windows-implement v0.60.0
Adding windows-implement v0.60.1
Removing windows-interface v0.58.0
Removing windows-interface v0.59.1
Adding windows-interface v0.59.2
Adding windows-link v0.2.0
Updating windows-result v0.2.0 -> v0.4.0
Updating windows-strings v0.1.0 -> v0.5.0
Adding windows-sys v0.61.1
Updating windows-targets v0.53.3 -> v0.53.4
Updating winnow v0.7.12 -> v0.7.13
Adding wit-bindgen v0.46.0
Removing wit-bindgen-rt v0.39.0
Updating xattr v1.5.1 -> v1.6.1
Updating zerocopy v0.8.26 -> v0.8.27
Updating zerocopy-derive v0.8.26 -> v0.8.27
note: pass `--verbose` to see 33 unchanged dependencies behind latest
library dependencies:
Locking 19 packages to latest compatible versions
Updating addr2line v0.25.0 -> v0.25.1
Updating cfg-if v1.0.1 -> v1.0.3
Updating dlmalloc v0.2.10 -> v0.2.11
Updating gimli v0.32.0 -> v0.32.3
Updating libc v0.2.175 -> v0.2.176
Updating memchr v2.7.5 -> v2.7.6
Updating vex-sdk v0.27.0 -> v0.27.1
Adding windows-link v0.2.0
Updating windows-sys v0.59.0 -> v0.60.2
Updating windows-targets v0.52.6 -> v0.53.4
Updating windows_aarch64_gnullvm v0.52.6 -> v0.53.0
Updating windows_aarch64_msvc v0.52.6 -> v0.53.0
Updating windows_i686_gnu v0.52.6 -> v0.53.0
Updating windows_i686_gnullvm v0.52.6 -> v0.53.0
Updating windows_i686_msvc v0.52.6 -> v0.53.0
Updating windows_x86_64_gnu v0.52.6 -> v0.53.0
Updating windows_x86_64_gnullvm v0.52.6 -> v0.53.0
Updating windows_x86_64_msvc v0.52.6 -> v0.53.0
Updating wit-bindgen v0.45.0 -> v0.45.1
note: pass `--verbose` to see 4 unchanged dependencies behind latest
rustbook dependencies:
Locking 63 packages to latest compatible versions
Updating ammonia v4.1.1 -> v4.1.2
Removing android-tzdata v0.1.1
Updating anyhow v1.0.99 -> v1.0.100
Removing bitflags v1.3.2
Removing bitflags v2.9.2
Adding bitflags v2.9.4
Updating cc v1.2.33 -> v1.2.39
Updating cfg-if v1.0.1 -> v1.0.3
Updating chrono v0.4.41 -> v0.4.42
Updating clap v4.5.45 -> v4.5.48
Updating clap_builder v4.5.44 -> v4.5.48
Updating clap_complete v4.5.57 -> v4.5.58
Updating clap_derive v4.5.45 -> v4.5.47
Updating errno v0.3.13 -> v0.3.14
Adding find-msvc-tools v0.1.2
Updating form_urlencoded v1.2.1 -> v1.2.2
Updating getopts v0.2.23 -> v0.2.24
Updating hashbrown v0.15.5 -> v0.16.0
Updating iana-time-zone v0.1.63 -> v0.1.64
Updating idna v1.0.3 -> v1.1.0
Updating indexmap v2.10.0 -> v2.11.4
Updating js-sys v0.3.77 -> v0.3.81
Updating linux-raw-sys v0.9.4 -> v0.11.0
Updating log v0.4.27 -> v0.4.28
Updating memchr v2.7.5 -> v2.7.6
Updating normpath v1.3.0 -> v1.5.0
Updating opener v0.8.2 -> v0.8.3
Updating percent-encoding v2.3.1 -> v2.3.2
Updating pest v2.8.1 -> v2.8.2
Updating pest_derive v2.8.1 -> v2.8.2
Updating pest_generator v2.8.1 -> v2.8.2
Updating pest_meta v2.8.1 -> v2.8.2
Updating potential_utf v0.1.2 -> v0.1.3
Updating regex v1.11.1 -> v1.11.3
Updating regex-automata v0.4.9 -> v0.4.11
Updating regex-syntax v0.8.5 -> v0.8.6
Updating rustix v1.0.8 -> v1.1.2
Updating semver v1.0.26 -> v1.0.27
Updating serde v1.0.219 -> v1.0.228
Adding serde_core v1.0.228
Updating serde_derive v1.0.219 -> v1.0.228
Updating serde_json v1.0.142 -> v1.0.145
Updating syntect v5.2.0 -> v5.3.0
Updating tempfile v3.20.0 -> v3.23.0
Updating thiserror v2.0.15 -> v2.0.16
Updating thiserror-impl v2.0.15 -> v2.0.16
Updating unicode-ident v1.0.18 -> v1.0.19
Updating url v2.5.4 -> v2.5.7
Updating wasi v0.14.2+wasi-0.2.4 -> v0.14.7+wasi-0.2.4
Adding wasip2 v1.0.1+wasi-0.2.4
Updating wasm-bindgen v0.2.100 -> v0.2.104
Updating wasm-bindgen-backend v0.2.100 -> v0.2.104
Updating wasm-bindgen-macro v0.2.100 -> v0.2.104
Updating wasm-bindgen-macro-support v0.2.100 -> v0.2.104
Updating wasm-bindgen-shared v0.2.100 -> v0.2.104
Updating winapi-util v0.1.9 -> v0.1.11
Updating windows-core v0.61.2 -> v0.62.1
Updating windows-implement v0.60.0 -> v0.60.1
Updating windows-interface v0.59.1 -> v0.59.2
Updating windows-link v0.1.3 -> v0.2.0
Updating windows-result v0.3.4 -> v0.4.0
Updating windows-strings v0.4.2 -> v0.5.0
Updating windows-sys v0.59.0 -> v0.61.1
Updating windows-targets v0.53.3 -> v0.53.4
Updating winnow v0.7.12 -> v0.7.13
Adding wit-bindgen v0.46.0
Removing wit-bindgen-rt v0.39.0
note: pass `--verbose` to see 1 unchanged dependencies behind latest
|
|
Make it possible to `x install` Cranelift and LLVM bitcode linker
It was not possible to install these before, as they were not in the install step description list.
Fixes: https://github.com/rust-lang/rust/issues/140331
r? `@jieyouxu`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bump bootstrap compiler to 1.91 beta
https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-tuesday
|
|
|
|
|
|
|
|
Add new `tyalias` intra-doc link disambiguator
Fixes https://github.com/rust-lang/rust/issues/146855.
Alternative to rust-lang/rust#146866.
This adds support for a new disambiguator: `tyalias`. I think it's common enough to have type aliases nowaday, so no reason to not be able to have a disambiguator for them.
cc ``@fmease``
r? lolbinarycat
|
|
Stop linking rs{begin,end} objects on x86_64-*-windows-gnu
Until now, x86_64-pc-windows-gnu linked `rsbegin.o` and `rsend.o` just like i686-pc-windows-gnu, even though they were no-ops for it. This was likely done for the simplicity back when it was introduced.
Today the things are different and these startup/end objects harm other features, like `build-std`. Given the demotion of i686-pc-windows-gnu from tier 1, there is no point in hurting x86_64-pc-windows-gnu, which remains a tier 1.
The files are still shipped in case downstream crates expect them, as in case of the unmaintained `xargo`.
Fixes https://github.com/rust-lang/rust/issues/146739
|
|
Demote both armebv7r-none-* targets.
OK, slightly more controversial than https://github.com/rust-lang/rust/pull/146520 and https://github.com/rust-lang/rust/pull/146522 - I'd like to drop the bare-metal **big-endian** Armv7-R targets down to Tier 3.
The reason is simple - we cannot test them in https://github.com/rust-embedded/cortex-ar/. This because QEMU support for Big Endian Armv7-R is broken. I tried quite hard, but all the strings I printed with semihosting came out byte swapped (or "etybawa depp") because of how QEMU kludges the access to memory in big-endian mode.
The target also has only a single maintainer. Although, if ````@chrisnc```` wants to put up a case for keeping it at Tier 2 though, I'm happy to hear it!
This PR wil be rebased once https://github.com/rust-lang/rust/pull/146419 completes the queue.
|
|
resolve: Do not finalize shadowed bindings
I.e. do not mark them as used, or non-speculatively loaded, or similar.
Previously they were sometimes finalized during early resolution, causing issues like https://github.com/rust-lang/rust/pull/144793#issuecomment-3168108005.
|
|
|
|
Make cargo test work for bootstrap self test
This PR enables the bootstrap self-test to run via cargo test. I have removed the detect_src_and_out test for now, but it will be reintroduced in a follow-up PR where all bootstrap tests will be migrated to use testCtx.
r? `@Kobzol`
try-job: aarch64-apple
|
|
|
|
Rollup of 7 pull requests
Successful merges:
- rust-lang/rust#146283 (Resolve: (Ref)Cell wrappers to deny mutation during spec resolution.)
- rust-lang/rust#146453 (Add general arm-linux.md platform doc.)
- rust-lang/rust#146991 (const_caller_location to use real Span instead of `DUMMY_SP`)
- rust-lang/rust#146994 (Add `clippy::unconditional_recursion` to `./x clippy ci`)
- rust-lang/rust#147038 (Rename verbosity functions in bootstrap)
- rust-lang/rust#147047 (rustdoc: put the toolbar on the all item index)
- rust-lang/rust#147049 (std: fix warning in VEXos stdio module)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
rustdoc: put the toolbar on the all item index
|
|
Rename verbosity functions in bootstrap
Just a small cleanup, these function names have been bothering me for a while. I realized that we can delete some of them outright, rather than just renaming them.
r? ``@jieyouxu``
|
|
Add `clippy::unconditional_recursion` to `./x clippy ci`
The clippy lint catches some things that rustc's equivalent builtin lint
does not, for example rust-lang/rust#146940:
error: function cannot return without recursing
--> library/std/src/path.rs:3428:5
|
3428 | / fn eq(&self, other: &String) -> bool {
3429 | | self == &*other
3430 | | }
| |_____^
|
note: recursive call site
--> library/std/src/path.rs:3429:9
|
3429 | self == &*other
| ^^^^^^^^^^^^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unconditional_recursion
= note: requested on the command line with `-D clippy::unconditional-recursion`
|
|
Add general arm-linux.md platform doc.
Adds a new page that covers all 32-bit Arm Linux systems. This means that we can reduce the amount of information required in the target specific pages to just the Tier level, the maintainer, and any specific details for that target.
I have no changed those pages yet, though. Let's start with this.
|
|
Extended temporary argument to format_args!() in all cases
Fixes https://github.com/rust-lang/rust/issues/145880 by removing the special case.
|
|
|
|
Rollup of 8 pull requests
Successful merges:
- rust-lang/rust#116882 (rustdoc: hide `#[repr]` if it isn't part of the public ABI)
- rust-lang/rust#135771 ([rustdoc] Add support for associated items in "jump to def" feature)
- rust-lang/rust#141032 (avoid violating `slice::from_raw_parts` safety contract in `Vec::extract_if`)
- rust-lang/rust#142401 (Add proper name mangling for pattern types)
- rust-lang/rust#146293 (feat: non-panicking `Vec::try_remove`)
- rust-lang/rust#146859 (BTreeMap: Don't leak allocators when initializing nodes)
- rust-lang/rust#146924 (Add doc for `NonZero*` const creation)
- rust-lang/rust#146933 (Make `render_example_with_highlighting` return an `impl fmt::Display`)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
I.e. do not mark them as used, or non-speculative loaded, or similar.
Previously they were sometimes finalized during early resolution, causing issues like https://github.com/rust-lang/rust/pull/144793#issuecomment-3168108005.
|
|
The clippy lint catches some things that rustc's equivalent builtin lint
does not, for example rust-lang/rust#146940:
error: function cannot return without recursing
--> library/std/src/path.rs:3428:5
|
3428 | / fn eq(&self, other: &String) -> bool {
3429 | | self == &*other
3430 | | }
| |_____^
|
note: recursive call site
--> library/std/src/path.rs:3429:9
|
3429 | self == &*other
| ^^^^^^^^^^^^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unconditional_recursion
= note: requested on the command line with `-D clippy::unconditional-recursion`
|
|
|
|
r=GuillaumeGomez
Make `render_example_with_highlighting` return an `impl fmt::Display`
Removes some more usages of `write_str`. Shouldn't affect runtime, but makes the codebase a bit more consistent.
Each commit can be reviewed separately
|
|
Add proper name mangling for pattern types
requires adding demangler support first https://github.com/rust-lang/rustc-demangle/pull/81
needed for https://github.com/rust-lang/rust/pull/136006#discussion_r2139792593 as otherwise we will have symbol collisions
|
|
avoid violating `slice::from_raw_parts` safety contract in `Vec::extract_if`
The implementation of the `Vec::extract_if` iterator violates the safety contract adverized by `slice::from_raw_parts` by always constructing a mutable slice for the entire length of the vector even though that span of memory can contain holes from items already drained. The safety contract of `slice::from_raw_parts` requires that all elements must be properly
initialized.
As an example we can look at the following code:
```rust
let mut v = vec![Box::new(0u64), Box::new(1u64)];
for item in v.extract_if(.., |x| **x == 0) {
drop(item);
}
```
In the second iteration a `&mut [Box<u64>]` slice of length 2 will be constructed. The first slot of the slice contains the bitpattern of an already deallocated box, which is invalid.
This fixes the issue by only creating references to valid items and using pointer manipulation for the rest. I have also taken the liberty to remove the big `unsafe` blocks in place of targetted ones with a SAFETY comment. The approach closely mirrors the implementation of `Vec::retain_mut`.
**Note to reviewers:** The diff is easier to follow with whitespace hidden.
|
|
[rustdoc] Add support for associated items in "jump to def" feature
Fixes https://github.com/rust-lang/rust/issues/135485.
r? ``@fmease``
|
|
r=rustdoc
rustdoc: hide `#[repr]` if it isn't part of the public ABI
> [!IMPORTANT]
> Temporarily stacked on top of PR https://github.com/rust-lang/rust/pull/146527; only the last commit is relevant!
Follow-up to rust-lang/rust#115439.
Unblocks rust-lang/rust#116743, CC ``@dtolnay.``
Fixes rust-lang/rust#66401.
Fixes rust-lang/rust#128364.
Fixes rust-lang/rust#137440.
Only display the representation `#[repr(REPR)]` (where `REPR` is not `Rust` or `transparent`) of a given type if none of its variants (incl. the synthetic variants of structs) are `#[doc(hidden)]` and all of its fields are public and not `#[doc(hidden)]` since it's likely not meant to be considered part of the public ABI otherwise.
`--document-{private,hidden}-items` works as expected in this context, too.
Moreover, we now also factor in the presence of `#[doc(hidden)]` when checking whether to show `repr(transparent)` or not.
|
|
|
|
|
|
|
|
|
|
rustdoc: Fix documentation for `--doctest-build-arg`
In https://github.com/rust-lang/rust/pull/139863, I forgot to update the documentation.
Tracking issue: https://github.com/rust-lang/rust/issues/134172
|
|
bootstrap.py: Respect build.jobs while building bootstrap tool
On resource-constrained systems, it is vital to respect the value of build.jobs, in order to avoid overwhelming the available memory.
|
|
unstably constify float mul_add methods
Tracking issue: rust-lang/rust#146724
r? `@tgross35`
|
|
Add an attribute to check the number of lanes in a SIMD vector after monomorphization
Allows std::simd to drop the `LaneCount<N>: SupportedLaneCount` trait and maintain good error messages.
Also, extends rust-lang/rust#145967 by including spans in layout errors for all ADTs.
r? ``@RalfJung``
cc ``@workingjubilee`` ``@programmerjake``
|