<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/bootstrap, branch 1.89.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.89.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.89.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-07-10T20:30:37+00:00</updated>
<entry>
<title>Disable docs for `compiler-builtins` and `sysroot`</title>
<updated>2025-07-10T20:30:37+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2025-07-08T23:38:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9dcc1d457df9ecc2481556423c51990c2890e372'/>
<id>urn:sha1:9dcc1d457df9ecc2481556423c51990c2890e372</id>
<content type='text'>
Bootstrap already had a manual doc filter for the `sysroot` crate, but
other library crates keep themselves out of the public docs by setting
`[lib] doc = false` in their manifest. This seems like a better solution
to hide `compiler-builtins` docs, and removes the `sysroot` hack too.

(cherry picked from commit 87e7539fcdfa45b2aab618c044f888432c5d097d)
</content>
</entry>
<entry>
<title>Fix hang in --print=file-names in bootstrap</title>
<updated>2025-07-10T20:30:37+00:00</updated>
<author>
<name>Noratrieb</name>
<email>48135649+Noratrieb@users.noreply.github.com</email>
</author>
<published>2025-06-23T19:01:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cd3bc5f08239a30169e6b5e2e89f4dc88aa26db2'/>
<id>urn:sha1:cd3bc5f08239a30169e6b5e2e89f4dc88aa26db2</id>
<content type='text'>
In an interactive context, the subprocess inherited a real tty stdin,
which lead it it waiting for something to happen, even though nothing
happened. By explicitly passing null as stdin we make sure an empty file
is passed, which achieves the desired behavior.

(cherry picked from commit 3003050d473abd13d56c7e7966b971bd7443194f)
</content>
</entry>
<entry>
<title>Rollup merge of #142868 - klensy:dc, r=oli-obk</title>
<updated>2025-06-22T15:35:36+00:00</updated>
<author>
<name>Guillaume Gomez</name>
<email>guillaume1.gomez@gmail.com</email>
</author>
<published>2025-06-22T15:35:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f1fa46d3ba5322cc49c0eadf4afb0844998ca7db'/>
<id>urn:sha1:f1fa46d3ba5322cc49c0eadf4afb0844998ca7db</id>
<content type='text'>
remove few allow(dead_code)

Few from serial/parallel compiler leftovers and few from bootstrap.
</content>
</entry>
<entry>
<title>remove few from bootstrap too</title>
<updated>2025-06-22T10:24:05+00:00</updated>
<author>
<name>klensy</name>
<email>klensy@users.noreply.github.com</email>
</author>
<published>2025-06-22T10:24:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d092dc9381bd6f09017c4b09777df4537999b952'/>
<id>urn:sha1:d092dc9381bd6f09017c4b09777df4537999b952</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #140254 - bjorn3:rustc_panic_abort_abort, r=petrochenkov</title>
<updated>2025-06-22T06:49:03+00:00</updated>
<author>
<name>Jacob Pratt</name>
<email>jacob@jhpratt.dev</email>
</author>
<published>2025-06-22T06:49:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=aef8a76ce0a7f779e9b89c6fd46335280878a079'/>
<id>urn:sha1:aef8a76ce0a7f779e9b89c6fd46335280878a079</id>
<content type='text'>
Pass -Cpanic=abort for the panic_abort crate

The panic_abort crate must be compiled with panic=abort, but cargo doesn't allow setting the panic strategy for a single crate the usual way using `panic="abort"`, but luckily per-package rustflags do allow this. Bootstrap previously handled this in its rustc wrapper, but for example the build systems of cg_clif and cg_gcc don't use the rustc wrapper, so they would either need to add one, patch the standard library or be unable to build a sysroot suitable for both panic=abort and panic=unwind (as is currently the case).

Required for https://github.com/rust-lang/rustc_codegen_cranelift/issues/1567
</content>
</entry>
<entry>
<title>Rollup merge of #142758 - jieyouxu:rustdoc-json-types, r=Kobzol</title>
<updated>2025-06-20T18:03:23+00:00</updated>
<author>
<name>Jakub Beránek</name>
<email>berykubik@gmail.com</email>
</author>
<published>2025-06-20T18:03:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=64a7fcf26ec6bf4e0629f44ed74fb9fbd5ffe95b'/>
<id>urn:sha1:64a7fcf26ec6bf4e0629f44ed74fb9fbd5ffe95b</id>
<content type='text'>
Make sure to rebuild rustdoc if `src/rustdoc-json-types` is changed

I think `rustdoc-json-types` was more recently split out, so this download-rustc logic became outdated as it wasn't tracked. This PR adds `src/rustdoc-json-types` to be tracked for difference versus upstream, so that we properly rebuild rustdoc if it has changes versus upstream.

Fixes rust-lang/rust#142738.

### Local testing

This is not so easy to test locally because it requires download-rustc. To test this, you need to:

