Skip to content

Comments

bootstrap: Ensure documentation is built before tarball is created#150845

Open
alistair23 wants to merge 1 commit intorust-lang:mainfrom
alistair23:alistair/doc-build-fixup
Open

bootstrap: Ensure documentation is built before tarball is created#150845
alistair23 wants to merge 1 commit intorust-lang:mainfrom
alistair23:alistair/doc-build-fixup

Conversation

@alistair23
Copy link
Contributor

run_default_doc_steps() is called to ensure the documentation is built by Docs::run() and it should build the documentation if it isn't already built.

When running the install src command I'm seeing failures as the builder.doc_out(host) directory does not exist. This is because match_paths_to_steps_and_run() doesn't actually build any documentation as the paths.is_empty() causes an early return. This results in install failures as the */doc src directory doesn't exist.

This patch passes the paths to run_step_descriptions() when building documentation to ensure it is correctly built.

This fixes installing the Rust source code in OpenEmbedded.

@rustbot rustbot added 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) labels Jan 8, 2026
@rustbot
Copy link
Collaborator

rustbot commented Jan 8, 2026

r? @Zalathar

rustbot has assigned @Zalathar.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rust-log-analyzer

This comment has been minimized.

`run_default_doc_steps()` is called to ensure the documentation is built
by `Docs::run()` and it should build the documentation if it isn't
already built.

When running the `install src` command I'm seeing failures as the
`builder.doc_out(host)` directory does not exist. This is because
`match_paths_to_steps_and_run()` doesn't actually build any
documentation as the `paths.is_empty()` causes an early return. This
results in install failures as the `*/doc` src directory doesn't exist.

This patch passes the paths to `run_host_step_descriptions()` when building
documentation to ensure it is correctly built.

This fixes installing the Rust source code in OpenEmbedded.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
@alistair23 alistair23 force-pushed the alistair/doc-build-fixup branch from e2ed364 to 2e89bf7 Compare January 9, 2026 00:35
@Zalathar
Copy link
Member

Zalathar commented Jan 9, 2026

r? bootstrap

@rustbot rustbot assigned jieyouxu and unassigned Zalathar Jan 9, 2026
@jieyouxu
Copy link
Member

@alistair23 can you say more on:

  • What's the cli invocation you used, and
  • What configuration you had?

I'm trying to see if it's possible to snapshot the doc steps that ./x install src triggers on default.

@alistair23
Copy link
Contributor Author

@alistair23 can you say more on:

* What's the cli invocation you used, and

* What configuration you had?

I'm trying to see if it's possible to snapshot the doc steps that ./x install src triggers on default.

It's part of the OpenEmbedded build system, so it isn't super easy to split out a simple reproducible test case.

It's calling

./x install
./x install src

This is my config.toml

# EXTRA_OECARGO_PATHS
paths = [

]

# Local mirror vendored by bitbake
[source.bitbake]
directory = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/cargo-native/1.92.0/sources/rustc-1.92.0-src/vendor"

[source.crates-io]
replace-with = "bitbake"
local-registry = "/nonexistent"

[http]
# Multiplexing can't be enabled because http2 can't be enabled
# in curl-native without dependency loops
multiplexing = false

# Ignore the hard coded and incorrect path to certificates
cainfo = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/cargo-native/1.92.0/recipe-sysroot-native/etc/ssl/certs/ca-certificates.crt"


# HOST_SYS
[target.x86_64-unknown-linux-gnu]
linker = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/cargo-native/1.92.0/wrapper/target-rust-ccld"

[build]
# Use out of tree build destination to avoid polluting the source tree
target-dir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/cargo-native/1.92.0/build/target"

[term]
progress.when = 'always'
progress.width = 80

@jieyouxu
Copy link
Member

