mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 07:14:28 +00:00
Don't generate more docs than necessary
This commit is contained in:
parent
fe62c6e295
commit
b9b67b7d5b
@ -451,6 +451,22 @@ impl Step for Std {
|
||||
|
||||
builder.run(&mut cargo.into());
|
||||
};
|
||||
|
||||
let paths = builder
|
||||
.paths
|
||||
.iter()
|
||||
.map(components_simplified)
|
||||
.filter_map(|path| {
|
||||
if path.get(0) == Some(&"library") {
|
||||
Some(path[1].to_owned())
|
||||
} else if !path.is_empty() {
|
||||
Some(path[0].to_owned())
|
||||
} else {
|
||||
None
|
||||
}
|
||||
})
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
// Only build the following crates. While we could just iterate over the
|
||||
// folder structure, that would also build internal crates that we do
|
||||
// not want to show in documentation. These crates will later be visited
|
||||
@ -464,20 +480,17 @@ impl Step for Std {
|
||||
let krates = ["core", "alloc", "std", "proc_macro", "test"];
|
||||
for krate in &krates {
|
||||
run_cargo_rustdoc_for(krate);
|
||||
if paths.iter().any(|p| p == krate) {
|
||||
// No need to document more of the libraries if we have the one we want.
|
||||
break;
|
||||
}
|
||||
}
|
||||
builder.cp_r(&out_dir, &out);
|
||||
|
||||
// Look for library/std, library/core etc in the `x.py doc` arguments and
|
||||
// open the corresponding rendered docs.
|
||||
for path in builder.paths.iter().map(components_simplified) {
|
||||
let requested_crate = if path.get(0) == Some(&"library") {
|
||||
&path[1]
|
||||
} else if !path.is_empty() {
|
||||
&path[0]
|
||||
} else {
|
||||
continue;
|
||||
};
|
||||
if krates.contains(&requested_crate) {
|
||||
for requested_crate in paths {
|
||||
if krates.iter().any(|k| *k == requested_crate.as_str()) {
|
||||
let index = out.join(requested_crate).join("index.html");
|
||||
open(builder, &index);
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ ENV SCRIPT python3 ../x.py --stage 2 test src/tools/expand-yaml-anchors && \
|
||||
python3 ../x.py build --stage 0 src/tools/build-manifest && \
|
||||
python3 ../x.py test --stage 0 src/tools/compiletest && \
|
||||
python3 ../x.py test --stage 2 src/tools/tidy && \
|
||||
python3 ../x.py doc --stage 0 library/std && \
|
||||
python3 ../x.py doc --stage 0 library/test && \
|
||||
/scripts/validate-toolstate.sh && \
|
||||
# Runs checks to ensure that there are no ES5 issues in our JS code.
|
||||
es-check es5 ../src/librustdoc/html/static/*.js
|
||||
|
Loading…
Reference in New Issue
Block a user