diff --git a/src/cargo/util/command_prelude.rs b/src/cargo/util/command_prelude.rs
index fa1d18c3e3c..635a2b17552 100644
--- a/src/cargo/util/command_prelude.rs
+++ b/src/cargo/util/command_prelude.rs
@@ -239,7 +239,7 @@ pub trait AppExt: Sized {
self._arg(
optional_opt(
"timings",
- "Timing output formats (comma separated): html, json (unstable)",
+ "Timing output formats (unstable) (comma separated): html, json",
)
.value_name("FMTS")
.require_equals(true),
@@ -516,7 +516,12 @@ pub trait ArgMatchesExt {
for timing_output in timing_output.split(',') {
let timing_output = timing_output.to_ascii_lowercase();
let timing_output = match timing_output.as_str() {
- "html" => TimingOutput::Html,
+ "html" => {
+ config
+ .cli_unstable()
+ .fail_if_stable_opt("--timings=html", 7405)?;
+ TimingOutput::Html
+ }
"json" => {
config
.cli_unstable()
diff --git a/src/doc/man/generated_txt/cargo-bench.txt b/src/doc/man/generated_txt/cargo-bench.txt
index 2bd02a6c623..d3de4625dbb 100644
--- a/src/doc/man/generated_txt/cargo-bench.txt
+++ b/src/doc/man/generated_txt/cargo-bench.txt
@@ -223,7 +223,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-build.txt b/src/doc/man/generated_txt/cargo-build.txt
index a2f61481116..8735155804c 100644
--- a/src/doc/man/generated_txt/cargo-build.txt
+++ b/src/doc/man/generated_txt/cargo-build.txt
@@ -160,7 +160,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-check.txt b/src/doc/man/generated_txt/cargo-check.txt
index de04a2bdccb..d9139d4aafe 100644
--- a/src/doc/man/generated_txt/cargo-check.txt
+++ b/src/doc/man/generated_txt/cargo-check.txt
@@ -173,7 +173,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-doc.txt b/src/doc/man/generated_txt/cargo-doc.txt
index 8cf2cdb48bb..141952f1ca0 100644
--- a/src/doc/man/generated_txt/cargo-doc.txt
+++ b/src/doc/man/generated_txt/cargo-doc.txt
@@ -144,7 +144,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-fix.txt b/src/doc/man/generated_txt/cargo-fix.txt
index 06d5c16471a..36136c903fc 100644
--- a/src/doc/man/generated_txt/cargo-fix.txt
+++ b/src/doc/man/generated_txt/cargo-fix.txt
@@ -246,7 +246,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-install.txt b/src/doc/man/generated_txt/cargo-install.txt
index 14ac8b67ebe..4482c239e5b 100644
--- a/src/doc/man/generated_txt/cargo-install.txt
+++ b/src/doc/man/generated_txt/cargo-install.txt
@@ -209,7 +209,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-run.txt b/src/doc/man/generated_txt/cargo-run.txt
index 180f913f803..42f23f96181 100644
--- a/src/doc/man/generated_txt/cargo-run.txt
+++ b/src/doc/man/generated_txt/cargo-run.txt
@@ -89,7 +89,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-rustc.txt b/src/doc/man/generated_txt/cargo-rustc.txt
index 0a6df2c28e5..282adfbdedb 100644
--- a/src/doc/man/generated_txt/cargo-rustc.txt
+++ b/src/doc/man/generated_txt/cargo-rustc.txt
@@ -168,7 +168,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-rustdoc.txt b/src/doc/man/generated_txt/cargo-rustdoc.txt
index 14e08cc0f96..7a73fe8d7b5 100644
--- a/src/doc/man/generated_txt/cargo-rustdoc.txt
+++ b/src/doc/man/generated_txt/cargo-rustdoc.txt
@@ -160,7 +160,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/generated_txt/cargo-test.txt b/src/doc/man/generated_txt/cargo-test.txt
index c77d1d29985..721e7ee7bf2 100644
--- a/src/doc/man/generated_txt/cargo-test.txt
+++ b/src/doc/man/generated_txt/cargo-test.txt
@@ -237,7 +237,9 @@ OPTIONS
Output information how long each compilation takes, and track
concurrency information over time. Accepts an optional
comma-separated list of output formats; --timing without an argument
- will default to --timing=html. Valid output formats:
+ will default to --timing=html. Specifying an output format (rather
+ than the default) is unstable and requires -Zunstable-options. Valid
+ output formats:
o html: Write a human-readable file cargo-timing.html to the
target/cargo-timings directory with a report of the compilation.
diff --git a/src/doc/man/includes/options-timings.md b/src/doc/man/includes/options-timings.md
index 829581067f2..f04ab3c0c39 100644
--- a/src/doc/man/includes/options-timings.md
+++ b/src/doc/man/includes/options-timings.md
@@ -1,8 +1,9 @@
{{#option "`--timings=`_fmts_"}}
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma-separated list of output
-formats; `--timing` without an argument will default to `--timing=html`. Valid
-output formats:
+formats; `--timing` without an argument will default to `--timing=html`.
+Specifying an output format (rather than the default) is unstable and requires
+`-Zunstable-options`. Valid output formats:
- `html`: Write a human-readable file `cargo-timing.html` to the
`target/cargo-timings` directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-bench.md b/src/doc/src/commands/cargo-bench.md
index c7a7a445cfd..4ef92e37465 100644
--- a/src/doc/src/commands/cargo-bench.md
+++ b/src/doc/src/commands/cargo-bench.md
@@ -268,8 +268,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-build.md b/src/doc/src/commands/cargo-build.md
index fb86806a066..12805d03fae 100644
--- a/src/doc/src/commands/cargo-build.md
+++ b/src/doc/src/commands/cargo-build.md
@@ -203,8 +203,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-check.md b/src/doc/src/commands/cargo-check.md
index f2b8311c02a..1645ed3da41 100644
--- a/src/doc/src/commands/cargo-check.md
+++ b/src/doc/src/commands/cargo-check.md
@@ -212,8 +212,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-doc.md b/src/doc/src/commands/cargo-doc.md
index 7629a052620..ddcba30904c 100644
--- a/src/doc/src/commands/cargo-doc.md
+++ b/src/doc/src/commands/cargo-doc.md
@@ -186,8 +186,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-fix.md b/src/doc/src/commands/cargo-fix.md
index 1e5c603ca8e..2d9cbc1ec5a 100644
--- a/src/doc/src/commands/cargo-fix.md
+++ b/src/doc/src/commands/cargo-fix.md
@@ -292,8 +292,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-install.md b/src/doc/src/commands/cargo-install.md
index 125eb39ecdd..3baf93a7f67 100644
--- a/src/doc/src/commands/cargo-install.md
+++ b/src/doc/src/commands/cargo-install.md
@@ -239,8 +239,9 @@ See the the reference for more details
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-run.md b/src/doc/src/commands/cargo-run.md
index 97882e1849f..4117192de4a 100644
--- a/src/doc/src/commands/cargo-run.md
+++ b/src/doc/src/commands/cargo-run.md
@@ -121,8 +121,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-rustc.md b/src/doc/src/commands/cargo-rustc.md
index cf62cbfd6eb..71bec66517b 100644
--- a/src/doc/src/commands/cargo-rustc.md
+++ b/src/doc/src/commands/cargo-rustc.md
@@ -200,8 +200,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-rustdoc.md b/src/doc/src/commands/cargo-rustdoc.md
index 61a3d5917b6..76119a7c606 100644
--- a/src/doc/src/commands/cargo-rustdoc.md
+++ b/src/doc/src/commands/cargo-rustdoc.md
@@ -205,8 +205,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/commands/cargo-test.md b/src/doc/src/commands/cargo-test.md
index fd16038c72c..7828943a697 100644
--- a/src/doc/src/commands/cargo-test.md
+++ b/src/doc/src/commands/cargo-test.md
@@ -284,8 +284,9 @@ required Rust version as configured in the project's rust-version
f
--timings=
fmts--timing
without an argument will default to --timing=html
. Valid
-output formats:
+formats; --timing
without an argument will default to --timing=html
.
+Specifying an output format (rather than the default) is unstable and requires
+-Zunstable-options
. Valid output formats:
html
: Write a human-readable file cargo-timing.html
to the
target/cargo-timings
directory with a report of the compilation. Also write
diff --git a/src/doc/src/reference/unstable.md b/src/doc/src/reference/unstable.md
index bf0260cdca2..efecbc75633 100644
--- a/src/doc/src/reference/unstable.md
+++ b/src/doc/src/reference/unstable.md
@@ -1297,5 +1297,5 @@ See the [Features chapter](features.md#dependency-features) for more information
### timings
The `-Ztimings` option has been stabilized as `--timings` in the 1.60 release.
-(The machine-readable `--timings=json` output remains unstable and requires
-`-Zunstable-options`.)
+(`--timings=html` and the machine-readable `--timings=json` output remain
+unstable and require `-Zunstable-options`.)
diff --git a/src/etc/man/cargo-bench.1 b/src/etc/man/cargo-bench.1
index def5ef71de5..7d6e38435f9 100644
--- a/src/etc/man/cargo-bench.1
+++ b/src/etc/man/cargo-bench.1
@@ -273,8 +273,9 @@ required Rust version as configured in the project's \fBrust\-version\fR field.
.RS 4
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma\-separated list of output
-formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&. Valid
-output formats:
+formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&.
+Specifying an output format (rather than the default) is unstable and requires
+\fB\-Zunstable\-options\fR\&. Valid output formats:
.sp
.RS 4
\h'-04'\(bu\h'+02'\fBhtml\fR: Write a human\-readable file \fBcargo\-timing.html\fR to the
diff --git a/src/etc/man/cargo-build.1 b/src/etc/man/cargo-build.1
index 336c806d773..aac58a1592d 100644
--- a/src/etc/man/cargo-build.1
+++ b/src/etc/man/cargo-build.1
@@ -192,8 +192,9 @@ required Rust version as configured in the project's \fBrust\-version\fR field.
.RS 4
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma\-separated list of output
-formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&. Valid
-output formats:
+formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&.
+Specifying an output format (rather than the default) is unstable and requires
+\fB\-Zunstable\-options\fR\&. Valid output formats:
.sp
.RS 4
\h'-04'\(bu\h'+02'\fBhtml\fR: Write a human\-readable file \fBcargo\-timing.html\fR to the
diff --git a/src/etc/man/cargo-check.1 b/src/etc/man/cargo-check.1
index 44987a56be3..0c740814d2a 100644
--- a/src/etc/man/cargo-check.1
+++ b/src/etc/man/cargo-check.1
@@ -203,8 +203,9 @@ required Rust version as configured in the project's \fBrust\-version\fR field.
.RS 4
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma\-separated list of output
-formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&. Valid
-output formats:
+formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&.
+Specifying an output format (rather than the default) is unstable and requires
+\fB\-Zunstable\-options\fR\&. Valid output formats:
.sp
.RS 4
\h'-04'\(bu\h'+02'\fBhtml\fR: Write a human\-readable file \fBcargo\-timing.html\fR to the
diff --git a/src/etc/man/cargo-doc.1 b/src/etc/man/cargo-doc.1
index 0292cf50f60..4a7e11e429c 100644
--- a/src/etc/man/cargo-doc.1
+++ b/src/etc/man/cargo-doc.1
@@ -170,8 +170,9 @@ required Rust version as configured in the project's \fBrust\-version\fR field.
.RS 4
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma\-separated list of output
-formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&. Valid
-output formats:
+formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&.
+Specifying an output format (rather than the default) is unstable and requires
+\fB\-Zunstable\-options\fR\&. Valid output formats:
.sp
.RS 4
\h'-04'\(bu\h'+02'\fBhtml\fR: Write a human\-readable file \fBcargo\-timing.html\fR to the
diff --git a/src/etc/man/cargo-fix.1 b/src/etc/man/cargo-fix.1
index 7b9102cd24a..b84eb0a771e 100644
--- a/src/etc/man/cargo-fix.1
+++ b/src/etc/man/cargo-fix.1
@@ -298,8 +298,9 @@ required Rust version as configured in the project's \fBrust\-version\fR field.
.RS 4
Output information how long each compilation takes, and track concurrency
information over time. Accepts an optional comma\-separated list of output
-formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&. Valid
-output formats:
+formats; \fB\-\-timing\fR without an argument will default to \fB\-\-timing=html\fR\&.
+Specifying an output format (rather than the default) is unstable and requires
+\fB\-Zunstable\-options\fR\&. Valid output formats:
.sp
.RS 4
\h'-04'\(bu\h'+02'\fBhtml\fR: Write a human\-readable file \fBcargo\-timing.html\fR to the
diff --git a/src/etc/man/cargo-install.1 b/src/etc/man/cargo-install.1
index 765e15a86e4..c5d133c916b 100644
--- a/src/etc/man/cargo-install.1
+++ b/src/etc/man/cargo-install.1
@@ -271,8 +271,9 @@ See the \fIthe reference\fR