(I meant the bootstrap config, be it bootstrap.toml or env var / bootstrap flags, not the cargo config, should've been more clear)

Comment on lines 83 to +86
// FIXME: explicitly enumerate the steps that should be executed here, and gather their
// documentation, rather than running all default steps and then read their output
// from a shared directory.
builder.run_default_doc_steps();
builder.run_host_default_doc_steps();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @Kobzol (do you remember any more context about the default doc steps here?)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just that we should eventually get rid of this cursed function and explicitly enumerate the Doc steps to run.. 😆

@alistair23
Copy link
Contributor Author

(I meant the bootstrap config, be it bootstrap.toml or env var / bootstrap flags, not the cargo config, should've been more clear)

Whoops, wrong file.

If I copy these out from OE I can bootsrap Rust independently

config.toml

change-id = 116881

[target.x86_64-unknown-linux-gnu]
llvm-config = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr/bin/llvm-config"
cxx = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/wrapper/target-rust-cxx"
cc = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/wrapper/target-rust-cc"
linker = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/wrapper/target-rust-ccld"

[llvm]
static-libstdcpp = false
download-ci-llvm = false

[rust]
rpath = true
remap-debuginfo = true
download-rustc = false
llvm-tools = false
lld = false
use-lld = false
channel = "stable"
optimize = true
verbose-tests = true

[build]
submodules = false
docs = false
rustc = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/rust-snapshot/bin/rustc"
cargo = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/rust-snapshot/bin/cargo"
extended = false
vendor = true
target = ["x86_64-unknown-linux-gnu"]
host = ["x86_64-unknown-linux-gnu"]
build = "x86_64-unknown-linux-gnu"

[install]
prefix = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr"
bindir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr/bin"
libdir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr/lib"
datadir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr/share"
mandir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/usr/share/man"
sysconfdir = "/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/image/var/mnt/scratch/alistair/yocto/oe-master/build/tmp/work/x86_64-linux/rust-native/1.92.0/recipe-sysroot-native/etc"

.cargo/config.toml

[source.crates-io]
replace-with = "vendored-sources"

[source."git+https://github.com/rust-lang/team"]
git = "https://github.com/rust-lang/team"
replace-with = "vendored-sources"

[source.vendored-sources]
directory = "vendor"

But that doesn't reproduce the issue. I'm not clear on what the difference is between the OE build environment and a standalone one which triggers the issue

@jieyouxu
Copy link
Member

That feels a bit surprising, is OE using the same build == host == target setup?

@jyn514
Copy link
Member

jyn514 commented Jan 15, 2026

We saw a failure like this in Ferrocene and the root cause was that we had run x dist —-host=, which disables all Steps that are marked HOST_ONLY = false. Maybe OE did the same?

@jieyouxu
Copy link
Member

Oh, interesting, that isn't a possibility I considered 👀

@jieyouxu
Copy link
Member

jieyouxu commented Jan 18, 2026

But that doesn't reproduce the issue. I'm not clear on what the difference is between the OE build environment and a standalone one which triggers the issue

I would really appreciate a reproducible configuration here, it doesn't need to be minimal. I cannot reproduce this issue locally at all. The change itself feels like the wrong fix to me, because:

I would look into alternative approaches, except, I cannot validate any changes because I cannot reproduce this, at all.

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 18, 2026
@rustbot
Copy link
Collaborator

rustbot commented Jan 18, 2026

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@alistair23
Copy link
Contributor Author

Ok! I can reproduce it now.

$ git show
commit ded5c06cf21d2b93bffd5d884aa6e96934ee4234 (HEAD, tag: 1.92.0, origin/stable)
Merge: 112a4af313b 2f2f518819d
Author: bors <bors@rust-lang.org>
Date:   Mon Dec 8 12:52:32 2025 +0000

    Auto merge of #149758 - BoxyUwU:stable, r=BoxyUwU
    
    [stable] prepare Rust 1.92.0
    
    r? `@ghost`
$ cat config.toml 
change-id = 116881

[llvm]
static-libstdcpp = false
download-ci-llvm = false

[rust]
rpath = true
remap-debuginfo = true
download-rustc = false
llvm-tools = false
lld = false
use-lld = false
channel = "stable"
optimize = true
verbose-tests = true

[build]
submodules = false
docs = false
extended = false
target = ["x86_64-unknown-linux-gnu"]
host = ["x86_64-unknown-linux-gnu"]
build = "x86_64-unknown-linux-gnu"

[install]
prefix = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/usr"
bindir = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/usr/bin"
libdir = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/usr/lib"
datadir = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/usr/share"
mandir = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/usr/share/man"
sysconfdir = "/scratch/alistair/software/tier4/rust-lang/rust/tmp/etc"
$ git status
HEAD detached at 1.92.0
nothing to commit, working tree clean
$ python3 src/bootstrap/bootstrap.py -j 30 install --verbose
...
$ python3 src/bootstrap/bootstrap.py -j 30 install src --verbose
...

thread 'main' (1617571) panicked at src/bootstrap/src/lib.rs:1991:25:
could not read dir "/var/mnt/scratch/alistair/software/tier4/rust-lang/rust/build/x86_64-unknown-linux-gnu/doc": Os { code: 2, kind: NotFound, message: "No such file or directory" }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Traceback (most recent call last):
  File "/var/mnt/scratch/alistair/software/tier4/rust-lang/rust/src/bootstrap/bootstrap.py", line 1431, in <module>
    main()
    ~~~~^^
  File "/var/mnt/scratch/alistair/software/tier4/rust-lang/rust/src/bootstrap/bootstrap.py", line 1410, in main
    bootstrap(args)
    ~~~~~~~~~^^^^^^
  File "/var/mnt/scratch/alistair/software/tier4/rust-lang/rust/src/bootstrap/bootstrap.py", line 1370, in bootstrap
    run(args, env=env, verbose=build.verbose, is_bootstrap=True)
    ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/mnt/scratch/alistair/software/tier4/rust-lang/rust/src/bootstrap/bootstrap.py", line 237, in run
    raise RuntimeError(err)
RuntimeError: failed to run: /var/mnt/scratch/alistair/software/tier4/rust-lang/rust/build/bootstrap/debug/bootstrap -j 30 install src --verbose

@jieyouxu jieyouxu added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 10, 2026
@alistair23
Copy link
Contributor Author

The

[build]
docs = false

seems to be the cause

@jieyouxu
Copy link
Member

jieyouxu commented Feb 19, 2026

@alistair23 in #152840 I'm adding some baseline path filter / step resolution snapshot tests

This current change in this PR changes the step resolutions quite substantially (see below). The step resolutions esp. for install src + build.docs = false doesn't quite look right to me, looks like we're building too much with the changes in this PR versus what I am expecting.

Can you try if something way more minimal like https://github.com/jieyouxu/rust/tree/refs/heads/bootstrap-install-src-no-docs-min-fix is sufficient to get you past the failure?

For context, the bootstrap team does intend to look at the step / path filter resolution situation in more detail, so I'd like to avoid substantial step resolution changes ATM as well.

@rustbot author


Snapshot for ./x install src for build == host == target

$ ./x install src
    9     9 │ [doc] book/second-edition (book) <x86_64-unknown-linux-gnu>
   10    10 │ [doc] book/2018-edition (book) <x86_64-unknown-linux-gnu>
   11    11 │ [build] rustdoc 1 <x86_64-unknown-linux-gnu>
   12    12 │ [doc] rustc 1 <x86_64-unknown-linux-gnu> -> standalone 2 <x86_64-unknown-linux-gnu>
   13       │-[doc] rustc 1 <x86_64-unknown-linux-gnu> -> std 1 <x86_64-unknown-linux-gnu> crates=[alloc,compiler_builtins,core,panic_abort,panic_unwind,proc_macro,rustc-std-workspace-core,std,std_detect,sysroot,test,unwind]
   14    13 │ [build] rustc 1 <x86_64-unknown-linux-gnu> -> rustc 2 <x86_64-unknown-linux-gnu>
         14 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> rustc 2 <x86_64-unknown-linux-gnu>
         15 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Rustdoc 2 <x86_64-unknown-linux-gnu>
         16 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Rustfmt 2 <x86_64-unknown-linux-gnu>
   15    17 │ [build] rustc 1 <x86_64-unknown-linux-gnu> -> error-index 2 <x86_64-unknown-linux-gnu>
   16    18 │ [doc] rustc 1 <x86_64-unknown-linux-gnu> -> error-index 2 <x86_64-unknown-linux-gnu>
   17    19 │ [doc] nomicon (book) <x86_64-unknown-linux-gnu>
   18    20 │ [doc] rustc 1 <x86_64-unknown-linux-gnu> -> reference (book) 2 <x86_64-unknown-linux-gnu>
   19    21 │ [doc] rustdoc (book) <x86_64-unknown-linux-gnu>
   20    22 │ [doc] rust-by-example (book) <x86_64-unknown-linux-gnu>
   21    23 │ [build] rustc 0 <x86_64-unknown-linux-gnu> -> LintDocs 1 <x86_64-unknown-linux-gnu>
   22    24 │ [doc] rustc (book) <x86_64-unknown-linux-gnu>
         25 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Cargo 2 <x86_64-unknown-linux-gnu>
   23    26 │ [doc] cargo (book) <x86_64-unknown-linux-gnu>
         27 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Clippy 2 <x86_64-unknown-linux-gnu>
   24    28 │ [doc] clippy (book) <x86_64-unknown-linux-gnu>
         29 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Miri 2 <x86_64-unknown-linux-gnu>
   25    30 │ [doc] embedded-book (book) <x86_64-unknown-linux-gnu>
   26    31 │ [doc] edition-guide (book) <x86_64-unknown-linux-gnu>
   27    32 │ [doc] style-guide (book) <x86_64-unknown-linux-gnu>
   28       │-[doc] rustc 1 <x86_64-unknown-linux-gnu> -> releases 2 <x86_64-unknown-linux-gnu>
         33 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Tidy 2 <x86_64-unknown-linux-gnu>
         34 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Bootstrap 2 <x86_64-unknown-linux-gnu>
         35 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> RunMakeSupport 2 <x86_64-unknown-linux-gnu>
         36 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> BuildHelper 2 <x86_64-unknown-linux-gnu>
         37 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Compiletest 2 <x86_64-unknown-linux-gnu>
   29    38 │ [build] rustc 0 <x86_64-unknown-linux-gnu> -> RustInstaller 1 <x86_64-unknown-linux-gnu>
   30    39 │ [dist] docs <x86_64-unknown-linux-gnu>
   31    40 │ [dist] src <>

Snapshot for ./x install src + build.docs = false with build == host == target

$ ./x install src --set build.docs=false
    1     1 │ [build] llvm <x86_64-unknown-linux-gnu>
    2     2 │ [build] rustc 0 <x86_64-unknown-linux-gnu> -> rustc 1 <x86_64-unknown-linux-gnu>
          3 │+[build] rustc 0 <x86_64-unknown-linux-gnu> -> UnstableBookGen 1 <x86_64-unknown-linux-gnu>
          4 │+[build] rustc 0 <x86_64-unknown-linux-gnu> -> Rustbook 1 <x86_64-unknown-linux-gnu>
          5 │+[doc] unstable-book (book) <x86_64-unknown-linux-gnu>
          6 │+[build] rustc 1 <x86_64-unknown-linux-gnu> -> std 1 <x86_64-unknown-linux-gnu>
          7 │+[doc] book (book) <x86_64-unknown-linux-gnu>
          8 │+[doc] book/first-edition (book) <x86_64-unknown-linux-gnu>
          9 │+[doc] book/second-edition (book) <x86_64-unknown-linux-gnu>
         10 │+[doc] book/2018-edition (book) <x86_64-unknown-linux-gnu>
         11 │+[build] rustdoc 1 <x86_64-unknown-linux-gnu>
         12 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> standalone 2 <x86_64-unknown-linux-gnu>
         13 │+[build] rustc 1 <x86_64-unknown-linux-gnu> -> rustc 2 <x86_64-unknown-linux-gnu>
         14 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> rustc 2 <x86_64-unknown-linux-gnu>
         15 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Rustdoc 2 <x86_64-unknown-linux-gnu>
         16 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Rustfmt 2 <x86_64-unknown-linux-gnu>
         17 │+[build] rustc 1 <x86_64-unknown-linux-gnu> -> error-index 2 <x86_64-unknown-linux-gnu>
         18 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> error-index 2 <x86_64-unknown-linux-gnu>
         19 │+[doc] nomicon (book) <x86_64-unknown-linux-gnu>
         20 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> reference (book) 2 <x86_64-unknown-linux-gnu>
         21 │+[doc] rustdoc (book) <x86_64-unknown-linux-gnu>
         22 │+[doc] rust-by-example (book) <x86_64-unknown-linux-gnu>
         23 │+[build] rustc 0 <x86_64-unknown-linux-gnu> -> LintDocs 1 <x86_64-unknown-linux-gnu>
         24 │+[doc] rustc (book) <x86_64-unknown-linux-gnu>
         25 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Cargo 2 <x86_64-unknown-linux-gnu>
         26 │+[doc] cargo (book) <x86_64-unknown-linux-gnu>
         27 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Clippy 2 <x86_64-unknown-linux-gnu>
         28 │+[doc] clippy (book) <x86_64-unknown-linux-gnu>
         29 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Miri 2 <x86_64-unknown-linux-gnu>
         30 │+[doc] embedded-book (book) <x86_64-unknown-linux-gnu>
         31 │+[doc] edition-guide (book) <x86_64-unknown-linux-gnu>
         32 │+[doc] style-guide (book) <x86_64-unknown-linux-gnu>
         33 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Tidy 2 <x86_64-unknown-linux-gnu>
         34 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Bootstrap 2 <x86_64-unknown-linux-gnu>
         35 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> RunMakeSupport 2 <x86_64-unknown-linux-gnu>
         36 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> BuildHelper 2 <x86_64-unknown-linux-gnu>
         37 │+[doc] rustc 1 <x86_64-unknown-linux-gnu> -> Compiletest 2 <x86_64-unknown-linux-gnu>
    3    38 │ [build] rustc 0 <x86_64-unknown-linux-gnu> -> RustInstaller 1 <x86_64-unknown-linux-gnu>
    4    39 │ [dist] docs <x86_64-unknown-linux-gnu>
    5    40 │ [dist] src <>

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 19, 2026
jhpratt added a commit to jhpratt/rust that referenced this pull request Feb 20, 2026
…docs, r=clubby789

Add bootstrap snapshot tests for {`install`, `install src`}

And `install src` with `build.docs = false`.

This is mostly to get coverage for the baseline to make it easier to review rust-lang#150845.
jhpratt added a commit to jhpratt/rust that referenced this pull request Feb 20, 2026
…docs, r=clubby789

Add bootstrap snapshot tests for {`install`, `install src`}

And `install src` with `build.docs = false`.

This is mostly to get coverage for the baseline to make it easier to review rust-lang#150845.
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Feb 20, 2026
…docs, r=clubby789

Add bootstrap snapshot tests for {`install`, `install src`}

And `install src` with `build.docs = false`.

This is mostly to get coverage for the baseline to make it easier to review rust-lang#150845.
rust-timer added a commit that referenced this pull request Feb 20, 2026
Rollup merge of #152840 - jieyouxu:bootstrap-install-src-no-docs, r=clubby789

Add bootstrap snapshot tests for {`install`, `install src`}

And `install src` with `build.docs = false`.

This is mostly to get coverage for the baseline to make it easier to review #150845.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants