Add a disable-minification option for rustdoc

This way, you can debug rustdoc's JavaScript and CSS file
with normal F12 Dev Tools and you'll have useful line numbers
to work with.
This commit is contained in:
Michael Howell 2021-03-12 11:41:46 -07:00
parent 215ebc364e
commit fdb3e820b1
3 changed files with 20 additions and 0 deletions

View File

@ -208,6 +208,11 @@ changelog-seen = 2
# documentation.
#docs = true
# Flag to specify whether CSS, JavaScript, and HTML are minified when
# docs are generated. JSON is always minified, because it's enormous,
# and generated in already-minified form from the beginning.
#docs-minification = true
# Indicate whether the compiler should be documented in addition to the standard
# library and facade crates.
#compiler-docs = false

View File

@ -51,6 +51,7 @@ pub struct Config {
pub submodules: bool,
pub fast_submodules: bool,
pub compiler_docs: bool,
pub docs_minification: bool,
pub docs: bool,
pub locked_deps: bool,
pub vendor: bool,
@ -362,6 +363,7 @@ struct Build {
rustfmt: Option<PathBuf>,
docs: Option<bool>,
compiler_docs: Option<bool>,
docs_minification: Option<bool>,
submodules: Option<bool>,
fast_submodules: Option<bool>,
gdb: Option<String>,
@ -663,6 +665,7 @@ impl Config {
config.python = build.python.map(PathBuf::from);
set(&mut config.low_priority, build.low_priority);
set(&mut config.compiler_docs, build.compiler_docs);
set(&mut config.docs_minification, build.docs_minification);
set(&mut config.docs, build.docs);
set(&mut config.submodules, build.submodules);
set(&mut config.fast_submodules, build.fast_submodules);

View File

@ -270,6 +270,10 @@ fn invoke_rustdoc(
.arg("--markdown-css")
.arg("../rust.css");
if !builder.config.docs_minification {
cmd.arg("-Z").arg("unstable-options").arg("--disable-minification");
}
builder.run(&mut cmd);
}
@ -365,6 +369,10 @@ impl Step for Standalone {
.arg(&out)
.arg(&path);
if !builder.config.docs_minification {
cmd.arg("--disable-minification");
}
if filename == "not_found.md" {
cmd.arg("--markdown-css").arg("https://doc.rust-lang.org/rust.css");
} else {
@ -437,6 +445,10 @@ impl Step for Std {
.arg("--index-page")
.arg(&builder.src.join("src/doc/index.md"));
if !builder.config.docs_minification {
cargo.arg("--disable-minification");
}
builder.run(&mut cargo.into());
};
// Only build the following crates. While we could just iterate over the