Skip to content

Commit

Permalink
refactor(cli): tweak to align existing style
Browse files Browse the repository at this point in the history
  • Loading branch information
weihanglo committed Jan 9, 2024
1 parent 73a8ba4 commit ea9c75a
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 43 deletions.
6 changes: 3 additions & 3 deletions src/bin/cargo/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -76,20 +76,20 @@ pub fn main(config: &mut LazyConfig) -> CliResult {
.map(|(option_name, option_help_message)| {
let option_name_kebab_case = option_name.replace("_", "-");
format!(
" {literal}-Z {:<longest_option$}{reset} -- {}",
" {literal}-Z {:<longest_option$}{reset} {}",
option_name_kebab_case, option_help_message
)
})
.collect();
let joined = help_lines.join("\n");
drop_println!(
config,
"
"\
{header}Available unstable (nightly-only) flags:{reset}
{}
Run with '{literal}cargo -Z{reset} {placeholder}[FLAG] [COMMAND]{reset}'",
Run with `{literal}cargo -Z{reset} {placeholder}[FLAG] [COMMAND]{reset}`",
joined
);
if !config.nightly_features_allowed {
Expand Down
63 changes: 31 additions & 32 deletions tests/testsuite/cargo/z_help/stdout.log
Original file line number Diff line number Diff line change
@@ -1,37 +1,36 @@

Available unstable (nightly-only) flags:

-Z allow-features -- Allow *only* the listed unstable features
-Z asymmetric-token -- Allows authenticating with asymmetric tokens
-Z avoid-dev-deps -- Avoid installing dev-dependencies if possible
-Z binary-dep-depinfo -- Track changes to dependency artifacts
-Z bindeps -- Allow Cargo packages to depend on bin, cdylib, and staticlib crates, and use the artifacts built by those crates
-Z build-std -- Enable Cargo to compile the standard library itself as part of a crate graph compilation
-Z build-std-features -- Configure features enabled for the standard library itself when building the standard library
-Z check-cfg -- Enable compile-time checking of `cfg` names/values/features
-Z codegen-backend -- Enable the `codegen-backend` option in profiles in .cargo/config.toml file
-Z config-include -- Enable the `include` key in config files
-Z direct-minimal-versions -- Resolve minimal dependency versions instead of maximum (direct dependencies only)
-Z doctest-xcompile -- Compile and run doctests for non-host target using runner config
-Z dual-proc-macros -- Build proc-macros for both the host and the target
-Z gc -- Track cache usage and "garbage collect" unused files
-Z gitoxide -- Use gitoxide for the given git interactions, or all of them if no argument is given
-Z host-config -- Enable the [host] section in the .cargo/config.toml file
-Z lints -- Pass `[lints]` to the linting tools
-Z minimal-versions -- Resolve minimal dependency versions instead of maximum
-Z msrv-policy -- Enable rust-version aware policy within cargo
-Z mtime-on-use -- Configure Cargo to update the mtime of used files
-Z no-index-update -- Do not update the registry index even if the cache is outdated
-Z panic-abort-tests -- Enable support to run tests with -Cpanic=abort
-Z profile-rustflags -- Enable the `rustflags` option in profiles in .cargo/config.toml file
-Z publish-timeout -- Enable the `publish.timeout` key in .cargo/config.toml file
-Z rustdoc-map -- Allow passing external documentation mappings to rustdoc
-Z rustdoc-scrape-examples -- Allows Rustdoc to scrape code examples from reverse-dependencies
-Z script -- Enable support for single-file, `.rs` packages
-Z target-applies-to-host -- Enable the `target-applies-to-host` key in the .cargo/config.toml file
-Z trim-paths -- Enable the `trim-paths` option in profiles
-Z unstable-options -- Allow the usage of unstable options
-Z allow-features Allow *only* the listed unstable features
-Z asymmetric-token Allows authenticating with asymmetric tokens
-Z avoid-dev-deps Avoid installing dev-dependencies if possible
-Z binary-dep-depinfo Track changes to dependency artifacts
-Z bindeps Allow Cargo packages to depend on bin, cdylib, and staticlib crates, and use the artifacts built by those crates
-Z build-std Enable Cargo to compile the standard library itself as part of a crate graph compilation
-Z build-std-features Configure features enabled for the standard library itself when building the standard library
-Z check-cfg Enable compile-time checking of `cfg` names/values/features
-Z codegen-backend Enable the `codegen-backend` option in profiles in .cargo/config.toml file
-Z config-include Enable the `include` key in config files
-Z direct-minimal-versions Resolve minimal dependency versions instead of maximum (direct dependencies only)
-Z doctest-xcompile Compile and run doctests for non-host target using runner config
-Z dual-proc-macros Build proc-macros for both the host and the target
-Z gc Track cache usage and "garbage collect" unused files
-Z gitoxide Use gitoxide for the given git interactions, or all of them if no argument is given
-Z host-config Enable the [host] section in the .cargo/config.toml file
-Z lints Pass `[lints]` to the linting tools
-Z minimal-versions Resolve minimal dependency versions instead of maximum
-Z msrv-policy Enable rust-version aware policy within cargo
-Z mtime-on-use Configure Cargo to update the mtime of used files
-Z no-index-update Do not update the registry index even if the cache is outdated
-Z panic-abort-tests Enable support to run tests with -Cpanic=abort
-Z profile-rustflags Enable the `rustflags` option in profiles in .cargo/config.toml file
-Z publish-timeout Enable the `publish.timeout` key in .cargo/config.toml file
-Z rustdoc-map Allow passing external documentation mappings to rustdoc
-Z rustdoc-scrape-examples Allows Rustdoc to scrape code examples from reverse-dependencies
-Z script Enable support for single-file, `.rs` packages
-Z target-applies-to-host Enable the `target-applies-to-host` key in the .cargo/config.toml file
-Z trim-paths Enable the `trim-paths` option in profiles
-Z unstable-options Allow the usage of unstable options

Run with 'cargo -Z [FLAG] [COMMAND]'
Run with `cargo -Z [FLAG] [COMMAND]`

See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html for more information about these flags.
16 changes: 8 additions & 8 deletions tests/testsuite/help.rs
Original file line number Diff line number Diff line change
Expand Up @@ -160,49 +160,49 @@ fn help_alias() {
fn alias_z_flag_help() {
cargo_process("build -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("run -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("check -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("test -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("b -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("r -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("c -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();

cargo_process("t -Z help")
.with_stdout_contains(
" -Z allow-features[..]-- Allow *only* the listed unstable features",
" -Z allow-features[..] Allow *only* the listed unstable features",
)
.run();
}

0 comments on commit ea9c75a

Please sign in to comment.