未验证 提交 e37e81ca 编写于 作者: M Mazdak Farrokhzad 提交者: GitHub

Rollup merge of #69494 - GuillaumeGomez:stabilize-crate-version, r=ehuss,aleksator,ollie27

Stabilize --crate-version option in rustdoc

I don't see any reason to not stabilize it anymore, so let's go!

cc @kinnison @ehuss

r? @ollie27
......@@ -52,12 +52,7 @@ fn main() {
// Bootstrap's Cargo-command builder sets this variable to the current Rust version; let's pick
// it up so we can make rustdoc print this into the docs
if let Some(version) = env::var_os("RUSTDOC_CRATE_VERSION") {
// This "unstable-options" can be removed when `--crate-version` is stabilized
if !has_unstable {
cmd.arg("-Z").arg("unstable-options");
}
cmd.arg("--crate-version").arg(version);
has_unstable = true;
}
// Needed to be able to run all rustdoc tests.
......
......@@ -313,6 +313,9 @@ fn run(self, builder: &Builder<'_>) {
}
let mut cmd = builder.rustdoc_cmd(compiler);
// Needed for --index-page flag
cmd.arg("-Z").arg("unstable-options");
cmd.arg("--html-after-content")
.arg(&footer)
.arg("--html-before-content")
......@@ -395,7 +398,7 @@ fn run(self, builder: &Builder<'_>) {
// Keep a whitelist so we do not build internal stdlib crates, these will be
// build by the rustc step later if enabled.
cargo.arg("-Z").arg("unstable-options").arg("-p").arg(package);
cargo.arg("-p").arg(package);
// Create all crate output directories first to make sure rustdoc uses
// relative links.
// FIXME: Cargo should probably do this itself.
......@@ -406,6 +409,8 @@ fn run(self, builder: &Builder<'_>) {
.arg("rust.css")
.arg("--markdown-no-toc")
.arg("--generate-redirect-pages")
.arg("-Z")
.arg("unstable-options")
.arg("--resource-suffix")
.arg(crate::channel::CFG_RELEASE_NUM)
.arg("--index-page")
......
......@@ -390,3 +390,15 @@ the same CSS rules as the official `light` theme.
`--check-theme` is a separate mode in `rustdoc`. When `rustdoc` sees the
`--check-theme` flag, it discards all other flags and only performs the CSS rule
comparison operation.
### `--crate-version`: control the crate version
Using this flag looks like this:
```bash
$ rustdoc src/lib.rs --crate-version 1.3.37
```
When `rustdoc` receives this flag, it will print an extra "Version (version)" into the sidebar of
the crate root's docs. You can use this flag to differentiate between different versions of your
library's documentation.
......@@ -248,18 +248,6 @@ Markdown file, the URL given to `--markdown-playground-url` will take precedence
`--playground-url` and `#![doc(html_playground_url = "url")]` are present when rendering crate docs,
the attribute will take precedence.
### `--crate-version`: control the crate version
Using this flag looks like this:
```bash
$ rustdoc src/lib.rs -Z unstable-options --crate-version 1.3.37
```
When `rustdoc` receives this flag, it will print an extra "Version (version)" into the sidebar of
the crate root's docs. You can use this flag to differentiate between different versions of your
library's documentation.
### `--sort-modules-by-appearance`: control how items on module pages are sorted
Using this flag looks like this:
......
......@@ -267,7 +267,7 @@ fn opts() -> Vec<RustcOptGroup> {
unstable("display-warnings", |o| {
o.optflag("", "display-warnings", "to print code warnings when testing doc")
}),
unstable("crate-version", |o| {
stable("crate-version", |o| {
o.optopt("", "crate-version", "crate version to print into documentation", "VERSION")
}),
unstable("sort-modules-by-appearance", |o| {
......
// compile-flags: --crate-version=1.3.37 -Z unstable-options
// compile-flags: --crate-version=1.3.37
// @has 'crate_version/index.html' '//div[@class="block version"]/p' 'Version 1.3.37'
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册