Commit Graph

8491 Commits

Author SHA1 Message Date
Matthias Krüger 0711aa94ec Rollup merge of #156006 - bjorn3:bootstrap_no_import_libs, r=Mark-Simulacrum
Update a bunch of bootstrap dependencies to remove windows-target

Follow up to https://github.com/rust-lang/rust/pull/155444
2026-05-10 03:16:59 +02:00
Jonathan Brouwer 71597bc71c Rollup merge of #156061 - alexcrichton:unwinding-onw-asi, r=bjorn3
Support `-Cpanic=unwind` on WASI targets

This commit is some minor updates/restructuring in a few locations with the end result being supporting `-Cpanic=unwind` on WASI targets. This continues to be off-by-default insofar as WASI targets default to `-Cpanic=abort`, meaning that actually using anything in this commit requires `-Zbuild-std`. Specifically the changes made here are:

* The self-contained sysroot for WASI targets now contains a copy of `libunwind.a` from wasi-sdk, first shipped with wasi-sdk-33 (also updated here).
* The `unwind` crate here in this repository uses the `libunwind` module instead of the custom bare-metal wasm implementation of exceptions. This means that Rust uses the `_Unwind_*` symbols which allows it to interoperate with C/C++/etc.
* Wasm targets are all updated to pass the LLVM argument `-wasm-use-legacy-eh=false` to differ from LLVM's/clang's default of using the legacy exception handling proposal for WebAssembly. This has no effect by default because `panic=abort` is used on most targets. Emscripten is exempted from this as the Emscripten target is explicitly intended to follow LLVM's/clang's defaults.
* There's a single test in the test suite that links to the `panic_unwind` crate which ended up requiring `-Wexceptions` from Wasmtime, so the test parts were updated and Wasmtime was updated in CI, too.

The net result of all of this is that this should not actually affect any WebAssembly target's default behavior. Optionally, though, WASI programs can be built with exception handling via:

    RUSTFLAGS='-Cpanic=unwind' cargo +nightly run -Z build-std --target wasm32-wasip2

Effectively `-Zbuild-std` and `-Cpanic=unwind` is all that's necessary to enable this support on wasm targets.

Finally, this ends up closing rust-lang/rust#154593 as well. The WASI targets are now defined to use `-lunwind` to implement unwinding. This means that the in-tree definition of `__cpp_exception` is no longer of concern and the definition is always sourced externally. If Rust is linked with other C/C++ code using WASI then these idioms are compatible with wasi-sdk, for example, to use that as a linker. The main caveat is that when using an external linker the `-fwasm-exceptions` argument needs to be passed to `clang` for it to be able to find the `libunwind.a` library to link against.

Closes rust-lang/rust#154593
2026-05-07 22:44:02 +02:00
Alex Crichton 506693e7d6 Support -Cpanic=unwind on WASI targets
This commit is some minor updates/restructuring in a few locations with
the end result being supporting `-Cpanic=unwind` on WASI targets. This
continues to be off-by-default insofar as WASI targets default to
`-Cpanic=abort`, meaning that actually using anything in this commit
requires `-Zbuild-std`. Specifically the changes made here are:

* The self-contained sysroot for WASI targets now contains a copy of
  `libunwind.a` from wasi-sdk, first shipped with wasi-sdk-33 (also
  updated here).
* The `unwind` crate here in this repository uses the `libunwind` module
  instead of the custom bare-metal wasm implementation of exceptions.
  This means that Rust uses the `_Unwind_*` symbols which allows it to
  interoperate with C/C++/etc.
* Wasm targets are all updated to pass the LLVM argument
  `-wasm-use-legacy-eh=false` to differ from LLVM's/clang's default of
  using the legacy exception handling proposal for WebAssembly. This has
  no effect by default because `panic=abort` is used on most targets.
  Emscripten is exempted from this as the Emscripten target is
  explicitly intended to follow LLVM's/clang's defaults.
* There's a single test in the test suite that links to the
  `panic_unwind` crate which ended up requiring `-Wexceptions` from
  Wasmtime, so the test parts were updated and Wasmtime was updated in
  CI, too.

The net result of all of this is that this should not actually affect
any WebAssembly target's default behavior. Optionally, though, WASI
programs can be built with exception handling via:

    RUSTFLAGS='-Cpanic=unwind' cargo +nightly run -Z build-std --target wasm32-wasip2

Effectively `-Zbuild-std` and `-Cpanic=unwind` is all that's necessary
to enable this support on wasm targets.