1. Disable `download-rustc` inhibition from bootstrap changes versus upstream, by including `:!src/bootstrap` in https://github.com/rust-lang/rust/blob/255aa220821c05c3eac7605fce4ea1c9ab2cbdb4/src/bootstrap/src/core/config/config.rs#L67-L74.
2. Then, use a config like `profile = "tools"` which by default uses `download-rustc = "if-unchanged"`.
3. Run `./x test tests/rustdoc-json` one time, to "prime" initial build caches.
4. Change the `FORMAT_VERSION` in `src/rustdoc-json-types`, i.e.
	```diff
	diff --git a/src/rustdoc-json-types/lib.rs b/src/rustdoc-json-types/lib.rs
	index 1f93895ae07..72a3720c7b4 100644
	--- a/src/rustdoc-json-types/lib.rs
	+++ b/src/rustdoc-json-types/lib.rs
	``@@`` -38,7 +38,7 ``@@``
	 // are deliberately not in a doc comment, because they need not be in public docs.)
	 //
	 // Latest feature: Pretty printing of inline attributes changed
	-pub const FORMAT_VERSION: u32 = 48;
	+pub const FORMAT_VERSION: u32 = 666;
	```
5. Observe that without this patch, `rustdoc-json` tests fail because `FORMAT_VERSION` mismatch. Observe that with this patch, rustdoc gets properly rebuilt and `rustdoc-json` tests pass.

cc ``@aDotInTheVoid``

r? Kobzol
</content>
</entry>
<entry>
<title>Rollup merge of #142629 - Kobzol:bootstrap-tests-builder, r=jieyouxu</title>
<updated>2025-06-20T18:03:20+00:00</updated>
<author>
<name>Jakub Beránek</name>
<email>berykubik@gmail.com</email>
</author>
<published>2025-06-20T18:03:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=7f9c3a3dc678bc01e9c33a6d96cc1ff0979cea72'/>
<id>urn:sha1:7f9c3a3dc678bc01e9c33a6d96cc1ff0979cea72</id>
<content type='text'>
Add config builder for bootstrap tests

I started writing a bunch of snapshot tests for build/check steps, and quickly realized that the current interface for defining them won't be enough, so I created a simple builder, which can scale to pretty much any kind of configuration in the future.
</content>
</entry>
<entry>
<title>Pass -Cpanic=abort for the panic_abort crate</title>
<updated>2025-06-20T12:14:11+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2025-04-24T14:47:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a0badba6eeb4b24dd9748f5e99cec285b473c43b'/>
<id>urn:sha1:a0badba6eeb4b24dd9748f5e99cec285b473c43b</id>
<content type='text'>
The panic_abort crate must be compiled with panic=abort, but cargo
doesn't allow setting the panic strategy for a single crate the usual
way using panic="abort", but luckily per-package rustflags do allow
this. Bootstrap previously handled this in its rustc wrapper, but for
example the build systems of cg_clif and cg_gcc don't use the rustc
wrapper, so they would either need to add one, patch the standard
library or be unable to build a sysroot suitable for both panic=abort
and panic=unwind (as is currently the case).
</content>
</entry>
<entry>
<title>Auto merge of #142770 - tgross35:rollup-w74w39t, r=tgross35</title>
<updated>2025-06-20T09:59:20+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2025-06-20T09:59:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3b97f1308ff72016a4aaa93fbe6d09d4d6427815'/>
<id>urn:sha1:3b97f1308ff72016a4aaa93fbe6d09d4d6427815</id>
<content type='text'>
Rollup of 8 pull requests

Successful merges:

 - rust-lang/rust#138291 (rewrite `optimize` attribute to use new attribute parsing infrastructure)
 - rust-lang/rust#140920 (Extract some shared code from codegen backend target feature handling)
 - rust-lang/rust#141990 (Implement send_signal for unix child processes)
 - rust-lang/rust#142668 (vec_deque/fmt/vec tests: remove static mut)
 - rust-lang/rust#142687 (Reduce uses of `hir_crate`.)
 - rust-lang/rust#142699 (Update books)
 - rust-lang/rust#142714 (add comment to `src/bootstrap/build.rs`)
 - rust-lang/rust#142753 (Update library dependencies)

r? `@ghost`
`@rustbot` modify labels: rollup
</content>
</entry>
<entry>
<title>Auto merge of #142286 - Kobzol:clippy-jemalloc, r=flip1995,blyxyas</title>
<updated>2025-06-20T06:33:35+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2025-06-20T06:33:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=18491d5be00eb3ed2f1ccee2ac5b792694f2a7a0'/>
<id>urn:sha1:18491d5be00eb3ed2f1ccee2ac5b792694f2a7a0</id>
<content type='text'>
Use jemalloc for Clippy

The tool macros are annoying, we should IMO just get rid of them, create separate steps for each tool and (re)use some builders in them to share the build code.

r? `@ghost`
</content>
</entry>
</feed>