Finally, this ends up closing 154593 as well. The WASI targets are now
defined to use `-lunwind` to implement unwinding. This means that the
in-tree definition of `__cpp_exception` is no longer of concern and the
definition is always sourced externally. If Rust is linked with other
C/C++ code using WASI then these idioms are compatible with wasi-sdk,
for example, to use that as a linker. The main caveat is that when using
an external linker the `-fwasm-exceptions` argument needs to be passed
to `clang` for it to be able to find the `libunwind.a` library to link
against.

Closes 154593
2026-05-07 12:51:29 -07:00
Jonathan Brouwer c2a463a5d0 Rollup merge of #156127 - GuillaumeGomez:update-askama, r=Urgau
Update `askama` version to `0.16.0`

New features and bugfixes. Full changelog is [here](https://github.com/askama-rs/askama/releases/tag/v0.16.0).

r? @Urgau
2026-05-05 14:25:26 +02:00
Guillaume Gomez 08aca77199 Regen proc_macro_dep 2026-05-04 04:03:50 +02:00
bors 54f67d248b Auto merge of #155996 - flip1995:clippy-subtree-update, r=Manishearth
Clippy subtree update

r? Manishearth
2026-05-03 09:53:02 +00:00
Guillaume Gomez 201d567654 Rollup merge of #154571 - chenyukang:yukang-fix-alias-path, r=clubby789
Fix alias path for rustdoc

I ran this command:

```console
x build --stage 1  --skip rustdoc
Building bootstrap
   Compiling bootstrap v0.0.0 (/Users/yukang/rust/src/bootstrap)
    Finished `dev` profile [unoptimized] target(s) in 1.08s
/Users/yukang/rust/build/aarch64-apple-darwin/ci-llvm/bin/llvm-strip does not exist; skipping copy
Building stage1 compiler artifacts (stage0 -> stage1, aarch64-apple-darwin)
    Finished `release` profile [optimized + debuginfo] target(s) in 0.45s
Creating a sysroot for stage1 compiler (use `rustup toolchain link 'name' build/host/stage1`)
Building stage1 library artifacts{alloc, compiler_builtins, core, panic_abort, panic_unwind, proc_macro, rustc-std-workspace-core, std, std_detect, sysroot, test, unwind} (stage1 -> stage1, aarch64-apple-darwin)
    Finished `dist` profile [optimized + debuginfo] target(s) in 0.10s
Skipping Set({build::src/tools/rustdoc}) because it is excluded
Building stage1 rustdoc_tool_binary (stage0 -> stage1, aarch64-apple-darwin)
    Finished `release` profile [optimized + debuginfo] target(s) in 0.19s
```

expect all `rustdoc` related compiling phase will be exlcuded, but from the log we can see `rustdoc_tool_binary` is still compiled.

`src/tools/rustdoc` and `src/librustdoc` are documented as aliases in path set here:
https://github.com/rust-lang/rust/blob/a25435bcf7cfc9b953d356eda3a51db8da9e3386/src/bootstrap/src/core/builder/mod.rs#L355-L360

we can also see here two paths are treated as alias:
https://github.com/rust-lang/rust/blob/a25435bcf7cfc9b953d356eda3a51db8da9e3386/src/bootstrap/src/core/build_steps/check.rs#L818-L822

but bootstrap registered them as two different sets with `.path(..).path(...)`:
https://github.com/rust-lang/rust/blob/a25435bcf7cfc9b953d356eda3a51db8da9e3386/src/bootstrap/src/core/build_steps/tool.rs#L691-L693

That meant commands like `x build --skip rustdoc`, `--skip src/tools/rustdoc`, or `--skip src/librustdoc` only excluded one side.
2026-05-02 04:12:05 +02:00
bors 67bcaa9c4b Auto merge of #153968 - jyn514:jyn/linker-warn-by-default, r=mati865
linker-messages is warn-by-default again

cc rust-lang/rust#136096 

I ended up keeping it a lint and adding an option for lints to ignore `-Dwarnings` (there was already a lint that did that actually, it was just hard-coded in rustc_middle instead of in rustc_lint_defs like I'd expect). This allows people to actually see the warnings without them failing the build in CI.
2026-05-01 17:15:17 +00:00
bjorn3 7eb6a201a8 Update a bunch of bootstrap dependencies to remove windows-target 2026-04-30 15:23:10 +00:00
Philipp Krones c9aa8af836 Fix Clippy lints in bootstrap 2026-04-30 14:33:38 +02:00
Jonathan Brouwer 1c764aa73a Rollup merge of #155935 - paradoxicalguy:fix-out-dir-remap, r=Urgau,
remap OUT_DIR paths to fix build script path leakage in crate metadata.

### problem:
- build script outputs (`OUT_DIR`) leak absolute paths into crate metadata causing non-determinism across identical builds.
- bootstrap remaps source paths (`self.build.src`) and registry sources but doesn't not remap `self.build.out` used by `OUT_DIR`

### fix:
- adding `--remap-path-prefix` for `self.build.out` , mapping it to a stable virtual prefix, consistent with existing remappings

### result:
- removes path-based non-determinism from build script outputs
- verified via stage 2 reproducibility testing.

r? @Urgau
2026-04-29 23:51:37 +02:00
Jonathan Brouwer 1857d2ee9f Rollup merge of #151994 - davidtwco:v0-mangling-on-stable, r=wesleywiser
switch to v0 mangling by default on stable

Following rust-lang/rust#89117, rustc has defaulted to the v0 mangling scheme by default (since Nov 20th 2025). This surfaced two bugs:

- rust-lang/rust#138261 was a small ICE (found via fuzzing) where an implementation-internal namespace was missing for global assembly - this occurs with names instantiated within global assembly (that can happen inside constants)

- rust-lang/rust#134479 only occurs with unstable `generic_const_exprs`

Since there have been three-to-four months for users to find bugs with this mangling scheme on nightly, that the scheme has been waiting many years to be stabilised, and has been used successfully internally at Microsoft, Meta and Google for many years, this patch proposes stabilising the v0 mangling scheme on stable.

This patch does not propose removing the legacy mangling, it will remain usable on nightly as an escape-hatch if there are remaining bugs (though admittedly it would require switching to nightly for those on stable) - it is anticipated that this would be unlikely given current testing undergone by v0. Legacy mangling can be removed in another follow-up.

r? @wesleywiser
2026-04-28 20:24:29 +02:00
abhinav srivastav 26ce8a9d5c Apply suggestion from @bjorn3
Co-authored-by: bjorn3 <17426603+bjorn3@users.noreply.github.com>
2026-04-28 22:35:17 +05:30
paradoxicalguy e743a4db62 bootstrap: remap OUT_DIR paths to fix build script path leakage in artifacts 2026-04-28 16:58:24 +00:00
jyn ad72d55680 Revert "Remove -Alinker-messages"
This reverts commit e9474927b7.
We need to allow linker messages so that they aren't caught by cargo's
`build.warnings = deny`.
2026-04-26 16:09:34 +00:00
Jynn Nelson bbdc7c4cc5 bootstrap: Don't clone submodules unconditionally in dry-run
This made it very annoying to debug bootstrap itself, because every
`--dry-run` invocation would start out by cloning LLVM, which is almost
never necessary. Instead change a few Steps to properly support dry_run
when no submodule is checked out.
2026-04-24 14:02:22 +02:00
Jonathan Brouwer e150483f4f Rollup merge of #155554 - nivekithan:issue-155545-fix, r=jyn514
add warning message when using x fix

Fix for issue: https://github.com/rust-lang/rust/issues/155545

Before:
<img width="1880" height="329" alt="image" src="https://github.com/user-attachments/assets/b713d940-f229-4c63-8df8-93634f017793" />

After:
<img width="1897" height="387" alt="image" src="https://github.com/user-attachments/assets/5bbca701-b319-45ca-9d46-39847c50b6f8" />

Text added

```
WARNING: `x fix` is provided on a best-effort basis and does not support all `cargo fix` options correctly.
```
2026-04-21 16:53:40 +02:00
Nivekithan 440ed80b31 add warning message when using x fix 2026-04-20 18:07:13 +05:30
Jynn Nelson 38debc3949 bootstrap: Make "detected modifications" for download-rustc less verbose 2026-04-20 10:00:13 +02:00
yukang 7439d71a10 rename path_aliases to selectors 2026-04-19 12:53:44 +08:00
Jonathan Brouwer 1336ecba0a Rollup merge of #155262 - DanielEScherzer:bootstrap-duplicate-the, r=Zalathar
bootstrap.py: fix duplicated "the"
2026-04-18 11:41:31 +02:00
bors 2f201bccb3 Auto merge of #155404 - flip1995:clippy-subtree-update, r=Manishearth
Clippy subtree update

r? Manishearth 

`Cargo.lock` update due to Clippy version bump and cargo_metadata dep bump in Clippy.
2026-04-17 23:02:37 +00:00
Stuart Cook 6951f83914 Rollup merge of #155335 - Mark-Simulacrum:bootstrap-bump, r=jieyouxu
Bump bootstrap to 1.96 beta

See https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-tuesday

I think this will wind up needing another PR in a week or so when we pick up assert_matches getting destabilized in beta? But that seems like it can be split into its own PR.
2026-04-17 16:17:52 +10:00
Mark Rousskov a64c420c70 Bump stage0 to 1.96 beta 2026-04-16 19:30:56 -04:00
Philipp Krones eee5e1a8bd Fix Clippy lint in bootstrap 2026-04-16 20:20:52 +02:00
Erick Tryzelaar f52f12501b Add --quiet flag to x.py and bootstrap to suppress output
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.

It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.

This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.

This patch was partially generated with Gemini, but I've reviewed the
changes it made.
2026-04-15 16:46:41 +00:00
Daniel Scherzer 0d2a972a84 bootstrap.py: fix duplicated "the" 2026-04-13 14:52:53 -07:00
Jonathan Brouwer 9f11d53cd3 Rollup merge of #155194 - davidkna:man-version, r=clubby789
Fix manpage version replacement and use verbose version

- Fix a bug where `t!(fs::copy(&page_src, &page_dst))` was called after`fs::write`, silently overwriting the substituted content with the original template (restoring the `<INSERT VERSION HERE>` placeholder verbatim) (Related rust-lang/rust#93685)
- Use `rust_info().version()` instead of the bare version number, so the man page now includes the full version string with commit hash and date
2026-04-13 20:20:08 +02:00
Ayuse 6733ce938f Add --verbose-run-make-subprocess-output flag to suppress run-make output
Add a flag to control verbose subprocess output for run-make tests. When using --no-capture on panic=abort test suites like cg_clif, passing test output can flood the terminal. This flag (default true) lets users opt out via --verbose-run-make-subprocess-output=false.

Extract a private print_command_output helper in run-make-support to avoid inlining the output logic in handle_failed_output, ensuring failures always print regardless of the flag.
2026-04-12 16:25:34 +01:00
David Knaack b26760f10c Fix manpage version replacement and use verbose version 2026-04-12 13:37:16 +02:00
Gary Guo 4c61b30d75 bootstrap: auto-patch libgccjit.so for NixOS
Currently all downloaded rustc and LLVM components are auto patched on
NixOS, but this is not done for libgccjit.so, so when GCC backend is
enabled on NixOS, the build ICEs with errors like this:

    thread 'rustc' (2286205) panicked at compiler/rustc_codegen_gcc/src/lib.rs:191:9:
    Cannot load libgccjit.so: libzstd.so.1: cannot open shared object file: No such file or directory

Fix this by auto-patch libgccjit.so, too. `zstd` is added to the dependency
environment.

Signed-off-by: Gary Guo <gary@garyguo.net>
2026-04-10 15:46:54 +01:00
bors c756124775 Auto merge of #154958 - JonathanBrouwer:rollup-PEahluH, r=JonathanBrouwer
Rollup of 22 pull requests

Successful merges:

 - rust-lang/rust#150965 (Fix no results when searching for == in doc)
 - rust-lang/rust#153999 (Remove `TaggedQueryKey::def_kind`)
 - rust-lang/rust#154146 (Split out the creation of `Cycle` to a new `process_cycle` function)
 - rust-lang/rust#154147 (Do not attempt generating DllImport for extern types)
 - rust-lang/rust#154812 (Update Fira Mono License Information)
 - rust-lang/rust#154880 (bootstrap: minor improvements to download-rustc)
 - rust-lang/rust#154886 (Stabilize check-cfg suggestions for symbol)
 - rust-lang/rust#154889 (Update wasm-component-ld to 0.5.22)
 - rust-lang/rust#154928 (Fix pin docs)
 - rust-lang/rust#154942 (delegation: generate more verbose error delegation)
 - rust-lang/rust#153269 (GCI: During reachability analysis don't try to evaluate the initializer of overly generic free const items)
 - rust-lang/rust#154506 (Migrate some tests from `tests/ui/issues` to appropriate directories)
 - rust-lang/rust#154673 (Use a different name for fast try builds)
 - rust-lang/rust#154761 (coretests: add argument order regression tests for min_by/max_by/minmax_by)
 - rust-lang/rust#154795 (Add more info about where autodiff can be applied)
 - rust-lang/rust#154808 (Post-attribute ports cleanup pt. 1)
 - rust-lang/rust#154825 (constify `Step for NonZero<u*>`)
 - rust-lang/rust#154837 (library: std: motor: use OS' process::exit in abort_internal)
 - rust-lang/rust#154866 (add regression test for rust-lang/rust#146514)
 - rust-lang/rust#154922 (c-b: Export inverse hyperbolic trigonometric functions)
 - rust-lang/rust#154931 (delegation(small cleanup): remove not needed PhantomData)
 - rust-lang/rust#154950 (library: no `cfg(target_arch)` on scalable intrinsics)
2026-04-07 19:43:18 +00:00
bors ad4b935400 Auto merge of #154734 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule



15 commits in 888f675344eb1cf2308fd53183e667bdd2c58e51..a357df4c26fc14514e66aae2a269456b5545c7db
2026-03-30 16:59:25 +0000 to 2026-04-03 16:47:15 +0000
- chore: downgrade to libz-sys@1.1.24 (rust-lang/cargo#16833)
- feat: add frame-pointers profile option (rust-lang/cargo#16742)
- upgrade to gix@0.81.0 (rust-lang/cargo#16828)
- refactor(network): use async for registry network operations (rust-lang/cargo#16745)
- fix(compile): Don't hide hard warnings with build.warnings=allow (rust-lang/cargo#16827)
- chore: Upgrade incompatible dependencies (rust-lang/cargo#16825)
- fix(compile): build.warnings=allow should not hide denied diagnostics (rust-lang/cargo#16824)
- fix(install): Ignore resolver.lockfile-path (rust-lang/cargo#16823)
- chore(deps): update compatible (rust-lang/cargo#16820)
- refactor(compile): Consolidate output options (rust-lang/cargo#16821)
- refactor: Export public dependencies from internal crates (rust-lang/cargo#16819)
- refactor(progress): Make the code more approachable (rust-lang/cargo#16813)
- Simplified build script bin names in new layout (rust-lang/cargo#16812)
- fix: set CARGO env var during rustc -vV probe (rust-lang/cargo#16811)
- Split out `cargo-util-terminal` (rust-lang/cargo#16809)
2026-04-07 16:32:31 +00:00
Jynn Nelson 9b5e085d53 Don't consider bootstrap/defaults to invalidate the rustc cache
Anything that can change there can also be changed in bootstrap.toml.
We have a separate check to make sure that the local config is
compatable with CI's config.
2026-04-07 16:10:43 +02:00
Jynn Nelson e751cb8bd2 bootstrap: Print why if-unchanged isn't downloading rustc
Example output:
```
$ x b compiler
Building bootstrap
    Finished `dev` profile [unoptimized] target(s) in 0.02s
NOTE: detected 3 modifications that could affect a build of rustc
- src/bootstrap/src/core/config/config.rs
- src/bootstrap/src/core/download.rs
- src/build_helper/src/git.rs
skipping rustc download due to `download-rustc = 'if-unchanged'`
Building stage1 compiler artifacts (stage0 -> stage1, aarch64-apple-darwin)
    Finished `release` profile [optimized] target(s) in 0.72s
Creating a sysroot for stage1 compiler (use `rustup toolchain link 'name' build/host/stage1`)
Build completed successfully in 0:00:05
```
2026-04-07 16:10:43 +02:00
Arlo Siemsen 34e410075d fix(bootstrap): also unset MFLAGS when fifo jobserver not present
CI jobs were sometimes hanging because cargo would inherit the jobserver based the MFLAGS
environment variable when it contained file descriptors. However, these FDs were not
valid, since bootstrap.py does not pass them through from make.

This leads cargo's job server to use invalid FDs when setting up the
jobserver.

Bootstrap had a mitigation for this when it came from MAKEFLAGS,
but not when it came from MFLAGS.
2026-04-06 14:30:48 -05:00
Yukang f14ce2a0c7 fix comment for alias
Co-authored-by: 许杰友 Jieyou Xu (Joe) <39484203+jieyouxu@users.noreply.github.com>
2026-04-05 18:19:51 +08:00
Jonathan Brouwer 6179c56144 Rollup merge of #154555 - jdonszelmann:specific-filters, r=clubby789,jieyouxu
Make sure we run the full suite, even when more specific filters are given

Some test suite's filter code took this into account, while others didn't.
Imagine this:

```
x test tests/ui/sometest.rs tests/ui
```

This would run only `tests/ui/sometest.rs` since we filtered out `tests/ui` since it matches the name of the test suite.
The reason `x test tests/ui` on its own works, is that if compiletest gets no filter paths, only a suite, it runs the entire suite.
What I've implemented here is that when you pass the suite path, we effectively ignore specific filters and just run the entire suite since that'll include the more specific paths too. This was the case for a few other suites as well, like rustdocjs, but others actually handle this correctly (like clippy, which my code does edit but for which the behavior doesn't change).

Hope this makes sense!
2026-04-05 10:05:18 +02:00
Jynn Nelson 91e4524d9a bootstrap: Include shorthand aliases in x completions
Previously, `x d --<tab>` wouldn't show any options.
2026-04-04 06:05:59 +02:00
Jana Dönszelmann d5caaa1cf6 Make sure we run the full suite, even when more specific filters are
given
2026-04-02 11:00:31 +02:00
Ralf Jung b3c0059ef4 ./x run miri: default to edition 2021 2026-03-31 11:23:44 +02:00
yukang c528cca785 Fix alias path for rustdoc 2026-03-30 11:40:03 +08:00
Jonathan Brouwer 0d7708d25f Rollup merge of #154508 - Mark-Simulacrum:fix-ambiguous-parse, r=jieyouxu
Fix ambiguous parsing in bootstrap.py

Noticed this while trying to produce rustdoc-json for std and saw JSON output from the bootstrap.py build of bootstrap's Rust code. This is technically a breaking change, but I think the fix should be simple and arguably an improvement in future compatibility if/when the flag set changes.
2026-03-29 21:39:30 +02:00
Mark Rousskov 024acdd4b6 Fix ambiguous parsing in bootstrap.py 2026-03-28 11:10:08 -04:00
bors 79531c53de Auto merge of #154489 - Zalathar:rollup-wBQK8Wt, r=Zalathar
Rollup of 9 pull requests

Successful merges:

 - rust-lang/rust#154357 (uefi: extend comment for TcpStream Send impl)
 - rust-lang/rust#154410 (Clean up the API for opening/checking incremental-compilation files )
 - rust-lang/rust#154081 (format safety doc of Rc/Arc::from_raw/from_raw_in)
 - rust-lang/rust#154110 (Change "error finalizing incremental compilation" text and emit it as a note, not a warning)
 - rust-lang/rust#154196 (Make `Ipv6Addr::multicast_scope()` exhaustive)
 - rust-lang/rust#154221 (`vec::as_mut_slice()`: use lowercase "isize" in safety comment)
 - rust-lang/rust#154234 (Use common Timestamp impl in Hermit (attempt 2))
 - rust-lang/rust#154396 (chore(deps): update rust crate tar to v0.4.45)
 - rust-lang/rust#154488 (Revert "Unstable book options parser")
2026-03-28 07:35:44 +00:00
Manuel Drehwald 0d3d1ac9b3 bootstrap: force a CI LLVM stamp bump 2026-03-28 05:11:48 +01:00
Stuart Cook 624c3c010e Rollup merge of #154396 - xtqqczze:deps/tar, r=clubby789
chore(deps): update rust crate tar to v0.4.45

Fix [RUSTSEC-2026-0068](https://rustsec.org/advisories/RUSTSEC-2026-0068.html): tar-rs incorrectly ignores PAX size headers if header size is nonzero
Fix [RUSTSEC-2026-0067](https://rustsec.org/advisories/RUSTSEC-2026-0067.html): `unpack_in` can chmod arbitrary directories by following symlinks
2026-03-28 15:01:40 +11:00
León Orell Valerian Liehr e8994eaa73 Rollup merge of #154428 - davidtwco:json-target-spec-synthetic-targets, r=jieyouxu
bootstrap: `-Zjson-target-spec` for synthetic targets

Fixes rust-lang/rust#154340

Synthetic targets for mir-opt tests build a standard library using a `.json` target, which now requires `-Zjson-target-spec`

r? @jieyouxu
2026-03-27 15:11:57 +01:00
xtqqczze afe3ab6ac5 chore(deps): update rust crate tar to v0.4.45 2026-03-27 13:36:27 +00:00
Manuel Drehwald fc5a7077ca bootstrap: force a CI LLVM stamp bump 2026-03-26 20:55:11 +01:00